[2026-02-25 12:51:03] [INFO] Checking activity reminders 
[2026-02-25 12:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:51:08] [INFO] Checking activity reminders 
[2026-02-25 12:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:51:14] [INFO] Checking activity reminders 
[2026-02-25 12:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:51:33] [INFO] Checking activity reminders 
[2026-02-25 12:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:51:38] [INFO] Checking activity reminders 
[2026-02-25 12:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:51:44] [INFO] Checking activity reminders 
[2026-02-25 12:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:02] [INFO] Checking activity reminders 
[2026-02-25 12:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP","contact_id":"11386","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 12:52:03","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 12:52:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:52:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"11386","is_new_deal":true}
[2026-02-25 12:52:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-02-25 12:52:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-02-25 12:52:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-02-25 12:52:03] [INFO] getContactPrimaryPhone called {"contact_id":"11386"}
[2026-02-25 12:52:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:52:03] [INFO] getContactPrimaryPhone result {"contact_id":"11386","person_found":true,"primary_phone":"9128238965"}
[2026-02-25 12:52:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128238965"}
[2026-02-25 12:52:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128238965","contact_id":"11386","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 12:52:03"}
[2026-02-25 12:52:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:52:03] [INFO] generateDealTitle result {"contact_id":"11386","person_name":"محمد شعبانی","mobile":"9128238965","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128238965"}
[2026-02-25 12:52:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11386","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 12:52:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11386","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 12:52:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11386","title":"معامله سوم 9128238965 | کانال VIP","base_title_used":"معامله سوم 9128238965","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":7000000,"payments_present":true,"requested_services":["کانال VIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد شعبانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 12:52:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 12:52:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:52:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 12:52:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11386","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9128238965 | کانال VIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":7000000,"server_time":"2026-02-25 12:52:03","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 12:52:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:52:03] [INFO] Checking activity reminders 
[2026-02-25 12:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:08] [INFO] Checking activity reminders 
[2026-02-25 12:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:14] [INFO] Checking activity reminders 
[2026-02-25 12:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:32] [INFO] Checking activity reminders 
[2026-02-25 12:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:33] [INFO] Checking activity reminders 
[2026-02-25 12:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:38] [INFO] Checking activity reminders 
[2026-02-25 12:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:44] [INFO] Checking activity reminders 
[2026-02-25 12:52:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:52:53] [INFO] Checking activity reminders 
[2026-02-25 12:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:03] [INFO] Checking activity reminders 
[2026-02-25 12:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:03] [INFO] Checking activity reminders 
[2026-02-25 12:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:06] [INFO] Checking activity reminders 
[2026-02-25 12:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:14] [INFO] Checking activity reminders 
[2026-02-25 12:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:33] [INFO] Checking activity reminders 
[2026-02-25 12:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:35] [INFO] Activity save request {"post_data":{"contact_id":"11386","deal_id":"local_699ebf3b24c6f6.71377608","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"هزینه هاش بالاست \/ درامد محدود \r\nخانمش باردار \r\nنوسانات بورس استفاده \r\nتا اخر اسفند 4 نقد \/ 30 م یه فقره چک ارسال ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 12:53:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11386","note_was_empty":true}
[2026-02-25 12:53:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"11386","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:35] [INFO] Updating virtual stage {"contact_id":"11386","stage_name":"deal_registered","force":false}
[2026-02-25 12:53:35] [INFO] Virtual stage successfully saved {"contact_id":"11386","stage_name":"deal_registered"}
[2026-02-25 12:53:35] [INFO] Virtual stage updated after activity save {"contact_id":"11386"}
[2026-02-25 12:53:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ebf3b24c6f6.71377608","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-25 12:53:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ebf97cb8be0.91579064","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:35] [INFO] Activity saved successfully {"activity_id":"local_activity_699ebf97cb8be0.91579064"}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:35] [INFO] Updating virtual stage {"contact_id":"11386","stage_name":"deal_registered","force":false}
[2026-02-25 12:53:35] [INFO] Virtual stage successfully saved {"contact_id":"11386","stage_name":"deal_registered"}
[2026-02-25 12:53:35] [INFO] Virtual stage updated after activity save {"contact_id":"11386"}
[2026-02-25 12:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 12:53:36] [INFO] Checking activity reminders 
[2026-02-25 12:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:53:44] [INFO] Checking activity reminders 
[2026-02-25 12:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:00] [INFO] Checking activity reminders 
[2026-02-25 12:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:03] [INFO] Checking activity reminders 
[2026-02-25 12:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:14] [INFO] Checking activity reminders 
[2026-02-25 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:30] [INFO] Checking activity reminders 
[2026-02-25 12:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:33] [INFO] Checking activity reminders 
[2026-02-25 12:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:42] [INFO] Checking activity reminders 
[2026-02-25 12:54:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:54:44] [INFO] Checking activity reminders 
[2026-02-25 12:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:00] [INFO] Checking activity reminders 
[2026-02-25 12:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:03] [INFO] Checking activity reminders 
[2026-02-25 12:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:13] [INFO] Checking activity reminders 
[2026-02-25 12:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:14] [INFO] Checking activity reminders 
[2026-02-25 12:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:30] [INFO] Checking activity reminders 
[2026-02-25 12:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:33] [INFO] Checking activity reminders 
[2026-02-25 12:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:44] [INFO] Checking activity reminders 
[2026-02-25 12:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:55:51] [INFO] Checking activity reminders 
[2026-02-25 12:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:00] [INFO] Checking activity reminders 
[2026-02-25 12:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:03] [INFO] Checking activity reminders 
[2026-02-25 12:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:14] [INFO] Checking activity reminders 
[2026-02-25 12:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:21] [INFO] Checking activity reminders 
[2026-02-25 12:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:25] [INFO] Checking activity reminders 
[2026-02-25 12:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:33] [INFO] Checking activity reminders 
[2026-02-25 12:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 12:56:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 12:56:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 12:56:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 12:56:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 12:56:44] [INFO] Checking activity reminders 
[2026-02-25 12:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:56:51] [INFO] Checking activity reminders 
[2026-02-25 12:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:03] [INFO] Checking activity reminders 
[2026-02-25 12:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:11] [INFO] Checking activity reminders 
[2026-02-25 12:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:15] [INFO] Checking activity reminders 
[2026-02-25 12:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:22] [INFO] Checking activity reminders 
[2026-02-25 12:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:33] [INFO] Checking activity reminders 
[2026-02-25 12:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:45] [INFO] Checking activity reminders 
[2026-02-25 12:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:57:52] [INFO] Checking activity reminders 
[2026-02-25 12:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:03] [INFO] Checking activity reminders 
[2026-02-25 12:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:15] [INFO] Checking activity reminders 
[2026-02-25 12:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:22] [INFO] Checking activity reminders 
[2026-02-25 12:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:33] [INFO] Checking activity reminders 
[2026-02-25 12:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:45] [INFO] Checking activity reminders 
[2026-02-25 12:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:58:52] [INFO] Checking activity reminders 
[2026-02-25 12:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:03] [INFO] Checking activity reminders 
[2026-02-25 12:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:15] [INFO] Checking activity reminders 
[2026-02-25 12:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:22] [INFO] Checking activity reminders 
[2026-02-25 12:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:33] [INFO] Checking activity reminders 
[2026-02-25 12:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:45] [INFO] Checking activity reminders 
[2026-02-25 12:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 12:59:52] [INFO] Checking activity reminders 
[2026-02-25 12:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 12:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:03] [INFO] Checking activity reminders 
[2026-02-25 13:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:15] [INFO] Checking activity reminders 
[2026-02-25 13:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:22] [INFO] Checking activity reminders 
[2026-02-25 13:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:33] [INFO] Checking activity reminders 
[2026-02-25 13:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:45] [INFO] Checking activity reminders 
[2026-02-25 13:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:00:52] [INFO] Checking activity reminders 
[2026-02-25 13:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:03] [INFO] Checking activity reminders 
[2026-02-25 13:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:15] [INFO] Checking activity reminders 
[2026-02-25 13:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:22] [INFO] Checking activity reminders 
[2026-02-25 13:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:33] [INFO] Checking activity reminders 
[2026-02-25 13:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:45] [INFO] Checking activity reminders 
[2026-02-25 13:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:01:52] [INFO] Checking activity reminders 
[2026-02-25 13:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:03] [INFO] Checking activity reminders 
[2026-02-25 13:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:15] [INFO] Checking activity reminders 
[2026-02-25 13:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:22] [INFO] Checking activity reminders 
[2026-02-25 13:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:33] [INFO] Checking activity reminders 
[2026-02-25 13:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:45] [INFO] Checking activity reminders 
[2026-02-25 13:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:02:52] [INFO] Checking activity reminders 
[2026-02-25 13:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:04] [INFO] Checking activity reminders 
[2026-02-25 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:15] [INFO] Checking activity reminders 
[2026-02-25 13:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:22] [INFO] Checking activity reminders 
[2026-02-25 13:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:34] [INFO] Checking activity reminders 
[2026-02-25 13:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:46] [INFO] Checking activity reminders 
[2026-02-25 13:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:03:52] [INFO] Checking activity reminders 
[2026-02-25 13:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:04] [INFO] Checking activity reminders 
[2026-02-25 13:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:16] [INFO] Checking activity reminders 
[2026-02-25 13:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:23] [INFO] Checking activity reminders 
[2026-02-25 13:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:34] [INFO] Checking activity reminders 
[2026-02-25 13:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:46] [INFO] Checking activity reminders 
[2026-02-25 13:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:04:53] [INFO] Checking activity reminders 
[2026-02-25 13:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:04] [INFO] Checking activity reminders 
[2026-02-25 13:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:16] [INFO] Checking activity reminders 
[2026-02-25 13:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:23] [INFO] Checking activity reminders 
[2026-02-25 13:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:34] [INFO] Checking activity reminders 
[2026-02-25 13:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:46] [INFO] Checking activity reminders 
[2026-02-25 13:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:05:53] [INFO] Checking activity reminders 
[2026-02-25 13:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:03] [INFO] Checking activity reminders 
[2026-02-25 13:06:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:04] [INFO] Checking activity reminders 
[2026-02-25 13:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:16] [INFO] Checking activity reminders 
[2026-02-25 13:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:23] [INFO] Checking activity reminders 
[2026-02-25 13:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:34] [INFO] Checking activity reminders 
[2026-02-25 13:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:46] [INFO] Checking activity reminders 
[2026-02-25 13:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:06:53] [INFO] Checking activity reminders 
[2026-02-25 13:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:04] [INFO] Checking activity reminders 
[2026-02-25 13:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:15] [INFO] Checking activity reminders 
[2026-02-25 13:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:16] [INFO] Checking activity reminders 
[2026-02-25 13:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:23] [INFO] Checking activity reminders 
[2026-02-25 13:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:34] [INFO] Checking activity reminders 
[2026-02-25 13:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:45] [INFO] Checking activity reminders 
[2026-02-25 13:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:53] [INFO] Checking activity reminders 
[2026-02-25 13:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:07:59] [INFO] Checking activity reminders 
[2026-02-25 13:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:08:04] [INFO] Checking activity reminders 
[2026-02-25 13:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:08:23] [INFO] Checking activity reminders 
[2026-02-25 13:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:08:34] [INFO] Checking activity reminders 
[2026-02-25 13:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:08:53] [INFO] Checking activity reminders 
[2026-02-25 13:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:09:04] [INFO] Checking activity reminders 
[2026-02-25 13:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:09:23] [INFO] Checking activity reminders 
[2026-02-25 13:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:09:34] [INFO] Checking activity reminders 
[2026-02-25 13:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:09:39] [INFO] Checking activity reminders 
[2026-02-25 13:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:09:53] [INFO] Checking activity reminders 
[2026-02-25 13:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:10:00] [INFO] Checking activity reminders 
[2026-02-25 13:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:10:04] [INFO] Checking activity reminders 
[2026-02-25 13:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:10:23] [INFO] Checking activity reminders 
[2026-02-25 13:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:10:34] [INFO] Checking activity reminders 
[2026-02-25 13:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:10:53] [INFO] Checking activity reminders 
[2026-02-25 13:10:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:10:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:11:04] [INFO] Checking activity reminders 
[2026-02-25 13:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:11:23] [INFO] Checking activity reminders 
[2026-02-25 13:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:11:34] [INFO] Checking activity reminders 
[2026-02-25 13:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:11:54] [INFO] Checking activity reminders 
[2026-02-25 13:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:12:04] [INFO] Checking activity reminders 
[2026-02-25 13:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:12:24] [INFO] Checking activity reminders 
[2026-02-25 13:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:12:34] [INFO] Checking activity reminders 
[2026-02-25 13:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:12:42] [INFO] Checking activity reminders 
[2026-02-25 13:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:12:54] [INFO] Checking activity reminders 
[2026-02-25 13:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:13:04] [INFO] Checking activity reminders 
[2026-02-25 13:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:13:04] [INFO] Checking activity reminders 
[2026-02-25 13:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:13:24] [INFO] Checking activity reminders 
[2026-02-25 13:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:13:34] [INFO] Checking activity reminders 
[2026-02-25 13:13:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:13:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:13:54] [INFO] Checking activity reminders 
[2026-02-25 13:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:14:04] [INFO] Checking activity reminders 
[2026-02-25 13:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:14:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 13:14:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 13:14:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:14:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:14:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:14:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:14:24] [INFO] Checking activity reminders 
[2026-02-25 13:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:14:34] [INFO] Checking activity reminders 
[2026-02-25 13:14:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:14:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:14:54] [INFO] Checking activity reminders 
[2026-02-25 13:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:15:04] [INFO] Checking activity reminders 
[2026-02-25 13:15:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:15:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:15:08] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-01","date_to":"2026-02-25","person_date_from":"2026-02-01","person_date_to":"2026-02-25","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 13:15:08] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 13:15:12] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 13:15:24] [INFO] Checking activity reminders 
[2026-02-25 13:15:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:15:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:15:34] [INFO] Checking activity reminders 
[2026-02-25 13:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:15:54] [INFO] Checking activity reminders 
[2026-02-25 13:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:15:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 13:15:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 13:15:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:15:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:15:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:15:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:16:04] [INFO] Checking activity reminders 
[2026-02-25 13:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:16:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 13:16:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 13:16:11] [INFO] Checking activity reminders 
[2026-02-25 13:16:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:16:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:16:24] [INFO] Checking activity reminders 
[2026-02-25 13:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:16:34] [INFO] Checking activity reminders 
[2026-02-25 13:16:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:16:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:16:48] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-01","date_to":"2026-02-25","person_date_from":"2026-02-01","person_date_to":"2026-02-25","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 13:16:48] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 13:16:51] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 13:16:54] [INFO] Checking activity reminders 
[2026-02-25 13:16:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:16:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:17:04] [INFO] Checking activity reminders 
[2026-02-25 13:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:17:24] [INFO] Checking activity reminders 
[2026-02-25 13:17:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:17:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:17:34] [INFO] Checking activity reminders 
[2026-02-25 13:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:17:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 13:17:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 13:17:54] [INFO] Checking activity reminders 
[2026-02-25 13:17:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:17:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:18:04] [INFO] Checking activity reminders 
[2026-02-25 13:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:18:24] [INFO] Checking activity reminders 
[2026-02-25 13:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:18:34] [INFO] Checking activity reminders 
[2026-02-25 13:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:18:54] [INFO] Checking activity reminders 
[2026-02-25 13:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:19:04] [INFO] Checking activity reminders 
[2026-02-25 13:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:19:25] [INFO] Checking activity reminders 
[2026-02-25 13:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:19:34] [INFO] Checking activity reminders 
[2026-02-25 13:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:19:55] [INFO] Checking activity reminders 
[2026-02-25 13:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:20:04] [INFO] Checking activity reminders 
[2026-02-25 13:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:20:25] [INFO] Checking activity reminders 
[2026-02-25 13:20:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:20:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:20:34] [INFO] Checking activity reminders 
[2026-02-25 13:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:20:55] [INFO] Checking activity reminders 
[2026-02-25 13:20:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:20:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:21:04] [INFO] Checking activity reminders 
[2026-02-25 13:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:21:25] [INFO] Checking activity reminders 
[2026-02-25 13:21:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:21:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:21:34] [INFO] Checking activity reminders 
[2026-02-25 13:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:21:55] [INFO] Checking activity reminders 
[2026-02-25 13:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:04] [INFO] Checking activity reminders 
[2026-02-25 13:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:21] [INFO] Checking activity reminders 
[2026-02-25 13:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:25] [INFO] Checking activity reminders 
[2026-02-25 13:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:34] [INFO] Checking activity reminders 
[2026-02-25 13:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:51] [INFO] Checking activity reminders 
[2026-02-25 13:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:22:55] [INFO] Checking activity reminders 
[2026-02-25 13:22:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:22:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:04] [INFO] Checking activity reminders 
[2026-02-25 13:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:21] [INFO] Checking activity reminders 
[2026-02-25 13:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:25] [INFO] Checking activity reminders 
[2026-02-25 13:23:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:34] [INFO] Checking activity reminders 
[2026-02-25 13:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:52] [INFO] Checking activity reminders 
[2026-02-25 13:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:23:55] [INFO] Checking activity reminders 
[2026-02-25 13:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:04] [INFO] Checking activity reminders 
[2026-02-25 13:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:22] [INFO] Checking activity reminders 
[2026-02-25 13:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:25] [INFO] Checking activity reminders 
[2026-02-25 13:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:35] [INFO] Checking activity reminders 
[2026-02-25 13:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:52] [INFO] Checking activity reminders 
[2026-02-25 13:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:53] [INFO] Checking activity reminders 
[2026-02-25 13:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:24:55] [INFO] Checking activity reminders 
[2026-02-25 13:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:25:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:25:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:25:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:25:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:25:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:25:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:25:05] [INFO] Checking activity reminders 
[2026-02-25 13:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:25:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:25:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:25:22] [INFO] Checking activity reminders 
[2026-02-25 13:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:25] [INFO] Checking activity reminders 
[2026-02-25 13:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:32] [INFO] Checking activity reminders 
[2026-02-25 13:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:35] [INFO] Checking activity reminders 
[2026-02-25 13:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:52] [INFO] Checking activity reminders 
[2026-02-25 13:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:25:56] [INFO] Checking activity reminders 
[2026-02-25 13:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:05] [INFO] Checking activity reminders 
[2026-02-25 13:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:22] [INFO] Checking activity reminders 
[2026-02-25 13:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:26] [INFO] Checking activity reminders 
[2026-02-25 13:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:35] [INFO] Checking activity reminders 
[2026-02-25 13:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:52] [INFO] Checking activity reminders 
[2026-02-25 13:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:26:56] [INFO] Checking activity reminders 
[2026-02-25 13:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:05] [INFO] Checking activity reminders 
[2026-02-25 13:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:22] [INFO] Checking activity reminders 
[2026-02-25 13:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:26] [INFO] Checking activity reminders 
[2026-02-25 13:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:35] [INFO] Checking activity reminders 
[2026-02-25 13:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:52] [INFO] Checking activity reminders 
[2026-02-25 13:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:27:56] [INFO] Checking activity reminders 
[2026-02-25 13:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:05] [INFO] Checking activity reminders 
[2026-02-25 13:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:22] [INFO] Checking activity reminders 
[2026-02-25 13:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:26] [INFO] Checking activity reminders 
[2026-02-25 13:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:35] [INFO] Checking activity reminders 
[2026-02-25 13:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:52] [INFO] Checking activity reminders 
[2026-02-25 13:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:28:56] [INFO] Checking activity reminders 
[2026-02-25 13:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-02-25 13:29:05] [INFO] Checking activity reminders 
[2026-02-25 13:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:22] [INFO] Checking activity reminders 
[2026-02-25 13:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:29:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:29:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:29:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:29:26] [INFO] Checking activity reminders 
[2026-02-25 13:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-02-25 13:29:52] [INFO] Checking activity reminders 
[2026-02-25 13:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:54] [INFO] Checking activity reminders 
[2026-02-25 13:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:29:56] [INFO] Checking activity reminders 
[2026-02-25 13:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:30:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:30:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:30:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:30:22] [INFO] Checking activity reminders 
[2026-02-25 13:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:26] [INFO] Checking activity reminders 
[2026-02-25 13:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:29] [INFO] Checking activity reminders 
[2026-02-25 13:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:30:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:30:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:30:39] [INFO] Checking activity reminders 
[2026-02-25 13:30:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:40] [INFO] Checking activity reminders 
[2026-02-25 13:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:53] [INFO] Checking activity reminders 
[2026-02-25 13:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:30:56] [INFO] Checking activity reminders 
[2026-02-25 13:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:31:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:31:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:31:10] [INFO] Checking activity reminders 
[2026-02-25 13:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:10] [INFO] Checking activity reminders 
[2026-02-25 13:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:13] [INFO] Checking activity reminders 
[2026-02-25 13:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:23] [INFO] Checking activity reminders 
[2026-02-25 13:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:26] [INFO] Checking activity reminders 
[2026-02-25 13:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:32] [INFO] Checking activity reminders 
[2026-02-25 13:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:39] [INFO] Checking activity reminders 
[2026-02-25 13:31:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:40] [INFO] Checking activity reminders 
[2026-02-25 13:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:31:53] [INFO] Checking activity reminders 
[2026-02-25 13:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:31:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:31:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:31:54] [INFO] generateDealTitle result {"contact_id":"8094","person_name":"علی غفوری","mobile":"9129675496","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9129675496"}
[2026-02-25 13:31:56] [INFO] Checking activity reminders 
[2026-02-25 13:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:04] [INFO] Checking activity reminders 
[2026-02-25 13:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:10] [INFO] Checking activity reminders 
[2026-02-25 13:32:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:13] [INFO] Checking activity reminders 
[2026-02-25 13:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:23] [INFO] Checking activity reminders 
[2026-02-25 13:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:25] [INFO] Checking activity reminders 
[2026-02-25 13:32:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:26] [INFO] Checking activity reminders 
[2026-02-25 13:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:31] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 13:32:31] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 13:32:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:32:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:32:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:32:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:32:32] [INFO] Checking activity reminders 
[2026-02-25 13:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:37] [INFO] Checking activity reminders 
[2026-02-25 13:32:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:44] [INFO] Checking activity reminders 
[2026-02-25 13:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:53] [INFO] Checking activity reminders 
[2026-02-25 13:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:56] [INFO] Checking activity reminders 
[2026-02-25 13:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:32:57] [INFO] Checking activity reminders 
[2026-02-25 13:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:01] [INFO] Checking activity reminders 
[2026-02-25 13:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:07] [INFO] Checking activity reminders 
[2026-02-25 13:33:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:33:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:33:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:33:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:33:21] [INFO] Activity save request {"post_data":{"contact_id":"8094","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"کانال پرزنت 2 سال میشناسه- ارسال شبا ملت 404\/405 ","activity_duration":"15","direction":"incoming","current_stage":"ارسال لینک پرداخت","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 13:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:33:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 13:33:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 13:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:33:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"8094","note_was_empty":true}
[2026-02-25 13:33:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"8094","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-25 13:33:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ec8e9764e54.70817280","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 13:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:33:21] [INFO] Activity saved successfully {"activity_id":"local_activity_699ec8e9764e54.70817280"}
[2026-02-25 13:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:33:21] [INFO] Updating virtual stage {"contact_id":"8094","stage_name":"deal_registered","force":false}
[2026-02-25 13:33:21] [INFO] Virtual stage successfully saved {"contact_id":"8094","stage_name":"deal_registered"}
[2026-02-25 13:33:21] [INFO] Virtual stage updated after activity save {"contact_id":"8094"}
[2026-02-25 13:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 13:33:23] [INFO] Checking activity reminders 
[2026-02-25 13:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:27] [INFO] Checking activity reminders 
[2026-02-25 13:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:31] [INFO] Checking activity reminders 
[2026-02-25 13:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:46] [INFO] Checking activity reminders 
[2026-02-25 13:33:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:53] [INFO] Checking activity reminders 
[2026-02-25 13:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:33:57] [INFO] Checking activity reminders 
[2026-02-25 13:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:01] [INFO] Checking activity reminders 
[2026-02-25 13:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:03] [INFO] Checking activity reminders 
[2026-02-25 13:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:23] [INFO] Checking activity reminders 
[2026-02-25 13:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:27] [INFO] Checking activity reminders 
[2026-02-25 13:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:31] [INFO] Checking activity reminders 
[2026-02-25 13:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:35] [INFO] Checking activity reminders 
[2026-02-25 13:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:57] [INFO] Checking activity reminders 
[2026-02-25 13:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:57] [INFO] Checking activity reminders 
[2026-02-25 13:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:34:59] [INFO] Checking activity reminders 
[2026-02-25 13:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:01] [INFO] Checking activity reminders 
[2026-02-25 13:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:02] [INFO] Checking activity reminders 
[2026-02-25 13:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:35:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:35:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:35:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:35:27] [INFO] Checking activity reminders 
[2026-02-25 13:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:31] [INFO] Checking activity reminders 
[2026-02-25 13:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:32] [INFO] Checking activity reminders 
[2026-02-25 13:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:37] [INFO] Checking activity reminders 
[2026-02-25 13:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:57] [INFO] Checking activity reminders 
[2026-02-25 13:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:35:59] [INFO] Checking activity reminders 
[2026-02-25 13:35:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:35:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:01] [INFO] Checking activity reminders 
[2026-02-25 13:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:27] [INFO] Checking activity reminders 
[2026-02-25 13:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:27] [INFO] Checking activity reminders 
[2026-02-25 13:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:36:29] [INFO] generateDealTitle result {"contact_id":"2036","person_name":"جمشیدیان","mobile":"9132338301","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9132338301"}
[2026-02-25 13:36:31] [INFO] Checking activity reminders 
[2026-02-25 13:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:36] [INFO] Checking activity reminders 
[2026-02-25 13:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:40] [INFO] Checking activity reminders 
[2026-02-25 13:36:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 13:36:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 13:36:49] [INFO] Checking activity reminders 
[2026-02-25 13:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:36:58] [INFO] Checking activity reminders 
[2026-02-25 13:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:01] [INFO] Checking activity reminders 
[2026-02-25 13:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:06] [INFO] Checking activity reminders 
[2026-02-25 13:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"vip","contact_id":"2036","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 13:37:16","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 13:37:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:37:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"vip","contact_id":"2036","is_new_deal":true}
[2026-02-25 13:37:16] [INFO] extractPhoneFromDealTitle called {"input_title":"vip"}
[2026-02-25 13:37:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"vip"}
[2026-02-25 13:37:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"vip"}
[2026-02-25 13:37:16] [INFO] getContactPrimaryPhone called {"contact_id":"2036"}
[2026-02-25 13:37:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:37:16] [INFO] getContactPrimaryPhone result {"contact_id":"2036","person_found":true,"primary_phone":"9132338301"}
[2026-02-25 13:37:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132338301"}
[2026-02-25 13:37:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132338301","contact_id":"2036","deal_id":"","is_new_deal":true,"incoming_title":"vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 13:37:16"}
[2026-02-25 13:37:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:37:16] [INFO] generateDealTitle result {"contact_id":"2036","person_name":"جمشیدیان","mobile":"9132338301","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9132338301"}
[2026-02-25 13:37:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2036","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-25 13:37:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2036","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 13:37:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2036","title":"معامله چهارم 9132338301 | vip","base_title_used":"معامله چهارم 9132338301","services_text":"vip","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["vip"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جمشیدیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 13:37:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 13:37:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:37:16] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 13:37:16] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2036","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9132338301 | vip","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 13:37:16","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 13:37:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 13:37:27] [INFO] Checking activity reminders 
[2026-02-25 13:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:32] [INFO] Checking activity reminders 
[2026-02-25 13:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:32] [INFO] Checking activity reminders 
[2026-02-25 13:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:34] [INFO] Checking activity reminders 
[2026-02-25 13:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:37:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:37:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:37:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:37:36] [INFO] Checking activity reminders 
[2026-02-25 13:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:36] [INFO] Checking activity reminders 
[2026-02-25 13:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:42] [INFO] Checking activity reminders 
[2026-02-25 13:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:37:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:37:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:37:51] [INFO] Checking activity reminders 
[2026-02-25 13:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:37:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:38:02] [INFO] Checking activity reminders 
[2026-02-25 13:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:38:07] [INFO] Checking activity reminders 
[2026-02-25 13:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:38:32] [INFO] Checking activity reminders 
[2026-02-25 13:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:38:37] [INFO] Checking activity reminders 
[2026-02-25 13:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:39:03] [INFO] Checking activity reminders 
[2026-02-25 13:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:39:33] [INFO] Checking activity reminders 
[2026-02-25 13:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:39:33] [INFO] Checking activity reminders 
[2026-02-25 13:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:39:38] [INFO] Checking activity reminders 
[2026-02-25 13:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:39:52] [INFO] Checking activity reminders 
[2026-02-25 13:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 13:40:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:40:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:40:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:40:03] [INFO] Checking activity reminders 
[2026-02-25 13:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:22] [INFO] Checking activity reminders 
[2026-02-25 13:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:27] [INFO] Checking activity reminders 
[2026-02-25 13:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:33] [INFO] Checking activity reminders 
[2026-02-25 13:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:52] [INFO] Checking activity reminders 
[2026-02-25 13:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:40:58] [INFO] Checking activity reminders 
[2026-02-25 13:40:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:40:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:03] [INFO] Checking activity reminders 
[2026-02-25 13:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:23] [INFO] Checking activity reminders 
[2026-02-25 13:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:28] [INFO] Checking activity reminders 
[2026-02-25 13:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:33] [INFO] Checking activity reminders 
[2026-02-25 13:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:36] [INFO] Checking activity reminders 
[2026-02-25 13:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:41:53] [INFO] Checking activity reminders 
[2026-02-25 13:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:03] [INFO] Checking activity reminders 
[2026-02-25 13:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:12] [INFO] Checking activity reminders 
[2026-02-25 13:42:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:23] [INFO] Checking activity reminders 
[2026-02-25 13:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:33] [INFO] Checking activity reminders 
[2026-02-25 13:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:53] [INFO] Checking activity reminders 
[2026-02-25 13:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:42:55] [INFO] Checking activity reminders 
[2026-02-25 13:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:03] [INFO] Checking activity reminders 
[2026-02-25 13:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:23] [INFO] Checking activity reminders 
[2026-02-25 13:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:26] [INFO] Checking activity reminders 
[2026-02-25 13:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:33] [INFO] Checking activity reminders 
[2026-02-25 13:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:54] [INFO] Checking activity reminders 
[2026-02-25 13:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:43:56] [INFO] Checking activity reminders 
[2026-02-25 13:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:03] [INFO] Checking activity reminders 
[2026-02-25 13:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:24] [INFO] Checking activity reminders 
[2026-02-25 13:44:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:26] [INFO] Checking activity reminders 
[2026-02-25 13:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:33] [INFO] Checking activity reminders 
[2026-02-25 13:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 13:44:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 13:44:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 13:44:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 13:44:52] [INFO] Checking activity reminders 
[2026-02-25 13:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:44:54] [INFO] Checking activity reminders 
[2026-02-25 13:44:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:44:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:07] [WARNING] Auth check failed - not authenticated {"session_id":"rkdm8cn6s5tt25d079gl50dhjg","session_keys":[],"action":"check_reminders"}
[2026-02-25 13:45:12] [WARNING] Auth check failed - not authenticated {"session_id":"rkdm8cn6s5tt25d079gl50dhjg","session_keys":[],"action":"check_reminders"}
[2026-02-25 13:45:21] [INFO] Checking activity reminders 
[2026-02-25 13:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:22] [INFO] Checking activity reminders 
[2026-02-25 13:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:24] [INFO] Checking activity reminders 
[2026-02-25 13:45:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 13:45:49] [INFO] Checking activity reminders 
[2026-02-25 13:45:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:52] [INFO] Checking activity reminders 
[2026-02-25 13:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:45:54] [INFO] Checking activity reminders 
[2026-02-25 13:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:46:19] [INFO] Checking activity reminders 
[2026-02-25 13:46:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:46:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:46:24] [INFO] Checking activity reminders 
[2026-02-25 13:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:46:26] [INFO] Checking activity reminders 
[2026-02-25 13:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:46:35] [INFO] Checking activity reminders 
[2026-02-25 13:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:46:54] [INFO] Checking activity reminders 
[2026-02-25 13:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:47:10] [INFO] Checking activity reminders 
[2026-02-25 13:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:47:16] [INFO] Checking activity reminders 
[2026-02-25 13:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:47:40] [INFO] Checking activity reminders 
[2026-02-25 13:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:49:00] [INFO] Checking activity reminders 
[2026-02-25 13:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:53:37] [INFO] Checking activity reminders 
[2026-02-25 13:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:53:39] [INFO] Checking activity reminders 
[2026-02-25 13:53:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:53:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:53:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 13:54:09] [INFO] Checking activity reminders 
[2026-02-25 13:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:54:34] [INFO] Checking activity reminders 
[2026-02-25 13:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 13:56:05] [INFO] Checking activity reminders 
[2026-02-25 13:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 13:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:05:49] [INFO] Checking activity reminders 
[2026-02-25 14:05:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:05:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:05:50] [INFO] Checking activity reminders 
[2026-02-25 14:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:05:52] [INFO] Checking activity reminders 
[2026-02-25 14:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:05:58] [INFO] Checking activity reminders 
[2026-02-25 14:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:06:28] [INFO] Checking activity reminders 
[2026-02-25 14:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:06:58] [INFO] Checking activity reminders 
[2026-02-25 14:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:07:29] [INFO] Checking activity reminders 
[2026-02-25 14:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:07:59] [INFO] Checking activity reminders 
[2026-02-25 14:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:08:29] [INFO] Checking activity reminders 
[2026-02-25 14:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:08:59] [INFO] Checking activity reminders 
[2026-02-25 14:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:09:29] [INFO] Checking activity reminders 
[2026-02-25 14:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:09:50] [INFO] Checking activity reminders 
[2026-02-25 14:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:09:51] [INFO] Checking activity reminders 
[2026-02-25 14:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:09:53] [INFO] Checking activity reminders 
[2026-02-25 14:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:09:59] [INFO] Checking activity reminders 
[2026-02-25 14:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:10:07] [INFO] Checking activity reminders 
[2026-02-25 14:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:10:25] [INFO] Checking activity reminders 
[2026-02-25 14:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:10:29] [INFO] Checking activity reminders 
[2026-02-25 14:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:10:59] [INFO] Checking activity reminders 
[2026-02-25 14:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:11:29] [INFO] Checking activity reminders 
[2026-02-25 14:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:11:34] [INFO] Checking activity reminders 
[2026-02-25 14:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:11:59] [INFO] Checking activity reminders 
[2026-02-25 14:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:12:29] [INFO] Checking activity reminders 
[2026-02-25 14:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:12:59] [INFO] Checking activity reminders 
[2026-02-25 14:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:13:29] [INFO] Checking activity reminders 
[2026-02-25 14:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:13:31] [INFO] Checking activity reminders 
[2026-02-25 14:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:13:47] [INFO] Checking activity reminders 
[2026-02-25 14:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:13:57] [INFO] Checking activity reminders 
[2026-02-25 14:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:13:59] [INFO] Checking activity reminders 
[2026-02-25 14:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:14:04] [INFO] Checking activity reminders 
[2026-02-25 14:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:14:12] [INFO] Checking activity reminders 
[2026-02-25 14:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:14:14] [INFO] Checking activity reminders 
[2026-02-25 14:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:14:30] [INFO] Checking activity reminders 
[2026-02-25 14:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:14:44] [INFO] Checking activity reminders 
[2026-02-25 14:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:15:00] [INFO] Checking activity reminders 
[2026-02-25 14:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:15:19] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-25 14:15:19] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-25 14:15:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:15:30] [INFO] Checking activity reminders 
[2026-02-25 14:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:15:49] [INFO] Checking activity reminders 
[2026-02-25 14:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:16:00] [INFO] Checking activity reminders 
[2026-02-25 14:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:16:23] [INFO] Checking activity reminders 
[2026-02-25 14:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:16:53] [INFO] Checking activity reminders 
[2026-02-25 14:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:17:23] [INFO] Checking activity reminders 
[2026-02-25 14:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:17:53] [INFO] Checking activity reminders 
[2026-02-25 14:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:18:23] [INFO] Checking activity reminders 
[2026-02-25 14:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:18:53] [INFO] Checking activity reminders 
[2026-02-25 14:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:19:24] [INFO] Checking activity reminders 
[2026-02-25 14:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:19:50] [INFO] Checking activity reminders 
[2026-02-25 14:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:19:54] [INFO] Checking activity reminders 
[2026-02-25 14:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:20:24] [INFO] Checking activity reminders 
[2026-02-25 14:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:20:54] [INFO] Checking activity reminders 
[2026-02-25 14:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:21:24] [INFO] Checking activity reminders 
[2026-02-25 14:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:21:54] [INFO] Checking activity reminders 
[2026-02-25 14:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:22:23] [INFO] Checking activity reminders 
[2026-02-25 14:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:22:24] [INFO] Checking activity reminders 
[2026-02-25 14:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:26] [INFO] generateDealTitle result {"contact_id":"17001","person_name":"بردبار","mobile":"9170655399","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170655399"}
[2026-02-25 14:22:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP","contact_id":"17001","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:22:50","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 14:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"17001","is_new_deal":true}
[2026-02-25 14:22:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-02-25 14:22:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-02-25 14:22:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-02-25 14:22:50] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-02-25 14:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:50] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-02-25 14:22:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-02-25 14:22:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 14:22:50"}
[2026-02-25 14:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:50] [INFO] generateDealTitle result {"contact_id":"17001","person_name":"بردبار","mobile":"9170655399","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170655399"}
[2026-02-25 14:22:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17001","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-25 14:22:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:22:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 14:22:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 14:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 14:22:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9170655399 | کانال VIP","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 14:22:50","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:22:53] [INFO] Checking activity reminders 
[2026-02-25 14:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:22:54] [INFO] Checking activity reminders 
[2026-02-25 14:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:23:17] [INFO] Activity save request {"post_data":{"contact_id":"17001","deal_id":"local_699ed482204c51.63145890","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 \r\nدر 2 مرحله واریز \r\nنوسانات عیار \r\n","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 14:23:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17001","note_was_empty":true}
[2026-02-25 14:23:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"17001","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:17] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-02-25 14:23:17] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-02-25 14:23:17] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-02-25 14:23:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ed482204c51.63145890","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-25 14:23:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ed49d238318.71322561","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:17] [INFO] Activity saved successfully {"activity_id":"local_activity_699ed49d238318.71322561"}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:17] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-02-25 14:23:17] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-02-25 14:23:17] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-02-25 14:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-02-25 14:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-02-25 14:23:21] [INFO] Checking activity reminders 
[2026-02-25 14:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:23:24] [INFO] Checking activity reminders 
[2026-02-25 14:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:23:36] [INFO] Checking activity reminders 
[2026-02-25 14:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:23:51] [INFO] Checking activity reminders 
[2026-02-25 14:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:24:21] [INFO] Checking activity reminders 
[2026-02-25 14:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:24:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"vip","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:24:37","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 14:24:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 14:24:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"vip","contact_id":"2036","is_new_deal":false}
[2026-02-25 14:24:37] [INFO] extractPhoneFromDealTitle called {"input_title":"vip"}
[2026-02-25 14:24:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"vip"}
[2026-02-25 14:24:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"vip"}
[2026-02-25 14:24:37] [INFO] getContactPrimaryPhone called {"contact_id":"2036"}
[2026-02-25 14:24:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 14:24:37] [INFO] getContactPrimaryPhone result {"contact_id":"2036","person_found":true,"primary_phone":"9132338301"}
[2026-02-25 14:24:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132338301"}
[2026-02-25 14:24:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132338301","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","is_new_deal":false,"incoming_title":"vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 14:24:37"}
[2026-02-25 14:24:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","existing_deal_found":true,"existing_contact_id":"2036","existing_title":"معامله چهارم 9132338301 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 14:24:37"}
[2026-02-25 14:24:37] [INFO] DealController.save validated payments {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 14:24:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2036","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:24:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ec9d429d3e5.75537030","contact_didar_id":"2036","title":"معامله چهارم 9132338301 | vip","base_title_used":"معامله چهارم 9132338301","services_text":"vip","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["vip"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جمشیدیان","existing_deal":"YES","existing_deal_id":"local_699ec9d429d3e5.75537030","existing_deal_status":"Pending","server_time":"2026-02-25 14:24:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 14:24:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 14:24:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9132338301 | vip","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-02-25 14:24:37","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:24:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-02-25 14:24:43] [INFO] Checking activity reminders 
[2026-02-25 14:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:24:46] [INFO] generateDealTitle result {"contact_id":"8958","person_name":"رحیم نژاد","mobile":"9137262682","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9137262682"}
[2026-02-25 14:25:13] [INFO] Checking activity reminders 
[2026-02-25 14:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:25:35] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"check_reminders"}
[2026-02-25 14:25:36] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 14:25:37] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_products"}
[2026-02-25 14:25:37] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 14:25:42] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 14:25:42] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 14:25:43] [INFO] Checking activity reminders 
[2026-02-25 14:25:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:25:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 14:26:13] [INFO] Checking activity reminders 
[2026-02-25 14:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:26:16] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-25 14:26:16] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-25 14:26:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:26:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:31] [INFO] generateDealTitle result {"contact_id":"11203","person_name":"مرادی","mobile":"9197110068","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9197110068"}
[2026-02-25 14:26:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:26:43] [INFO] Checking activity reminders 
[2026-02-25 14:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:26:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:26:46] [INFO] generateDealTitle result {"contact_id":"11203","person_name":"مرادی","mobile":"9197110068","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9197110068"}
[2026-02-25 14:26:51] [INFO] Checking activity reminders 
[2026-02-25 14:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:27:07] [INFO] Checking activity reminders 
[2026-02-25 14:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:27:13] [INFO] Checking activity reminders 
[2026-02-25 14:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:27:40] [INFO] Checking activity reminders 
[2026-02-25 14:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:27:42] [INFO] Checking activity reminders 
[2026-02-25 14:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:27:44] [INFO] Checking activity reminders 
[2026-02-25 14:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:28:03] [INFO] Checking activity reminders 
[2026-02-25 14:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:28:14] [INFO] Checking activity reminders 
[2026-02-25 14:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:28:44] [INFO] Checking activity reminders 
[2026-02-25 14:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:28:58] [INFO] Checking activity reminders 
[2026-02-25 14:28:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:28:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:29:14] [INFO] Checking activity reminders 
[2026-02-25 14:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:29:25] [INFO] Checking activity reminders 
[2026-02-25 14:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:29:29] [INFO] Checking activity reminders 
[2026-02-25 14:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:29:44] [INFO] Checking activity reminders 
[2026-02-25 14:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:29:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP","contact_id":"11203","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:29:55","session_id":"7jlu90j8o8ouqkldc91p53cojo"}
[2026-02-25 14:29:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:29:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"11203","is_new_deal":true}
[2026-02-25 14:29:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-02-25 14:29:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-02-25 14:29:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-02-25 14:29:55] [INFO] getContactPrimaryPhone called {"contact_id":"11203"}
[2026-02-25 14:29:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:29:55] [INFO] getContactPrimaryPhone result {"contact_id":"11203","person_found":true,"primary_phone":"9197110068"}
[2026-02-25 14:29:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197110068"}
[2026-02-25 14:29:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197110068","contact_id":"11203","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 14:29:55"}
[2026-02-25 14:29:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:29:55] [INFO] generateDealTitle result {"contact_id":"11203","person_name":"مرادی","mobile":"9197110068","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9197110068"}
[2026-02-25 14:29:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11203","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 14:29:55] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11203","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:29:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11203","title":"معامله دوم 9197110068 | کانال VIP","base_title_used":"معامله دوم 9197110068","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":5000000,"payment_amount":5000000,"payments_present":true,"requested_services":["کانال VIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مرادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 14:29:55","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-25 14:29:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:29:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 14:29:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11203","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9197110068 | کانال VIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":5000000,"payment_amount":5000000,"server_time":"2026-02-25 14:29:55","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:29:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:29:59] [INFO] Checking activity reminders 
[2026-02-25 14:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:06] [INFO] Checking activity reminders 
[2026-02-25 14:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:14] [INFO] Checking activity reminders 
[2026-02-25 14:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:29] [INFO] Checking activity reminders 
[2026-02-25 14:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP","contact_id":"8958","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:30:38","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"8958","is_new_deal":true}
[2026-02-25 14:30:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-02-25 14:30:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-02-25 14:30:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-02-25 14:30:38] [INFO] getContactPrimaryPhone called {"contact_id":"8958"}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:38] [INFO] getContactPrimaryPhone result {"contact_id":"8958","person_found":true,"primary_phone":"9137262682"}
[2026-02-25 14:30:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9137262682"}
[2026-02-25 14:30:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9137262682","contact_id":"8958","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 14:30:38"}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:38] [INFO] generateDealTitle result {"contact_id":"8958","person_name":"رحیم نژاد","mobile":"9137262682","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9137262682"}
[2026-02-25 14:30:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8958","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-02-25 14:30:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8958","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:30:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8958","title":"معامله دوم 9137262682 | کانال VIP","base_title_used":"معامله دوم 9137262682","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رحیم نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 14:30:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:38] [INFO] Deal success processed {"contact_id":"8958","person_name":"رحیم نژاد","products_count":1}
[2026-02-25 14:30:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 14:30:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8958","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9137262682 | کانال VIP","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-02-25 14:30:38","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-02-25 14:30:44] [INFO] Checking activity reminders 
[2026-02-25 14:30:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:45] [INFO] Checking activity reminders 
[2026-02-25 14:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:30:59] [INFO] Checking activity reminders 
[2026-02-25 14:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:30:59] [INFO] Checking activity reminders 
[2026-02-25 14:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:31:07] [INFO] Checking activity reminders 
[2026-02-25 14:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:31:15] [INFO] Activity save request {"post_data":{"contact_id":"11203","deal_id":"local_699ed62b50bc66.33540427","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"300عیار\/ یه ملک قلعه حسن خان خریده کلنگیارزش 4500\/ 1ملک خیابان برغون کرج شریکی با داداشش 3300 \/ نقذینگی 500\r\nکانال 405 بیعانه زد 5ت تسویه 18 اسفند ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 14:31:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11203","note_was_empty":true}
[2026-02-25 14:31:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"11203","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:15] [INFO] Updating virtual stage {"contact_id":"11203","stage_name":"deal_registered","force":false}
[2026-02-25 14:31:15] [INFO] Virtual stage successfully saved {"contact_id":"11203","stage_name":"deal_registered"}
[2026-02-25 14:31:15] [INFO] Virtual stage updated after activity save {"contact_id":"11203"}
[2026-02-25 14:31:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ed62b50bc66.33540427","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-25 14:31:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ed67b3d0f56.83901936","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:15] [INFO] Activity saved successfully {"activity_id":"local_activity_699ed67b3d0f56.83901936"}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:15] [INFO] Updating virtual stage {"contact_id":"11203","stage_name":"deal_registered","force":false}
[2026-02-25 14:31:15] [INFO] Virtual stage successfully saved {"contact_id":"11203","stage_name":"deal_registered"}
[2026-02-25 14:31:15] [INFO] Virtual stage updated after activity save {"contact_id":"11203"}
[2026-02-25 14:31:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:31:20] [INFO] Checking activity reminders 
[2026-02-25 14:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:31:47] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 14:31:49] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 14:32:01] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 14:32:03] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_products"}
[2026-02-25 14:32:03] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 14:32:03] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 14:32:25] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-25 14:32:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:32:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8094","person_id":"20294"}
[2026-02-25 14:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:32:55] [INFO] Checking activity reminders 
[2026-02-25 14:32:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:32:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:33:25] [INFO] Checking activity reminders 
[2026-02-25 14:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:33:55] [INFO] Checking activity reminders 
[2026-02-25 14:33:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:33:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:34:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"vip","contact_id":"local_699eaf23b95158.14445425","deal_id":"local_699eaf23c0873","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:34:12","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 14:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:34:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"vip","contact_id":"local_699eaf23b95158.14445425","is_new_deal":false}
[2026-02-25 14:34:12] [INFO] extractPhoneFromDealTitle called {"input_title":"vip"}
[2026-02-25 14:34:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"vip"}
[2026-02-25 14:34:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"vip"}
[2026-02-25 14:34:12] [INFO] getContactPrimaryPhone called {"contact_id":"local_699eaf23b95158.14445425"}
[2026-02-25 14:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:34:12] [INFO] getContactPrimaryPhone result {"contact_id":"local_699eaf23b95158.14445425","person_found":true,"primary_phone":"9122789606"}
[2026-02-25 14:34:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122789606"}
[2026-02-25 14:34:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122789606","contact_id":"local_699eaf23b95158.14445425","deal_id":"local_699eaf23c0873","is_new_deal":false,"incoming_title":"vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 14:34:12"}
[2026-02-25 14:34:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_699eaf23c0873","contact_id":"local_699eaf23b95158.14445425","existing_deal_found":true,"existing_contact_id":"local_699eaf23b95158.14445425","existing_title":"معامله اول 9122789606 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 14:34:12"}
[2026-02-25 14:34:12] [INFO] DealController.save validated payments {"deal_id":"local_699eaf23c0873","contact_id":"local_699eaf23b95158.14445425","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-02-25 14:34:12] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_699eaf23b95158.14445425","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:34:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699eaf23c0873","contact_didar_id":"local_699eaf23b95158.14445425","title":"معامله اول 9122789606 | vip","base_title_used":"معامله اول 9122789606","services_text":"vip","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["vip"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"علی غفوری","existing_deal":"YES","existing_deal_id":"local_699eaf23c0873","existing_deal_status":"Pending","server_time":"2026-02-25 14:34:12","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-25 14:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:34:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699eaf23c0873","contact_id":"local_699eaf23b95158.14445425","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله اول 9122789606 | vip","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-02-25 14:34:12","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 14:35:50] [INFO] Checking activity reminders 
[2026-02-25 14:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:36:20] [INFO] Checking activity reminders 
[2026-02-25 14:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:32] [INFO] Checking activity reminders 
[2026-02-25 14:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-25 14:36:39] [INFO] Checking activity reminders 
[2026-02-25 14:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:41] [INFO] Checking activity reminders 
[2026-02-25 14:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:42] [INFO] Checking activity reminders 
[2026-02-25 14:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:36:50] [INFO] Checking activity reminders 
[2026-02-25 14:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:37:13] [INFO] Checking activity reminders 
[2026-02-25 14:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:37:20] [INFO] Checking activity reminders 
[2026-02-25 14:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:37:43] [INFO] Checking activity reminders 
[2026-02-25 14:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:37:50] [INFO] Checking activity reminders 
[2026-02-25 14:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:38:13] [INFO] Checking activity reminders 
[2026-02-25 14:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:38:20] [INFO] Checking activity reminders 
[2026-02-25 14:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:38:21] [INFO] Checking activity reminders 
[2026-02-25 14:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:38:27] [INFO] Activity save request {"post_data":{"contact_id":"20553","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"طلا 105\/ نقره 50گرم \/ کانال 405 واریز شد 4 ت رزروی تسویه 18 اسفند \r\nکانال 54 ت هست","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 14:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 14:38:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 14:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20553","note_was_empty":true}
[2026-02-25 14:38:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"20553","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 14:38:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ed82bb3f200.07139800","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 14:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:27] [INFO] Activity saved successfully {"activity_id":"local_activity_699ed82bb3f200.07139800"}
[2026-02-25 14:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:27] [INFO] Updating virtual stage {"contact_id":"20553","stage_name":"deal_registered","force":false}
[2026-02-25 14:38:27] [INFO] Virtual stage successfully saved {"contact_id":"20553","stage_name":"deal_registered"}
[2026-02-25 14:38:27] [INFO] Virtual stage updated after activity save {"contact_id":"20553"}
[2026-02-25 14:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:38:30] [INFO] generateDealTitle result {"contact_id":"20553","person_name":"نیری","mobile":"9397087808","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9397087808"}
[2026-02-25 14:38:43] [INFO] Checking activity reminders 
[2026-02-25 14:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:38:50] [INFO] Checking activity reminders 
[2026-02-25 14:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:10] [INFO] Checking activity reminders 
[2026-02-25 14:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:11] [INFO] Checking activity reminders 
[2026-02-25 14:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:13] [INFO] Checking activity reminders 
[2026-02-25 14:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:14] [INFO] Checking activity reminders 
[2026-02-25 14:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:16] [INFO] Checking activity reminders 
[2026-02-25 14:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:17] [INFO] Checking activity reminders 
[2026-02-25 14:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:20] [INFO] Checking activity reminders 
[2026-02-25 14:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:24] [INFO] Checking activity reminders 
[2026-02-25 14:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:39:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:39:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:39:39] [INFO] Checking activity reminders 
[2026-02-25 14:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:39] [INFO] Checking activity reminders 
[2026-02-25 14:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:43] [INFO] Checking activity reminders 
[2026-02-25 14:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:43] [INFO] Checking activity reminders 
[2026-02-25 14:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:39:45] [INFO] Activity save request {"post_data":{"contact_id":"16318","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عمده سرمایه در ملک و زمین \r\nاصلا اهل نوسان گیری نیست \r\nطلا مقدار کم و بلند مدت خریده \r\nمیگه اوایل برام کانال جذاب بود \/خرید خودرو به دید  مصرف \r\nبرای تمدید فعلا برنامه ای نداره \r\nارسال ادرس نمایشگاه \r\nبرای عضویت در کانال اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 14:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 14:39:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 14:39:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 14:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 14:39:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16318","note_was_empty":true}
[2026-02-25 14:39:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"16318","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 14:39:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ed879d11ec2.53904253","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 14:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 14:39:45] [INFO] Activity saved successfully {"activity_id":"local_activity_699ed879d11ec2.53904253"}
[2026-02-25 14:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 14:39:45] [INFO] Updating virtual stage {"contact_id":"16318","stage_name":"deal_registered","force":false}
[2026-02-25 14:39:45] [INFO] Virtual stage successfully saved {"contact_id":"16318","stage_name":"deal_registered"}
[2026-02-25 14:39:45] [INFO] Virtual stage updated after activity save {"contact_id":"16318"}
[2026-02-25 14:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-02-25 14:39:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"vip","contact_id":"20553","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:39:55","session_id":"7jlu90j8o8ouqkldc91p53cojo"}
[2026-02-25 14:39:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:39:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"vip","contact_id":"20553","is_new_deal":true}
[2026-02-25 14:39:55] [INFO] extractPhoneFromDealTitle called {"input_title":"vip"}
[2026-02-25 14:39:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"vip"}
[2026-02-25 14:39:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"vip"}
[2026-02-25 14:39:55] [INFO] getContactPrimaryPhone called {"contact_id":"20553"}
[2026-02-25 14:39:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:39:55] [INFO] getContactPrimaryPhone result {"contact_id":"20553","person_found":true,"primary_phone":"9397087808"}
[2026-02-25 14:39:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9397087808"}
[2026-02-25 14:39:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9397087808","contact_id":"20553","deal_id":"","is_new_deal":true,"incoming_title":"vip","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 14:39:55"}
[2026-02-25 14:39:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:39:55] [INFO] generateDealTitle result {"contact_id":"20553","person_name":"نیری","mobile":"9397087808","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9397087808"}
[2026-02-25 14:39:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20553","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 14:39:55] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20553","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:39:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20553","title":"معامله دوم 9397087808 | vip","base_title_used":"معامله دوم 9397087808","services_text":"vip","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":4000000,"payments_present":true,"requested_services":["vip"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نیری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 14:39:55","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-25 14:39:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:39:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 14:39:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20553","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9397087808 | vip","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":4000000,"server_time":"2026-02-25 14:39:55","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:39:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-02-25 14:40:01] [INFO] Checking activity reminders 
[2026-02-25 14:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:03] [INFO] Checking activity reminders 
[2026-02-25 14:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:40:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:40:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:40:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:40:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:40:11] [INFO] Checking activity reminders 
[2026-02-25 14:40:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:13] [INFO] Checking activity reminders 
[2026-02-25 14:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:20] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:40:27] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:40:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"11203","deal_id":"local_699ed62b50bc66.33540427","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 14:40:33","session_id":"7jlu90j8o8ouqkldc91p53cojo"}
[2026-02-25 14:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:40:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"11203","is_new_deal":false}
[2026-02-25 14:40:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-02-25 14:40:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-02-25 14:40:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-02-25 14:40:33] [INFO] getContactPrimaryPhone called {"contact_id":"11203"}
[2026-02-25 14:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:40:33] [INFO] getContactPrimaryPhone result {"contact_id":"11203","person_found":true,"primary_phone":"9197110068"}
[2026-02-25 14:40:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197110068"}
[2026-02-25 14:40:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197110068","contact_id":"11203","deal_id":"local_699ed62b50bc66.33540427","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 14:40:33"}
[2026-02-25 14:40:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed62b50bc66.33540427","contact_id":"11203","existing_deal_found":true,"existing_contact_id":"11203","existing_title":"معامله دوم 9197110068 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 14:40:33"}
[2026-02-25 14:40:33] [INFO] DealController.save validated payments {"deal_id":"local_699ed62b50bc66.33540427","contact_id":"11203","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 14:40:33] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11203","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 14:40:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed62b50bc66.33540427","contact_didar_id":"11203","title":"معامله دوم 9197110068 | کانال VIP","base_title_used":"معامله دوم 9197110068","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":5000000,"payments_present":true,"requested_services":["کانال VIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مرادی","existing_deal":"YES","existing_deal_id":"local_699ed62b50bc66.33540427","existing_deal_status":"Pending","server_time":"2026-02-25 14:40:33","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-25 14:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:40:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed62b50bc66.33540427","contact_id":"11203","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9197110068 | کانال VIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":5000000,"server_time":"2026-02-25 14:40:33","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 14:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-02-25 14:40:33] [INFO] Checking activity reminders 
[2026-02-25 14:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:42] [INFO] Checking activity reminders 
[2026-02-25 14:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:40:43] [INFO] Checking activity reminders 
[2026-02-25 14:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:13] [INFO] Checking activity reminders 
[2026-02-25 14:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:13] [INFO] Checking activity reminders 
[2026-02-25 14:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:34] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:41:41] [INFO] Checking activity reminders 
[2026-02-25 14:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:42] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:41:43] [INFO] Checking activity reminders 
[2026-02-25 14:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:45] [INFO] Checking activity reminders 
[2026-02-25 14:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b878c67c10.78338797","person_id":"21750"}
[2026-02-25 14:42:14] [INFO] Checking activity reminders 
[2026-02-25 14:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:42:14] [INFO] Checking activity reminders 
[2026-02-25 14:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:42:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:42:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:42:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:42:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916245606597.86058384","person_id":"21678"}
[2026-02-25 14:42:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:42:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:42:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:42:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:42:43] [INFO] Checking activity reminders 
[2026-02-25 14:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:42:44] [INFO] Checking activity reminders 
[2026-02-25 14:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:42:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:42:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:42:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:43:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:43:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:43:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:43:14] [INFO] Checking activity reminders 
[2026-02-25 14:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:15] [INFO] Checking activity reminders 
[2026-02-25 14:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:43:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:43:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:43:25] [INFO] Checking activity reminders 
[2026-02-25 14:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:25] [INFO] Checking activity reminders 
[2026-02-25 14:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:43:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:43:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:43:25] [INFO] Checking activity reminders 
[2026-02-25 14:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:32] [INFO] Checking activity reminders 
[2026-02-25 14:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:38] [INFO] Checking activity reminders 
[2026-02-25 14:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:42] [INFO] Checking activity reminders 
[2026-02-25 14:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:44] [INFO] Checking activity reminders 
[2026-02-25 14:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:50] [INFO] Checking activity reminders 
[2026-02-25 14:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:55] [INFO] Checking activity reminders 
[2026-02-25 14:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:43:56] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 14:43:59] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_products"}
[2026-02-25 14:43:59] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_leads"}
[2026-02-25 14:43:59] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 14:44:02] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 14:44:05] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_products"}
[2026-02-25 14:44:05] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_deals"}
[2026-02-25 14:44:10] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 14:44:16] [INFO] Checking activity reminders 
[2026-02-25 14:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:44:20] [INFO] Checking activity reminders 
[2026-02-25 14:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:44:32] [INFO] Checking activity reminders 
[2026-02-25 14:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:44:52] [INFO] Checking activity reminders 
[2026-02-25 14:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:44:55] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:44:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:44:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:44:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:44:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:45:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:45:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:45:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:45:03] [INFO] Checking activity reminders 
[2026-02-25 14:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:45:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Activity save request {"post_data":{"contact_id":"1211","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 14:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 14:45:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 14:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1211","note_was_empty":true}
[2026-02-25 14:45:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"1211","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 14:45:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ed9ce3c3617.54820348","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 14:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Activity saved successfully {"activity_id":"local_activity_699ed9ce3c3617.54820348"}
[2026-02-25 14:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Updating virtual stage {"contact_id":"1211","stage_name":"deal_registered","force":false}
[2026-02-25 14:45:26] [INFO] Virtual stage successfully saved {"contact_id":"1211","stage_name":"deal_registered"}
[2026-02-25 14:45:26] [INFO] Virtual stage updated after activity save {"contact_id":"1211"}
[2026-02-25 14:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-02-25 14:45:26] [INFO] Checking activity reminders 
[2026-02-25 14:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:45:33] [INFO] Checking activity reminders 
[2026-02-25 14:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:45:47] [ERROR] API Error {"action":"get_products","exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'p.service_lookup_item_id' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":20,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(20): PDO->query()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(21): App\\Repositories\\ProductRepository->all()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1079): App\\Controllers\\ProductController->getList()\n#3 {main}"}}
[2026-02-25 14:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 14:45:57] [INFO] Checking activity reminders 
[2026-02-25 14:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:46:03] [INFO] Checking activity reminders 
[2026-02-25 14:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:46:19] [INFO] Checking activity reminders 
[2026-02-25 14:46:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:46:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:46:33] [INFO] Checking activity reminders 
[2026-02-25 14:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:46:55] [INFO] Checking activity reminders 
[2026-02-25 14:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:47:03] [INFO] Added column to deals table {"column":"invoice_code"}
[2026-02-25 14:47:03] [INFO] Added column to products table {"column":"service_lookup_item_id"}
[2026-02-25 14:47:03] [INFO] Added column to transactions table {"column":"invoice_code"}
[2026-02-25 14:52:46] [INFO] Backfilled products.service_lookup_item_id by exact name match {"updated_rows":12}
[2026-02-25 14:53:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:53:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:53:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:53:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:53:04] [INFO] Checking activity reminders 
[2026-02-25 14:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:53:28] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-01","date_to":"2026-02-25","person_date_from":"2026-02-01","person_date_to":"2026-02-25","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 14:53:28] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 14:53:32] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 14:53:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 14:53:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 14:53:35] [INFO] Checking activity reminders 
[2026-02-25 14:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:53:35] [INFO] Checking activity reminders 
[2026-02-25 14:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:53:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:53:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:53:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:53:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:53:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 14:53:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 14:53:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 14:53:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 14:54:03] [INFO] Checking activity reminders 
[2026-02-25 14:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:54:06] [INFO] Checking activity reminders 
[2026-02-25 14:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:54:34] [INFO] Checking activity reminders 
[2026-02-25 14:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:54:36] [INFO] Checking activity reminders 
[2026-02-25 14:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:55:05] [INFO] Checking activity reminders 
[2026-02-25 14:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:55:07] [INFO] Checking activity reminders 
[2026-02-25 14:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:55:35] [INFO] Checking activity reminders 
[2026-02-25 14:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:55:37] [INFO] Checking activity reminders 
[2026-02-25 14:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:55:50] [ERROR] API Error {"action":"save_product","exception":{"message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'بوت کمپ' for key 'products.uniq_product_name'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php","line":101,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/ProductRepository.php(101): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ProductController.php(60): App\\Repositories\\ProductRepository->create()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(1095): App\\Controllers\\ProductController->save()\n#3 {main}"}}
[2026-02-25 14:56:06] [INFO] Checking activity reminders 
[2026-02-25 14:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:56:07] [INFO] Checking activity reminders 
[2026-02-25 14:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:56:37] [INFO] Checking activity reminders 
[2026-02-25 14:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:56:37] [INFO] Checking activity reminders 
[2026-02-25 14:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:57:07] [INFO] Checking activity reminders 
[2026-02-25 14:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:57:08] [INFO] Checking activity reminders 
[2026-02-25 14:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:57:37] [INFO] Checking activity reminders 
[2026-02-25 14:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:57:39] [INFO] Checking activity reminders 
[2026-02-25 14:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:58:07] [INFO] Checking activity reminders 
[2026-02-25 14:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:58:09] [INFO] Checking activity reminders 
[2026-02-25 14:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:58:37] [INFO] Checking activity reminders 
[2026-02-25 14:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:59:08] [INFO] Checking activity reminders 
[2026-02-25 14:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 14:59:58] [INFO] Checking activity reminders 
[2026-02-25 14:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 14:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:00:50] [INFO] Checking activity reminders 
[2026-02-25 15:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:07:02] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:07:03] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:07:05] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 15:07:07] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_products"}
[2026-02-25 15:07:07] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 15:07:07] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 15:08:02] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:08:22] [INFO] Checking activity reminders 
[2026-02-25 15:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:08:23] [INFO] Checking activity reminders 
[2026-02-25 15:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:08:25] [INFO] Checking activity reminders 
[2026-02-25 15:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:08:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:08:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:08:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:08:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:08:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:08:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:08:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_kpi_products"}
[2026-02-25 15:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_performance_dashboard"}
[2026-02-25 15:09:02] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:09:03] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 15:10:02] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:11:35] [INFO] Checking activity reminders 
[2026-02-25 15:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:11:35] [INFO] Checking activity reminders 
[2026-02-25 15:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:11:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:11:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:11:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:11:49] [INFO] Checking activity reminders 
[2026-02-25 15:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_products"}
[2026-02-25 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_deals"}
[2026-02-25 15:12:21] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:12:28] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-25 15:12:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:12:38] [INFO] Checking activity reminders 
[2026-02-25 15:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:12:42] [INFO] Checking activity reminders 
[2026-02-25 15:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:12:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:12:55] [INFO] Checking activity reminders 
[2026-02-25 15:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:13:04] [INFO] Checking activity reminders 
[2026-02-25 15:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:13:16] [INFO] Checking activity reminders 
[2026-02-25 15:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:13:29] [INFO] Checking activity reminders 
[2026-02-25 15:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:13:32] [INFO] Checking activity reminders 
[2026-02-25 15:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:13:46] [INFO] Checking activity reminders 
[2026-02-25 15:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:14:16] [INFO] Checking activity reminders 
[2026-02-25 15:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:14:47] [INFO] Checking activity reminders 
[2026-02-25 15:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:14:54] [INFO] Checking activity reminders 
[2026-02-25 15:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:15:17] [INFO] Checking activity reminders 
[2026-02-25 15:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:15:24] [INFO] Checking activity reminders 
[2026-02-25 15:15:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:15:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:15:47] [INFO] Checking activity reminders 
[2026-02-25 15:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699162b9846618.87148560","person_id":"21681"}
[2026-02-25 15:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699162b9846618.87148560","person_id":"21681"}
[2026-02-25 15:15:55] [INFO] Checking activity reminders 
[2026-02-25 15:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:16:17] [INFO] Checking activity reminders 
[2026-02-25 15:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:16:25] [INFO] Checking activity reminders 
[2026-02-25 15:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:16:47] [INFO] Checking activity reminders 
[2026-02-25 15:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:16:56] [INFO] Checking activity reminders 
[2026-02-25 15:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:17:17] [INFO] Checking activity reminders 
[2026-02-25 15:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:17:47] [INFO] Checking activity reminders 
[2026-02-25 15:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:17:50] [INFO] Checking activity reminders 
[2026-02-25 15:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:17:54] [INFO] Checking activity reminders 
[2026-02-25 15:17:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:17:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:18:05] [INFO] Checking activity reminders 
[2026-02-25 15:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:18:35] [INFO] Checking activity reminders 
[2026-02-25 15:18:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:18:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:18:52] [INFO] Checking activity reminders 
[2026-02-25 15:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:18:55] [INFO] Checking activity reminders 
[2026-02-25 15:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:18:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:19:13] [INFO] Checking activity reminders 
[2026-02-25 15:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:19:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:19:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:19:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:19:16] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 15:19:16] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 15:19:19] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 15:19:28] [INFO] Checking activity reminders 
[2026-02-25 15:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:19:44] [INFO] Checking activity reminders 
[2026-02-25 15:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:20:02] [INFO] Checking activity reminders 
[2026-02-25 15:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:20:32] [INFO] Checking activity reminders 
[2026-02-25 15:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:21:03] [INFO] Checking activity reminders 
[2026-02-25 15:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:21:48] [INFO] Checking activity reminders 
[2026-02-25 15:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:21:51] [INFO] Checking activity reminders 
[2026-02-25 15:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:28:59] [INFO] Checking activity reminders 
[2026-02-25 15:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:29:29] [INFO] Checking activity reminders 
[2026-02-25 15:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:29:51] [INFO] Checking activity reminders 
[2026-02-25 15:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:30:36] [INFO] Checking activity reminders 
[2026-02-25 15:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:30:44] [INFO] Checking activity reminders 
[2026-02-25 15:30:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:30:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:30:48] [INFO] Checking activity reminders 
[2026-02-25 15:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:30:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:30:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:30:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:30:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 15:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 15:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-25 15:31:45] [INFO] Checking activity reminders 
[2026-02-25 15:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19938","person_id":"14618"}
[2026-02-25 15:33:25] [INFO] Checking activity reminders 
[2026-02-25 15:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:33:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15888","person_id":"7345"}
[2026-02-25 15:33:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-02-25 15:33:56] [INFO] Checking activity reminders 
[2026-02-25 15:33:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:33:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:48:21] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:50:21] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:50:24] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:51:22] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:51:24] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_products"}
[2026-02-25 15:51:24] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_leads"}
[2026-02-25 15:51:26] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_leads"}
[2026-02-25 15:51:36] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 15:51:36] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 15:51:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:51:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 15:51:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 15:51:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 15:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:51:53] [INFO] Lead update received {"contact_id":"483","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:51:53] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"483"}
[2026-02-25 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:53:09] [INFO] Checking activity reminders 
[2026-02-25 15:53:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:53:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-02-25 15:53:26] [INFO] Lead update received {"contact_id":"6291","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 15:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-02-25 15:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-02-25 15:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-02-25 15:53:26] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6291"}
[2026-02-25 15:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-02-25 15:54:13] [INFO] Checking activity reminders 
[2026-02-25 15:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:54:14] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:54:15] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-02-25 15:54:18] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:54:23] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:54:25] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:54:28] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:54:29] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_products"}
[2026-02-25 15:54:29] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:54:43] [INFO] Checking activity reminders 
[2026-02-25 15:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:55:05] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:55:07] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:55:07] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:55:14] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:55:16] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:55:16] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"get_leads"}
[2026-02-25 15:55:27] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:55:28] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"check_reminders"}
[2026-02-25 15:55:32] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:55:32] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"lookup_mobile"}
[2026-02-25 15:55:33] [WARNING] Auth check failed - not authenticated {"session_id":"q7st04q5td1nn9d8rqrqi60ne2","session_keys":[],"action":"log_client_event"}
[2026-02-25 15:55:37] [INFO] Checking activity reminders 
[2026-02-25 15:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:55:39] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-25 15:55:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 15:55:42] [INFO] Checking activity reminders 
[2026-02-25 15:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:12] [INFO] Checking activity reminders 
[2026-02-25 15:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:56:14] [INFO] Lead update received {"contact_id":"11386","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 15:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:14] [DEBUG] findByPhone: Found person {"phones":["9372568295"],"found_id":"9388","found_didar_id":"483","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:14] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9372568295","found_didar_id":"483","found_local_id":"9388","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:56:14] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9372568295","found_id":"9388","found_didar_id":"483","exclude_id":13985,"exclude_didar_id":"11386"}
[2026-02-25 15:56:14] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای شعبانی شعبانی (مسئول: خانم شکیبا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(361): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(493): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-02-25 15:56:18] [INFO] Lead update received {"contact_id":"11386","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 15:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:18] [DEBUG] findByPhone: Found person {"phones":["9372568295"],"found_id":"9388","found_didar_id":"483","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:18] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9372568295","found_didar_id":"483","found_local_id":"9388","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:56:18] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9372568295","found_id":"9388","found_didar_id":"483","exclude_id":13985,"exclude_didar_id":"11386"}
[2026-02-25 15:56:18] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای شعبانی شعبانی (مسئول: خانم شکیبا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(361): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(493): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-02-25 15:56:31] [INFO] Checking activity reminders 
[2026-02-25 15:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:56:32] [INFO] Checking activity reminders 
[2026-02-25 15:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:56:40] [INFO] Checking activity reminders 
[2026-02-25 15:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 15:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 15:56:42] [INFO] Lead update received {"contact_id":"11386","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 15:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 15:56:42] [DEBUG] findByPhone: Found person {"phones":["9372568295"],"found_id":"9388","found_didar_id":"483","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:42] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9372568295","found_didar_id":"483","found_local_id":"9388","found_name":"شعبانی شعبانی"}
[2026-02-25 15:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"483","person_id":"9388"}
[2026-02-25 15:56:42] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9372568295","found_id":"9388","found_didar_id":"483","exclude_id":13985,"exclude_didar_id":"11386"}
[2026-02-25 15:56:42] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای شعبانی شعبانی (مسئول: خانم شکیبا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(361): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(493): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-02-25 16:01:15] [INFO] Checking activity reminders 
[2026-02-25 16:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:01:16] [INFO] Checking activity reminders 
[2026-02-25 16:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:01:19] [INFO] Checking activity reminders 
[2026-02-25 16:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:01:50] [INFO] Checking activity reminders 
[2026-02-25 16:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:02:20] [INFO] Checking activity reminders 
[2026-02-25 16:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:02:47] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:02:48] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:02:50] [INFO] Checking activity reminders 
[2026-02-25 16:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:02:53] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:02:53] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:02:57] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:02:57] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:03:16] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 16:03:17] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_products"}
[2026-02-25 16:03:17] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_products"}
[2026-02-25 16:03:17] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:03:17] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:03:20] [INFO] Checking activity reminders 
[2026-02-25 16:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 16:03:30] [INFO] Checking activity reminders 
[2026-02-25 16:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:03:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-25 16:03:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:03:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:03:50] [INFO] Checking activity reminders 
[2026-02-25 16:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:04:03] [INFO] Checking activity reminders 
[2026-02-25 16:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:04:06] [INFO] Checking activity reminders 
[2026-02-25 16:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:04:07] [INFO] Activity save request {"post_data":{"contact_id":"20834","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ هدف تمدید کانال ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:04:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:04:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:04:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20834","note_was_empty":true}
[2026-02-25 16:04:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"20834","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 16:04:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699eec3f9daf54.44271036","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:04:07] [INFO] Activity saved successfully {"activity_id":"local_activity_699eec3f9daf54.44271036"}
[2026-02-25 16:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:04:07] [INFO] Updating virtual stage {"contact_id":"20834","stage_name":"deal_registered","force":false}
[2026-02-25 16:04:07] [INFO] Virtual stage successfully saved {"contact_id":"20834","stage_name":"deal_registered"}
[2026-02-25 16:04:07] [INFO] Virtual stage updated after activity save {"contact_id":"20834"}
[2026-02-25 16:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20834","person_id":"20051"}
[2026-02-25 16:04:20] [INFO] Checking activity reminders 
[2026-02-25 16:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:04:50] [INFO] Checking activity reminders 
[2026-02-25 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:05:20] [INFO] Checking activity reminders 
[2026-02-25 16:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:05:37] [INFO] Checking activity reminders 
[2026-02-25 16:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:05:43] [INFO] Checking activity reminders 
[2026-02-25 16:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:05:50] [INFO] Checking activity reminders 
[2026-02-25 16:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:05:57] [INFO] Checking activity reminders 
[2026-02-25 16:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:13] [INFO] Checking activity reminders 
[2026-02-25 16:06:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:15] [INFO] Lead update received {"contact_id":"16289","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 16:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-02-25 16:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-02-25 16:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-02-25 16:06:15] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16289"}
[2026-02-25 16:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-02-25 16:06:20] [INFO] Checking activity reminders 
[2026-02-25 16:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:43] [INFO] Checking activity reminders 
[2026-02-25 16:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:52] [INFO] Checking activity reminders 
[2026-02-25 16:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:54] [INFO] Checking activity reminders 
[2026-02-25 16:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:06:59] [INFO] Checking activity reminders 
[2026-02-25 16:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:01] [INFO] Activity save request {"post_data":{"contact_id":"7771","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:07:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:07:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:07:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7771","note_was_empty":true}
[2026-02-25 16:07:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"7771","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 16:07:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699eeced37b133.08046148","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:07:01] [INFO] Activity saved successfully {"activity_id":"local_activity_699eeced37b133.08046148"}
[2026-02-25 16:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:07:01] [INFO] Updating virtual stage {"contact_id":"7771","stage_name":"deal_registered","force":false}
[2026-02-25 16:07:01] [INFO] Virtual stage successfully saved {"contact_id":"7771","stage_name":"deal_registered"}
[2026-02-25 16:07:01] [INFO] Virtual stage updated after activity save {"contact_id":"7771"}
[2026-02-25 16:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:07:05] [INFO] Checking activity reminders 
[2026-02-25 16:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:08] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:07:13] [INFO] Checking activity reminders 
[2026-02-25 16:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:20] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:07:20] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"get_leads"}
[2026-02-25 16:07:25] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:07:28] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:07:28] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"lookup_mobile"}
[2026-02-25 16:07:29] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:07:32] [INFO] Checking activity reminders 
[2026-02-25 16:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:35] [INFO] Checking activity reminders 
[2026-02-25 16:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:35] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-25 16:07:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:07:39] [INFO] Checking activity reminders 
[2026-02-25 16:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:07:43] [INFO] Checking activity reminders 
[2026-02-25 16:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:07:48] [INFO] Checking activity reminders 
[2026-02-25 16:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:05] [INFO] Checking activity reminders 
[2026-02-25 16:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:06] [INFO] Checking activity reminders 
[2026-02-25 16:08:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:13] [INFO] Checking activity reminders 
[2026-02-25 16:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:28] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-02-25 16:08:28] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-02-25 16:08:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:08:35] [INFO] Checking activity reminders 
[2026-02-25 16:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:36] [INFO] Checking activity reminders 
[2026-02-25 16:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:43] [INFO] Checking activity reminders 
[2026-02-25 16:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:08:58] [INFO] Checking activity reminders 
[2026-02-25 16:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:05] [INFO] Checking activity reminders 
[2026-02-25 16:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:06] [INFO] Checking activity reminders 
[2026-02-25 16:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:14] [INFO] Checking activity reminders 
[2026-02-25 16:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:28] [INFO] Checking activity reminders 
[2026-02-25 16:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:35] [INFO] Checking activity reminders 
[2026-02-25 16:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:43] [INFO] Checking activity reminders 
[2026-02-25 16:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:44] [INFO] Checking activity reminders 
[2026-02-25 16:09:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-02-25 16:09:54] [INFO] Checking activity reminders 
[2026-02-25 16:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:09:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:10:05] [INFO] Checking activity reminders 
[2026-02-25 16:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:10:14] [INFO] Checking activity reminders 
[2026-02-25 16:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:10:24] [INFO] Checking activity reminders 
[2026-02-25 16:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:10:35] [INFO] Checking activity reminders 
[2026-02-25 16:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:10:44] [INFO] Checking activity reminders 
[2026-02-25 16:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:10:54] [INFO] Checking activity reminders 
[2026-02-25 16:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:11:05] [INFO] Checking activity reminders 
[2026-02-25 16:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:11:14] [INFO] Checking activity reminders 
[2026-02-25 16:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:11:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:35] [INFO] Checking activity reminders 
[2026-02-25 16:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:11:41] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 16:11:41] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:11:44] [INFO] Checking activity reminders 
[2026-02-25 16:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:11:48] [WARNING] Auth check failed - not authenticated {"session_id":"ngkgjnk6vlidkprgavh0vfq1eo","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:11:48] [WARNING] Auth check failed - not authenticated {"session_id":"ngkgjnk6vlidkprgavh0vfq1eo","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:11:51] [INFO] Activity save request {"post_data":{"contact_id":"4120","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:11:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4120","note_was_empty":true}
[2026-02-25 16:11:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"4120","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 16:11:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699eee0f8ac987.31827419","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:51] [INFO] Activity saved successfully {"activity_id":"local_activity_699eee0f8ac987.31827419"}
[2026-02-25 16:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:51] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-02-25 16:11:51] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-02-25 16:11:51] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-02-25 16:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-25 16:11:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 16:11:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 16:12:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:12:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:12:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:12:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:12:06] [INFO] Checking activity reminders 
[2026-02-25 16:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:12:14] [INFO] Checking activity reminders 
[2026-02-25 16:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:12:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:12:31] [INFO] Checking activity reminders 
[2026-02-25 16:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:12:36] [INFO] Checking activity reminders 
[2026-02-25 16:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:12:44] [INFO] Checking activity reminders 
[2026-02-25 16:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:12:49] [INFO] Deal reactivation requested {"deal_id":"local_699d6e7a37cb10.90844750","old_status":"Won","old_stage":"اتمام","new_stage":"پرداخت","reason":""}
[2026-02-25 16:12:49] [INFO] Deal successfully reactivated {"deal_id":"local_699d6e7a37cb10.90844750","new_stage":"پرداخت","reason":""}
[2026-02-25 16:12:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:13:01] [INFO] Checking activity reminders 
[2026-02-25 16:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:04] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:13:06] [INFO] Checking activity reminders 
[2026-02-25 16:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:09] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_products"}
[2026-02-25 16:13:09] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_leads"}
[2026-02-25 16:13:13] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_products"}
[2026-02-25 16:13:13] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"get_deals"}
[2026-02-25 16:13:14] [INFO] Checking activity reminders 
[2026-02-25 16:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:17] [INFO] Checking activity reminders 
[2026-02-25 16:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:36] [INFO] Checking activity reminders 
[2026-02-25 16:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:44] [INFO] Checking activity reminders 
[2026-02-25 16:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:13:49] [INFO] Checking activity reminders 
[2026-02-25 16:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:14:06] [INFO] Checking activity reminders 
[2026-02-25 16:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:14] [INFO] Checking activity reminders 
[2026-02-25 16:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:20] [INFO] Checking activity reminders 
[2026-02-25 16:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:36] [INFO] Checking activity reminders 
[2026-02-25 16:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:44] [INFO] Checking activity reminders 
[2026-02-25 16:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:14:51] [INFO] Checking activity reminders 
[2026-02-25 16:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:15:06] [INFO] Checking activity reminders 
[2026-02-25 16:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:15:14] [INFO] Checking activity reminders 
[2026-02-25 16:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:15:36] [INFO] Checking activity reminders 
[2026-02-25 16:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:15:44] [INFO] Checking activity reminders 
[2026-02-25 16:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:16:06] [INFO] Checking activity reminders 
[2026-02-25 16:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:16:15] [INFO] Checking activity reminders 
[2026-02-25 16:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:16:36] [INFO] Checking activity reminders 
[2026-02-25 16:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:16:45] [INFO] Checking activity reminders 
[2026-02-25 16:16:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:16:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:16:53] [INFO] Checking activity reminders 
[2026-02-25 16:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:06] [INFO] Checking activity reminders 
[2026-02-25 16:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:15] [INFO] Checking activity reminders 
[2026-02-25 16:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:19] [INFO] Activity save request {"post_data":{"contact_id":"12752","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:17:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:17:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:17:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12752","note_was_empty":true}
[2026-02-25 16:17:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"12752","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 16:17:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699eef576d9fe5.41810135","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:17:19] [INFO] Activity saved successfully {"activity_id":"local_activity_699eef576d9fe5.41810135"}
[2026-02-25 16:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:17:19] [INFO] Updating virtual stage {"contact_id":"12752","stage_name":"contact_followup","force":false}
[2026-02-25 16:17:19] [INFO] Virtual stage successfully saved {"contact_id":"12752","stage_name":"contact_followup"}
[2026-02-25 16:17:19] [INFO] Virtual stage updated after activity save {"contact_id":"12752"}
[2026-02-25 16:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-02-25 16:17:23] [INFO] Checking activity reminders 
[2026-02-25 16:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:30] [INFO] Checking activity reminders 
[2026-02-25 16:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:37] [INFO] Checking activity reminders 
[2026-02-25 16:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:45] [INFO] Checking activity reminders 
[2026-02-25 16:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:17:53] [INFO] Checking activity reminders 
[2026-02-25 16:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:06] [INFO] Checking activity reminders 
[2026-02-25 16:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:08] [INFO] Checking activity reminders 
[2026-02-25 16:18:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:18:15] [INFO] Checking activity reminders 
[2026-02-25 16:18:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:24] [INFO] Checking activity reminders 
[2026-02-25 16:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:38] [INFO] Checking activity reminders 
[2026-02-25 16:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:45] [INFO] Checking activity reminders 
[2026-02-25 16:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:18:54] [INFO] Checking activity reminders 
[2026-02-25 16:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:08] [INFO] Checking activity reminders 
[2026-02-25 16:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:15] [INFO] Checking activity reminders 
[2026-02-25 16:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:24] [INFO] Checking activity reminders 
[2026-02-25 16:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:38] [INFO] Checking activity reminders 
[2026-02-25 16:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:45] [INFO] Checking activity reminders 
[2026-02-25 16:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:19:54] [INFO] Checking activity reminders 
[2026-02-25 16:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:08] [INFO] Checking activity reminders 
[2026-02-25 16:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:15] [INFO] Checking activity reminders 
[2026-02-25 16:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:24] [INFO] Checking activity reminders 
[2026-02-25 16:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:38] [INFO] Checking activity reminders 
[2026-02-25 16:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:45] [INFO] Checking activity reminders 
[2026-02-25 16:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:20:54] [INFO] Checking activity reminders 
[2026-02-25 16:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:08] [INFO] Checking activity reminders 
[2026-02-25 16:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:15] [INFO] Checking activity reminders 
[2026-02-25 16:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:24] [INFO] Checking activity reminders 
[2026-02-25 16:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:38] [INFO] Checking activity reminders 
[2026-02-25 16:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:45] [INFO] Checking activity reminders 
[2026-02-25 16:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:21:54] [INFO] Checking activity reminders 
[2026-02-25 16:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:08] [INFO] Checking activity reminders 
[2026-02-25 16:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:15] [INFO] Checking activity reminders 
[2026-02-25 16:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:23] [INFO] Checking activity reminders 
[2026-02-25 16:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:24] [INFO] Checking activity reminders 
[2026-02-25 16:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:22:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:22:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:22:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:22:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:22:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:22:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:22:38] [INFO] Checking activity reminders 
[2026-02-25 16:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:42] [INFO] Checking activity reminders 
[2026-02-25 16:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:42] [INFO] Checking activity reminders 
[2026-02-25 16:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:42] [INFO] Checking activity reminders 
[2026-02-25 16:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:45] [INFO] Checking activity reminders 
[2026-02-25 16:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:48] [INFO] Checking activity reminders 
[2026-02-25 16:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:55] [INFO] Checking activity reminders 
[2026-02-25 16:22:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:22:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:22:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:22:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:22:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:23:09] [INFO] Checking activity reminders 
[2026-02-25 16:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:15] [INFO] Checking activity reminders 
[2026-02-25 16:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:25] [INFO] Checking activity reminders 
[2026-02-25 16:23:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:31] [INFO] Checking activity reminders 
[2026-02-25 16:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:35] [INFO] Checking activity reminders 
[2026-02-25 16:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:36] [INFO] Checking activity reminders 
[2026-02-25 16:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:37] [INFO] Checking activity reminders 
[2026-02-25 16:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:39] [INFO] Checking activity reminders 
[2026-02-25 16:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:42] [INFO] Checking activity reminders 
[2026-02-25 16:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:45] [INFO] Checking activity reminders 
[2026-02-25 16:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:46] [INFO] Checking activity reminders 
[2026-02-25 16:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:46] [INFO] Checking activity reminders 
[2026-02-25 16:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:23:55] [INFO] Checking activity reminders 
[2026-02-25 16:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:05] [INFO] Checking activity reminders 
[2026-02-25 16:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:07] [INFO] Checking activity reminders 
[2026-02-25 16:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:09] [INFO] Checking activity reminders 
[2026-02-25 16:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:13] [INFO] Checking activity reminders 
[2026-02-25 16:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:14] [INFO] Checking activity reminders 
[2026-02-25 16:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:16] [INFO] Checking activity reminders 
[2026-02-25 16:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:17] [INFO] Checking activity reminders 
[2026-02-25 16:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:25] [INFO] Checking activity reminders 
[2026-02-25 16:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:38] [INFO] Checking activity reminders 
[2026-02-25 16:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:39] [INFO] Checking activity reminders 
[2026-02-25 16:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:40] [INFO] Checking activity reminders 
[2026-02-25 16:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:46] [INFO] Checking activity reminders 
[2026-02-25 16:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:55] [INFO] Checking activity reminders 
[2026-02-25 16:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:24:55] [INFO] Checking activity reminders 
[2026-02-25 16:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:04] [INFO] Checking activity reminders 
[2026-02-25 16:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:09] [INFO] Checking activity reminders 
[2026-02-25 16:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:16] [INFO] Checking activity reminders 
[2026-02-25 16:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:25] [INFO] Checking activity reminders 
[2026-02-25 16:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:26] [INFO] Checking activity reminders 
[2026-02-25 16:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:36] [INFO] Checking activity reminders 
[2026-02-25 16:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:39] [INFO] Checking activity reminders 
[2026-02-25 16:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:46] [INFO] Checking activity reminders 
[2026-02-25 16:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:25:55] [INFO] Checking activity reminders 
[2026-02-25 16:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:07] [INFO] Checking activity reminders 
[2026-02-25 16:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:09] [INFO] Checking activity reminders 
[2026-02-25 16:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:16] [INFO] Checking activity reminders 
[2026-02-25 16:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:25] [INFO] Checking activity reminders 
[2026-02-25 16:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:38] [INFO] Checking activity reminders 
[2026-02-25 16:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:39] [INFO] Checking activity reminders 
[2026-02-25 16:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:46] [INFO] Checking activity reminders 
[2026-02-25 16:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:56] [INFO] Checking activity reminders 
[2026-02-25 16:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:26:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:26:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:26:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:26:57] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 16:26:57] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 16:27:00] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 16:27:08] [INFO] Checking activity reminders 
[2026-02-25 16:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:09] [INFO] Checking activity reminders 
[2026-02-25 16:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:13] [INFO] KPI calculation started {"filters":{"date_from":"2026-01-25","date_to":"2026-02-24","owner_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","owner_didar_ids":["75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"],"owner_didar_ids_csv":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-01-25","person_date_to":"2026-02-24","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 16:27:13] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":true,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 16:27:17] [INFO] KPI calculation completed {"kpi_mode":"user_specific","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 16:27:26] [INFO] Checking activity reminders 
[2026-02-25 16:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:39] [INFO] Checking activity reminders 
[2026-02-25 16:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:40] [INFO] Checking activity reminders 
[2026-02-25 16:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:56] [INFO] Checking activity reminders 
[2026-02-25 16:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:27:56] [INFO] Checking activity reminders 
[2026-02-25 16:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:10] [INFO] Checking activity reminders 
[2026-02-25 16:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:26] [INFO] Checking activity reminders 
[2026-02-25 16:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:26] [INFO] Checking activity reminders 
[2026-02-25 16:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:40] [INFO] Checking activity reminders 
[2026-02-25 16:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 16:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 16:28:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 16:28:56] [INFO] Checking activity reminders 
[2026-02-25 16:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:28:57] [INFO] Checking activity reminders 
[2026-02-25 16:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 16:29:10] [INFO] Checking activity reminders 
[2026-02-25 16:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69884d81c07af1.20454520","person_id":"21608"}
[2026-02-25 16:29:26] [INFO] Checking activity reminders 
[2026-02-25 16:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:28] [INFO] Checking activity reminders 
[2026-02-25 16:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20844","person_id":"149"}
[2026-02-25 16:29:40] [INFO] Checking activity reminders 
[2026-02-25 16:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:50] [INFO] Checking activity reminders 
[2026-02-25 16:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:55] [INFO] Checking activity reminders 
[2026-02-25 16:29:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:56] [INFO] Checking activity reminders 
[2026-02-25 16:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:29:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:29:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:29:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:30:07] [INFO] Checking activity reminders 
[2026-02-25 16:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:07] [INFO] Checking activity reminders 
[2026-02-25 16:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:07] [INFO] Checking activity reminders 
[2026-02-25 16:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:10] [INFO] Checking activity reminders 
[2026-02-25 16:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:30:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:30:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:30:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:30:26] [INFO] Checking activity reminders 
[2026-02-25 16:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:40] [INFO] Checking activity reminders 
[2026-02-25 16:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:54] [INFO] Checking activity reminders 
[2026-02-25 16:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:30:56] [INFO] Checking activity reminders 
[2026-02-25 16:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:31:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:31:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:31:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:31:10] [INFO] Checking activity reminders 
[2026-02-25 16:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:13] [INFO] Checking activity reminders 
[2026-02-25 16:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:31:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:31:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:31:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:31:27] [INFO] Checking activity reminders 
[2026-02-25 16:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:34] [INFO] Checking activity reminders 
[2026-02-25 16:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:31:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:31:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:31:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:31:40] [INFO] Checking activity reminders 
[2026-02-25 16:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:31:57] [INFO] Checking activity reminders 
[2026-02-25 16:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:32:10] [INFO] Checking activity reminders 
[2026-02-25 16:32:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:32:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:32:14] [INFO] Checking activity reminders 
[2026-02-25 16:32:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:32:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:32:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:32:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:32:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:32:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:32:27] [INFO] Checking activity reminders 
[2026-02-25 16:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:32:40] [INFO] Checking activity reminders 
[2026-02-25 16:32:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:32:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:32:57] [INFO] Checking activity reminders 
[2026-02-25 16:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:33:10] [INFO] Checking activity reminders 
[2026-02-25 16:33:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:33:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:33:27] [INFO] Checking activity reminders 
[2026-02-25 16:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:33:40] [INFO] Checking activity reminders 
[2026-02-25 16:33:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:33:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:33:58] [INFO] Checking activity reminders 
[2026-02-25 16:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:34:10] [INFO] Checking activity reminders 
[2026-02-25 16:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:34:28] [INFO] Checking activity reminders 
[2026-02-25 16:34:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:34:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:34:41] [INFO] Checking activity reminders 
[2026-02-25 16:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:34:58] [INFO] Checking activity reminders 
[2026-02-25 16:34:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:34:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:11] [INFO] Checking activity reminders 
[2026-02-25 16:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:16] [INFO] Checking activity reminders 
[2026-02-25 16:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:28] [INFO] Checking activity reminders 
[2026-02-25 16:35:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:34] [INFO] Activity save request {"post_data":{"contact_id":"20875","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"1 کیلو 300 گرم طلا \/ ملک شمال زمین 205 متر در حال ساخت \/ \r\nکانال 405 هست \/ ارسال ش کارت بیعانه تا قبل 6امروز تسویه 18 اسفند","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:35:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:35:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:35:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20875","note_was_empty":true}
[2026-02-25 16:35:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"20875","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 16:35:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef39e377dd7.42522384","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:35:34] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef39e377dd7.42522384"}
[2026-02-25 16:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:35:34] [INFO] Updating virtual stage {"contact_id":"20875","stage_name":"deal_registered","force":false}
[2026-02-25 16:35:34] [INFO] Virtual stage successfully saved {"contact_id":"20875","stage_name":"deal_registered"}
[2026-02-25 16:35:34] [INFO] Virtual stage updated after activity save {"contact_id":"20875"}
[2026-02-25 16:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 16:35:41] [INFO] Checking activity reminders 
[2026-02-25 16:35:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:47] [INFO] Checking activity reminders 
[2026-02-25 16:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:35:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:35:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:35:51] [INFO] generateDealTitle result {"contact_id":"12398","person_name":"متین غفوری","mobile":"9361188914","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9361188914"}
[2026-02-25 16:35:58] [INFO] Checking activity reminders 
[2026-02-25 16:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:36:11] [INFO] Checking activity reminders 
[2026-02-25 16:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:36:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12398","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:36:25","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 16:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:36:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12398","is_new_deal":true}
[2026-02-25 16:36:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:36:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:36:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:36:25] [INFO] getContactPrimaryPhone called {"contact_id":"12398"}
[2026-02-25 16:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:36:25] [INFO] getContactPrimaryPhone result {"contact_id":"12398","person_found":true,"primary_phone":"9361188914"}
[2026-02-25 16:36:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9361188914"}
[2026-02-25 16:36:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9361188914","contact_id":"12398","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 16:36:25"}
[2026-02-25 16:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:36:25] [INFO] generateDealTitle result {"contact_id":"12398","person_name":"متین غفوری","mobile":"9361188914","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9361188914"}
[2026-02-25 16:36:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12398","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-25 16:36:25] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12398","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 16:36:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12398","title":"معامله سوم 9361188914 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9361188914","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"متین غفوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 16:36:25","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 16:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:36:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 16:36:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12398","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9361188914 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 16:36:25","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 16:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:36:28] [INFO] Checking activity reminders 
[2026-02-25 16:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:36:41] [INFO] Checking activity reminders 
[2026-02-25 16:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:36:58] [INFO] Checking activity reminders 
[2026-02-25 16:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:37:11] [INFO] Checking activity reminders 
[2026-02-25 16:37:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:37:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:37:28] [INFO] Checking activity reminders 
[2026-02-25 16:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:37:41] [INFO] Checking activity reminders 
[2026-02-25 16:37:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:37:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:37:51] [INFO] Activity save request {"post_data":{"contact_id":"12398","deal_id":"local_699ef3d121e519.10264232","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خودرو و طلای فیزیکی و دلار سرمایه \r\nدسترسی به اینترنت نداشت \r\nمتوجه مبلغ 79 کانال نشده بود \r\nارسال اطلاعات در تلگرام \r\nبیعانه واریز \/8 تا اخر اسفند تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:37:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12398","note_was_empty":true}
[2026-02-25 16:37:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"12398","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:51] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-02-25 16:37:51] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-02-25 16:37:51] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-02-25 16:37:51] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ef3d121e519.10264232","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-25 16:37:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef427869734.16215322","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:51] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef427869734.16215322"}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:51] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-02-25 16:37:51] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-02-25 16:37:51] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-02-25 16:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-25 16:37:55] [INFO] Checking activity reminders 
[2026-02-25 16:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:37:58] [INFO] Checking activity reminders 
[2026-02-25 16:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:38:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:00] [INFO] generateDealTitle result {"contact_id":"7771","person_name":"محمد حیدری نیا","mobile":"9151689075","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151689075"}
[2026-02-25 16:38:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7771","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:38:21","session_id":"q7st04q5td1nn9d8rqrqi60ne2"}
[2026-02-25 16:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7771","is_new_deal":true}
[2026-02-25 16:38:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:38:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:38:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:38:21] [INFO] getContactPrimaryPhone called {"contact_id":"7771"}
[2026-02-25 16:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:21] [INFO] getContactPrimaryPhone result {"contact_id":"7771","person_found":true,"primary_phone":"9151689075"}
[2026-02-25 16:38:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151689075"}
[2026-02-25 16:38:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151689075","contact_id":"7771","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-25 16:38:21"}
[2026-02-25 16:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:21] [INFO] generateDealTitle result {"contact_id":"7771","person_name":"محمد حیدری نیا","mobile":"9151689075","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151689075"}
[2026-02-25 16:38:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7771","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-25 16:38:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7771","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 16:38:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7771","title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151689075","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد حیدری نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 16:38:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-25 16:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 16:38:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7771","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 16:38:21","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 16:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:38:25] [INFO] Checking activity reminders 
[2026-02-25 16:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:38:28] [INFO] Checking activity reminders 
[2026-02-25 16:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:38:55] [INFO] Checking activity reminders 
[2026-02-25 16:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:38:59] [INFO] Checking activity reminders 
[2026-02-25 16:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:39:02] [INFO] Activity save request {"post_data":{"contact_id":"7771","deal_id":"local_699ef445977808.08443386","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای مدرسه های بچه ها شهریه زیادی داده \r\nپرزنت 405 \r\nنقد و چک ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:39:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7771","note_was_empty":true}
[2026-02-25 16:39:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"7771","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:02] [INFO] Updating virtual stage {"contact_id":"7771","stage_name":"deal_registered","force":false}
[2026-02-25 16:39:02] [INFO] Virtual stage successfully saved {"contact_id":"7771","stage_name":"deal_registered"}
[2026-02-25 16:39:02] [INFO] Virtual stage updated after activity save {"contact_id":"7771"}
[2026-02-25 16:39:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ef445977808.08443386","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-25 16:39:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef46e8dcfe7.83134185","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:02] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef46e8dcfe7.83134185"}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:02] [INFO] Updating virtual stage {"contact_id":"7771","stage_name":"deal_registered","force":false}
[2026-02-25 16:39:02] [INFO] Virtual stage successfully saved {"contact_id":"7771","stage_name":"deal_registered"}
[2026-02-25 16:39:02] [INFO] Virtual stage updated after activity save {"contact_id":"7771"}
[2026-02-25 16:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-25 16:39:25] [INFO] Checking activity reminders 
[2026-02-25 16:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:39:29] [INFO] Checking activity reminders 
[2026-02-25 16:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:39:55] [INFO] Checking activity reminders 
[2026-02-25 16:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:39:59] [INFO] Checking activity reminders 
[2026-02-25 16:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:40:02] [INFO] Checking activity reminders 
[2026-02-25 16:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:40:25] [INFO] Checking activity reminders 
[2026-02-25 16:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:40:29] [INFO] Checking activity reminders 
[2026-02-25 16:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:40:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:40:34","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 16:40:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:40:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1090","is_new_deal":false}
[2026-02-25 16:40:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:34] [INFO] getContactPrimaryPhone called {"contact_id":"1090"}
[2026-02-25 16:40:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:40:34] [INFO] getContactPrimaryPhone result {"contact_id":"1090","person_found":true,"primary_phone":"9336778737"}
[2026-02-25 16:40:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336778737"}
[2026-02-25 16:40:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336778737","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:40:34"}
[2026-02-25 16:40:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","existing_deal_found":true,"existing_contact_id":"1090","existing_title":"معامله دوم 9336778737 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:40:34"}
[2026-02-25 16:40:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:40:54","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 16:40:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:40:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1090","is_new_deal":false}
[2026-02-25 16:40:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:40:54] [INFO] getContactPrimaryPhone called {"contact_id":"1090"}
[2026-02-25 16:40:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:40:54] [INFO] getContactPrimaryPhone result {"contact_id":"1090","person_found":true,"primary_phone":"9336778737"}
[2026-02-25 16:40:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336778737"}
[2026-02-25 16:40:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336778737","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:40:54"}
[2026-02-25 16:40:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","existing_deal_found":true,"existing_contact_id":"1090","existing_title":"معامله دوم 9336778737 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:40:54"}
[2026-02-25 16:40:55] [INFO] Checking activity reminders 
[2026-02-25 16:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:40:59] [INFO] Checking activity reminders 
[2026-02-25 16:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:00] [INFO] Checking activity reminders 
[2026-02-25 16:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:05] [INFO] Checking activity reminders 
[2026-02-25 16:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 16:41:22] [INFO] Checking activity reminders 
[2026-02-25 16:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:26] [INFO] Checking activity reminders 
[2026-02-25 16:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 16:41:29] [INFO] Checking activity reminders 
[2026-02-25 16:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:31] [INFO] Checking activity reminders 
[2026-02-25 16:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:41:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:41:41","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 16:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1090","is_new_deal":false}
[2026-02-25 16:41:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:41] [INFO] getContactPrimaryPhone called {"contact_id":"1090"}
[2026-02-25 16:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:41] [INFO] getContactPrimaryPhone result {"contact_id":"1090","person_found":true,"primary_phone":"9336778737"}
[2026-02-25 16:41:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336778737"}
[2026-02-25 16:41:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336778737","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:41:41"}
[2026-02-25 16:41:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","existing_deal_found":true,"existing_contact_id":"1090","existing_title":"معامله دوم 9336778737 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:41:41"}
[2026-02-25 16:41:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 16:41:51","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 16:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1090","is_new_deal":false}
[2026-02-25 16:41:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 16:41:51] [INFO] getContactPrimaryPhone called {"contact_id":"1090"}
[2026-02-25 16:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:51] [INFO] getContactPrimaryPhone result {"contact_id":"1090","person_found":true,"primary_phone":"9336778737"}
[2026-02-25 16:41:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336778737"}
[2026-02-25 16:41:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336778737","contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:41:51"}
[2026-02-25 16:41:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","existing_deal_found":true,"existing_contact_id":"1090","existing_title":"معامله دوم 9336778737 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 16:41:51"}
[2026-02-25 16:41:51] [INFO] DealController.save validated payments {"deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","payments_count":4,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-02-25 16:41:51] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1090","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 16:41:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d6e7a37cb10.90844750","contact_didar_id":"1090","title":"معامله دوم 9336778737 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9336778737","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79100000,"payment_amount":79100000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حمید کرمی","existing_deal":"YES","existing_deal_id":"local_699d6e7a37cb10.90844750","existing_deal_status":"Pending","server_time":"2026-02-25 16:41:51","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-25 16:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d6e7a37cb10.90844750","contact_id":"1090","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9336778737 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79100000,"payment_amount":79100000,"server_time":"2026-02-25 16:41:51","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 16:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:41:52] [INFO] Checking activity reminders 
[2026-02-25 16:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:00] [INFO] Checking activity reminders 
[2026-02-25 16:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:01] [INFO] Checking activity reminders 
[2026-02-25 16:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:21] [INFO] Activity save request {"post_data":{"contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت چک هاشون زنگ زدم جواب ندادن ","activity_duration":"0","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:42:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"1090","note_was_empty":true}
[2026-02-25 16:42:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"1090","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:21] [INFO] Updating virtual stage {"contact_id":"1090","stage_name":"deal_registered","force":false}
[2026-02-25 16:42:21] [INFO] Virtual stage successfully saved {"contact_id":"1090","stage_name":"deal_registered"}
[2026-02-25 16:42:21] [INFO] Virtual stage updated after activity save {"contact_id":"1090"}
[2026-02-25 16:42:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d6e7a37cb10.90844750","stage":"برگزاری دوره","status_change":null}
[2026-02-25 16:42:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef5353fbaa6.89433402","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:21] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef5353fbaa6.89433402"}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:21] [INFO] Updating virtual stage {"contact_id":"1090","stage_name":"deal_registered","force":false}
[2026-02-25 16:42:21] [INFO] Virtual stage successfully saved {"contact_id":"1090","stage_name":"deal_registered"}
[2026-02-25 16:42:21] [INFO] Virtual stage updated after activity save {"contact_id":"1090"}
[2026-02-25 16:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-02-25 16:42:22] [INFO] Checking activity reminders 
[2026-02-25 16:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:30] [INFO] Checking activity reminders 
[2026-02-25 16:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:31] [INFO] Checking activity reminders 
[2026-02-25 16:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:42:52] [INFO] Checking activity reminders 
[2026-02-25 16:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:43:00] [INFO] Checking activity reminders 
[2026-02-25 16:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:43:01] [INFO] Checking activity reminders 
[2026-02-25 16:43:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:43:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:43:22] [INFO] Checking activity reminders 
[2026-02-25 16:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:43:31] [INFO] Checking activity reminders 
[2026-02-25 16:43:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:43:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:43:53] [INFO] Checking activity reminders 
[2026-02-25 16:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:01] [INFO] Checking activity reminders 
[2026-02-25 16:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:05] [INFO] Checking activity reminders 
[2026-02-25 16:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:23] [INFO] Checking activity reminders 
[2026-02-25 16:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:31] [INFO] Checking activity reminders 
[2026-02-25 16:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:35] [INFO] Checking activity reminders 
[2026-02-25 16:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:44:51] [INFO] Activity save request {"post_data":{"contact_id":"local_698722605ac306.97992795","deal_id":"local_698722605bf2c","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"لینکاشو وارد نمیشه هی میگه ندادید براش ریپلای زدم متوجه شد و وارد شد.","activity_duration":"5","direction":"incoming","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:44:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_698722605ac306.97992795","note_was_empty":true}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:51] [INFO] Updating virtual stage {"contact_id":"local_698722605ac306.97992795","stage_name":"new","force":false}
[2026-02-25 16:44:51] [INFO] Virtual stage successfully saved {"contact_id":"local_698722605ac306.97992795","stage_name":"new"}
[2026-02-25 16:44:51] [INFO] Virtual stage updated after activity save {"contact_id":"local_698722605ac306.97992795"}
[2026-02-25 16:44:51] [INFO] Pipeline stage updated after activity save {"deal_id":"local_698722605bf2c","stage":"برگزاری دوره","status_change":null}
[2026-02-25 16:44:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef5cb8bd824.87818363","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:51] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef5cb8bd824.87818363"}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:51] [INFO] Updating virtual stage {"contact_id":"local_698722605ac306.97992795","stage_name":"deal_registered","force":false}
[2026-02-25 16:44:51] [INFO] Virtual stage successfully saved {"contact_id":"local_698722605ac306.97992795","stage_name":"deal_registered"}
[2026-02-25 16:44:51] [INFO] Virtual stage updated after activity save {"contact_id":"local_698722605ac306.97992795"}
[2026-02-25 16:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-02-25 16:44:53] [INFO] Checking activity reminders 
[2026-02-25 16:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:01] [INFO] Checking activity reminders 
[2026-02-25 16:45:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4071","person_id":"6839"}
[2026-02-25 16:45:05] [INFO] Checking activity reminders 
[2026-02-25 16:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:07] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:45:08] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:45:09] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 16:45:11] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_products"}
[2026-02-25 16:45:11] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_leads"}
[2026-02-25 16:45:14] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_leads"}
[2026-02-25 16:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:45:16] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:45:16] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"get_leads"}
[2026-02-25 16:45:23] [INFO] Checking activity reminders 
[2026-02-25 16:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:25] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 16:45:25] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 16:45:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:45:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 16:45:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 16:45:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 16:45:31] [INFO] Checking activity reminders 
[2026-02-25 16:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:45:35] [INFO] Checking activity reminders 
[2026-02-25 16:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:45:50] [INFO] Lead update received {"contact_id":"13708","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 16:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:45:50] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13708"}
[2026-02-25 16:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:45:53] [INFO] Checking activity reminders 
[2026-02-25 16:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:01] [INFO] Checking activity reminders 
[2026-02-25 16:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:05] [INFO] Checking activity reminders 
[2026-02-25 16:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:23] [INFO] Checking activity reminders 
[2026-02-25 16:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:28] [INFO] Checking activity reminders 
[2026-02-25 16:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:31] [INFO] Checking activity reminders 
[2026-02-25 16:46:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:35] [INFO] Checking activity reminders 
[2026-02-25 16:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:46:53] [INFO] Checking activity reminders 
[2026-02-25 16:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:01] [INFO] Checking activity reminders 
[2026-02-25 16:47:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:05] [INFO] Checking activity reminders 
[2026-02-25 16:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:23] [INFO] Checking activity reminders 
[2026-02-25 16:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:31] [INFO] Checking activity reminders 
[2026-02-25 16:47:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:35] [INFO] Checking activity reminders 
[2026-02-25 16:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:53] [INFO] Checking activity reminders 
[2026-02-25 16:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:47:54] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:47:56] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-25 16:48:01] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 16:48:01] [INFO] Checking activity reminders 
[2026-02-25 16:48:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:02] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"log_client_event"}
[2026-02-25 16:48:06] [INFO] Checking activity reminders 
[2026-02-25 16:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:14] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-25 16:48:14] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-25 16:48:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 16:48:23] [INFO] Checking activity reminders 
[2026-02-25 16:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:32] [INFO] Checking activity reminders 
[2026-02-25 16:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:36] [INFO] Checking activity reminders 
[2026-02-25 16:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:44] [INFO] Checking activity reminders 
[2026-02-25 16:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:48:53] [INFO] Checking activity reminders 
[2026-02-25 16:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:02] [INFO] Checking activity reminders 
[2026-02-25 16:49:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:06] [INFO] Checking activity reminders 
[2026-02-25 16:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:14] [INFO] Checking activity reminders 
[2026-02-25 16:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:23] [INFO] Checking activity reminders 
[2026-02-25 16:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:32] [INFO] Checking activity reminders 
[2026-02-25 16:49:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:36] [INFO] Checking activity reminders 
[2026-02-25 16:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:44] [INFO] Checking activity reminders 
[2026-02-25 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:49:53] [INFO] Checking activity reminders 
[2026-02-25 16:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:02] [INFO] Checking activity reminders 
[2026-02-25 16:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:06] [INFO] Checking activity reminders 
[2026-02-25 16:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:14] [INFO] Checking activity reminders 
[2026-02-25 16:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:23] [INFO] Checking activity reminders 
[2026-02-25 16:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:32] [INFO] Checking activity reminders 
[2026-02-25 16:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:36] [INFO] Checking activity reminders 
[2026-02-25 16:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:44] [INFO] Checking activity reminders 
[2026-02-25 16:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:50:53] [INFO] Checking activity reminders 
[2026-02-25 16:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:02] [INFO] Checking activity reminders 
[2026-02-25 16:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:06] [INFO] Checking activity reminders 
[2026-02-25 16:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:14] [INFO] Checking activity reminders 
[2026-02-25 16:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:24] [INFO] Checking activity reminders 
[2026-02-25 16:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:32] [INFO] Checking activity reminders 
[2026-02-25 16:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:36] [INFO] Checking activity reminders 
[2026-02-25 16:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:44] [INFO] Checking activity reminders 
[2026-02-25 16:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:51:54] [INFO] Checking activity reminders 
[2026-02-25 16:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:02] [INFO] Checking activity reminders 
[2026-02-25 16:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:06] [INFO] Checking activity reminders 
[2026-02-25 16:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:14] [INFO] Checking activity reminders 
[2026-02-25 16:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:24] [INFO] Checking activity reminders 
[2026-02-25 16:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:32] [INFO] Checking activity reminders 
[2026-02-25 16:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:36] [INFO] Checking activity reminders 
[2026-02-25 16:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:44] [INFO] Checking activity reminders 
[2026-02-25 16:52:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:52:54] [INFO] Checking activity reminders 
[2026-02-25 16:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:02] [INFO] Checking activity reminders 
[2026-02-25 16:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:06] [INFO] Checking activity reminders 
[2026-02-25 16:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:14] [INFO] Checking activity reminders 
[2026-02-25 16:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:24] [INFO] Checking activity reminders 
[2026-02-25 16:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:32] [INFO] Checking activity reminders 
[2026-02-25 16:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:36] [INFO] Checking activity reminders 
[2026-02-25 16:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:44] [INFO] Checking activity reminders 
[2026-02-25 16:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:53:54] [INFO] Checking activity reminders 
[2026-02-25 16:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:02] [INFO] Checking activity reminders 
[2026-02-25 16:54:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:07] [INFO] Checking activity reminders 
[2026-02-25 16:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:15] [INFO] Checking activity reminders 
[2026-02-25 16:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:24] [INFO] Checking activity reminders 
[2026-02-25 16:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:32] [INFO] Checking activity reminders 
[2026-02-25 16:54:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:37] [INFO] Checking activity reminders 
[2026-02-25 16:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:45] [INFO] Checking activity reminders 
[2026-02-25 16:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:54:54] [INFO] Checking activity reminders 
[2026-02-25 16:54:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:54:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:02] [INFO] Checking activity reminders 
[2026-02-25 16:55:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:07] [INFO] Checking activity reminders 
[2026-02-25 16:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:15] [INFO] Checking activity reminders 
[2026-02-25 16:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:24] [INFO] Checking activity reminders 
[2026-02-25 16:55:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:33] [INFO] Checking activity reminders 
[2026-02-25 16:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:37] [INFO] Checking activity reminders 
[2026-02-25 16:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:45] [INFO] Checking activity reminders 
[2026-02-25 16:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:55:54] [INFO] Checking activity reminders 
[2026-02-25 16:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:03] [INFO] Checking activity reminders 
[2026-02-25 16:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:07] [INFO] Checking activity reminders 
[2026-02-25 16:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:15] [INFO] Checking activity reminders 
[2026-02-25 16:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:24] [INFO] Checking activity reminders 
[2026-02-25 16:56:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:28] [INFO] Activity save request {"post_data":{"contact_id":"9395","deal_id":"local_698b25651ccab1.05522912","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای کلاسش گفت اول هفته خبر میدم گفتم باشه\/ لینک هاشم سبار فرستادم منقضی شد گفتم اخرین باره ","activity_duration":"5","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 16:56:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"9395","note_was_empty":true}
[2026-02-25 16:56:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"9395","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:28] [INFO] Updating virtual stage {"contact_id":"9395","stage_name":"deal_registered","force":false}
[2026-02-25 16:56:28] [INFO] Virtual stage successfully saved {"contact_id":"9395","stage_name":"deal_registered"}
[2026-02-25 16:56:28] [INFO] Virtual stage updated after activity save {"contact_id":"9395"}
[2026-02-25 16:56:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_698b25651ccab1.05522912","stage":"پشتیبانی","status_change":null}
[2026-02-25 16:56:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ef884d3e467.44817699","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:28] [INFO] Activity saved successfully {"activity_id":"local_activity_699ef884d3e467.44817699"}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:28] [INFO] Updating virtual stage {"contact_id":"9395","stage_name":"deal_registered","force":false}
[2026-02-25 16:56:28] [INFO] Virtual stage successfully saved {"contact_id":"9395","stage_name":"deal_registered"}
[2026-02-25 16:56:28] [INFO] Virtual stage updated after activity save {"contact_id":"9395"}
[2026-02-25 16:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9395","person_id":"20561"}
[2026-02-25 16:56:33] [INFO] Checking activity reminders 
[2026-02-25 16:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:42] [INFO] Checking activity reminders 
[2026-02-25 16:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:45] [INFO] Checking activity reminders 
[2026-02-25 16:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:56:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 16:56:54] [INFO] Checking activity reminders 
[2026-02-25 16:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:03] [INFO] Checking activity reminders 
[2026-02-25 16:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:13] [INFO] Checking activity reminders 
[2026-02-25 16:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:15] [INFO] Checking activity reminders 
[2026-02-25 16:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:24] [INFO] Checking activity reminders 
[2026-02-25 16:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:33] [INFO] Checking activity reminders 
[2026-02-25 16:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:43] [INFO] Checking activity reminders 
[2026-02-25 16:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:45] [INFO] Checking activity reminders 
[2026-02-25 16:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:57:54] [INFO] Checking activity reminders 
[2026-02-25 16:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:03] [INFO] Checking activity reminders 
[2026-02-25 16:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:13] [INFO] Checking activity reminders 
[2026-02-25 16:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:15] [INFO] Checking activity reminders 
[2026-02-25 16:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:24] [INFO] Checking activity reminders 
[2026-02-25 16:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:33] [INFO] Checking activity reminders 
[2026-02-25 16:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:43] [INFO] Checking activity reminders 
[2026-02-25 16:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:45] [INFO] Checking activity reminders 
[2026-02-25 16:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:58:54] [INFO] Checking activity reminders 
[2026-02-25 16:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:03] [INFO] Checking activity reminders 
[2026-02-25 16:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:13] [INFO] Checking activity reminders 
[2026-02-25 16:59:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:15] [INFO] Checking activity reminders 
[2026-02-25 16:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:24] [INFO] Checking activity reminders 
[2026-02-25 16:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:33] [INFO] Checking activity reminders 
[2026-02-25 16:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:43] [INFO] Checking activity reminders 
[2026-02-25 16:59:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:45] [INFO] Checking activity reminders 
[2026-02-25 16:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 16:59:54] [INFO] Checking activity reminders 
[2026-02-25 16:59:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 16:59:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:03] [INFO] Checking activity reminders 
[2026-02-25 17:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:13] [INFO] Checking activity reminders 
[2026-02-25 17:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:15] [INFO] Checking activity reminders 
[2026-02-25 17:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:25] [INFO] Checking activity reminders 
[2026-02-25 17:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:33] [INFO] Checking activity reminders 
[2026-02-25 17:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:43] [INFO] Checking activity reminders 
[2026-02-25 17:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:45] [INFO] Checking activity reminders 
[2026-02-25 17:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:00:55] [INFO] Checking activity reminders 
[2026-02-25 17:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:03] [INFO] Checking activity reminders 
[2026-02-25 17:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:13] [INFO] Checking activity reminders 
[2026-02-25 17:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:15] [INFO] Checking activity reminders 
[2026-02-25 17:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:25] [INFO] Checking activity reminders 
[2026-02-25 17:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:33] [INFO] Checking activity reminders 
[2026-02-25 17:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:43] [INFO] Checking activity reminders 
[2026-02-25 17:01:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:45] [INFO] Checking activity reminders 
[2026-02-25 17:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:01:55] [INFO] Checking activity reminders 
[2026-02-25 17:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:03] [INFO] Checking activity reminders 
[2026-02-25 17:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:14] [INFO] Checking activity reminders 
[2026-02-25 17:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:15] [INFO] Checking activity reminders 
[2026-02-25 17:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:25] [INFO] Checking activity reminders 
[2026-02-25 17:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:34] [INFO] Checking activity reminders 
[2026-02-25 17:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:44] [INFO] Checking activity reminders 
[2026-02-25 17:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:45] [INFO] Checking activity reminders 
[2026-02-25 17:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:02:55] [INFO] Checking activity reminders 
[2026-02-25 17:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:04] [INFO] Checking activity reminders 
[2026-02-25 17:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:14] [INFO] Checking activity reminders 
[2026-02-25 17:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:15] [INFO] Checking activity reminders 
[2026-02-25 17:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:34] [INFO] Checking activity reminders 
[2026-02-25 17:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:44] [INFO] Checking activity reminders 
[2026-02-25 17:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:03:45] [INFO] Checking activity reminders 
[2026-02-25 17:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:04] [INFO] Checking activity reminders 
[2026-02-25 17:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:14] [INFO] Checking activity reminders 
[2026-02-25 17:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:16] [INFO] Checking activity reminders 
[2026-02-25 17:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:34] [INFO] Checking activity reminders 
[2026-02-25 17:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:44] [INFO] Checking activity reminders 
[2026-02-25 17:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:04:46] [INFO] Checking activity reminders 
[2026-02-25 17:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:04] [INFO] Checking activity reminders 
[2026-02-25 17:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:14] [INFO] Checking activity reminders 
[2026-02-25 17:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:16] [INFO] Checking activity reminders 
[2026-02-25 17:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:34] [INFO] Checking activity reminders 
[2026-02-25 17:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:44] [INFO] Checking activity reminders 
[2026-02-25 17:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:05:54] [INFO] Checking activity reminders 
[2026-02-25 17:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:04] [INFO] Checking activity reminders 
[2026-02-25 17:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:14] [INFO] Checking activity reminders 
[2026-02-25 17:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:24] [INFO] Checking activity reminders 
[2026-02-25 17:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:34] [INFO] Checking activity reminders 
[2026-02-25 17:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:44] [INFO] Checking activity reminders 
[2026-02-25 17:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:06:54] [INFO] Checking activity reminders 
[2026-02-25 17:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:07:04] [INFO] Checking activity reminders 
[2026-02-25 17:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:07:14] [INFO] Checking activity reminders 
[2026-02-25 17:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:07:24] [INFO] Checking activity reminders 
[2026-02-25 17:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:07:34] [INFO] Checking activity reminders 
[2026-02-25 17:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:07:54] [INFO] Checking activity reminders 
[2026-02-25 17:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:08:04] [INFO] Checking activity reminders 
[2026-02-25 17:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:08:24] [INFO] Checking activity reminders 
[2026-02-25 17:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:08:34] [INFO] Checking activity reminders 
[2026-02-25 17:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:08:54] [INFO] Checking activity reminders 
[2026-02-25 17:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:09:04] [INFO] Checking activity reminders 
[2026-02-25 17:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:09:24] [INFO] Checking activity reminders 
[2026-02-25 17:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:09:35] [INFO] Checking activity reminders 
[2026-02-25 17:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:09:54] [INFO] Checking activity reminders 
[2026-02-25 17:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:05] [INFO] Checking activity reminders 
[2026-02-25 17:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:25] [INFO] Checking activity reminders 
[2026-02-25 17:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:25] [INFO] Checking activity reminders 
[2026-02-25 17:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:28] [INFO] Checking activity reminders 
[2026-02-25 17:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11386","person_id":"13985"}
[2026-02-25 17:10:55] [INFO] Checking activity reminders 
[2026-02-25 17:10:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:10:58] [INFO] Checking activity reminders 
[2026-02-25 17:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:11:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:11:25] [INFO] Checking activity reminders 
[2026-02-25 17:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:11:28] [INFO] Checking activity reminders 
[2026-02-25 17:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:11:55] [INFO] Checking activity reminders 
[2026-02-25 17:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:11:58] [INFO] Checking activity reminders 
[2026-02-25 17:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:12:25] [INFO] Checking activity reminders 
[2026-02-25 17:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:12:28] [INFO] Checking activity reminders 
[2026-02-25 17:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:12:55] [INFO] Checking activity reminders 
[2026-02-25 17:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:12:58] [INFO] Checking activity reminders 
[2026-02-25 17:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:13:25] [INFO] Checking activity reminders 
[2026-02-25 17:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:13:28] [INFO] Checking activity reminders 
[2026-02-25 17:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:13:51] [INFO] Activity save request {"post_data":{"contact_id":"975","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"500 در بورس نوسانات صندوق و عیار \r\nبه دلیل مشغله ی کاری نتونسته 2 هفته کانال چک کنه \r\nپرزنت 405 \r\nمشورت با برادر \r\nارسال اطلاعات در بله \r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:13:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:13:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:13:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"975","note_was_empty":true}
[2026-02-25 17:13:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"975","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 17:13:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699efc975f9ef2.83054327","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:13:51] [INFO] Activity saved successfully {"activity_id":"local_activity_699efc975f9ef2.83054327"}
[2026-02-25 17:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:13:51] [INFO] Updating virtual stage {"contact_id":"975","stage_name":"deal_registered","force":false}
[2026-02-25 17:13:51] [INFO] Virtual stage successfully saved {"contact_id":"975","stage_name":"deal_registered"}
[2026-02-25 17:13:51] [INFO] Virtual stage updated after activity save {"contact_id":"975"}
[2026-02-25 17:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:13:55] [INFO] Checking activity reminders 
[2026-02-25 17:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:13:58] [INFO] Checking activity reminders 
[2026-02-25 17:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-02-25 17:14:25] [INFO] Checking activity reminders 
[2026-02-25 17:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:14:28] [INFO] Checking activity reminders 
[2026-02-25 17:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:14:55] [INFO] Checking activity reminders 
[2026-02-25 17:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:14:58] [INFO] Checking activity reminders 
[2026-02-25 17:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:15:25] [INFO] Checking activity reminders 
[2026-02-25 17:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:15:28] [INFO] Checking activity reminders 
[2026-02-25 17:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:15:55] [INFO] Checking activity reminders 
[2026-02-25 17:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:15:58] [INFO] Checking activity reminders 
[2026-02-25 17:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:16:25] [INFO] Checking activity reminders 
[2026-02-25 17:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:16:29] [INFO] Checking activity reminders 
[2026-02-25 17:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:16:55] [INFO] Checking activity reminders 
[2026-02-25 17:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:16:59] [INFO] Checking activity reminders 
[2026-02-25 17:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:17:26] [INFO] Checking activity reminders 
[2026-02-25 17:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:17:29] [INFO] Checking activity reminders 
[2026-02-25 17:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:17:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:54] [INFO] Lead update received {"contact_id":"local_699b3086763604.41573045","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:54] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_699b3086763604.41573045"}
[2026-02-25 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:17:56] [INFO] Checking activity reminders 
[2026-02-25 17:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:17:59] [INFO] Checking activity reminders 
[2026-02-25 17:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:18:26] [INFO] Checking activity reminders 
[2026-02-25 17:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:18:29] [INFO] Checking activity reminders 
[2026-02-25 17:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:18:37] [INFO] Activity save request {"post_data":{"contact_id":"local_699b3086763604.41573045","deal_id":"local_699b30867a398","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"آدمی بدی نیست","activity_duration":"30","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:18:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_699b3086763604.41573045","note_was_empty":true}
[2026-02-25 17:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:38] [INFO] Updating virtual stage {"contact_id":"local_699b3086763604.41573045","stage_name":"new","force":false}
[2026-02-25 17:18:38] [INFO] Virtual stage successfully saved {"contact_id":"local_699b3086763604.41573045","stage_name":"new"}
[2026-02-25 17:18:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_699b3086763604.41573045"}
[2026-02-25 17:18:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699b30867a398","stage":"تماس پیگیری","status_change":null}
[2026-02-25 17:18:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699efdb5eeaf26.15863541","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:38] [INFO] Activity saved successfully {"activity_id":"local_activity_699efdb5eeaf26.15863541"}
[2026-02-25 17:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:38] [INFO] Updating virtual stage {"contact_id":"local_699b3086763604.41573045","stage_name":"deal_registered","force":false}
[2026-02-25 17:18:38] [INFO] Virtual stage successfully saved {"contact_id":"local_699b3086763604.41573045","stage_name":"deal_registered"}
[2026-02-25 17:18:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_699b3086763604.41573045"}
[2026-02-25 17:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:18:56] [INFO] Checking activity reminders 
[2026-02-25 17:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:18:59] [INFO] Checking activity reminders 
[2026-02-25 17:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:19:26] [INFO] Checking activity reminders 
[2026-02-25 17:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:19:30] [INFO] Checking activity reminders 
[2026-02-25 17:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:19:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"بودجه بندی","contact_id":"local_699b3086763604.41573045","deal_id":"local_699b30867a398","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 17:19:41","session_id":"i4ka5ovnsc6fgeof1i0an5catd"}
[2026-02-25 17:19:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:19:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_699b3086763604.41573045","is_new_deal":false}
[2026-02-25 17:19:41] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-02-25 17:19:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-02-25 17:19:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-02-25 17:19:41] [INFO] getContactPrimaryPhone called {"contact_id":"local_699b3086763604.41573045"}
[2026-02-25 17:19:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:19:41] [INFO] getContactPrimaryPhone result {"contact_id":"local_699b3086763604.41573045","person_found":true,"primary_phone":"9126125759"}
[2026-02-25 17:19:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126125759"}
[2026-02-25 17:19:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126125759","contact_id":"local_699b3086763604.41573045","deal_id":"local_699b30867a398","is_new_deal":false,"incoming_title":"بودجه بندی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 17:19:41"}
[2026-02-25 17:19:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b30867a398","contact_id":"local_699b3086763604.41573045","existing_deal_found":true,"existing_contact_id":"local_699b3086763604.41573045","existing_title":"معامله اول 9126125759","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 17:19:41"}
[2026-02-25 17:19:41] [INFO] DealController.save validated payments {"deal_id":"local_699b30867a398","contact_id":"local_699b3086763604.41573045","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-02-25 17:19:41] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_699b3086763604.41573045","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 17:19:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b30867a398","contact_didar_id":"local_699b3086763604.41573045","title":"معامله اول 9126125759 | بودجه بندی","base_title_used":"معامله اول 9126125759","services_text":"بودجه بندی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7000000,"payment_amount":0,"payments_present":false,"requested_services":["بودجه بندی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"امیر سهرابی","existing_deal":"YES","existing_deal_id":"local_699b30867a398","existing_deal_status":"Pending","server_time":"2026-02-25 17:19:41","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-25 17:19:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:19:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b30867a398","contact_id":"local_699b3086763604.41573045","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله اول 9126125759 | بودجه بندی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7000000,"payment_amount":0,"server_time":"2026-02-25 17:19:41","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 17:19:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699b3086763604.41573045","person_id":"21777"}
[2026-02-25 17:19:57] [INFO] Checking activity reminders 
[2026-02-25 17:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:20:00] [INFO] Checking activity reminders 
[2026-02-25 17:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:20:27] [INFO] Checking activity reminders 
[2026-02-25 17:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:20:30] [INFO] Checking activity reminders 
[2026-02-25 17:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:21:00] [INFO] Checking activity reminders 
[2026-02-25 17:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:21:30] [INFO] Checking activity reminders 
[2026-02-25 17:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:21:31] [INFO] Checking activity reminders 
[2026-02-25 17:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:21:56] [INFO] Checking activity reminders 
[2026-02-25 17:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:22:00] [INFO] Checking activity reminders 
[2026-02-25 17:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:22:30] [INFO] Checking activity reminders 
[2026-02-25 17:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:22:33] [INFO] Checking activity reminders 
[2026-02-25 17:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:00] [INFO] Checking activity reminders 
[2026-02-25 17:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:03] [INFO] Checking activity reminders 
[2026-02-25 17:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:04] [INFO] Checking activity reminders 
[2026-02-25 17:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:31] [INFO] Checking activity reminders 
[2026-02-25 17:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:34] [INFO] Checking activity reminders 
[2026-02-25 17:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:34] [INFO] Checking activity reminders 
[2026-02-25 17:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:23:39] [INFO] Activity save request {"post_data":{"contact_id":"15700","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سمند و 206 هست \/ 70 گرم طلا امروز قیمت طلا 20 ت  \/ عیار 200ت \r\nکنکور سراسری میخواد بده میخواد دکتر بشه برای دکترا میخونه بهش گفتم پزشکی بخون که توش پول باشه \/ میخواد خونه بخره طلا و ماشین بفروشه ذهنش درگیره \/ خرید خونه خالی میشه نخرید میاد کانال \/ 1000 دلار \/ 79 ت","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 17:23:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:23:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 17:23:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15700","note_was_empty":true}
[2026-02-25 17:23:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"15700","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 17:23:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699efee3031423.84896265","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 17:23:39] [INFO] Activity saved successfully {"activity_id":"local_activity_699efee3031423.84896265"}
[2026-02-25 17:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 17:23:39] [INFO] Updating virtual stage {"contact_id":"15700","stage_name":"deal_registered","force":false}
[2026-02-25 17:23:39] [INFO] Virtual stage successfully saved {"contact_id":"15700","stage_name":"deal_registered"}
[2026-02-25 17:23:39] [INFO] Virtual stage updated after activity save {"contact_id":"15700"}
[2026-02-25 17:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-02-25 17:23:42] [INFO] Activity save request {"post_data":{"contact_id":"16991","deal_id":"local_69510065c5c229.91362204","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"70 درصد در سرمایه طلا و صندوق ها \r\n30 درصد نقد \r\nپرزنت کانال 405 \r\nفکر کرده یکسله در کانال هست \r\nکامل براش توضیح دادم \r\nقرار شد اطلاع بده \r\nپیامک ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:23:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16991","note_was_empty":true}
[2026-02-25 17:23:42] [INFO] Didar write disabled; saving activity locally {"contact_id":"16991","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:42] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-02-25 17:23:42] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-02-25 17:23:42] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-02-25 17:23:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69510065c5c229.91362204","stage":"تماس پیگیری","status_change":null}
[2026-02-25 17:23:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699efee6951b67.03602882","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:42] [INFO] Activity saved successfully {"activity_id":"local_activity_699efee6951b67.03602882"}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:42] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-02-25 17:23:42] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-02-25 17:23:42] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-02-25 17:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 17:24:01] [INFO] Checking activity reminders 
[2026-02-25 17:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:24:04] [INFO] Checking activity reminders 
[2026-02-25 17:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:24:04] [INFO] Checking activity reminders 
[2026-02-25 17:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:24:31] [INFO] Checking activity reminders 
[2026-02-25 17:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:24:34] [INFO] Checking activity reminders 
[2026-02-25 17:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:24:34] [INFO] Checking activity reminders 
[2026-02-25 17:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:01] [INFO] Checking activity reminders 
[2026-02-25 17:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:04] [INFO] Checking activity reminders 
[2026-02-25 17:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:04] [INFO] Checking activity reminders 
[2026-02-25 17:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:31] [INFO] Checking activity reminders 
[2026-02-25 17:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:34] [INFO] Checking activity reminders 
[2026-02-25 17:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:35] [INFO] Checking activity reminders 
[2026-02-25 17:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:25:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کارشناسی حضوری","contact_id":"local_6999bb457cd140.72890768","deal_id":"local_699d56d7149139.42321741","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 17:25:39","session_id":"7jlu90j8o8ouqkldc91p53cojo"}
[2026-02-25 17:25:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 17:25:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کارشناسی حضوری","contact_id":"local_6999bb457cd140.72890768","is_new_deal":false}
[2026-02-25 17:25:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کارشناسی حضوری"}
[2026-02-25 17:25:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کارشناسی حضوری"}
[2026-02-25 17:25:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کارشناسی حضوری"}
[2026-02-25 17:25:39] [INFO] getContactPrimaryPhone called {"contact_id":"local_6999bb457cd140.72890768"}
[2026-02-25 17:25:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 17:25:39] [INFO] getContactPrimaryPhone result {"contact_id":"local_6999bb457cd140.72890768","person_found":true,"primary_phone":"9198613091"}
[2026-02-25 17:25:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198613091"}
[2026-02-25 17:25:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198613091","contact_id":"local_6999bb457cd140.72890768","deal_id":"local_699d56d7149139.42321741","is_new_deal":false,"incoming_title":"کارشناسی حضوری","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 17:25:39"}
[2026-02-25 17:25:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d56d7149139.42321741","contact_id":"local_6999bb457cd140.72890768","existing_deal_found":true,"existing_contact_id":"local_6999bb457cd140.72890768","existing_title":"معامله سوم 9198613091 | کارشناسی حضوری","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 17:25:39"}
[2026-02-25 17:25:39] [INFO] DealController.save validated payments {"deal_id":"local_699d56d7149139.42321741","contact_id":"local_6999bb457cd140.72890768","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-02-25 17:25:39] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_6999bb457cd140.72890768","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 17:25:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d56d7149139.42321741","contact_didar_id":"local_6999bb457cd140.72890768","title":"معامله سوم 9198613091 | کارشناسی حضوری","base_title_used":"معامله سوم 9198613091","services_text":"کارشناسی حضوری","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":10000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کارشناسی حضوری"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیر جنگجو","existing_deal":"YES","existing_deal_id":"local_699d56d7149139.42321741","existing_deal_status":"Pending","server_time":"2026-02-25 17:25:39","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-25 17:25:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 17:25:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d56d7149139.42321741","contact_id":"local_6999bb457cd140.72890768","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9198613091 | کارشناسی حضوری","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":10000000,"payment_amount":10000000,"server_time":"2026-02-25 17:25:39","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 17:25:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-02-25 17:26:01] [INFO] Checking activity reminders 
[2026-02-25 17:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:04] [INFO] Checking activity reminders 
[2026-02-25 17:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:05] [INFO] Checking activity reminders 
[2026-02-25 17:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:07] [INFO] Checking activity reminders 
[2026-02-25 17:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 17:26:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 17:26:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 17:26:09] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 17:26:09] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 17:26:13] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 17:26:31] [INFO] Checking activity reminders 
[2026-02-25 17:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:35] [INFO] Checking activity reminders 
[2026-02-25 17:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:37] [INFO] Checking activity reminders 
[2026-02-25 17:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:26:39] [INFO] Checking activity reminders 
[2026-02-25 17:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:27:01] [INFO] Checking activity reminders 
[2026-02-25 17:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:27:09] [INFO] Checking activity reminders 
[2026-02-25 17:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:27:32] [INFO] Checking activity reminders 
[2026-02-25 17:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:27:39] [INFO] Checking activity reminders 
[2026-02-25 17:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:27:56] [INFO] Checking activity reminders 
[2026-02-25 17:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:28:02] [INFO] Checking activity reminders 
[2026-02-25 17:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:09] [INFO] Checking activity reminders 
[2026-02-25 17:28:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:26] [INFO] Checking activity reminders 
[2026-02-25 17:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:32] [INFO] Checking activity reminders 
[2026-02-25 17:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:39] [INFO] Checking activity reminders 
[2026-02-25 17:28:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:28:56] [INFO] Checking activity reminders 
[2026-02-25 17:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:02] [INFO] Checking activity reminders 
[2026-02-25 17:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:09] [INFO] Checking activity reminders 
[2026-02-25 17:29:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:26] [INFO] Checking activity reminders 
[2026-02-25 17:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:32] [INFO] Checking activity reminders 
[2026-02-25 17:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:39] [INFO] Checking activity reminders 
[2026-02-25 17:29:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:29:56] [INFO] Checking activity reminders 
[2026-02-25 17:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:02] [INFO] Checking activity reminders 
[2026-02-25 17:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:09] [INFO] Checking activity reminders 
[2026-02-25 17:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:26] [INFO] Checking activity reminders 
[2026-02-25 17:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:30:32] [INFO] Checking activity reminders 
[2026-02-25 17:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:39] [INFO] Checking activity reminders 
[2026-02-25 17:30:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:30:56] [INFO] Checking activity reminders 
[2026-02-25 17:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:31:02] [INFO] Checking activity reminders 
[2026-02-25 17:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:31:27] [INFO] Checking activity reminders 
[2026-02-25 17:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:31:32] [INFO] Checking activity reminders 
[2026-02-25 17:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:31:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-02-25 17:31:57] [INFO] Checking activity reminders 
[2026-02-25 17:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:32:03] [INFO] Checking activity reminders 
[2026-02-25 17:32:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:32:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:32:27] [INFO] Checking activity reminders 
[2026-02-25 17:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:32:33] [INFO] Checking activity reminders 
[2026-02-25 17:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:32:53] [INFO] Activity save request {"post_data":{"contact_id":"16058","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال از برج 6 هست\/ شغل اجیل خشکبار\/ خودرو تارا\/ وانت مزدا\/ خونه دو طبقه داره\/ نقد 1500\/ عیار \r\nامروز تماس هدف تمدید کانال عدم پاسخ ارسال پیام  واتس اپ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:32:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:32:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:32:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:32:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:32:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16058","note_was_empty":true}
[2026-02-25 17:32:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"16058","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 17:32:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699f010d5196b4.47451725","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:32:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:32:53] [INFO] Activity saved successfully {"activity_id":"local_activity_699f010d5196b4.47451725"}
[2026-02-25 17:32:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:32:53] [INFO] Updating virtual stage {"contact_id":"16058","stage_name":"contact_followup","force":false}
[2026-02-25 17:32:53] [INFO] Virtual stage successfully saved {"contact_id":"16058","stage_name":"contact_followup"}
[2026-02-25 17:32:53] [INFO] Virtual stage updated after activity save {"contact_id":"16058"}
[2026-02-25 17:32:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-25 17:32:57] [INFO] Checking activity reminders 
[2026-02-25 17:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:33:03] [INFO] Checking activity reminders 
[2026-02-25 17:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:33:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:33:27] [INFO] Checking activity reminders 
[2026-02-25 17:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:33:33] [INFO] Checking activity reminders 
[2026-02-25 17:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:33:57] [INFO] Checking activity reminders 
[2026-02-25 17:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:34:27] [INFO] Checking activity reminders 
[2026-02-25 17:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:34:36] [INFO] Checking activity reminders 
[2026-02-25 17:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:34:39] [INFO] Checking activity reminders 
[2026-02-25 17:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:34:57] [INFO] Checking activity reminders 
[2026-02-25 17:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:35:09] [INFO] Checking activity reminders 
[2026-02-25 17:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:35:27] [INFO] Checking activity reminders 
[2026-02-25 17:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:35:39] [INFO] Checking activity reminders 
[2026-02-25 17:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:35:57] [INFO] Checking activity reminders 
[2026-02-25 17:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:36:27] [INFO] Checking activity reminders 
[2026-02-25 17:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:36:58] [INFO] Checking activity reminders 
[2026-02-25 17:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:25] [INFO] Checking activity reminders 
[2026-02-25 17:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:25] [INFO] Checking activity reminders 
[2026-02-25 17:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:28] [INFO] Checking activity reminders 
[2026-02-25 17:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:32] [INFO] Checking activity reminders 
[2026-02-25 17:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:34] [INFO] Checking activity reminders 
[2026-02-25 17:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:51] [INFO] Checking activity reminders 
[2026-02-25 17:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:52] [INFO] Checking activity reminders 
[2026-02-25 17:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:37:58] [INFO] Checking activity reminders 
[2026-02-25 17:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:28] [INFO] Checking activity reminders 
[2026-02-25 17:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:42] [INFO] Checking activity reminders 
[2026-02-25 17:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:42] [INFO] Checking activity reminders 
[2026-02-25 17:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:42] [INFO] Checking activity reminders 
[2026-02-25 17:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:43] [INFO] Checking activity reminders 
[2026-02-25 17:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:38:58] [INFO] Checking activity reminders 
[2026-02-25 17:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:39:13] [INFO] Checking activity reminders 
[2026-02-25 17:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:39:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:39:28] [INFO] Checking activity reminders 
[2026-02-25 17:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:39:43] [INFO] Checking activity reminders 
[2026-02-25 17:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:39:58] [INFO] Checking activity reminders 
[2026-02-25 17:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:40:28] [INFO] Checking activity reminders 
[2026-02-25 17:40:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:40:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:40:36] [INFO] Lead update received {"contact_id":"15969","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 17:40:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:40:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:40:36] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15969"}
[2026-02-25 17:40:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:40:58] [INFO] Checking activity reminders 
[2026-02-25 17:40:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:40:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:41:20] [INFO] Activity save request {"post_data":{"contact_id":"15969","deal_id":"local_699d85682e9d76.56309449","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال با 10 ت  اومد \/ 180ت نقد \/ 500 ت طلا \/ فعلا بیکار ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 17:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 17:41:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 17:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15969","note_was_empty":true}
[2026-02-25 17:41:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"15969","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 17:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:20] [INFO] Updating virtual stage {"contact_id":"15969","stage_name":"deal_registered","force":false}
[2026-02-25 17:41:20] [INFO] Virtual stage successfully saved {"contact_id":"15969","stage_name":"deal_registered"}
[2026-02-25 17:41:20] [INFO] Virtual stage updated after activity save {"contact_id":"15969"}
[2026-02-25 17:41:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d85682e9d76.56309449","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-25 17:41:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699f0308e63a19.80752753","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 17:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:20] [INFO] Activity saved successfully {"activity_id":"local_activity_699f0308e63a19.80752753"}
[2026-02-25 17:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:20] [INFO] Updating virtual stage {"contact_id":"15969","stage_name":"deal_registered","force":false}
[2026-02-25 17:41:20] [INFO] Virtual stage successfully saved {"contact_id":"15969","stage_name":"deal_registered"}
[2026-02-25 17:41:20] [INFO] Virtual stage updated after activity save {"contact_id":"15969"}
[2026-02-25 17:41:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-02-25 17:41:28] [INFO] Checking activity reminders 
[2026-02-25 17:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:41:58] [INFO] Checking activity reminders 
[2026-02-25 17:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:42:28] [INFO] Checking activity reminders 
[2026-02-25 17:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:42:58] [INFO] Checking activity reminders 
[2026-02-25 17:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:43:17] [INFO] Checking activity reminders 
[2026-02-25 17:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:43:29] [INFO] Checking activity reminders 
[2026-02-25 17:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:43:59] [INFO] Checking activity reminders 
[2026-02-25 17:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:44:29] [INFO] Checking activity reminders 
[2026-02-25 17:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:44:59] [INFO] Checking activity reminders 
[2026-02-25 17:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:45:29] [INFO] Checking activity reminders 
[2026-02-25 17:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:45:59] [INFO] Checking activity reminders 
[2026-02-25 17:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:46:29] [INFO] Checking activity reminders 
[2026-02-25 17:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:46:59] [INFO] Checking activity reminders 
[2026-02-25 17:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:47:29] [INFO] Checking activity reminders 
[2026-02-25 17:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:47:59] [INFO] Checking activity reminders 
[2026-02-25 17:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:03] [INFO] Checking activity reminders 
[2026-02-25 17:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:29] [INFO] Checking activity reminders 
[2026-02-25 17:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:33] [INFO] Checking activity reminders 
[2026-02-25 17:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:42] [INFO] Checking activity reminders 
[2026-02-25 17:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:44] [INFO] Checking activity reminders 
[2026-02-25 17:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:46] [INFO] Checking activity reminders 
[2026-02-25 17:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:48:59] [INFO] Checking activity reminders 
[2026-02-25 17:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:49:16] [INFO] Checking activity reminders 
[2026-02-25 17:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:49:29] [INFO] Checking activity reminders 
[2026-02-25 17:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:49:46] [INFO] Checking activity reminders 
[2026-02-25 17:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:49:59] [INFO] Checking activity reminders 
[2026-02-25 17:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:50:16] [INFO] Checking activity reminders 
[2026-02-25 17:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:50:29] [INFO] Checking activity reminders 
[2026-02-25 17:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:50:46] [INFO] Checking activity reminders 
[2026-02-25 17:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:51:16] [INFO] Checking activity reminders 
[2026-02-25 17:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:51:46] [INFO] Checking activity reminders 
[2026-02-25 17:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:52:16] [INFO] Checking activity reminders 
[2026-02-25 17:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:52:46] [INFO] Checking activity reminders 
[2026-02-25 17:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:53:16] [INFO] Checking activity reminders 
[2026-02-25 17:53:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:53:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:53:47] [INFO] Checking activity reminders 
[2026-02-25 17:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:54:17] [INFO] Checking activity reminders 
[2026-02-25 17:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:54:47] [INFO] Checking activity reminders 
[2026-02-25 17:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:55:17] [INFO] Checking activity reminders 
[2026-02-25 17:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:55:47] [INFO] Checking activity reminders 
[2026-02-25 17:55:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:55:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:56:17] [INFO] Checking activity reminders 
[2026-02-25 17:56:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:56:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:56:47] [INFO] Checking activity reminders 
[2026-02-25 17:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:57:25] [INFO] Checking activity reminders 
[2026-02-25 17:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:57:55] [INFO] Checking activity reminders 
[2026-02-25 17:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:58:25] [INFO] Checking activity reminders 
[2026-02-25 17:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:58:55] [INFO] Checking activity reminders 
[2026-02-25 17:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:59:25] [INFO] Checking activity reminders 
[2026-02-25 17:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 17:59:55] [INFO] Checking activity reminders 
[2026-02-25 17:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 17:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:00:25] [INFO] Checking activity reminders 
[2026-02-25 18:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:00:55] [INFO] Checking activity reminders 
[2026-02-25 18:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:00:56] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:01:25] [INFO] Checking activity reminders 
[2026-02-25 18:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:01:55] [INFO] Checking activity reminders 
[2026-02-25 18:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:01:56] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:02:14] [INFO] Checking activity reminders 
[2026-02-25 18:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:02:25] [INFO] Checking activity reminders 
[2026-02-25 18:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:02:55] [INFO] Checking activity reminders 
[2026-02-25 18:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:03:15] [INFO] Checking activity reminders 
[2026-02-25 18:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:03:23] [INFO] Checking activity reminders 
[2026-02-25 18:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:03:25] [INFO] Checking activity reminders 
[2026-02-25 18:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:03:56] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:06:52] [INFO] Checking activity reminders 
[2026-02-25 18:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:06:56] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:06:58] [INFO] Checking activity reminders 
[2026-02-25 18:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:07:28] [INFO] Checking activity reminders 
[2026-02-25 18:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:07:46] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:07:58] [INFO] Checking activity reminders 
[2026-02-25 18:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:08:05] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 18:08:05] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"save_deal"}
[2026-02-25 18:08:07] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"log_client_event"}
[2026-02-25 18:08:13] [WARNING] Auth check failed - not authenticated {"session_id":"ngkgjnk6vlidkprgavh0vfq1eo","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:08:28] [INFO] Checking activity reminders 
[2026-02-25 18:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:08:30] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-25 18:08:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:08:34] [INFO] Checking activity reminders 
[2026-02-25 18:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:08:39] [WARNING] Auth check failed - not authenticated {"session_id":"ngkgjnk6vlidkprgavh0vfq1eo","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:08:51] [INFO] Checking activity reminders 
[2026-02-25 18:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:08:53] [WARNING] Auth check failed - not authenticated {"session_id":"bdn38tt7smds2ll3vj9bkidsbs","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:08:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 18:08:58] [INFO] Checking activity reminders 
[2026-02-25 18:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:09:04] [INFO] Checking activity reminders 
[2026-02-25 18:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:09:15] [INFO] Checking activity reminders 
[2026-02-25 18:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:09:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13708","deal_id":"18893","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 18:09:21","session_id":"0bch6tfb6k5v6k2a6lt155163p"}
[2026-02-25 18:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 18:09:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13708","is_new_deal":false}
[2026-02-25 18:09:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 18:09:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 18:09:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 18:09:21] [INFO] getContactPrimaryPhone called {"contact_id":"13708"}
[2026-02-25 18:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 18:09:21] [INFO] getContactPrimaryPhone result {"contact_id":"13708","person_found":true,"primary_phone":"9303935310"}
[2026-02-25 18:09:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9303935310"}
[2026-02-25 18:09:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9303935310","contact_id":"13708","deal_id":"18893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 18:09:21"}
[2026-02-25 18:09:21] [INFO] DealController.save existing deal lookup {"deal_id":"18893","contact_id":"13708","existing_deal_found":true,"existing_contact_id":"13708","existing_title":"معامله سمیه آهنگریان","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-25 18:09:21"}
[2026-02-25 18:09:21] [INFO] DealController.save validated payments {"deal_id":"18893","contact_id":"13708","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-25 18:09:21] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13708","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 18:09:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18893","contact_didar_id":"13708","title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","base_title_used":"معامله سمیه آهنگریان","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"سمیه آهنگریان","existing_deal":"YES","existing_deal_id":"18893","existing_deal_status":"Pending","server_time":"2026-02-25 18:09:21","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-25 18:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 18:09:21] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18893","product_ids":[23]}
[2026-02-25 18:09:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18893","contact_id":"13708","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 18:09:21","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 18:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-25 18:09:22] [INFO] Checking activity reminders 
[2026-02-25 18:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:09:34] [INFO] Checking activity reminders 
[2026-02-25 18:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:10:04] [INFO] Checking activity reminders 
[2026-02-25 18:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:10:12] [INFO] Checking activity reminders 
[2026-02-25 18:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:10:20] [INFO] Checking activity reminders 
[2026-02-25 18:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:10:35] [INFO] Checking activity reminders 
[2026-02-25 18:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:10:50] [INFO] Checking activity reminders 
[2026-02-25 18:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:11:05] [INFO] Checking activity reminders 
[2026-02-25 18:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:11:20] [INFO] Checking activity reminders 
[2026-02-25 18:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:11:35] [INFO] Checking activity reminders 
[2026-02-25 18:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:11:43] [INFO] Activity save request {"post_data":{"contact_id":"5640","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خونه خریده خالی شده \/ ازمون فنی سال بعد میده \/ معامله ماشین پراید مدل پایین کار میکنه \r\nپول دستش اومد میاد دوست داره باشه پولی نداره","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 18:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:11:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 18:11:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 18:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:11:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5640","note_was_empty":true}
[2026-02-25 18:11:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"5640","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 18:11:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699f0a27cb2ab9.85772339","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 18:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:11:43] [INFO] Activity saved successfully {"activity_id":"local_activity_699f0a27cb2ab9.85772339"}
[2026-02-25 18:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:11:43] [INFO] Updating virtual stage {"contact_id":"5640","stage_name":"deal_registered","force":false}
[2026-02-25 18:11:43] [INFO] Virtual stage successfully saved {"contact_id":"5640","stage_name":"deal_registered"}
[2026-02-25 18:11:43] [INFO] Virtual stage updated after activity save {"contact_id":"5640"}
[2026-02-25 18:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-02-25 18:11:50] [INFO] Checking activity reminders 
[2026-02-25 18:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:12:20] [INFO] Checking activity reminders 
[2026-02-25 18:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:12:26] [INFO] Checking activity reminders 
[2026-02-25 18:12:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:12:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:12:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:12:50] [INFO] Checking activity reminders 
[2026-02-25 18:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:12:56] [INFO] Checking activity reminders 
[2026-02-25 18:12:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:12:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:20] [INFO] Checking activity reminders 
[2026-02-25 18:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:26] [INFO] Checking activity reminders 
[2026-02-25 18:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:35] [INFO] Activity save request {"post_data":{"contact_id":"20975","deal_id":"local_695cc6296137d7.60716197","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"هدف تمدید کانال عدم پاسخ ارسلا پیام \/ ملک 11500 میلیارد مسکونی \/ ملک کارگاهی 18 میلیارد در حال ساخت ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 18:13:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20975","note_was_empty":true}
[2026-02-25 18:13:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"20975","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:35] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-02-25 18:13:35] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-02-25 18:13:35] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-02-25 18:13:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cc6296137d7.60716197","stage":"تماس پیگیری","status_change":null}
[2026-02-25 18:13:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699f0a9756c687.85170945","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:35] [INFO] Activity saved successfully {"activity_id":"local_activity_699f0a9756c687.85170945"}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:35] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-02-25 18:13:35] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-02-25 18:13:35] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-02-25 18:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-02-25 18:13:36] [INFO] Checking activity reminders 
[2026-02-25 18:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:38] [INFO] Checking activity reminders 
[2026-02-25 18:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:50] [INFO] Checking activity reminders 
[2026-02-25 18:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:13:57] [INFO] Checking activity reminders 
[2026-02-25 18:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:08] [INFO] Checking activity reminders 
[2026-02-25 18:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:20] [INFO] Checking activity reminders 
[2026-02-25 18:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:38] [INFO] Checking activity reminders 
[2026-02-25 18:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:48] [INFO] Checking activity reminders 
[2026-02-25 18:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:50] [INFO] Checking activity reminders 
[2026-02-25 18:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:14:51] [INFO] Checking activity reminders 
[2026-02-25 18:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:08] [INFO] Activity save request {"post_data":{"contact_id":"6662","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت \r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-25 18:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 18:15:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-25 18:15:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-25 18:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 18:15:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6662","note_was_empty":true}
[2026-02-25 18:15:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"6662","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-25 18:15:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699f0af42adbf4.17934510","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-25 18:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 18:15:08] [INFO] Activity saved successfully {"activity_id":"local_activity_699f0af42adbf4.17934510"}
[2026-02-25 18:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 18:15:08] [INFO] Updating virtual stage {"contact_id":"6662","stage_name":"deal_registered","force":false}
[2026-02-25 18:15:08] [INFO] Virtual stage successfully saved {"contact_id":"6662","stage_name":"deal_registered"}
[2026-02-25 18:15:08] [INFO] Virtual stage updated after activity save {"contact_id":"6662"}
[2026-02-25 18:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6662","person_id":"13759"}
[2026-02-25 18:15:12] [INFO] Checking activity reminders 
[2026-02-25 18:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:17] [INFO] Checking activity reminders 
[2026-02-25 18:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:18] [INFO] Checking activity reminders 
[2026-02-25 18:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:19] [INFO] Checking activity reminders 
[2026-02-25 18:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:20] [INFO] Checking activity reminders 
[2026-02-25 18:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:21] [INFO] Checking activity reminders 
[2026-02-25 18:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:49] [INFO] Checking activity reminders 
[2026-02-25 18:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:15:50] [INFO] Checking activity reminders 
[2026-02-25 18:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:16:19] [INFO] Checking activity reminders 
[2026-02-25 18:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:16:20] [INFO] Checking activity reminders 
[2026-02-25 18:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:16:49] [INFO] Checking activity reminders 
[2026-02-25 18:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:16:50] [INFO] Checking activity reminders 
[2026-02-25 18:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:17:19] [INFO] Checking activity reminders 
[2026-02-25 18:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:17:21] [INFO] Checking activity reminders 
[2026-02-25 18:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:17:49] [INFO] Checking activity reminders 
[2026-02-25 18:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:17:51] [INFO] Checking activity reminders 
[2026-02-25 18:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:18:19] [INFO] Checking activity reminders 
[2026-02-25 18:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:18:21] [INFO] Checking activity reminders 
[2026-02-25 18:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:18:49] [INFO] Checking activity reminders 
[2026-02-25 18:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:18:51] [INFO] Checking activity reminders 
[2026-02-25 18:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:19:19] [INFO] Checking activity reminders 
[2026-02-25 18:19:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:19:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:19:21] [INFO] Checking activity reminders 
[2026-02-25 18:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:19:49] [INFO] Checking activity reminders 
[2026-02-25 18:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:19:51] [INFO] Checking activity reminders 
[2026-02-25 18:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:20:19] [INFO] Checking activity reminders 
[2026-02-25 18:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:20:49] [INFO] Checking activity reminders 
[2026-02-25 18:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:21:19] [INFO] Checking activity reminders 
[2026-02-25 18:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:21:49] [INFO] Checking activity reminders 
[2026-02-25 18:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:22:20] [INFO] Checking activity reminders 
[2026-02-25 18:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:22:50] [INFO] Checking activity reminders 
[2026-02-25 18:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:23:20] [INFO] Checking activity reminders 
[2026-02-25 18:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:23:50] [INFO] Checking activity reminders 
[2026-02-25 18:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:24:20] [INFO] Checking activity reminders 
[2026-02-25 18:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:24:50] [INFO] Checking activity reminders 
[2026-02-25 18:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:44:29] [INFO] Checking activity reminders 
[2026-02-25 18:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:51:42] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 18:51:42] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 18:51:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:51:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:51:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:51:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:52:11] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 18:52:11] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 18:52:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:52:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:52:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:52:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:52:12] [INFO] Checking activity reminders 
[2026-02-25 18:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:52:42] [INFO] Checking activity reminders 
[2026-02-25 18:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:52:42] [INFO] Checking activity reminders 
[2026-02-25 18:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:52:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:52:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:52:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:52:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:53:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:53:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:53:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:53:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:53:13] [INFO] Checking activity reminders 
[2026-02-25 18:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:53:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:53:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:53:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:53:44] [INFO] Checking activity reminders 
[2026-02-25 18:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:53:45] [INFO] Checking activity reminders 
[2026-02-25 18:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:53:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:54:08] [INFO] Checking activity reminders 
[2026-02-25 18:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:54:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:54:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:54:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:54:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:54:15] [INFO] Checking activity reminders 
[2026-02-25 18:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:54:39] [INFO] Checking activity reminders 
[2026-02-25 18:54:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:54:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:54:45] [INFO] Checking activity reminders 
[2026-02-25 18:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:55:10] [INFO] Checking activity reminders 
[2026-02-25 18:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:55:16] [INFO] Checking activity reminders 
[2026-02-25 18:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:55:40] [INFO] Checking activity reminders 
[2026-02-25 18:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:55:47] [INFO] Checking activity reminders 
[2026-02-25 18:55:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:55:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:55:57] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:56:11] [INFO] Checking activity reminders 
[2026-02-25 18:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:56:17] [INFO] Checking activity reminders 
[2026-02-25 18:56:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:56:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:56:41] [INFO] Checking activity reminders 
[2026-02-25 18:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:56:48] [INFO] Checking activity reminders 
[2026-02-25 18:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:57:12] [INFO] Checking activity reminders 
[2026-02-25 18:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:57:18] [INFO] Checking activity reminders 
[2026-02-25 18:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:57:43] [INFO] Checking activity reminders 
[2026-02-25 18:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:57:49] [INFO] Checking activity reminders 
[2026-02-25 18:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:58:13] [INFO] Checking activity reminders 
[2026-02-25 18:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:58:20] [INFO] Checking activity reminders 
[2026-02-25 18:58:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:58:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:58:25] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 18:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 18:58:37] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"log_client_event"}
[2026-02-25 18:58:37] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"get_leads"}
[2026-02-25 18:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:58:44] [INFO] Checking activity reminders 
[2026-02-25 18:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:58:51] [INFO] Checking activity reminders 
[2026-02-25 18:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:59:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 18:59:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 18:59:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 18:59:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 18:59:21] [INFO] Checking activity reminders 
[2026-02-25 18:59:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:59:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:59:25] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"check_reminders"}
[2026-02-25 18:59:35] [INFO] Checking activity reminders 
[2026-02-25 18:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 18:59:52] [INFO] Checking activity reminders 
[2026-02-25 18:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 18:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:00:06] [INFO] Checking activity reminders 
[2026-02-25 19:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:00:07] [WARNING] Auth check failed - not authenticated {"session_id":"7jlu90j8o8ouqkldc91p53cojo","session_keys":[],"action":"check_reminders"}
[2026-02-25 19:00:19] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-25 19:00:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:00:23] [INFO] Checking activity reminders 
[2026-02-25 19:00:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:00:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:00:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:00:37] [INFO] Checking activity reminders 
[2026-02-25 19:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:00:54] [INFO] Checking activity reminders 
[2026-02-25 19:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:01:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:01:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:01:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:01:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:01:24] [INFO] Checking activity reminders 
[2026-02-25 19:01:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:01:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:01:36] [INFO] Checking activity reminders 
[2026-02-25 19:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:02:42] [INFO] Checking activity reminders 
[2026-02-25 19:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:03:03] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-25 19:03:03] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-25 19:03:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:03:21] [INFO] Checking activity reminders 
[2026-02-25 19:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:03:32] [INFO] Checking activity reminders 
[2026-02-25 19:03:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:03:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:04:03] [INFO] Checking activity reminders 
[2026-02-25 19:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:04:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:04:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:04:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:04:15] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:04:15] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:04:18] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 19:04:32] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-24","date_to":"2026-02-24","owner_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","owner_didar_ids":["75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"],"owner_didar_ids_csv":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-24","person_date_to":"2026-02-24","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:04:32] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":true,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:04:35] [INFO] KPI calculation completed {"kpi_mode":"user_specific","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 19:04:35] [INFO] Checking activity reminders 
[2026-02-25 19:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:05:24] [INFO] Checking activity reminders 
[2026-02-25 19:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:05:36] [INFO] Checking activity reminders 
[2026-02-25 19:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:05:38] [INFO] generateDealTitle result {"contact_id":"20875","person_name":"جواد بیگی","mobile":"9193400253","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9193400253"}
[2026-02-25 19:05:53] [INFO] Checking activity reminders 
[2026-02-25 19:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:05:55] [INFO] Checking activity reminders 
[2026-02-25 19:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:06:06] [INFO] Checking activity reminders 
[2026-02-25 19:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:06:26] [INFO] Checking activity reminders 
[2026-02-25 19:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:06:28] [INFO] Checking activity reminders 
[2026-02-25 19:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:06:37] [INFO] Checking activity reminders 
[2026-02-25 19:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:06:41] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-25 19:06:41] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-25 19:06:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:06:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20875","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 19:06:44","session_id":"7jlu90j8o8ouqkldc91p53cojo"}
[2026-02-25 19:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:06:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20875","is_new_deal":true}
[2026-02-25 19:06:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 19:06:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 19:06:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 19:06:44] [INFO] getContactPrimaryPhone called {"contact_id":"20875"}
[2026-02-25 19:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:06:44] [INFO] getContactPrimaryPhone result {"contact_id":"20875","person_found":true,"primary_phone":"9193400253"}
[2026-02-25 19:06:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193400253"}
[2026-02-25 19:06:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193400253","contact_id":"20875","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-25 19:06:44"}
[2026-02-25 19:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:06:44] [INFO] generateDealTitle result {"contact_id":"20875","person_name":"جواد بیگی","mobile":"9193400253","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9193400253"}
[2026-02-25 19:06:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20875","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-25 19:06:44] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20875","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 19:06:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20875","title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193400253","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جواد بیگی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 19:06:44","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-25 19:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:06:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 19:06:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20875","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-02-25 19:06:44","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-25 19:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 19:06:45] [INFO] Checking activity reminders 
[2026-02-25 19:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:07:19] [INFO] Checking activity reminders 
[2026-02-25 19:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:07:41] [INFO] Checking activity reminders 
[2026-02-25 19:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:08:11] [INFO] Checking activity reminders 
[2026-02-25 19:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:08:32] [INFO] Checking activity reminders 
[2026-02-25 19:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:08:43] [INFO] Checking activity reminders 
[2026-02-25 19:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:11:11] [INFO] Checking activity reminders 
[2026-02-25 19:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:12:29] [INFO] Checking activity reminders 
[2026-02-25 19:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:12:40] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 19:13:35] [WARNING] Auth check failed - not authenticated {"session_id":"0bch6tfb6k5v6k2a6lt155163p","session_keys":[],"action":"check_reminders"}
[2026-02-25 19:14:26] [INFO] Checking activity reminders 
[2026-02-25 19:14:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:14:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:14:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:14:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:14:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:14:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:14:51] [INFO] Checking activity reminders 
[2026-02-25 19:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:15:00] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-25 19:15:00] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-25 19:15:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:15:30] [INFO] Checking activity reminders 
[2026-02-25 19:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:15:36] [INFO] Checking activity reminders 
[2026-02-25 19:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:16:06] [INFO] Checking activity reminders 
[2026-02-25 19:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:16:10] [INFO] Checking activity reminders 
[2026-02-25 19:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:16:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:16:21] [INFO] Checking activity reminders 
[2026-02-25 19:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:16:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:16:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:16:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:20:12] [INFO] Checking activity reminders 
[2026-02-25 19:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:22:02] [INFO] Checking activity reminders 
[2026-02-25 19:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:22:04] [INFO] Checking activity reminders 
[2026-02-25 19:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:22:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:22:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:22:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:22:09] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:22:09] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 19:22:12] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 19:22:48] [INFO] Checking activity reminders 
[2026-02-25 19:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:23:04] [INFO] Checking activity reminders 
[2026-02-25 19:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:23:10] [INFO] Checking activity reminders 
[2026-02-25 19:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:23:35] [INFO] Checking activity reminders 
[2026-02-25 19:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:23:51] [INFO] Checking activity reminders 
[2026-02-25 19:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:24:42] [INFO] Checking activity reminders 
[2026-02-25 19:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:25:02] [INFO] Checking activity reminders 
[2026-02-25 19:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:26:57] [INFO] Checking activity reminders 
[2026-02-25 19:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:26:59] [INFO] Checking activity reminders 
[2026-02-25 19:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:27:22] [INFO] Checking activity reminders 
[2026-02-25 19:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:27:25] [INFO] Checking activity reminders 
[2026-02-25 19:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:28:05] [INFO] Checking activity reminders 
[2026-02-25 19:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:35:02] [INFO] Checking activity reminders 
[2026-02-25 19:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:35:58] [INFO] Checking activity reminders 
[2026-02-25 19:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:47:39] [INFO] Checking activity reminders 
[2026-02-25 19:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:47:40] [INFO] Checking activity reminders 
[2026-02-25 19:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:47:42] [INFO] Checking activity reminders 
[2026-02-25 19:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:47:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:47:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:47:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:47:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:47:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:47:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:47:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:47:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:47:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:47:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:47:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:48:16] [INFO] Checking activity reminders 
[2026-02-25 19:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:48:26] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-02-25 19:48:26] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-02-25 19:48:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:48:58] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"admin"}
[2026-02-25 19:48:58] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"admin","via_master":true}
[2026-02-25 19:48:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:48:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:48:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:48:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:49:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:49:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:49:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:49:24] [INFO] Checking activity reminders 
[2026-02-25 19:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:49:44] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-25 19:49:44] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-25 19:49:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:49:59] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-25 19:49:59] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-25 19:50:01] [INFO] KPI calculation completed {"kpi_mode":"self","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 19:50:10] [INFO] Checking activity reminders 
[2026-02-25 19:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:51:36] [INFO] Checking activity reminders 
[2026-02-25 19:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:51:38] [INFO] Checking activity reminders 
[2026-02-25 19:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:51:47] [INFO] Checking activity reminders 
[2026-02-25 19:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:11] [INFO] Checking activity reminders 
[2026-02-25 19:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:14] [INFO] Checking activity reminders 
[2026-02-25 19:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 19:52:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 19:52:31] [INFO] Checking activity reminders 
[2026-02-25 19:52:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:34] [INFO] Checking activity reminders 
[2026-02-25 19:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:39] [INFO] Checking activity reminders 
[2026-02-25 19:52:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:52:55] [INFO] Checking activity reminders 
[2026-02-25 19:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:53:08] [INFO] Checking activity reminders 
[2026-02-25 19:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:53:10] [INFO] Checking activity reminders 
[2026-02-25 19:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:54:17] [INFO] Checking activity reminders 
[2026-02-25 19:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:54:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 19:54:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 19:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695122e6c05af9.97801547","person_id":"21402"}
[2026-02-25 19:54:37] [INFO] Checking activity reminders 
[2026-02-25 19:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:54:56] [INFO] Checking activity reminders 
[2026-02-25 19:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:54:57] [INFO] Checking activity reminders 
[2026-02-25 19:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:54:59] [INFO] Checking activity reminders 
[2026-02-25 19:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:55:03] [INFO] Checking activity reminders 
[2026-02-25 19:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:57:08] [INFO] Checking activity reminders 
[2026-02-25 19:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:59:26] [INFO] Checking activity reminders 
[2026-02-25 19:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 19:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 19:59:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 19:59:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:59:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:59:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 19:59:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 19:59:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 19:59:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:01:29] [WARNING] Auth check failed - not authenticated {"session_id":"v810u1eo5nkl4ub0f1p7oep2ai","session_keys":[],"action":"check_reminders"}
[2026-02-25 20:01:43] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-25 20:01:43] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-25 20:01:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:02:13] [INFO] Checking activity reminders 
[2026-02-25 20:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:04:24] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"check_reminders"}
[2026-02-25 20:04:32] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 20:04:32] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 20:04:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:04:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:04:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:04:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:04:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:04:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:04:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:04:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:04:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:04:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:04:47] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:04:47] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:04:50] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 20:04:50] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:04:50] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:04:50] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:04:50] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 20:06:06] [INFO] Checking activity reminders 
[2026-02-25 20:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:06:36] [INFO] Checking activity reminders 
[2026-02-25 20:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:06:56] [INFO] Checking activity reminders 
[2026-02-25 20:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:07:09] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 20:07:09] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 20:07:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:07:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:07:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:07:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-25 20:07:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:07:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:07:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:07:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-25 20:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-25 20:07:34] [INFO] Lead update received {"contact_id":"2898","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 20:07:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-25 20:07:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-25 20:07:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-25 20:07:34] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2898"}
[2026-02-25 20:07:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-25 20:07:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:07:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:07:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:07:46] [INFO] Checking activity reminders 
[2026-02-25 20:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-25 20:07:52] [INFO] Checking activity reminders 
[2026-02-25 20:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:08:06] [INFO] Lead update received {"contact_id":"15885","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-25 20:08:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-25 20:08:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-25 20:08:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-25 20:08:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15885"}
[2026-02-25 20:08:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-25 20:08:53] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 20:08:57] [WARNING] Auth check failed - not authenticated {"session_id":"i4ka5ovnsc6fgeof1i0an5catd","session_keys":[],"action":"check_reminders"}
[2026-02-25 20:11:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:11:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:11:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:11:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:11:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:11:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:11:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:11:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:11:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:11:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:11:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:11:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:11:38] [INFO] Checking activity reminders 
[2026-02-25 20:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:11:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:11:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:11:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:12:08] [INFO] Checking activity reminders 
[2026-02-25 20:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:16:08] [INFO] Checking activity reminders 
[2026-02-25 20:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:16:46] [INFO] Checking activity reminders 
[2026-02-25 20:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:36:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 20:36:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 20:36:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:36:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:36:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:36:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 20:36:44] [INFO] Checking activity reminders 
[2026-02-25 20:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:37:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:37:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:37:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:37:14] [INFO] Checking activity reminders 
[2026-02-25 20:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:37:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:37:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:37:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:37:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:37:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:37:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:37:44] [INFO] Checking activity reminders 
[2026-02-25 20:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:38:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:38:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:38:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:38:15] [INFO] Checking activity reminders 
[2026-02-25 20:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:38:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:38:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:38:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:38:45] [INFO] Checking activity reminders 
[2026-02-25 20:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:52:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 20:52:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 20:52:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 20:52:19] [INFO] Checking activity reminders 
[2026-02-25 20:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:52:50] [INFO] Checking activity reminders 
[2026-02-25 20:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:53:20] [INFO] Checking activity reminders 
[2026-02-25 20:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:53:50] [INFO] Checking activity reminders 
[2026-02-25 20:53:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:53:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:54:20] [INFO] Checking activity reminders 
[2026-02-25 20:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:54:51] [INFO] Checking activity reminders 
[2026-02-25 20:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 20:55:21] [INFO] Checking activity reminders 
[2026-02-25 20:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 20:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:27:57] [INFO] Checking activity reminders 
[2026-02-25 21:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:28:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 21:28:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 21:28:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 21:28:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 21:37:49] [INFO] Checking activity reminders 
[2026-02-25 21:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:39:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 21:39:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 21:39:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 21:39:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 21:41:47] [INFO] Checking activity reminders 
[2026-02-25 21:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:42:13] [INFO] Checking activity reminders 
[2026-02-25 21:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:42:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 21:42:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 21:42:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 21:42:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 21:42:41] [INFO] Checking activity reminders 
[2026-02-25 21:42:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:42:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:43:42] [INFO] Checking activity reminders 
[2026-02-25 21:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:43:56] [INFO] Checking activity reminders 
[2026-02-25 21:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:44:02] [INFO] Checking activity reminders 
[2026-02-25 21:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:44:39] [INFO] Checking activity reminders 
[2026-02-25 21:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:45:44] [INFO] Checking activity reminders 
[2026-02-25 21:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:45:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 21:45:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 21:45:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 21:46:18] [INFO] Checking activity reminders 
[2026-02-25 21:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:46:31] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-25 21:46:31] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-25 21:46:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 21:46:39] [INFO] Checking activity reminders 
[2026-02-25 21:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 21:48:45] [INFO] Checking activity reminders 
[2026-02-25 21:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 21:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:08:27] [INFO] Checking activity reminders 
[2026-02-25 22:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:08:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 22:08:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 22:08:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 22:08:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 22:09:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 22:09:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 22:09:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 22:09:22] [INFO] Checking activity reminders 
[2026-02-25 22:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:09:56] [INFO] Checking activity reminders 
[2026-02-25 22:09:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:09:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:10:25] [INFO] Checking activity reminders 
[2026-02-25 22:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:10:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 22:10:57] [INFO] Checking activity reminders 
[2026-02-25 22:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:11:00] [INFO] Checking activity reminders 
[2026-02-25 22:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:11:30] [INFO] Checking activity reminders 
[2026-02-25 22:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 22:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-25 22:12:04] [INFO] Checking activity reminders 
[2026-02-25 22:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:12:18] [INFO] Checking activity reminders 
[2026-02-25 22:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:12:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 22:12:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 22:12:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 22:12:52] [INFO] Checking activity reminders 
[2026-02-25 22:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:13:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 22:13:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 22:13:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 22:13:04] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:04] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:08] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-25 22:13:08] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:08] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:10] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:10] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-25 22:13:26] [INFO] Checking activity reminders 
[2026-02-25 22:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:14:00] [INFO] Checking activity reminders 
[2026-02-25 22:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:14:27] [INFO] Checking activity reminders 
[2026-02-25 22:14:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:14:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:14:28] [INFO] Checking activity reminders 
[2026-02-25 22:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 22:16:32] [INFO] Checking activity reminders 
[2026-02-25 22:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 22:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:01:57] [WARNING] Auth check failed - not authenticated {"session_id":"qp96g6rjam4dur8hud5s44sk1h","session_keys":[],"action":"check_reminders"}
[2026-02-25 23:02:01] [WARNING] Auth check failed - not authenticated {"session_id":"93oek48aleku6blor5n3o101o9","session_keys":[],"action":"check_reminders"}
[2026-02-25 23:02:07] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 23:02:07] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 23:02:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:02:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:02:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:02:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-02-25 23:02:38] [INFO] Checking activity reminders 
[2026-02-25 23:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:03:08] [INFO] Checking activity reminders 
[2026-02-25 23:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:03:38] [INFO] Checking activity reminders 
[2026-02-25 23:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:04:08] [INFO] Checking activity reminders 
[2026-02-25 23:04:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:04:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:04:38] [INFO] Checking activity reminders 
[2026-02-25 23:04:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:04:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:04:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:04:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:04:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:04:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:05:22] [INFO] Checking activity reminders 
[2026-02-25 23:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:05:56] [INFO] Checking activity reminders 
[2026-02-25 23:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:06:54] [WARNING] Auth check failed - not authenticated {"session_id":"qp96g6rjam4dur8hud5s44sk1h","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:06:54] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"agent"}
[2026-02-25 23:06:54] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"agent","via_master":true}
[2026-02-25 23:06:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:07:27] [INFO] Checking activity reminders 
[2026-02-25 23:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:07:57] [INFO] Checking activity reminders 
[2026-02-25 23:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:08:00] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:08:00] [WARNING] Login attempt failed - wrong password {"user_id":"11","identifier":"حمیدرضا مکرمی"}
[2026-02-25 23:08:05] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:08:05] [WARNING] Login attempt failed - wrong password {"user_id":"11","identifier":"حمیدرضا مکرمی"}
[2026-02-25 23:08:05] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:08:05] [WARNING] Login attempt failed - wrong password {"user_id":"11","identifier":"حمیدرضا مکرمی"}
[2026-02-25 23:08:11] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:08:11] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"agent","via_master":false}
[2026-02-25 23:08:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:27] [INFO] Checking activity reminders 
[2026-02-25 23:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:08:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6977167c073401.47873331","person_id":"21561"}
[2026-02-25 23:08:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6977167c073401.47873331","person_id":"21561"}
[2026-02-25 23:08:42] [INFO] Checking activity reminders 
[2026-02-25 23:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:08:57] [INFO] Checking activity reminders 
[2026-02-25 23:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:09:27] [INFO] Checking activity reminders 
[2026-02-25 23:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:09:58] [INFO] Checking activity reminders 
[2026-02-25 23:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:10:28] [INFO] Checking activity reminders 
[2026-02-25 23:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:10:29] [INFO] Checking activity reminders 
[2026-02-25 23:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:10:59] [INFO] Checking activity reminders 
[2026-02-25 23:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:11:05] [INFO] Checking activity reminders 
[2026-02-25 23:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:11:35] [INFO] Checking activity reminders 
[2026-02-25 23:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:12:06] [INFO] Checking activity reminders 
[2026-02-25 23:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:12:29] [INFO] Checking activity reminders 
[2026-02-25 23:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69777deb053738.61188289","person_id":"21562"}
[2026-02-25 23:13:03] [INFO] Checking activity reminders 
[2026-02-25 23:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:13:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 23:13:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-25 23:13:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:29] [INFO] generateDealTitle result {"contact_id":"local_69788862ab3508.52703220","person_name":"تست نئو 3","mobile":"1321231234","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 1321231234"}
[2026-02-25 23:13:37] [INFO] Checking activity reminders 
[2026-02-25 23:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:13:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69788862ab3508.52703220","deal_id":"","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 23:13:55","session_id":"qp96g6rjam4dur8hud5s44sk1h"}
[2026-02-25 23:13:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69788862ab3508.52703220","is_new_deal":true}
[2026-02-25 23:13:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 23:13:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 23:13:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 23:13:55] [INFO] getContactPrimaryPhone called {"contact_id":"local_69788862ab3508.52703220"}
[2026-02-25 23:13:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:55] [INFO] getContactPrimaryPhone result {"contact_id":"local_69788862ab3508.52703220","person_found":true,"primary_phone":"1321231234"}
[2026-02-25 23:13:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1321231234"}
[2026-02-25 23:13:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1321231234","contact_id":"local_69788862ab3508.52703220","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-02-25 23:13:55"}
[2026-02-25 23:13:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:55] [INFO] generateDealTitle result {"contact_id":"local_69788862ab3508.52703220","person_name":"تست نئو 3","mobile":"1321231234","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 1321231234"}
[2026-02-25 23:13:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69788862ab3508.52703220","payments_count":0,"status":"pending","pipeline_stage":"پرداخت"}
[2026-02-25 23:13:55] [INFO] DealController.save validating permissions {"current_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_id":"local_69788862ab3508.52703220","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 23:13:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69788862ab3508.52703220","title":"معامله سوم 1321231234 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 1321231234","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_name":"تست نئو 3","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-25 23:13:55","session_data":{"didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","name":"حمیدرضا مکرمی","user_id":"11"}}
[2026-02-25 23:13:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:13:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-25 23:13:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69788862ab3508.52703220","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","deal_title":"معامله سوم 1321231234 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-25 23:13:55","ip_address":"86.55.201.212","user_agent":"Mozilla\/5.0 (Linux; Android 6.0; Nexus 5 Build\/MRA58N) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/143.0.0.0 Mobile Safari\/537.36"}
[2026-02-25 23:13:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:14:12] [INFO] Checking activity reminders 
[2026-02-25 23:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:14:46] [INFO] Checking activity reminders 
[2026-02-25 23:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:14:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69788862ab3508.52703220","deal_id":"local_699f50fb837655.43189155","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-25 23:14:54","session_id":"qp96g6rjam4dur8hud5s44sk1h"}
[2026-02-25 23:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:14:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69788862ab3508.52703220","is_new_deal":false}
[2026-02-25 23:14:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-25 23:14:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 23:14:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-25 23:14:54] [INFO] getContactPrimaryPhone called {"contact_id":"local_69788862ab3508.52703220"}
[2026-02-25 23:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:14:54] [INFO] getContactPrimaryPhone result {"contact_id":"local_69788862ab3508.52703220","person_found":true,"primary_phone":"1321231234"}
[2026-02-25 23:14:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1321231234"}
[2026-02-25 23:14:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1321231234","contact_id":"local_69788862ab3508.52703220","deal_id":"local_699f50fb837655.43189155","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-02-25 23:14:54"}
[2026-02-25 23:14:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_699f50fb837655.43189155","contact_id":"local_69788862ab3508.52703220","existing_deal_found":true,"existing_contact_id":"local_69788862ab3508.52703220","existing_title":"معامله سوم 1321231234 | کانال VIP با پشتیبانی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-02-25 23:14:54"}
[2026-02-25 23:14:54] [INFO] DealController.save validated payments {"deal_id":"local_699f50fb837655.43189155","contact_id":"local_69788862ab3508.52703220","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-02-25 23:14:54] [INFO] DealController.save validating permissions {"current_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_id":"local_69788862ab3508.52703220","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-25 23:14:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699f50fb837655.43189155","contact_didar_id":"local_69788862ab3508.52703220","title":"معامله سوم 1321231234 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 1321231234","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_name":"تست نئو 3","existing_deal":"YES","existing_deal_id":"local_699f50fb837655.43189155","existing_deal_status":"Pending","server_time":"2026-02-25 23:14:54","session_data":{"didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","name":"حمیدرضا مکرمی","user_id":"11"}}
[2026-02-25 23:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:14:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699f50fb837655.43189155","contact_id":"local_69788862ab3508.52703220","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","deal_title":"معامله سوم 1321231234 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-02-25 23:14:54","ip_address":"86.55.201.212","user_agent":"Mozilla\/5.0 (Linux; Android 6.0; Nexus 5 Build\/MRA58N) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/143.0.0.0 Mobile Safari\/537.36"}
[2026-02-25 23:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69788862ab3508.52703220","person_id":"21563"}
[2026-02-25 23:15:20] [INFO] Checking activity reminders 
[2026-02-25 23:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:15:54] [INFO] Checking activity reminders 
[2026-02-25 23:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:16:29] [INFO] Checking activity reminders 
[2026-02-25 23:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:16:31] [INFO] Checking activity reminders 
[2026-02-25 23:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:16:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 23:16:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 23:16:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991615e6c80a5.60125528","person_id":"21672"}
[2026-02-25 23:17:01] [INFO] Checking activity reminders 
[2026-02-25 23:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695e32f42a2708.57781773","person_id":"21555"}
[2026-02-25 23:17:18] [INFO] Checking activity reminders 
[2026-02-25 23:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:17:46] [INFO] Checking activity reminders 
[2026-02-25 23:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:17:48] [INFO] Checking activity reminders 
[2026-02-25 23:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:18:06] [INFO] Checking activity reminders 
[2026-02-25 23:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:18:40] [INFO] Checking activity reminders 
[2026-02-25 23:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:18:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:19:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:19:38] [INFO] Checking activity reminders 
[2026-02-25 23:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:19:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:19:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:19:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:19:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:20:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:20:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:20:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:20:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:20:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 23:20:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-25 23:20:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989b6b14d10a7.53854196","person_id":"21640"}
[2026-02-25 23:20:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989b6b14d10a7.53854196","person_id":"21640"}
[2026-02-25 23:20:36] [INFO] Checking activity reminders 
[2026-02-25 23:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:20:48] [INFO] Checking activity reminders 
[2026-02-25 23:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:21:05] [INFO] Checking activity reminders 
[2026-02-25 23:21:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:21:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:26:08] [INFO] Checking activity reminders 
[2026-02-25 23:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:26:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:26:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:26:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:26:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:26:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-25 23:26:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-25 23:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6953d26f742fe2.70411984","person_id":"21478"}
[2026-02-25 23:26:53] [INFO] Checking activity reminders 
[2026-02-25 23:26:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:26:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:26:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69522227ceec99.58664127","person_id":"21409"}
[2026-02-25 23:27:27] [INFO] Checking activity reminders 
[2026-02-25 23:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:31:49] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-25 23:31:49] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-25 23:31:49] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-25 23:31:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:31:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:31:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:31:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:32:01] [INFO] Checking activity reminders 
[2026-02-25 23:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:45:48] [INFO] Checking activity reminders 
[2026-02-25 23:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:45:51] [INFO] Checking activity reminders 
[2026-02-25 23:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:45:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:45:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:45:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:45:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:45:53] [INFO] Checking activity reminders 
[2026-02-25 23:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:45:55] [INFO] Checking activity reminders 
[2026-02-25 23:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:45:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:45:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:45:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:45:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:46:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-25 23:46:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-25 23:46:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-25 23:46:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-25 23:46:23] [INFO] Checking activity reminders 
[2026-02-25 23:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:46:46] [INFO] Checking activity reminders 
[2026-02-25 23:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:46:48] [INFO] Checking activity reminders 
[2026-02-25 23:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:47:01] [INFO] Checking activity reminders 
[2026-02-25 23:47:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:47:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:47:32] [INFO] Checking activity reminders 
[2026-02-25 23:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:47:35] [INFO] Checking activity reminders 
[2026-02-25 23:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:48:09] [INFO] Checking activity reminders 
[2026-02-25 23:48:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:48:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:51:08] [INFO] Checking activity reminders 
[2026-02-25 23:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:58:27] [INFO] Checking activity reminders 
[2026-02-25 23:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-25 23:58:47] [INFO] Checking activity reminders 
[2026-02-25 23:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-25 23:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:00:15] [INFO] Checking activity reminders 
[2026-02-26 00:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-26 00:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-26 00:00:59] [INFO] Checking activity reminders 
[2026-02-26 00:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:06:42] [INFO] Checking activity reminders 
[2026-02-26 00:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:08:53] [INFO] Checking activity reminders 
[2026-02-26 00:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:09:00] [INFO] Checking activity reminders 
[2026-02-26 00:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:09:27] [INFO] Checking activity reminders 
[2026-02-26 00:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:09:32] [INFO] Checking activity reminders 
[2026-02-26 00:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:10:01] [INFO] Checking activity reminders 
[2026-02-26 00:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:10:06] [INFO] Checking activity reminders 
[2026-02-26 00:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:10:35] [INFO] Checking activity reminders 
[2026-02-26 00:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:10:40] [INFO] Checking activity reminders 
[2026-02-26 00:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:11:01] [INFO] Checking activity reminders 
[2026-02-26 00:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:11:01] [INFO] Checking activity reminders 
[2026-02-26 00:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:14:11] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"check_reminders"}
[2026-02-26 00:14:11] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:11] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:24] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:25] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:27] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:28] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:29] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:29] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:29] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:29] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"get_person_profile"}
[2026-02-26 00:14:29] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"get_person_profile"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"get_person_profile"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:36] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:37] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:45] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:14:45] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 00:14:45] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 00:14:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 00:14:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:14:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:14:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:14:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:14:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:15:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:15:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:15:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:15:14] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:14] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:24] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 00:15:24] [INFO] Checking activity reminders 
[2026-02-26 00:15:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:15:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:15:24] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:24] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:25] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:25] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:15:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:15:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:15:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:15:55] [INFO] Checking activity reminders 
[2026-02-26 00:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:23:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 00:23:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:23:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:23:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 00:23:43] [INFO] Checking activity reminders 
[2026-02-26 00:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:24:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 00:24:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:24:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:24:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:24:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 00:24:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 00:24:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 00:24:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:24:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:24:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:24:44] [INFO] Checking activity reminders 
[2026-02-26 00:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:25:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:25:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:25:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:25:06] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:06] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:14] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 00:25:14] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:14] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:14] [INFO] Checking activity reminders 
[2026-02-26 00:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:25:14] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:14] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:25:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:25:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:26:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:26:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:26:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:26:06] [INFO] Checking activity reminders 
[2026-02-26 00:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:26:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:26:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:26:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:26:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 00:26:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 00:26:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 00:26:16] [INFO] Notification created {"notification_id":"559","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-02-26 00:26:36] [INFO] Checking activity reminders 
[2026-02-26 00:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:26:38] [INFO] Notification created {"notification_id":"560","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-02-26 00:26:48] [INFO] Notification created {"notification_id":"561","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-02-26 00:27:01] [INFO] Checking activity reminders 
[2026-02-26 00:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:27:04] [INFO] Checking activity reminders 
[2026-02-26 00:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:29:37] [INFO] Checking activity reminders 
[2026-02-26 00:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 00:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 00:38:31] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-26 00:38:31] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"check_reminders"}
[2026-02-26 00:38:33] [WARNING] Auth check failed - not authenticated {"session_id":"lpdhob3h8jvn9t70e43sd89ju1","session_keys":[],"action":"log_client_event"}
[2026-02-26 09:26:35] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 09:26:35] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 09:26:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 09:26:41] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 09:26:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 09:36:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 09:36:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 09:39:35] [INFO] Checking activity reminders 
[2026-02-26 09:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:40:05] [INFO] Checking activity reminders 
[2026-02-26 09:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:40:35] [INFO] Checking activity reminders 
[2026-02-26 09:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:41:05] [INFO] Checking activity reminders 
[2026-02-26 09:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:41:35] [INFO] Checking activity reminders 
[2026-02-26 09:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:42:05] [INFO] Checking activity reminders 
[2026-02-26 09:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:42:36] [INFO] Checking activity reminders 
[2026-02-26 09:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:43:52] [INFO] Checking activity reminders 
[2026-02-26 09:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:44:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69940308a79476.00490393","person_id":"21712"}
[2026-02-26 09:44:22] [INFO] Checking activity reminders 
[2026-02-26 09:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:44:52] [INFO] Checking activity reminders 
[2026-02-26 09:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:45:23] [INFO] Checking activity reminders 
[2026-02-26 09:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 09:45:25] [INFO] Checking activity reminders 
[2026-02-26 09:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 09:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:13:10] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 10:13:10] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 10:13:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:13:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:13:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:13:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:13:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:13:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:13:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:13:41] [INFO] Checking activity reminders 
[2026-02-26 10:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:13:52] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:13:52] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 10:13:52] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 10:13:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:13:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:13:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:13:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:14:11] [INFO] Checking activity reminders 
[2026-02-26 10:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 10:14:22] [INFO] Checking activity reminders 
[2026-02-26 10:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:14:47] [INFO] Checking activity reminders 
[2026-02-26 10:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:20:58] [INFO] Checking activity reminders 
[2026-02-26 10:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:21:03] [INFO] Checking activity reminders 
[2026-02-26 10:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:21:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:21:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:21:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:21:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:21:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:21:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:21:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:22:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:22:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:22:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:22:02] [INFO] Checking activity reminders 
[2026-02-26 10:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:22:46] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:22:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:23:05] [INFO] Checking activity reminders 
[2026-02-26 10:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:23:40] [INFO] Checking activity reminders 
[2026-02-26 10:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:23:46] [INFO] Checking activity reminders 
[2026-02-26 10:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:24:06] [INFO] Checking activity reminders 
[2026-02-26 10:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:25:51] [INFO] Checking activity reminders 
[2026-02-26 10:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:27:45] [INFO] Checking activity reminders 
[2026-02-26 10:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:28:15] [INFO] Checking activity reminders 
[2026-02-26 10:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:28:45] [INFO] Checking activity reminders 
[2026-02-26 10:28:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:28:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:29:15] [INFO] Checking activity reminders 
[2026-02-26 10:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:29:46] [INFO] Checking activity reminders 
[2026-02-26 10:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:33:05] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:33:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:33:35] [INFO] Checking activity reminders 
[2026-02-26 10:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 10:34:06] [INFO] Checking activity reminders 
[2026-02-26 10:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:34:28] [INFO] Checking activity reminders 
[2026-02-26 10:34:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:34:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:34:36] [INFO] Checking activity reminders 
[2026-02-26 10:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:34:51] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:34:51] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-26 10:34:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:35:01] [INFO] Checking activity reminders 
[2026-02-26 10:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:04] [INFO] Checking activity reminders 
[2026-02-26 10:35:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:06] [INFO] Checking activity reminders 
[2026-02-26 10:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:35:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:35:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:35:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:35:36] [INFO] Checking activity reminders 
[2026-02-26 10:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:43] [INFO] Checking activity reminders 
[2026-02-26 10:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:57] [INFO] Checking activity reminders 
[2026-02-26 10:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:35:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:36:00] [INFO] Checking activity reminders 
[2026-02-26 10:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:36:05] [INFO] Checking activity reminders 
[2026-02-26 10:36:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:36:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:36:06] [INFO] Checking activity reminders 
[2026-02-26 10:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:36:35] [INFO] Checking activity reminders 
[2026-02-26 10:36:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:36:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:36:36] [INFO] Checking activity reminders 
[2026-02-26 10:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:37:05] [INFO] Checking activity reminders 
[2026-02-26 10:37:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:37:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:37:06] [INFO] Checking activity reminders 
[2026-02-26 10:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:37:24] [INFO] Checking activity reminders 
[2026-02-26 10:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:37:37] [INFO] Checking activity reminders 
[2026-02-26 10:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:38:06] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13708","deal_id":"18893","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 10:38:06","session_id":"jl8md6kprota7tglp2hiofg9jq"}
[2026-02-26 10:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 10:38:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13708","is_new_deal":false}
[2026-02-26 10:38:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 10:38:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 10:38:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 10:38:06] [INFO] getContactPrimaryPhone called {"contact_id":"13708"}
[2026-02-26 10:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 10:38:06] [INFO] getContactPrimaryPhone result {"contact_id":"13708","person_found":true,"primary_phone":"9303935310"}
[2026-02-26 10:38:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9303935310"}
[2026-02-26 10:38:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9303935310","contact_id":"13708","deal_id":"18893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 10:38:06"}
[2026-02-26 10:38:06] [INFO] DealController.save existing deal lookup {"deal_id":"18893","contact_id":"13708","existing_deal_found":true,"existing_contact_id":"13708","existing_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 10:38:06"}
[2026-02-26 10:38:06] [INFO] DealController.save validated payments {"deal_id":"18893","contact_id":"13708","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-26 10:38:06] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13708","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 10:38:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18893","contact_didar_id":"13708","title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","base_title_used":"معامله سمیه آهنگریان","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"سمیه آهنگریان","existing_deal":"YES","existing_deal_id":"18893","existing_deal_status":"Pending","server_time":"2026-02-26 10:38:06","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-26 10:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 10:38:06] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18893","product_ids":[23]}
[2026-02-26 10:38:06] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18893","contact_id":"13708","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-02-26 10:38:06","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 10:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 10:38:07] [INFO] Checking activity reminders 
[2026-02-26 10:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:40:31] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"check_reminders"}
[2026-02-26 10:40:31] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:31] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_products"}
[2026-02-26 10:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_deals"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_deals"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_products"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:39] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:40:41] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"check_reminders"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_products"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:04] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:04] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:04] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:04] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:05] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:06] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:06] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:06] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:06] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"get_leads"}
[2026-02-26 10:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:12] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"lookup_mobile"}
[2026-02-26 10:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:16] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:18] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"check_reminders"}
[2026-02-26 10:41:18] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:18] [WARNING] Auth check failed - not authenticated {"session_id":"a71dq3a1objsk8irkv8893g6bt","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:41:26] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:41:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:41:27] [INFO] Checking activity reminders 
[2026-02-26 10:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:41:57] [INFO] Checking activity reminders 
[2026-02-26 10:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:42:28] [INFO] Checking activity reminders 
[2026-02-26 10:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:42:35] [INFO] Checking activity reminders 
[2026-02-26 10:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:42:56] [INFO] Checking activity reminders 
[2026-02-26 10:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:42:58] [INFO] Checking activity reminders 
[2026-02-26 10:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:43:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 10:43:27] [INFO] Checking activity reminders 
[2026-02-26 10:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:43:28] [INFO] Checking activity reminders 
[2026-02-26 10:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:43:58] [INFO] Checking activity reminders 
[2026-02-26 10:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:44:28] [INFO] Checking activity reminders 
[2026-02-26 10:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:44:58] [INFO] Checking activity reminders 
[2026-02-26 10:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:45:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:45:05] [INFO] Checking activity reminders 
[2026-02-26 10:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d889d2a6f81.91701468","person_id":"21793"}
[2026-02-26 10:45:07] [INFO] Checking activity reminders 
[2026-02-26 10:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:15] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:15] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:16] [INFO] KPI calculation completed {"kpi_mode":"self","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 10:45:16] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:16] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:16] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:16] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:45:29] [INFO] Checking activity reminders 
[2026-02-26 10:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:34] [INFO] Checking activity reminders 
[2026-02-26 10:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:36] [INFO] Checking activity reminders 
[2026-02-26 10:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:37] [INFO] Checking activity reminders 
[2026-02-26 10:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:45:53] [INFO] Checking activity reminders 
[2026-02-26 10:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:04] [INFO] Checking activity reminders 
[2026-02-26 10:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:08] [INFO] Checking activity reminders 
[2026-02-26 10:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 10:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 10:46:34] [INFO] Checking activity reminders 
[2026-02-26 10:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:38] [INFO] Checking activity reminders 
[2026-02-26 10:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:38] [INFO] Checking activity reminders 
[2026-02-26 10:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:46] [INFO] Checking activity reminders 
[2026-02-26 10:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:49] [INFO] Checking activity reminders 
[2026-02-26 10:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:46:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 10:46:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 10:46:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 10:46:55] [INFO] Checking activity reminders 
[2026-02-26 10:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:01] [INFO] Checking activity reminders 
[2026-02-26 10:47:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:07] [INFO] Checking activity reminders 
[2026-02-26 10:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:08] [INFO] Checking activity reminders 
[2026-02-26 10:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-02-26 10:47:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-02-26 10:47:16] [INFO] Checking activity reminders 
[2026-02-26 10:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d889d2a6f81.91701468","person_id":"21793"}
[2026-02-26 10:47:23] [INFO] Checking activity reminders 
[2026-02-26 10:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:38] [INFO] Checking activity reminders 
[2026-02-26 10:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:47:53] [INFO] Checking activity reminders 
[2026-02-26 10:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:48:08] [INFO] Checking activity reminders 
[2026-02-26 10:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:48:23] [INFO] Checking activity reminders 
[2026-02-26 10:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:48:26] [INFO] Checking activity reminders 
[2026-02-26 10:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:48:35] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:48:36] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"project","via_master":false}
[2026-02-26 10:48:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:48:38] [INFO] Checking activity reminders 
[2026-02-26 10:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21698","person_id":"16139"}
[2026-02-26 10:49:06] [INFO] Checking activity reminders 
[2026-02-26 10:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:49:08] [INFO] Checking activity reminders 
[2026-02-26 10:49:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:49:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:49:12] [INFO] Checking activity reminders 
[2026-02-26 10:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:49:38] [INFO] Checking activity reminders 
[2026-02-26 10:49:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:49:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:50:13] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:50:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:50:20] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:50:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:50:20] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 10:50:21] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-26 10:50:21] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-26 10:50:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:50:23] [INFO] Checking activity reminders 
[2026-02-26 10:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:50:25] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-02-26 10:50:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 10:50:28] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:28] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:28] [INFO] KPI calculation completed {"kpi_mode":"self","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 10:50:29] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:29] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:29] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","owner_didar_ids":["be60addc-d481-4cb5-bd7b-716622147ae5"],"owner_didar_ids_csv":"be60addc-d481-4cb5-bd7b-716622147ae5","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:29] [INFO] KPI Mode Determined {"is_global_kpi":false,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":true,"filter_user_id":null,"filter_owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 10:50:30] [INFO] Checking activity reminders 
[2026-02-26 10:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:51:48] [INFO] Checking activity reminders 
[2026-02-26 10:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:06] [INFO] Checking activity reminders 
[2026-02-26 10:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:09] [INFO] Checking activity reminders 
[2026-02-26 10:52:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:15] [INFO] Checking activity reminders 
[2026-02-26 10:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:20] [INFO] Checking activity reminders 
[2026-02-26 10:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:30] [INFO] Checking activity reminders 
[2026-02-26 10:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:46] [INFO] Checking activity reminders 
[2026-02-26 10:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:50] [INFO] Checking activity reminders 
[2026-02-26 10:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:52:51] [INFO] Checking activity reminders 
[2026-02-26 10:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:53:20] [INFO] Checking activity reminders 
[2026-02-26 10:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:53:50] [INFO] Checking activity reminders 
[2026-02-26 10:53:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:53:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:54:20] [INFO] Checking activity reminders 
[2026-02-26 10:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:54:50] [INFO] Checking activity reminders 
[2026-02-26 10:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:20] [INFO] Checking activity reminders 
[2026-02-26 10:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:55:31] [INFO] Activity save request {"post_data":{"contact_id":"12398","deal_id":"local_699ef3d121e519.10264232","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 10:55:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12398","note_was_empty":true}
[2026-02-26 10:55:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"12398","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:31] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-02-26 10:55:31] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-02-26 10:55:31] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-02-26 10:55:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ef3d121e519.10264232","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-26 10:55:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff56b588bd1.04501342","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:31] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff56b588bd1.04501342"}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:31] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-02-26 10:55:31] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-02-26 10:55:31] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-02-26 10:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-02-26 10:55:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:55:50] [INFO] Checking activity reminders 
[2026-02-26 10:55:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:55:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:55:57] [INFO] Activity save request {"post_data":{"contact_id":"3609","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 10:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:55:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 10:55:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 10:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:55:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3609","note_was_empty":true}
[2026-02-26 10:55:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"3609","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 10:55:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff5855fc405.90404532","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 10:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:55:57] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff5855fc405.90404532"}
[2026-02-26 10:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:55:57] [INFO] Updating virtual stage {"contact_id":"3609","stage_name":"deal_registered","force":false}
[2026-02-26 10:55:57] [INFO] Virtual stage successfully saved {"contact_id":"3609","stage_name":"deal_registered"}
[2026-02-26 10:55:57] [INFO] Virtual stage updated after activity save {"contact_id":"3609"}
[2026-02-26 10:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3609","person_id":"14039"}
[2026-02-26 10:56:11] [INFO] Checking activity reminders 
[2026-02-26 10:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:56:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:21] [INFO] Checking activity reminders 
[2026-02-26 10:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:56:29] [INFO] Activity save request {"post_data":{"contact_id":"20719","deal_id":"local_699b29aa1b9b11.53311677","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 10:56:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20719","note_was_empty":true}
[2026-02-26 10:56:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"20719","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:29] [INFO] Updating virtual stage {"contact_id":"20719","stage_name":"deal_registered","force":false}
[2026-02-26 10:56:29] [INFO] Virtual stage successfully saved {"contact_id":"20719","stage_name":"deal_registered"}
[2026-02-26 10:56:29] [INFO] Virtual stage updated after activity save {"contact_id":"20719"}
[2026-02-26 10:56:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699b29aa1b9b11.53311677","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 10:56:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff5a50cc7d2.70527155","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:29] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff5a50cc7d2.70527155"}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:29] [INFO] Updating virtual stage {"contact_id":"20719","stage_name":"deal_registered","force":false}
[2026-02-26 10:56:29] [INFO] Virtual stage successfully saved {"contact_id":"20719","stage_name":"deal_registered"}
[2026-02-26 10:56:29] [INFO] Virtual stage updated after activity save {"contact_id":"20719"}
[2026-02-26 10:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-02-26 10:56:42] [INFO] Checking activity reminders 
[2026-02-26 10:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:56:51] [INFO] Checking activity reminders 
[2026-02-26 10:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:56:57] [INFO] Checking activity reminders 
[2026-02-26 10:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:57:02] [INFO] Checking activity reminders 
[2026-02-26 10:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:57:21] [INFO] Checking activity reminders 
[2026-02-26 10:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:57:42] [INFO] Activity save request {"post_data":{"contact_id":"4120","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فعلا در مورد حضورش در کانال تصمیم نداره \r\nمنتظر شرایط کشور \r\nخودش اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 10:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:57:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 10:57:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 10:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:57:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4120","note_was_empty":true}
[2026-02-26 10:57:42] [INFO] Didar write disabled; saving activity locally {"contact_id":"4120","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 10:57:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff5ee1a09d5.52401764","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 10:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:57:42] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff5ee1a09d5.52401764"}
[2026-02-26 10:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:57:42] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-02-26 10:57:42] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-02-26 10:57:42] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-02-26 10:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-02-26 10:57:51] [INFO] Checking activity reminders 
[2026-02-26 10:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:21] [INFO] Checking activity reminders 
[2026-02-26 10:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:58:24] [INFO] Activity save request {"post_data":{"contact_id":"17001","deal_id":"local_699ed482204c51.63145890","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 10:58:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17001","note_was_empty":true}
[2026-02-26 10:58:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"17001","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:24] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-02-26 10:58:24] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-02-26 10:58:24] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-02-26 10:58:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ed482204c51.63145890","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-26 10:58:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff618500b21.15668203","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:24] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff618500b21.15668203"}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:24] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-02-26 10:58:24] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-02-26 10:58:24] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-02-26 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-02-26 10:58:51] [INFO] Checking activity reminders 
[2026-02-26 10:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:59:17] [INFO] Checking activity reminders 
[2026-02-26 10:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:59:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9426","person_id":"13995"}
[2026-02-26 10:59:39] [INFO] Checking activity reminders 
[2026-02-26 10:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 10:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 10:59:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:09] [INFO] Checking activity reminders 
[2026-02-26 11:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:00:24] [INFO] Activity save request {"post_data":{"contact_id":"2806","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پشتیبانی جهت خرید طلا \/ ارتباط با اقای کاشانی ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:00:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2806","note_was_empty":true}
[2026-02-26 11:00:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"2806","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:00:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff6900b3124.50010148","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:24] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff6900b3124.50010148"}
[2026-02-26 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:24] [INFO] Updating virtual stage {"contact_id":"2806","stage_name":"deal_registered","force":false}
[2026-02-26 11:00:24] [INFO] Virtual stage successfully saved {"contact_id":"2806","stage_name":"deal_registered"}
[2026-02-26 11:00:24] [INFO] Virtual stage updated after activity save {"contact_id":"2806"}
[2026-02-26 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-02-26 11:00:39] [INFO] Checking activity reminders 
[2026-02-26 11:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:01:01] [INFO] Checking activity reminders 
[2026-02-26 11:01:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:01:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:01:01] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:01:01] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:01:01] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:01:13] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:01:14] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-26 11:01:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:01:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:01:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:01:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:01:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:01:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:01:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:01:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:01:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:01:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:01:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:01:21] [INFO] Checking activity reminders 
[2026-02-26 11:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:01:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:01:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:01:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:01:44] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:44] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:47] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 11:01:47] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:47] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:47] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:47] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-26 11:01:47] [INFO] Checking activity reminders 
[2026-02-26 11:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:01:48] [INFO] Checking activity reminders 
[2026-02-26 11:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:01:51] [INFO] Checking activity reminders 
[2026-02-26 11:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:02:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:02:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:02:17] [INFO] Checking activity reminders 
[2026-02-26 11:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:02:18] [INFO] Checking activity reminders 
[2026-02-26 11:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:21] [INFO] Checking activity reminders 
[2026-02-26 11:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:02:28] [INFO] Lead update received {"contact_id":"local_699e9c05591884.49792017","has_previous_purchase":"not_set","previous_purchase_number":"not_set","activity_has_purchase":"","activity_previous_number":""}
[2026-02-26 11:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"","contact_id":"local_699e9c05591884.49792017"}
[2026-02-26 11:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699e9c05591884.49792017","person_id":"21798"}
[2026-02-26 11:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:47] [INFO] Activity save request {"post_data":{"contact_id":"3481","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:02:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3481","note_was_empty":true}
[2026-02-26 11:02:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"3481","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:02:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff71fbd66c9.32353578","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:47] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff71fbd66c9.32353578"}
[2026-02-26 11:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:47] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-02-26 11:02:47] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-02-26 11:02:47] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-02-26 11:02:47] [INFO] Checking activity reminders 
[2026-02-26 11:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-02-26 11:02:51] [INFO] Checking activity reminders 
[2026-02-26 11:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:18] [INFO] Checking activity reminders 
[2026-02-26 11:03:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:22] [INFO] Checking activity reminders 
[2026-02-26 11:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:33] [INFO] Checking activity reminders 
[2026-02-26 11:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:03:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:03:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:03:36] [INFO] Activity save request {"post_data":{"contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دادسرا بود شرایط صحبت نداشت \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:03:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11768","note_was_empty":true}
[2026-02-26 11:03:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"11768","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:36] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-02-26 11:03:36] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-02-26 11:03:36] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-02-26 11:03:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d72d59585d5.67909885","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-26 11:03:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff7508d7091.44708948","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:36] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff7508d7091.44708948"}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:36] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-02-26 11:03:36] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-02-26 11:03:36] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-02-26 11:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-02-26 11:03:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:48] [INFO] Checking activity reminders 
[2026-02-26 11:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:48] [INFO] Checking activity reminders 
[2026-02-26 11:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:52] [INFO] Checking activity reminders 
[2026-02-26 11:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:03:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:03:58] [INFO] Activity save request {"post_data":{"contact_id":"13708","deal_id":"18893","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"بابت تمدید 405  بخشی رو واریز کردن","activity_duration":"5","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:03:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"13708","note_was_empty":true}
[2026-02-26 11:03:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"13708","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:58] [INFO] Updating virtual stage {"contact_id":"13708","stage_name":"deal_registered","force":false}
[2026-02-26 11:03:58] [INFO] Virtual stage successfully saved {"contact_id":"13708","stage_name":"deal_registered"}
[2026-02-26 11:03:58] [INFO] Virtual stage updated after activity save {"contact_id":"13708"}
[2026-02-26 11:03:58] [INFO] Pipeline stage updated after activity save {"deal_id":"18893","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 11:03:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff7667cfc34.22483039","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:58] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff7667cfc34.22483039"}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:58] [INFO] Updating virtual stage {"contact_id":"13708","stage_name":"deal_registered","force":false}
[2026-02-26 11:03:58] [INFO] Virtual stage successfully saved {"contact_id":"13708","stage_name":"deal_registered"}
[2026-02-26 11:03:58] [INFO] Virtual stage updated after activity save {"contact_id":"13708"}
[2026-02-26 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-02-26 11:03:59] [INFO] Checking activity reminders 
[2026-02-26 11:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:06] [INFO] Lead update received {"contact_id":"2898","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-02-26 11:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:04:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2898"}
[2026-02-26 11:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:04:08] [INFO] Checking activity reminders 
[2026-02-26 11:04:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:13] [INFO] Checking activity reminders 
[2026-02-26 11:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:04:18] [INFO] Checking activity reminders 
[2026-02-26 11:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:31] [INFO] Checking activity reminders 
[2026-02-26 11:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:38] [INFO] Checking activity reminders 
[2026-02-26 11:04:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:44] [INFO] Checking activity reminders 
[2026-02-26 11:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:04:48] [INFO] Checking activity reminders 
[2026-02-26 11:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:05:14] [INFO] Checking activity reminders 
[2026-02-26 11:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:05:18] [INFO] Checking activity reminders 
[2026-02-26 11:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:05:41] [INFO] Checking activity reminders 
[2026-02-26 11:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:05:44] [INFO] Checking activity reminders 
[2026-02-26 11:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:05:48] [INFO] Checking activity reminders 
[2026-02-26 11:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:06:14] [INFO] Checking activity reminders 
[2026-02-26 11:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:06:18] [INFO] Checking activity reminders 
[2026-02-26 11:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:06:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2130","deal_id":"local_699d78efc8f299.47314323","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 11:06:25","session_id":"jl8md6kprota7tglp2hiofg9jq"}
[2026-02-26 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:06:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2130","is_new_deal":false}
[2026-02-26 11:06:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 11:06:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:06:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:06:25] [INFO] getContactPrimaryPhone called {"contact_id":"2130"}
[2026-02-26 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:06:25] [INFO] getContactPrimaryPhone result {"contact_id":"2130","person_found":true,"primary_phone":"9171669575"}
[2026-02-26 11:06:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171669575"}
[2026-02-26 11:06:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171669575","contact_id":"2130","deal_id":"local_699d78efc8f299.47314323","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 11:06:25"}
[2026-02-26 11:06:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d78efc8f299.47314323","contact_id":"2130","existing_deal_found":true,"existing_contact_id":"2130","existing_title":"معامله دوم 9171669575 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 11:06:25"}
[2026-02-26 11:06:25] [INFO] DealController.save validated payments {"deal_id":"local_699d78efc8f299.47314323","contact_id":"2130","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-26 11:06:25] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"2130","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 11:06:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d78efc8f299.47314323","contact_didar_id":"2130","title":"معامله دوم 9171669575 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9171669575","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"فرزاد سلطانی","existing_deal":"YES","existing_deal_id":"local_699d78efc8f299.47314323","existing_deal_status":"Pending","server_time":"2026-02-26 11:06:25","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-26 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:06:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d78efc8f299.47314323","contact_id":"2130","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9171669575 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-02-26 11:06:25","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:06:36] [INFO] Checking activity reminders 
[2026-02-26 11:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:06:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:06:48] [INFO] Checking activity reminders 
[2026-02-26 11:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:06:56] [INFO] Activity save request {"post_data":{"contact_id":"2898","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مجرد \/ تهران \r\nسرپرست خانواده \r\nخیلی درگیری شغلی و کاری داره \r\nدر طلای فیزیکی سرمایه گذاری \r\n800 م در بورس نوسانات \r\nبرای کانال میگه در حال بازسازی هستم 600 میلیون هزینه باید انجام بدم \r\nنمیرسم اطلاعات کانال چک کنم \r\nپرزنت 405 با پشتیبانی 79 \/ بدون پشتیبانی 54  \r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:06:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:06:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:06:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2898","note_was_empty":true}
[2026-02-26 11:06:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"2898","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:06:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff818efa8b5.68329049","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:06:56] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff818efa8b5.68329049"}
[2026-02-26 11:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:06:56] [INFO] Updating virtual stage {"contact_id":"2898","stage_name":"deal_registered","force":false}
[2026-02-26 11:06:56] [INFO] Virtual stage successfully saved {"contact_id":"2898","stage_name":"deal_registered"}
[2026-02-26 11:06:56] [INFO] Virtual stage updated after activity save {"contact_id":"2898"}
[2026-02-26 11:06:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-02-26 11:07:06] [INFO] Checking activity reminders 
[2026-02-26 11:07:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:07:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:07:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-02-26 11:07:18] [INFO] Checking activity reminders 
[2026-02-26 11:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:07:23] [INFO] Checking activity reminders 
[2026-02-26 11:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:07:23] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:07:23] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:07:23] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:07:30] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:07:30] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-26 11:07:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:07:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:07:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:07:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:07:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:07:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:07:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:07:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:07:36] [INFO] Checking activity reminders 
[2026-02-26 11:07:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:07:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:07:43] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-26 11:07:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:07:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:07:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:07:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:07:48] [INFO] Checking activity reminders 
[2026-02-26 11:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:07:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:07:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:07:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:08:06] [INFO] Checking activity reminders 
[2026-02-26 11:08:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:08:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:08:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:14] [INFO] Checking activity reminders 
[2026-02-26 11:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:08:18] [INFO] Checking activity reminders 
[2026-02-26 11:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:08:23] [INFO] Activity save request {"post_data":{"contact_id":"917","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:08:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"917","note_was_empty":true}
[2026-02-26 11:08:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"917","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:08:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff86f5ba992.58576328","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:23] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff86f5ba992.58576328"}
[2026-02-26 11:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:23] [INFO] Updating virtual stage {"contact_id":"917","stage_name":"deal_registered","force":false}
[2026-02-26 11:08:23] [INFO] Virtual stage successfully saved {"contact_id":"917","stage_name":"deal_registered"}
[2026-02-26 11:08:23] [INFO] Virtual stage updated after activity save {"contact_id":"917"}
[2026-02-26 11:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-02-26 11:08:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7001","deal_id":"local_699960dd53d5a1.86066453","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 11:08:24","session_id":"jl8md6kprota7tglp2hiofg9jq"}
[2026-02-26 11:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:08:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7001","is_new_deal":false}
[2026-02-26 11:08:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 11:08:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:08:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:08:24] [INFO] getContactPrimaryPhone called {"contact_id":"7001"}
[2026-02-26 11:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:08:24] [INFO] getContactPrimaryPhone result {"contact_id":"7001","person_found":true,"primary_phone":"9114222689"}
[2026-02-26 11:08:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114222689"}
[2026-02-26 11:08:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114222689","contact_id":"7001","deal_id":"local_699960dd53d5a1.86066453","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 11:08:24"}
[2026-02-26 11:08:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_699960dd53d5a1.86066453","contact_id":"7001","existing_deal_found":true,"existing_contact_id":"7001","existing_title":"معامله سوم 9114222689 | vip","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 11:08:24"}
[2026-02-26 11:08:24] [INFO] DealController.save validated payments {"deal_id":"local_699960dd53d5a1.86066453","contact_id":"7001","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-02-26 11:08:24] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7001","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 11:08:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699960dd53d5a1.86066453","contact_didar_id":"7001","title":"معامله سوم 9114222689 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9114222689","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"قنبری مازندران","existing_deal":"YES","existing_deal_id":"local_699960dd53d5a1.86066453","existing_deal_status":"Pending","server_time":"2026-02-26 11:08:24","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-26 11:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:08:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699960dd53d5a1.86066453","contact_id":"7001","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9114222689 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-02-26 11:08:24","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 11:08:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:08:36] [INFO] Checking activity reminders 
[2026-02-26 11:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:08:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:08:49] [INFO] Checking activity reminders 
[2026-02-26 11:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:09:06] [INFO] Checking activity reminders 
[2026-02-26 11:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:09:09] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-26 11:09:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:09:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:09:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:09:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:09:11] [INFO] Activity save request {"post_data":{"contact_id":"7001","deal_id":"local_699960dd53d5a1.86066453","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","note":"","result_note":"بابت تسویه 405  صحبت شد و فیش ارسال شد.","activity_duration":"3","direction":"incoming","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:09:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7001","note_was_empty":true}
[2026-02-26 11:09:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"7001","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:11] [INFO] Updating virtual stage {"contact_id":"7001","stage_name":"deal_registered","force":false}
[2026-02-26 11:09:11] [INFO] Virtual stage successfully saved {"contact_id":"7001","stage_name":"deal_registered"}
[2026-02-26 11:09:11] [INFO] Virtual stage updated after activity save {"contact_id":"7001"}
[2026-02-26 11:09:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699960dd53d5a1.86066453","stage":"برگزاری دوره","status_change":null}
[2026-02-26 11:09:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff89f59b8e3.80100639","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:11] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff89f59b8e3.80100639"}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:11] [INFO] Updating virtual stage {"contact_id":"7001","stage_name":"deal_registered","force":false}
[2026-02-26 11:09:11] [INFO] Virtual stage successfully saved {"contact_id":"7001","stage_name":"deal_registered"}
[2026-02-26 11:09:11] [INFO] Virtual stage updated after activity save {"contact_id":"7001"}
[2026-02-26 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-02-26 11:09:19] [INFO] Checking activity reminders 
[2026-02-26 11:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:09:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:09:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:09:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:09:36] [INFO] Checking activity reminders 
[2026-02-26 11:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:09:40] [INFO] Checking activity reminders 
[2026-02-26 11:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:09:49] [INFO] Checking activity reminders 
[2026-02-26 11:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:00] [INFO] Activity save request {"post_data":{"contact_id":"20547","deal_id":"local_6997050dc1e251.25636288","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:10:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20547","note_was_empty":true}
[2026-02-26 11:10:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"20547","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:00] [INFO] Updating virtual stage {"contact_id":"20547","stage_name":"deal_registered","force":false}
[2026-02-26 11:10:00] [INFO] Virtual stage successfully saved {"contact_id":"20547","stage_name":"deal_registered"}
[2026-02-26 11:10:00] [INFO] Virtual stage updated after activity save {"contact_id":"20547"}
[2026-02-26 11:10:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6997050dc1e251.25636288","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 11:10:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff8d03165d8.37291030","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:00] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff8d03165d8.37291030"}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:00] [INFO] Updating virtual stage {"contact_id":"20547","stage_name":"deal_registered","force":false}
[2026-02-26 11:10:00] [INFO] Virtual stage successfully saved {"contact_id":"20547","stage_name":"deal_registered"}
[2026-02-26 11:10:00] [INFO] Virtual stage updated after activity save {"contact_id":"20547"}
[2026-02-26 11:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20547","person_id":"1345"}
[2026-02-26 11:10:07] [INFO] Checking activity reminders 
[2026-02-26 11:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:19] [INFO] Checking activity reminders 
[2026-02-26 11:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:23] [INFO] Checking activity reminders 
[2026-02-26 11:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:10:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:10:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:10:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:10:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:10:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:10:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:10:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:10:37] [INFO] Checking activity reminders 
[2026-02-26 11:10:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:44] [INFO] Checking activity reminders 
[2026-02-26 11:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:10:49] [INFO] Checking activity reminders 
[2026-02-26 11:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:10:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:10:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:10:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:10:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:10:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:10:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:10:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:10:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:11:01] [INFO] Checking activity reminders 
[2026-02-26 11:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:07] [INFO] Checking activity reminders 
[2026-02-26 11:11:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:07] [INFO] Checking activity reminders 
[2026-02-26 11:11:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:19] [INFO] Checking activity reminders 
[2026-02-26 11:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:26] [INFO] Checking activity reminders 
[2026-02-26 11:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:37] [INFO] Checking activity reminders 
[2026-02-26 11:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:49] [INFO] Checking activity reminders 
[2026-02-26 11:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:11:57] [INFO] Checking activity reminders 
[2026-02-26 11:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:12:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:12:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:12:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:12:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:12:07] [INFO] Checking activity reminders 
[2026-02-26 11:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:12:19] [INFO] Checking activity reminders 
[2026-02-26 11:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:12:24] [INFO] Checking activity reminders 
[2026-02-26 11:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:12:38] [INFO] Checking activity reminders 
[2026-02-26 11:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:12:50] [INFO] Checking activity reminders 
[2026-02-26 11:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:08] [INFO] Checking activity reminders 
[2026-02-26 11:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:20] [INFO] Checking activity reminders 
[2026-02-26 11:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:25] [INFO] Activity save request {"post_data":{"contact_id":"11506","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت واریز کانال پیگیری کردم جواب نداد ارسال ویس واتساپ","activity_duration":"2","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:13:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"11506","note_was_empty":true}
[2026-02-26 11:13:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"11506","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-26 11:13:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ff99d9500b7.16468136","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:25] [INFO] Activity saved successfully {"activity_id":"local_activity_699ff99d9500b7.16468136"}
[2026-02-26 11:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:25] [INFO] Updating virtual stage {"contact_id":"11506","stage_name":"deal_registered","force":false}
[2026-02-26 11:13:25] [INFO] Virtual stage successfully saved {"contact_id":"11506","stage_name":"deal_registered"}
[2026-02-26 11:13:25] [INFO] Virtual stage updated after activity save {"contact_id":"11506"}
[2026-02-26 11:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:35] [INFO] generateDealTitle result {"contact_id":"11506","person_name":"اسماعیل هدایتی","mobile":"9216244092","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9216244092"}
[2026-02-26 11:13:38] [INFO] Checking activity reminders 
[2026-02-26 11:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:40] [INFO] Checking activity reminders 
[2026-02-26 11:13:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:43] [INFO] Checking activity reminders 
[2026-02-26 11:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:43] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:13:43] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:13:47] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:13:47] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-26 11:13:47] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-26 11:13:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:13:50] [INFO] Checking activity reminders 
[2026-02-26 11:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:13:57] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:13:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11506","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 11:13:58","session_id":"jl8md6kprota7tglp2hiofg9jq"}
[2026-02-26 11:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11506","is_new_deal":true}
[2026-02-26 11:13:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 11:13:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:13:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 11:13:58] [INFO] getContactPrimaryPhone called {"contact_id":"11506"}
[2026-02-26 11:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:58] [INFO] getContactPrimaryPhone result {"contact_id":"11506","person_found":true,"primary_phone":"9216244092"}
[2026-02-26 11:13:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9216244092"}
[2026-02-26 11:13:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9216244092","contact_id":"11506","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-02-26 11:13:58"}
[2026-02-26 11:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:58] [INFO] generateDealTitle result {"contact_id":"11506","person_name":"اسماعیل هدایتی","mobile":"9216244092","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9216244092"}
[2026-02-26 11:13:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11506","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-26 11:13:58] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"11506","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 11:13:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11506","title":"معامله دوم 9216244092 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9216244092","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اسماعیل هدایتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-26 11:13:58","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-02-26 11:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-26 11:13:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11506","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9216244092 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-26 11:13:58","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 11:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11506","person_id":"2261"}
[2026-02-26 11:13:59] [INFO] Checking activity reminders 
[2026-02-26 11:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:08] [INFO] Checking activity reminders 
[2026-02-26 11:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:14:20] [INFO] Checking activity reminders 
[2026-02-26 11:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:14:30] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-01","date_to":"2026-02-26","person_date_from":"2026-02-01","person_date_to":"2026-02-26","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 11:14:30] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-02-26 11:14:32] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-26 11:14:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:14:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:14:38] [INFO] Checking activity reminders 
[2026-02-26 11:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:14:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:14:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:14:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:14:49] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:49] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:49] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:49] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:14:50] [INFO] Checking activity reminders 
[2026-02-26 11:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:10] [INFO] Checking activity reminders 
[2026-02-26 11:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:11] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:13] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:15] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:16] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:16] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:17] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:17] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:17] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:20] [INFO] Checking activity reminders 
[2026-02-26 11:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:15:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:23] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:23] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:27] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:27] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:27] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:27] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:28] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:30] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_kpi_products"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_performance_dashboard"}
[2026-02-26 11:15:36] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:15:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:15:40] [INFO] Checking activity reminders 
[2026-02-26 11:15:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:15:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:15:50] [INFO] Checking activity reminders 
[2026-02-26 11:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:10] [INFO] Checking activity reminders 
[2026-02-26 11:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:20] [INFO] Checking activity reminders 
[2026-02-26 11:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:32] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:33] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:34] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:35] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:37] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:40] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:41] [INFO] Checking activity reminders 
[2026-02-26 11:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:42] [INFO] Activity save request {"post_data":{"contact_id":"4167","deal_id":"local_699d886e16e9d8.86139404","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:16:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4167","note_was_empty":true}
[2026-02-26 11:16:42] [INFO] Didar write disabled; saving activity locally {"contact_id":"4167","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:42] [INFO] Updating virtual stage {"contact_id":"4167","stage_name":"deal_registered","force":false}
[2026-02-26 11:16:42] [INFO] Virtual stage successfully saved {"contact_id":"4167","stage_name":"deal_registered"}
[2026-02-26 11:16:42] [INFO] Virtual stage updated after activity save {"contact_id":"4167"}
[2026-02-26 11:16:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d886e16e9d8.86139404","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-26 11:16:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffa625806e8.34217322","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:42] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffa625806e8.34217322"}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:42] [INFO] Updating virtual stage {"contact_id":"4167","stage_name":"deal_registered","force":false}
[2026-02-26 11:16:42] [INFO] Virtual stage successfully saved {"contact_id":"4167","stage_name":"deal_registered"}
[2026-02-26 11:16:42] [INFO] Virtual stage updated after activity save {"contact_id":"4167"}
[2026-02-26 11:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-02-26 11:16:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:16:47] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:16:50] [INFO] Checking activity reminders 
[2026-02-26 11:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:50] [INFO] Checking activity reminders 
[2026-02-26 11:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:16:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:16:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:16:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:16:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:17:11] [INFO] Checking activity reminders 
[2026-02-26 11:17:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:17:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:17:19] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-02-26 11:17:19] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-02-26 11:17:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:17:21] [INFO] Checking activity reminders 
[2026-02-26 11:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:17:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Activity save request {"post_data":{"contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:17:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3592","note_was_empty":true}
[2026-02-26 11:17:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"3592","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-02-26 11:17:35] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-02-26 11:17:35] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-02-26 11:17:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695d282b0713d2.41229944","stage":"تماس عدم پاسخ","status_change":null}
[2026-02-26 11:17:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffa9758b387.04836176","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffa9758b387.04836176"}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:35] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-02-26 11:17:35] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-02-26 11:17:35] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-02-26 11:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-02-26 11:17:41] [INFO] Checking activity reminders 
[2026-02-26 11:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:17:49] [INFO] Checking activity reminders 
[2026-02-26 11:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:17:51] [INFO] Checking activity reminders 
[2026-02-26 11:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:17:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:17:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995d9da43da99.36068607","person_id":"21723"}
[2026-02-26 11:18:06] [INFO] Activity save request {"post_data":{"contact_id":"8512","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:18:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:18:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:18:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:18:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:18:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8512","note_was_empty":true}
[2026-02-26 11:18:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"8512","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:18:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffab675c451.82433004","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:18:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:18:06] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffab675c451.82433004"}
[2026-02-26 11:18:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:18:06] [INFO] Updating virtual stage {"contact_id":"8512","stage_name":"deal_registered","force":false}
[2026-02-26 11:18:06] [INFO] Virtual stage successfully saved {"contact_id":"8512","stage_name":"deal_registered"}
[2026-02-26 11:18:06] [INFO] Virtual stage updated after activity save {"contact_id":"8512"}
[2026-02-26 11:18:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-02-26 11:18:11] [INFO] Checking activity reminders 
[2026-02-26 11:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:19] [INFO] Checking activity reminders 
[2026-02-26 11:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-26 11:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-26 11:18:21] [INFO] Checking activity reminders 
[2026-02-26 11:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:18:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:18:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:18:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-02-26 11:18:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-02-26 11:18:38] [INFO] Activity save request {"post_data":{"contact_id":"local_699d6db3c54894.05176022","deal_id":"local_699d6db3dabe0","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:18:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_699d6db3c54894.05176022","note_was_empty":true}
[2026-02-26 11:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:38] [INFO] Updating virtual stage {"contact_id":"local_699d6db3c54894.05176022","stage_name":"deal_registered","force":false}
[2026-02-26 11:18:38] [INFO] Virtual stage successfully saved {"contact_id":"local_699d6db3c54894.05176022","stage_name":"deal_registered"}
[2026-02-26 11:18:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d6db3c54894.05176022"}
[2026-02-26 11:18:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d6db3dabe0","stage":"تماس پیگیری","status_change":null}
[2026-02-26 11:18:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffad6d79479.96888007","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:38] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffad6d79479.96888007"}
[2026-02-26 11:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:38] [INFO] Updating virtual stage {"contact_id":"local_699d6db3c54894.05176022","stage_name":"deal_registered","force":false}
[2026-02-26 11:18:38] [INFO] Virtual stage successfully saved {"contact_id":"local_699d6db3c54894.05176022","stage_name":"deal_registered"}
[2026-02-26 11:18:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d6db3c54894.05176022"}
[2026-02-26 11:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d6db3c54894.05176022","person_id":"21788"}
[2026-02-26 11:18:41] [INFO] Checking activity reminders 
[2026-02-26 11:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:18:51] [INFO] Checking activity reminders 
[2026-02-26 11:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:18:55] [INFO] Activity save request {"post_data":{"contact_id":"2130","deal_id":"local_699d78efc8f299.47314323","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"بابت تسویه دارن خرد خرد میزنن به همون اکانت کاشانی","activity_duration":"2","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:18:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"2130","note_was_empty":true}
[2026-02-26 11:18:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"2130","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:55] [INFO] Updating virtual stage {"contact_id":"2130","stage_name":"deal_registered","force":false}
[2026-02-26 11:18:55] [INFO] Virtual stage successfully saved {"contact_id":"2130","stage_name":"deal_registered"}
[2026-02-26 11:18:55] [INFO] Virtual stage updated after activity save {"contact_id":"2130"}
[2026-02-26 11:18:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d78efc8f299.47314323","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 11:18:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffae75e6b21.64458678","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:55] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffae75e6b21.64458678"}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:55] [INFO] Updating virtual stage {"contact_id":"2130","stage_name":"deal_registered","force":false}
[2026-02-26 11:18:55] [INFO] Virtual stage successfully saved {"contact_id":"2130","stage_name":"deal_registered"}
[2026-02-26 11:18:55] [INFO] Virtual stage updated after activity save {"contact_id":"2130"}
[2026-02-26 11:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:18:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-02-26 11:19:10] [INFO] Activity save request {"post_data":{"contact_id":"20220","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:19:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20220","note_was_empty":true}
[2026-02-26 11:19:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"20220","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:19:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffaf6a41e40.40760715","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:10] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffaf6a41e40.40760715"}
[2026-02-26 11:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:10] [INFO] Updating virtual stage {"contact_id":"20220","stage_name":"deal_registered","force":false}
[2026-02-26 11:19:10] [INFO] Virtual stage successfully saved {"contact_id":"20220","stage_name":"deal_registered"}
[2026-02-26 11:19:10] [INFO] Virtual stage updated after activity save {"contact_id":"20220"}
[2026-02-26 11:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-02-26 11:19:11] [INFO] Checking activity reminders 
[2026-02-26 11:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:19:21] [INFO] Checking activity reminders 
[2026-02-26 11:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:19:37] [INFO] Checking activity reminders 
[2026-02-26 11:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:19:41] [INFO] Checking activity reminders 
[2026-02-26 11:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:19:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:19:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:19:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:19:51] [INFO] Checking activity reminders 
[2026-02-26 11:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-26 11:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-02-26 11:20:07] [INFO] Checking activity reminders 
[2026-02-26 11:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:20:11] [INFO] Checking activity reminders 
[2026-02-26 11:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:20:21] [INFO] Checking activity reminders 
[2026-02-26 11:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:20:37] [INFO] Checking activity reminders 
[2026-02-26 11:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:20:51] [INFO] Checking activity reminders 
[2026-02-26 11:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:21:22] [INFO] Checking activity reminders 
[2026-02-26 11:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:21:33] [INFO] Activity save request {"post_data":{"contact_id":"1000","deal_id":"local_69510be26501c4.70942511","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در طلا و بورس و خودرو سرمایه گذاری \r\nخیلی در طلا سود کرده \r\nدر خودرو 200 م متضرر \r\nمیخواد در کانال cip  شرکت کنه بهش گفتم استاد پرتفوی زیر 2-2.5 میلیارد قبول نمیکنه \r\nبرای کانال 405 عدد اصلی 1000 دلار \r\nهمش میگه با ماددرم مشورت و حساب کتاب کنم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:21:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1000","note_was_empty":true}
[2026-02-26 11:21:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"1000","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:33] [INFO] Updating virtual stage {"contact_id":"1000","stage_name":"deal_registered","force":false}
[2026-02-26 11:21:33] [INFO] Virtual stage successfully saved {"contact_id":"1000","stage_name":"deal_registered"}
[2026-02-26 11:21:33] [INFO] Virtual stage updated after activity save {"contact_id":"1000"}
[2026-02-26 11:21:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69510be26501c4.70942511","stage":"تماس پیگیری","status_change":null}
[2026-02-26 11:21:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699ffb853154c7.78197846","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:33] [INFO] Activity saved successfully {"activity_id":"local_activity_699ffb853154c7.78197846"}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:33] [INFO] Updating virtual stage {"contact_id":"1000","stage_name":"deal_registered","force":false}
[2026-02-26 11:21:33] [INFO] Virtual stage successfully saved {"contact_id":"1000","stage_name":"deal_registered"}
[2026-02-26 11:21:33] [INFO] Virtual stage updated after activity save {"contact_id":"1000"}
[2026-02-26 11:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-02-26 11:21:48] [INFO] Checking activity reminders 
[2026-02-26 11:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:21:52] [INFO] Checking activity reminders 
[2026-02-26 11:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:22:12] [INFO] Checking activity reminders 
[2026-02-26 11:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:22:13] [INFO] Checking activity reminders 
[2026-02-26 11:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:22:22] [INFO] Checking activity reminders 
[2026-02-26 11:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:22:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:22:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:22:48] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:22:52] [INFO] Checking activity reminders 
[2026-02-26 11:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:03] [INFO] Checking activity reminders 
[2026-02-26 11:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:23:22] [INFO] Checking activity reminders 
[2026-02-26 11:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:37] [INFO] Checking activity reminders 
[2026-02-26 11:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:40] [INFO] Checking activity reminders 
[2026-02-26 11:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:52] [INFO] Checking activity reminders 
[2026-02-26 11:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:23:55] [INFO] Checking activity reminders 
[2026-02-26 11:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:24:22] [INFO] Checking activity reminders 
[2026-02-26 11:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:24:52] [INFO] Checking activity reminders 
[2026-02-26 11:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:25:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:25:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 11:25:01] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:25:23] [INFO] Checking activity reminders 
[2026-02-26 11:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:25:53] [INFO] Checking activity reminders 
[2026-02-26 11:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:12] [INFO] Checking activity reminders 
[2026-02-26 11:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:23] [INFO] Checking activity reminders 
[2026-02-26 11:26:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:26:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:42] [INFO] Checking activity reminders 
[2026-02-26 11:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:53] [INFO] Checking activity reminders 
[2026-02-26 11:26:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:26:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:54] [INFO] Checking activity reminders 
[2026-02-26 11:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:26:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:27:23] [INFO] Checking activity reminders 
[2026-02-26 11:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:27:30] [INFO] Checking activity reminders 
[2026-02-26 11:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:27:31] [INFO] Checking activity reminders 
[2026-02-26 11:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:27:53] [INFO] Checking activity reminders 
[2026-02-26 11:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:28:09] [INFO] Checking activity reminders 
[2026-02-26 11:28:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:28:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:28:23] [INFO] Checking activity reminders 
[2026-02-26 11:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:28:40] [INFO] Checking activity reminders 
[2026-02-26 11:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:28:53] [INFO] Checking activity reminders 
[2026-02-26 11:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:29:10] [INFO] Checking activity reminders 
[2026-02-26 11:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:29:23] [INFO] Checking activity reminders 
[2026-02-26 11:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:29:36] [INFO] Checking activity reminders 
[2026-02-26 11:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:29:53] [INFO] Checking activity reminders 
[2026-02-26 11:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:29:58] [INFO] Checking activity reminders 
[2026-02-26 11:29:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:29:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:30:23] [INFO] Checking activity reminders 
[2026-02-26 11:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:30:30] [INFO] Checking activity reminders 
[2026-02-26 11:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:30:53] [INFO] Checking activity reminders 
[2026-02-26 11:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:31:24] [INFO] Checking activity reminders 
[2026-02-26 11:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:31:54] [INFO] Checking activity reminders 
[2026-02-26 11:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:32:24] [INFO] Checking activity reminders 
[2026-02-26 11:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:33:23] [INFO] Checking activity reminders 
[2026-02-26 11:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:33:53] [INFO] Checking activity reminders 
[2026-02-26 11:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:34:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:34:23] [INFO] Checking activity reminders 
[2026-02-26 11:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:34:54] [INFO] Checking activity reminders 
[2026-02-26 11:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:35:24] [INFO] Checking activity reminders 
[2026-02-26 11:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:35:54] [INFO] Checking activity reminders 
[2026-02-26 11:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:36:24] [INFO] Checking activity reminders 
[2026-02-26 11:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:36:38] [INFO] Activity save request {"post_data":{"contact_id":"15885","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در کانال با مشاوره استاد در طلا و دلار سرمایه \r\nبرای 405 احتمالا مغازه بخره و نتونه بیاد در کانال \r\nبهش گفتم حتما با استاد مشورت بگیر در صورت تایید خرید مغازه انجام بده ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:36:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 11:36:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:36:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15885","note_was_empty":true}
[2026-02-26 11:36:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"15885","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 11:36:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_699fff0edbea47.94187271","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:36:38] [INFO] Activity saved successfully {"activity_id":"local_activity_699fff0edbea47.94187271"}
[2026-02-26 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:36:38] [INFO] Updating virtual stage {"contact_id":"15885","stage_name":"deal_registered","force":false}
[2026-02-26 11:36:38] [INFO] Virtual stage successfully saved {"contact_id":"15885","stage_name":"deal_registered"}
[2026-02-26 11:36:38] [INFO] Virtual stage updated after activity save {"contact_id":"15885"}
[2026-02-26 11:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-02-26 11:36:55] [INFO] Checking activity reminders 
[2026-02-26 11:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:37:25] [INFO] Checking activity reminders 
[2026-02-26 11:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:37:55] [INFO] Checking activity reminders 
[2026-02-26 11:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:38:25] [INFO] Checking activity reminders 
[2026-02-26 11:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:38:55] [INFO] Checking activity reminders 
[2026-02-26 11:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 11:39:25] [INFO] Checking activity reminders 
[2026-02-26 11:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:39:55] [INFO] Checking activity reminders 
[2026-02-26 11:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:40:25] [INFO] Checking activity reminders 
[2026-02-26 11:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:40:55] [INFO] Checking activity reminders 
[2026-02-26 11:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:41:26] [INFO] Checking activity reminders 
[2026-02-26 11:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:41:56] [INFO] Checking activity reminders 
[2026-02-26 11:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:42:26] [INFO] Checking activity reminders 
[2026-02-26 11:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:42:54] [INFO] Checking activity reminders 
[2026-02-26 11:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:42:55] [INFO] Checking activity reminders 
[2026-02-26 11:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:42:57] [INFO] Checking activity reminders 
[2026-02-26 11:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:43:27] [INFO] Checking activity reminders 
[2026-02-26 11:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:43:36] [INFO] Checking activity reminders 
[2026-02-26 11:43:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:43:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:43:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 11:43:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 11:43:48] [INFO] generateDealTitle result {"contact_id":"11462","person_name":"خانم نام آور","mobile":"9123471923","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123471923"}
[2026-02-26 11:43:52] [INFO] Checking activity reminders 
[2026-02-26 11:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:43:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:43:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:43:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:43:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:44:06] [INFO] Checking activity reminders 
[2026-02-26 11:44:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:44:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:44:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:44:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:44:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:44:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:44:36] [INFO] Checking activity reminders 
[2026-02-26 11:44:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:44:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:44:50] [INFO] Checking activity reminders 
[2026-02-26 11:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:45:06] [INFO] Checking activity reminders 
[2026-02-26 11:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:45:36] [INFO] Checking activity reminders 
[2026-02-26 11:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:46:06] [INFO] Checking activity reminders 
[2026-02-26 11:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:46:36] [INFO] Checking activity reminders 
[2026-02-26 11:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:47:06] [INFO] Checking activity reminders 
[2026-02-26 11:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:47:36] [INFO] Checking activity reminders 
[2026-02-26 11:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:48:04] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 11:48:04] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 11:48:04] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 11:48:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 11:48:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 11:48:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 11:48:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 11:48:06] [INFO] Checking activity reminders 
[2026-02-26 11:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:48:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:48:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-26 11:48:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:48:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-02-26 11:48:37] [INFO] Checking activity reminders 
[2026-02-26 11:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:49:07] [INFO] Checking activity reminders 
[2026-02-26 11:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:49:37] [INFO] Checking activity reminders 
[2026-02-26 11:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:50:07] [INFO] Checking activity reminders 
[2026-02-26 11:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:50:37] [INFO] Checking activity reminders 
[2026-02-26 11:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:51:07] [INFO] Checking activity reminders 
[2026-02-26 11:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:51:37] [INFO] Checking activity reminders 
[2026-02-26 11:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:52:07] [INFO] Checking activity reminders 
[2026-02-26 11:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:52:37] [INFO] Checking activity reminders 
[2026-02-26 11:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:53:07] [INFO] Checking activity reminders 
[2026-02-26 11:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:53:38] [INFO] Checking activity reminders 
[2026-02-26 11:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:54:08] [INFO] Checking activity reminders 
[2026-02-26 11:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:54:38] [INFO] Checking activity reminders 
[2026-02-26 11:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:55:08] [INFO] Checking activity reminders 
[2026-02-26 11:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:55:38] [INFO] Checking activity reminders 
[2026-02-26 11:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 11:56:08] [INFO] Checking activity reminders 
[2026-02-26 11:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 11:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:09:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:10:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:10:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:10:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:12:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:12:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:12:01] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:12:57] [INFO] Checking activity reminders 
[2026-02-26 12:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:14:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:14:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:14:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:17:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:17:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:17:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:34] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:35] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:37] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:40] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:42] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:43] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:44] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:47] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:52] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:18:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:18:58] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:03] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:04] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:04] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:04] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 12:19:04] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:10] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:11] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-26 12:19:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 12:19:36] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:19:36] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:36] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:19:41] [INFO] Checking activity reminders 
[2026-02-26 12:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:19:58] [INFO] Checking activity reminders 
[2026-02-26 12:19:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:19:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:01] [INFO] generateDealTitle result {"contact_id":"11462","person_name":"خانم نام آور","mobile":"9123471923","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123471923"}
[2026-02-26 12:20:11] [INFO] Checking activity reminders 
[2026-02-26 12:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:20:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11462","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 12:20:23","session_id":"vjbpvdkffkcuf6fu5sr86k1pvj"}
[2026-02-26 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11462","is_new_deal":true}
[2026-02-26 12:20:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 12:20:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 12:20:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 12:20:23] [INFO] getContactPrimaryPhone called {"contact_id":"11462"}
[2026-02-26 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:23] [INFO] getContactPrimaryPhone result {"contact_id":"11462","person_found":true,"primary_phone":"9123471923"}
[2026-02-26 12:20:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123471923"}
[2026-02-26 12:20:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123471923","contact_id":"11462","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-02-26 12:20:23"}
[2026-02-26 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:23] [INFO] generateDealTitle result {"contact_id":"11462","person_name":"خانم نام آور","mobile":"9123471923","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123471923"}
[2026-02-26 12:20:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11462","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-02-26 12:20:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11462","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 12:20:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11462","title":"معامله دوم 9123471923 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123471923","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم نام آور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-26 12:20:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-02-26 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-26 12:20:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11462","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9123471923 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-02-26 12:20:23","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:20:28] [INFO] Checking activity reminders 
[2026-02-26 12:20:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:20:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:20:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:20:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:20:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:20:41] [INFO] Checking activity reminders 
[2026-02-26 12:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:20:58] [INFO] Checking activity reminders 
[2026-02-26 12:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:21:11] [INFO] Checking activity reminders 
[2026-02-26 12:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:21:28] [INFO] Checking activity reminders 
[2026-02-26 12:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:21:39] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:21:39] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:21:39] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:21:42] [INFO] Checking activity reminders 
[2026-02-26 12:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:21:43] [INFO] Activity save request {"post_data":{"contact_id":"11462","deal_id":"local_69a0094f432109.71371815","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در طلا ی فیزیکی و سکه و دلار سرمایه گذاری \r\nخیلی براش سود داشته و رضایت داره \r\nپرزنت 405 \r\nمنتظر حقوق اسفند و پاداش \r\nارسال پیام در واتساپ \/ \r\n","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 12:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 12:21:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 12:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11462","note_was_empty":true}
[2026-02-26 12:21:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"11462","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 12:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:43] [INFO] Updating virtual stage {"contact_id":"11462","stage_name":"deal_registered","force":false}
[2026-02-26 12:21:43] [INFO] Virtual stage successfully saved {"contact_id":"11462","stage_name":"deal_registered"}
[2026-02-26 12:21:43] [INFO] Virtual stage updated after activity save {"contact_id":"11462"}
[2026-02-26 12:21:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69a0094f432109.71371815","stage":"ارسال لینک پرداخت","status_change":null}
[2026-02-26 12:21:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a0099fe6a9a9.83169574","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 12:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69a0099fe6a9a9.83169574"}
[2026-02-26 12:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:43] [INFO] Updating virtual stage {"contact_id":"11462","stage_name":"deal_registered","force":false}
[2026-02-26 12:21:43] [INFO] Virtual stage successfully saved {"contact_id":"11462","stage_name":"deal_registered"}
[2026-02-26 12:21:43] [INFO] Virtual stage updated after activity save {"contact_id":"11462"}
[2026-02-26 12:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-02-26 12:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:21:58] [INFO] Checking activity reminders 
[2026-02-26 12:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:22:12] [INFO] Checking activity reminders 
[2026-02-26 12:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:22:28] [INFO] Checking activity reminders 
[2026-02-26 12:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:22:42] [INFO] Checking activity reminders 
[2026-02-26 12:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:22:57] [INFO] Activity save request {"post_data":{"contact_id":"14209","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"65گرم طلا خودش \/ خانواده 500 گرم \/ تهران زندگی میکنه خودش میخواد خونه بخره گفتم منطقه 5 خوبه\/ گفت چون هدفم خونه مصرف هست خالی میشم نمیتونم الان تمدید کنم سال دیگه پول اومد دستم میام","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 12:22:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:22:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 12:22:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 12:22:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:22:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14209","note_was_empty":true}
[2026-02-26 12:22:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"14209","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-26 12:22:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a009e9a886d6.50430084","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 12:22:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:22:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69a009e9a886d6.50430084"}
[2026-02-26 12:22:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:22:57] [INFO] Updating virtual stage {"contact_id":"14209","stage_name":"deal_registered","force":false}
[2026-02-26 12:22:57] [INFO] Virtual stage successfully saved {"contact_id":"14209","stage_name":"deal_registered"}
[2026-02-26 12:22:57] [INFO] Virtual stage updated after activity save {"contact_id":"14209"}
[2026-02-26 12:22:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-02-26 12:22:58] [INFO] Checking activity reminders 
[2026-02-26 12:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:23:12] [INFO] Checking activity reminders 
[2026-02-26 12:23:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:23:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:23:28] [INFO] Checking activity reminders 
[2026-02-26 12:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:23:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:23:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:23:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:23:58] [INFO] Checking activity reminders 
[2026-02-26 12:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:24:29] [INFO] Checking activity reminders 
[2026-02-26 12:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:24:40] [INFO] Checking activity reminders 
[2026-02-26 12:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:24:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:24:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:24:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:24:58] [INFO] generateDealTitle result {"contact_id":"16058","person_name":"حسین شریفی","mobile":"9147318626","existing_deals":0,"ordinal":"اول","title":"معامله اول 9147318626"}
[2026-02-26 12:24:59] [INFO] Checking activity reminders 
[2026-02-26 12:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:25:10] [INFO] Checking activity reminders 
[2026-02-26 12:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:25:20] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:25:20] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:25:20] [WARNING] Auth check failed - not authenticated {"session_id":"h4tutcrun3pafq206tfv8ei7m3","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:25:29] [INFO] Checking activity reminders 
[2026-02-26 12:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:25:40] [INFO] Checking activity reminders 
[2026-02-26 12:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:25:59] [INFO] Checking activity reminders 
[2026-02-26 12:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:26:10] [INFO] Checking activity reminders 
[2026-02-26 12:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:26:29] [INFO] Checking activity reminders 
[2026-02-26 12:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:26:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:26:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:26:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:26:40] [INFO] Checking activity reminders 
[2026-02-26 12:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:26:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16058","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-02-26 12:26:55","session_id":"k8hqc31t9g5bnak8bd8dj07568"}
[2026-02-26 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:26:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16058","is_new_deal":true}
[2026-02-26 12:26:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-02-26 12:26:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 12:26:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-02-26 12:26:55] [INFO] getContactPrimaryPhone called {"contact_id":"16058"}
[2026-02-26 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:26:55] [INFO] getContactPrimaryPhone result {"contact_id":"16058","person_found":true,"primary_phone":"9147318626"}
[2026-02-26 12:26:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147318626"}
[2026-02-26 12:26:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147318626","contact_id":"16058","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-02-26 12:26:55"}
[2026-02-26 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:26:55] [INFO] generateDealTitle result {"contact_id":"16058","person_name":"حسین شریفی","mobile":"9147318626","existing_deals":0,"ordinal":"اول","title":"معامله اول 9147318626"}
[2026-02-26 12:26:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16058","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-02-26 12:26:55] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"16058","is_admin_or_crm":false,"permission_check_passed":true}
[2026-02-26 12:26:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16058","title":"معامله اول 9147318626 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9147318626","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسین شریفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-02-26 12:26:55","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-02-26 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:26:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-02-26 12:26:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16058","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9147318626 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-02-26 12:26:55","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-02-26 12:26:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:26:59] [INFO] Checking activity reminders 
[2026-02-26 12:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:27:10] [INFO] Checking activity reminders 
[2026-02-26 12:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:27:29] [INFO] Checking activity reminders 
[2026-02-26 12:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:27:40] [INFO] Checking activity reminders 
[2026-02-26 12:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:27:55] [INFO] Activity save request {"post_data":{"contact_id":"16058","deal_id":"local_69a00ad7955ae4.47769512","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"800ت طلا و عیار\/ ملک نیمه ساخت رو تکمیل کرده هفته پیش عروسیش بوده \/ بازارش الان خوبه 20ت رزرو کرد کانال 405 تسویه 18 اسفند","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 12:27:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16058","note_was_empty":true}
[2026-02-26 12:27:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"16058","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:55] [INFO] Updating virtual stage {"contact_id":"16058","stage_name":"deal_registered","force":false}
[2026-02-26 12:27:55] [INFO] Virtual stage successfully saved {"contact_id":"16058","stage_name":"deal_registered"}
[2026-02-26 12:27:55] [INFO] Virtual stage updated after activity save {"contact_id":"16058"}
[2026-02-26 12:27:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69a00ad7955ae4.47769512","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 12:27:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a00b131ac347.78380090","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69a00b131ac347.78380090"}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:55] [INFO] Updating virtual stage {"contact_id":"16058","stage_name":"deal_registered","force":false}
[2026-02-26 12:27:55] [INFO] Virtual stage successfully saved {"contact_id":"16058","stage_name":"deal_registered"}
[2026-02-26 12:27:55] [INFO] Virtual stage updated after activity save {"contact_id":"16058"}
[2026-02-26 12:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-02-26 12:27:59] [INFO] Checking activity reminders 
[2026-02-26 12:27:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:27:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:28:29] [INFO] Checking activity reminders 
[2026-02-26 12:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:28:59] [INFO] Checking activity reminders 
[2026-02-26 12:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:29:29] [INFO] Checking activity reminders 
[2026-02-26 12:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:29:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:29:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:29:33] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:30:00] [INFO] Checking activity reminders 
[2026-02-26 12:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:30:30] [INFO] Checking activity reminders 
[2026-02-26 12:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:31:00] [INFO] Checking activity reminders 
[2026-02-26 12:31:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:31:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:31:30] [INFO] Checking activity reminders 
[2026-02-26 12:31:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:31:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:32:00] [INFO] Checking activity reminders 
[2026-02-26 12:32:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:32:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:32:30] [INFO] Checking activity reminders 
[2026-02-26 12:32:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:32:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:33:00] [INFO] Checking activity reminders 
[2026-02-26 12:33:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:33:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:33:30] [INFO] Checking activity reminders 
[2026-02-26 12:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:34:01] [INFO] Checking activity reminders 
[2026-02-26 12:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:34:31] [INFO] Checking activity reminders 
[2026-02-26 12:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:35:01] [INFO] Checking activity reminders 
[2026-02-26 12:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:35:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:35:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:35:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:35:31] [INFO] Checking activity reminders 
[2026-02-26 12:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:36:01] [INFO] Checking activity reminders 
[2026-02-26 12:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:36:31] [INFO] Checking activity reminders 
[2026-02-26 12:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:36:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:36:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:36:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:37:01] [INFO] Checking activity reminders 
[2026-02-26 12:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:37:31] [INFO] Checking activity reminders 
[2026-02-26 12:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:38:01] [INFO] Checking activity reminders 
[2026-02-26 12:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:38:32] [INFO] Checking activity reminders 
[2026-02-26 12:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:39:02] [INFO] Checking activity reminders 
[2026-02-26 12:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:39:32] [INFO] Checking activity reminders 
[2026-02-26 12:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:39:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:39:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:39:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:40:02] [INFO] Checking activity reminders 
[2026-02-26 12:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:40:32] [INFO] Checking activity reminders 
[2026-02-26 12:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:40:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:41:02] [INFO] Checking activity reminders 
[2026-02-26 12:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:41:32] [INFO] Checking activity reminders 
[2026-02-26 12:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:42:02] [INFO] Checking activity reminders 
[2026-02-26 12:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:42:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:42:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:42:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:45:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:45:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:45:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:49:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:49:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:49:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:49:14] [INFO] Checking activity reminders 
[2026-02-26 12:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:49:23] [INFO] Activity save request {"post_data":{"contact_id":"11409","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 12:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:49:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 12:49:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 12:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:49:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11409","note_was_empty":true}
[2026-02-26 12:49:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"11409","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 12:49:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a0101bd2c842.83272298","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 12:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:49:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69a0101bd2c842.83272298"}
[2026-02-26 12:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:49:23] [INFO] Updating virtual stage {"contact_id":"11409","stage_name":"deal_registered","force":false}
[2026-02-26 12:49:23] [INFO] Virtual stage successfully saved {"contact_id":"11409","stage_name":"deal_registered"}
[2026-02-26 12:49:23] [INFO] Virtual stage updated after activity save {"contact_id":"11409"}
[2026-02-26 12:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-02-26 12:49:44] [INFO] Checking activity reminders 
[2026-02-26 12:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 12:50:14] [INFO] Checking activity reminders 
[2026-02-26 12:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:50:44] [INFO] Checking activity reminders 
[2026-02-26 12:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:51:14] [INFO] Checking activity reminders 
[2026-02-26 12:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:51:44] [INFO] Checking activity reminders 
[2026-02-26 12:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:52:14] [INFO] Checking activity reminders 
[2026-02-26 12:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:52:44] [INFO] Checking activity reminders 
[2026-02-26 12:52:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:52:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:53:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:53:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_products"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:04] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:04] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:04] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:05] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:07] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:07] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:07] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:53:07] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:07] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:11] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:11] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:53:11] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:11] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:53:14] [INFO] Checking activity reminders 
[2026-02-26 12:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:53:45] [INFO] Checking activity reminders 
[2026-02-26 12:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:54:15] [INFO] Checking activity reminders 
[2026-02-26 12:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:54:35] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"check_reminders"}
[2026-02-26 12:54:35] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:35] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:44] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:44] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:44] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:54:44] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:45] [INFO] Checking activity reminders 
[2026-02-26 12:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:54:52] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:52] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:52] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:53] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:55] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:55] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:56] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:56] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:00] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"get_leads"}
[2026-02-26 12:55:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:02] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:08] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:14] [WARNING] Auth check failed - not authenticated {"session_id":"jl8md6kprota7tglp2hiofg9jq","session_keys":[],"action":"log_client_event"}
[2026-02-26 12:55:14] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-02-26 12:55:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 12:55:15] [INFO] Checking activity reminders 
[2026-02-26 12:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:55:45] [INFO] Checking activity reminders 
[2026-02-26 12:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:55:45] [INFO] Checking activity reminders 
[2026-02-26 12:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:56:15] [INFO] Checking activity reminders 
[2026-02-26 12:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:56:15] [INFO] Checking activity reminders 
[2026-02-26 12:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:56:27] [INFO] Activity save request {"post_data":{"contact_id":"5560","deal_id":"local_69997ed08fe188.26749874","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت مانده حساب پیگیری کردم طبق معمول خوابه","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 12:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 12:56:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 12:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"5560","note_was_empty":true}
[2026-02-26 12:56:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"5560","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-02-26 12:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:27] [INFO] Updating virtual stage {"contact_id":"5560","stage_name":"deal_registered","force":false}
[2026-02-26 12:56:27] [INFO] Virtual stage successfully saved {"contact_id":"5560","stage_name":"deal_registered"}
[2026-02-26 12:56:27] [INFO] Virtual stage updated after activity save {"contact_id":"5560"}
[2026-02-26 12:56:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69997ed08fe188.26749874","stage":"پیگیری مانده حساب","status_change":null}
[2026-02-26 12:56:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a011c39d3677.70964363","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 12:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69a011c39d3677.70964363"}
[2026-02-26 12:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:27] [INFO] Updating virtual stage {"contact_id":"5560","stage_name":"deal_registered","force":false}
[2026-02-26 12:56:27] [INFO] Virtual stage successfully saved {"contact_id":"5560","stage_name":"deal_registered"}
[2026-02-26 12:56:27] [INFO] Virtual stage updated after activity save {"contact_id":"5560"}
[2026-02-26 12:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-02-26 12:56:45] [INFO] Checking activity reminders 
[2026-02-26 12:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:56:45] [INFO] Checking activity reminders 
[2026-02-26 12:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:57:05] [INFO] Checking activity reminders 
[2026-02-26 12:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:57:13] [INFO] Checking activity reminders 
[2026-02-26 12:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:57:15] [INFO] Checking activity reminders 
[2026-02-26 12:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-02-26 12:57:45] [INFO] Checking activity reminders 
[2026-02-26 12:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:58:16] [INFO] Checking activity reminders 
[2026-02-26 12:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:58:46] [INFO] Checking activity reminders 
[2026-02-26 12:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:59:16] [INFO] Checking activity reminders 
[2026-02-26 12:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 12:59:46] [INFO] Checking activity reminders 
[2026-02-26 12:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 12:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:00:16] [INFO] Checking activity reminders 
[2026-02-26 13:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:00:46] [INFO] Checking activity reminders 
[2026-02-26 13:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:01:01] [INFO] Checking activity reminders 
[2026-02-26 13:01:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:01:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:01:16] [INFO] Checking activity reminders 
[2026-02-26 13:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:01:47] [INFO] Checking activity reminders 
[2026-02-26 13:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:01:58] [INFO] Activity save request {"post_data":{"contact_id":"12198","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل سرمایه تبدیل به ملک شده برای ورود به کانال عدد سرمایه نداره \r\nبرای سال اینده در صورت نقدینگی اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 13:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 13:01:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 13:01:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 13:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 13:01:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12198","note_was_empty":true}
[2026-02-26 13:01:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"12198","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-02-26 13:01:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a0130e5cf392.41258195","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 13:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 13:01:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69a0130e5cf392.41258195"}
[2026-02-26 13:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 13:01:58] [INFO] Updating virtual stage {"contact_id":"12198","stage_name":"deal_registered","force":false}
[2026-02-26 13:01:58] [INFO] Virtual stage successfully saved {"contact_id":"12198","stage_name":"deal_registered"}
[2026-02-26 13:01:58] [INFO] Virtual stage updated after activity save {"contact_id":"12198"}
[2026-02-26 13:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-02-26 13:05:16] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:16] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"check_reminders"}
[2026-02-26 13:05:16] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:17] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:19] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 13:05:22] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:23] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_products"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:26] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:28] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:29] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:31] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:31] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:31] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"get_leads"}
[2026-02-26 13:05:31] [WARNING] Auth check failed - not authenticated {"session_id":"k8hqc31t9g5bnak8bd8dj07568","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:05:48] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-26 13:05:48] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-02-26 13:05:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 13:05:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:06:19] [INFO] Checking activity reminders 
[2026-02-26 13:06:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:06:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:06:49] [INFO] Checking activity reminders 
[2026-02-26 13:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:07:19] [INFO] Checking activity reminders 
[2026-02-26 13:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:07:49] [INFO] Checking activity reminders 
[2026-02-26 13:07:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:07:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:08:19] [INFO] Checking activity reminders 
[2026-02-26 13:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:08:49] [INFO] Checking activity reminders 
[2026-02-26 13:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:09:19] [INFO] Checking activity reminders 
[2026-02-26 13:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:09:49] [INFO] Checking activity reminders 
[2026-02-26 13:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:10:19] [INFO] Checking activity reminders 
[2026-02-26 13:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:10:50] [INFO] Checking activity reminders 
[2026-02-26 13:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:11:20] [INFO] Checking activity reminders 
[2026-02-26 13:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:11:41] [INFO] Checking activity reminders 
[2026-02-26 13:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:11:50] [INFO] Checking activity reminders 
[2026-02-26 13:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:12:11] [INFO] Checking activity reminders 
[2026-02-26 13:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:12:20] [INFO] Checking activity reminders 
[2026-02-26 13:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:12:41] [INFO] Checking activity reminders 
[2026-02-26 13:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:12:50] [INFO] Checking activity reminders 
[2026-02-26 13:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:13:11] [INFO] Checking activity reminders 
[2026-02-26 13:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:13:20] [INFO] Checking activity reminders 
[2026-02-26 13:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:13:41] [INFO] Checking activity reminders 
[2026-02-26 13:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:13:50] [INFO] Checking activity reminders 
[2026-02-26 13:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:14:11] [INFO] Checking activity reminders 
[2026-02-26 13:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:14:21] [INFO] Checking activity reminders 
[2026-02-26 13:14:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:14:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:14:41] [INFO] Checking activity reminders 
[2026-02-26 13:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:14:51] [INFO] Checking activity reminders 
[2026-02-26 13:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:15:11] [INFO] Checking activity reminders 
[2026-02-26 13:15:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:15:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:15:21] [INFO] Checking activity reminders 
[2026-02-26 13:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:15:42] [INFO] Checking activity reminders 
[2026-02-26 13:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:15:51] [INFO] Checking activity reminders 
[2026-02-26 13:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:16:12] [INFO] Checking activity reminders 
[2026-02-26 13:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:16:21] [INFO] Checking activity reminders 
[2026-02-26 13:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:16:24] [INFO] Activity save request {"post_data":{"contact_id":"21226","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عیار 300 ت \/ ابشده 50 گرم \/ تا پژو پارس \/ خنگ\/ میگه بستگی به شرایط جنگی داره \/ \r\nشنبه اطلاع در غیر اینصورت 1000 دلار","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-02-26 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:16:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-02-26 13:16:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-02-26 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:16:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21226","note_was_empty":true}
[2026-02-26 13:16:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"21226","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-02-26 13:16:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69a01670212721.38290640","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-02-26 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:16:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69a01670212721.38290640"}
[2026-02-26 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:16:24] [INFO] Updating virtual stage {"contact_id":"21226","stage_name":"deal_registered","force":false}
[2026-02-26 13:16:24] [INFO] Virtual stage successfully saved {"contact_id":"21226","stage_name":"deal_registered"}
[2026-02-26 13:16:24] [INFO] Virtual stage updated after activity save {"contact_id":"21226"}
[2026-02-26 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-02-26 13:16:42] [INFO] Checking activity reminders 
[2026-02-26 13:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:17:12] [INFO] Checking activity reminders 
[2026-02-26 13:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:17:42] [INFO] Checking activity reminders 
[2026-02-26 13:17:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:17:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:18:12] [INFO] Checking activity reminders 
[2026-02-26 13:18:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:18:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:18:42] [INFO] Checking activity reminders 
[2026-02-26 13:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:19:12] [INFO] Checking activity reminders 
[2026-02-26 13:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:19:42] [INFO] Checking activity reminders 
[2026-02-26 13:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:20:12] [INFO] Checking activity reminders 
[2026-02-26 13:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:20:42] [INFO] Checking activity reminders 
[2026-02-26 13:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:21:12] [INFO] Checking activity reminders 
[2026-02-26 13:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:21:42] [INFO] Checking activity reminders 
[2026-02-26 13:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:21:55] [INFO] Checking activity reminders 
[2026-02-26 13:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:22:12] [INFO] Checking activity reminders 
[2026-02-26 13:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:22:25] [INFO] Checking activity reminders 
[2026-02-26 13:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:22:43] [INFO] Checking activity reminders 
[2026-02-26 13:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:22:55] [INFO] Checking activity reminders 
[2026-02-26 13:22:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:22:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:23:13] [INFO] Checking activity reminders 
[2026-02-26 13:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:23:25] [INFO] Checking activity reminders 
[2026-02-26 13:23:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:23:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:23:43] [INFO] Checking activity reminders 
[2026-02-26 13:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:23:55] [INFO] Checking activity reminders 
[2026-02-26 13:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:24:13] [INFO] Checking activity reminders 
[2026-02-26 13:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:24:25] [INFO] Checking activity reminders 
[2026-02-26 13:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:24:43] [INFO] Checking activity reminders 
[2026-02-26 13:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:24:55] [INFO] Checking activity reminders 
[2026-02-26 13:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:25:13] [INFO] Checking activity reminders 
[2026-02-26 13:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:25:25] [INFO] Checking activity reminders 
[2026-02-26 13:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:25:43] [INFO] Checking activity reminders 
[2026-02-26 13:25:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:25:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:25:55] [INFO] Checking activity reminders 
[2026-02-26 13:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:26:13] [INFO] Checking activity reminders 
[2026-02-26 13:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:26:25] [INFO] Checking activity reminders 
[2026-02-26 13:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:26:43] [INFO] Checking activity reminders 
[2026-02-26 13:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:26:56] [INFO] Checking activity reminders 
[2026-02-26 13:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:27:13] [INFO] Checking activity reminders 
[2026-02-26 13:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:27:24] [INFO] Checking activity reminders 
[2026-02-26 13:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:27:43] [INFO] Checking activity reminders 
[2026-02-26 13:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:27:54] [INFO] Checking activity reminders 
[2026-02-26 13:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:28:13] [INFO] Checking activity reminders 
[2026-02-26 13:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:28:24] [INFO] Checking activity reminders 
[2026-02-26 13:28:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:28:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:28:43] [INFO] Checking activity reminders 
[2026-02-26 13:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:28:55] [INFO] Checking activity reminders 
[2026-02-26 13:28:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:28:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:29:13] [INFO] Checking activity reminders 
[2026-02-26 13:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:29:25] [INFO] Checking activity reminders 
[2026-02-26 13:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:29:30] [INFO] Checking activity reminders 
[2026-02-26 13:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:29:33] [INFO] Checking activity reminders 
[2026-02-26 13:29:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:29:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:29:45] [INFO] Checking activity reminders 
[2026-02-26 13:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:33:47] [INFO] Checking activity reminders 
[2026-02-26 13:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:33:51] [INFO] Checking activity reminders 
[2026-02-26 13:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:52:39] [INFO] Checking activity reminders 
[2026-02-26 13:52:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 13:52:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"check_reminders"}
[2026-02-26 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:53:56] [WARNING] Auth check failed - not authenticated {"session_id":"lqshgccvkj3nu55qme9qkbu1d4","session_keys":[],"action":"log_client_event"}
[2026-02-26 13:53:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 13:53:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 13:53:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 13:53:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 13:53:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 13:53:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 13:54:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 13:54:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 13:54:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:47:52] [WARNING] Auth check failed - not authenticated {"session_id":"5dddqhcvlk9sfcn4pl04mgs5sc","session_keys":[],"action":"log_client_event"}
[2026-02-26 20:47:52] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-26 20:47:52] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-26 20:47:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:47:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:47:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:47:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"5dddqhcvlk9sfcn4pl04mgs5sc","session_keys":[],"action":"log_client_event"}
[2026-02-26 20:49:45] [WARNING] Auth check failed - not authenticated {"session_id":"5dddqhcvlk9sfcn4pl04mgs5sc","session_keys":[],"action":"log_client_event"}
[2026-02-26 20:49:45] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-26 20:49:45] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-26 20:49:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:50:07] [WARNING] Auth check failed - not authenticated {"session_id":"5dddqhcvlk9sfcn4pl04mgs5sc","session_keys":[],"action":"log_client_event"}
[2026-02-26 20:50:07] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-02-26 20:50:07] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-02-26 20:50:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:50:38] [INFO] Checking activity reminders 
[2026-02-26 20:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:51:08] [INFO] Checking activity reminders 
[2026-02-26 20:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21252","person_id":"13215"}
[2026-02-26 20:51:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21252","person_id":"13215"}
[2026-02-26 20:51:39] [INFO] Checking activity reminders 
[2026-02-26 20:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:51:42] [INFO] Checking activity reminders 
[2026-02-26 20:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:51:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-26 20:51:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-26 20:52:12] [INFO] Checking activity reminders 
[2026-02-26 20:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:52:42] [INFO] Checking activity reminders 
[2026-02-26 20:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:53:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-26 20:53:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-26 20:53:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:53:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:53:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:53:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:53:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:53:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:53:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:53:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:53:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:53:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:53:44] [INFO] Checking activity reminders 
[2026-02-26 20:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:54:14] [INFO] Checking activity reminders 
[2026-02-26 20:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:54:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:54:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:54:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:54:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:54:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:54:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:54:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:54:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:55:08] [INFO] Checking activity reminders 
[2026-02-26 20:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:55:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:55:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:55:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:55:39] [INFO] Checking activity reminders 
[2026-02-26 20:55:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:55:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:55:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:55:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:55:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:56:09] [INFO] Checking activity reminders 
[2026-02-26 20:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:56:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:56:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:56:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:56:39] [INFO] Checking activity reminders 
[2026-02-26 20:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:57:10] [INFO] Checking activity reminders 
[2026-02-26 20:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-02-26 20:57:40] [INFO] Checking activity reminders 
[2026-02-26 20:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:58:10] [INFO] Checking activity reminders 
[2026-02-26 20:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:58:41] [INFO] Checking activity reminders 
[2026-02-26 20:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:58:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:58:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:58:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:58:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:58:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:58:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:58:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:58:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:58:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:58:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:58:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:59:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:59:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:59:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:59:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 20:59:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 20:59:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 20:59:17] [INFO] Checking activity reminders 
[2026-02-26 20:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 20:59:47] [INFO] Checking activity reminders 
[2026-02-26 20:59:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 20:59:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:00:17] [INFO] Checking activity reminders 
[2026-02-26 21:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:01:56] [INFO] Checking activity reminders 
[2026-02-26 21:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:02:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-26 21:02:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-26 21:02:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-26 21:02:26] [INFO] Checking activity reminders 
[2026-02-26 21:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:02:56] [INFO] Checking activity reminders 
[2026-02-26 21:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:03:27] [INFO] Checking activity reminders 
[2026-02-26 21:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:03:57] [INFO] Checking activity reminders 
[2026-02-26 21:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:04:27] [INFO] Checking activity reminders 
[2026-02-26 21:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:04:57] [INFO] Checking activity reminders 
[2026-02-26 21:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:05:28] [INFO] Checking activity reminders 
[2026-02-26 21:05:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:05:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:16:52] [INFO] Checking activity reminders 
[2026-02-26 21:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:20:21] [INFO] Checking activity reminders 
[2026-02-26 21:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-26 21:45:43] [INFO] Checking activity reminders 
[2026-02-26 21:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-26 21:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 18:48:33] [WARNING] Auth check failed - not authenticated {"session_id":"4e257ome87kia0av3vl5maa9mm","session_keys":[],"action":"log_client_event"}
[2026-02-27 18:48:33] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-27 18:48:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-27 18:48:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 18:48:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 18:48:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 18:48:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 18:48:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 18:48:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 18:48:57] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:48:57] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:49:01] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 18:49:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 18:49:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 18:49:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 18:49:01] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:49:01] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:49:01] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:49:01] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 18:49:05] [INFO] Checking activity reminders 
[2026-02-27 18:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 18:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:05:23] [INFO] Checking activity reminders 
[2026-02-27 19:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:05:53] [INFO] Checking activity reminders 
[2026-02-27 19:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:06:24] [INFO] Checking activity reminders 
[2026-02-27 19:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:06:54] [INFO] Checking activity reminders 
[2026-02-27 19:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:07:24] [INFO] Checking activity reminders 
[2026-02-27 19:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:07:54] [INFO] Checking activity reminders 
[2026-02-27 19:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:08:25] [INFO] Checking activity reminders 
[2026-02-27 19:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:08:55] [INFO] Checking activity reminders 
[2026-02-27 19:08:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:08:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:09:26] [INFO] Checking activity reminders 
[2026-02-27 19:09:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:09:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:09:56] [INFO] Checking activity reminders 
[2026-02-27 19:09:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:09:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:10:36] [INFO] Checking activity reminders 
[2026-02-27 19:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:11:06] [INFO] Checking activity reminders 
[2026-02-27 19:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:11:37] [INFO] Checking activity reminders 
[2026-02-27 19:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:12:07] [INFO] Checking activity reminders 
[2026-02-27 19:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:12:37] [INFO] Checking activity reminders 
[2026-02-27 19:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:13:07] [INFO] Checking activity reminders 
[2026-02-27 19:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:13:38] [INFO] Checking activity reminders 
[2026-02-27 19:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:14:08] [INFO] Checking activity reminders 
[2026-02-27 19:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:14:38] [INFO] Checking activity reminders 
[2026-02-27 19:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:15:08] [INFO] Checking activity reminders 
[2026-02-27 19:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:15:39] [INFO] Checking activity reminders 
[2026-02-27 19:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:16:10] [INFO] Checking activity reminders 
[2026-02-27 19:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:16:40] [INFO] Checking activity reminders 
[2026-02-27 19:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:17:10] [INFO] Checking activity reminders 
[2026-02-27 19:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:17:41] [INFO] Checking activity reminders 
[2026-02-27 19:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:18:11] [INFO] Checking activity reminders 
[2026-02-27 19:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:18:41] [INFO] Checking activity reminders 
[2026-02-27 19:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:19:11] [INFO] Checking activity reminders 
[2026-02-27 19:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:19:41] [INFO] Checking activity reminders 
[2026-02-27 19:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:20:12] [INFO] Checking activity reminders 
[2026-02-27 19:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:20:42] [INFO] Checking activity reminders 
[2026-02-27 19:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:21:12] [INFO] Checking activity reminders 
[2026-02-27 19:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:21:42] [INFO] Checking activity reminders 
[2026-02-27 19:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:22:13] [INFO] Checking activity reminders 
[2026-02-27 19:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:22:43] [INFO] Checking activity reminders 
[2026-02-27 19:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:23:13] [INFO] Checking activity reminders 
[2026-02-27 19:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:23:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 19:23:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 19:23:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 19:23:43] [INFO] Checking activity reminders 
[2026-02-27 19:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:24:13] [INFO] Checking activity reminders 
[2026-02-27 19:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:24:43] [INFO] Checking activity reminders 
[2026-02-27 19:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:25:13] [INFO] Checking activity reminders 
[2026-02-27 19:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:25:44] [INFO] Checking activity reminders 
[2026-02-27 19:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:26:14] [INFO] Checking activity reminders 
[2026-02-27 19:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:26:44] [INFO] Checking activity reminders 
[2026-02-27 19:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:27:14] [INFO] Checking activity reminders 
[2026-02-27 19:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:27:44] [INFO] Checking activity reminders 
[2026-02-27 19:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:28:15] [INFO] Checking activity reminders 
[2026-02-27 19:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:28:45] [INFO] Checking activity reminders 
[2026-02-27 19:28:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:28:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:29:15] [INFO] Checking activity reminders 
[2026-02-27 19:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:29:45] [INFO] Checking activity reminders 
[2026-02-27 19:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:30:15] [INFO] Checking activity reminders 
[2026-02-27 19:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:30:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 19:30:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 19:30:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 19:30:45] [INFO] Checking activity reminders 
[2026-02-27 19:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:31:15] [INFO] Checking activity reminders 
[2026-02-27 19:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:31:45] [INFO] Checking activity reminders 
[2026-02-27 19:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:32:16] [INFO] Checking activity reminders 
[2026-02-27 19:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:32:46] [INFO] Checking activity reminders 
[2026-02-27 19:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:33:16] [INFO] Checking activity reminders 
[2026-02-27 19:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:33:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 19:33:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 19:33:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 19:33:46] [INFO] Checking activity reminders 
[2026-02-27 19:33:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:33:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:34:17] [INFO] Checking activity reminders 
[2026-02-27 19:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:34:56] [INFO] Checking activity reminders 
[2026-02-27 19:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:35:26] [INFO] Checking activity reminders 
[2026-02-27 19:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:35:57] [INFO] Checking activity reminders 
[2026-02-27 19:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:35:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 19:35:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 19:35:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 19:36:27] [INFO] Checking activity reminders 
[2026-02-27 19:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:36:57] [INFO] Checking activity reminders 
[2026-02-27 19:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:37:27] [INFO] Checking activity reminders 
[2026-02-27 19:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:37:57] [INFO] Checking activity reminders 
[2026-02-27 19:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:38:28] [INFO] Checking activity reminders 
[2026-02-27 19:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:38:58] [INFO] Checking activity reminders 
[2026-02-27 19:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:39:28] [INFO] Checking activity reminders 
[2026-02-27 19:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:39:59] [INFO] Checking activity reminders 
[2026-02-27 19:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:40:29] [INFO] Checking activity reminders 
[2026-02-27 19:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:40:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 19:40:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 19:40:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 19:40:55] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:40:55] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:40:58] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 19:40:58] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:40:58] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:40:58] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:40:58] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 19:41:00] [INFO] Checking activity reminders 
[2026-02-27 19:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:41:30] [INFO] Checking activity reminders 
[2026-02-27 19:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:42:01] [INFO] Checking activity reminders 
[2026-02-27 19:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:42:31] [INFO] Checking activity reminders 
[2026-02-27 19:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:43:01] [INFO] Checking activity reminders 
[2026-02-27 19:43:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:43:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:43:32] [INFO] Checking activity reminders 
[2026-02-27 19:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:44:02] [INFO] Checking activity reminders 
[2026-02-27 19:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:44:32] [INFO] Checking activity reminders 
[2026-02-27 19:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:45:02] [INFO] Checking activity reminders 
[2026-02-27 19:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:45:32] [INFO] Checking activity reminders 
[2026-02-27 19:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:46:02] [INFO] Checking activity reminders 
[2026-02-27 19:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 19:59:47] [INFO] Checking activity reminders 
[2026-02-27 19:59:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 19:59:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:10:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 20:10:52] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-27 20:10:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:10:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:10:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:10:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-27 20:16:00] [INFO] Checking activity reminders 
[2026-02-27 20:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:16:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:16:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:16:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:16:30] [INFO] Checking activity reminders 
[2026-02-27 20:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:17:00] [INFO] Checking activity reminders 
[2026-02-27 20:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:17:31] [INFO] Checking activity reminders 
[2026-02-27 20:17:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:17:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:18:01] [INFO] Checking activity reminders 
[2026-02-27 20:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:18:31] [INFO] Checking activity reminders 
[2026-02-27 20:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:19:01] [INFO] Checking activity reminders 
[2026-02-27 20:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:19:33] [INFO] Checking activity reminders 
[2026-02-27 20:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:20:03] [INFO] Checking activity reminders 
[2026-02-27 20:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:20:33] [INFO] Checking activity reminders 
[2026-02-27 20:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:21:04] [INFO] Checking activity reminders 
[2026-02-27 20:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:21:34] [INFO] Checking activity reminders 
[2026-02-27 20:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:22:04] [INFO] Checking activity reminders 
[2026-02-27 20:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:22:34] [INFO] Checking activity reminders 
[2026-02-27 20:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:22:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:22:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:22:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:23:05] [INFO] Checking activity reminders 
[2026-02-27 20:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20879","person_id":"9469"}
[2026-02-27 20:23:35] [INFO] Checking activity reminders 
[2026-02-27 20:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:23:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:23:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:23:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:24:05] [INFO] Checking activity reminders 
[2026-02-27 20:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:24:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:24:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:24:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:24:35] [INFO] Checking activity reminders 
[2026-02-27 20:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:25:05] [INFO] Checking activity reminders 
[2026-02-27 20:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:25:36] [INFO] Checking activity reminders 
[2026-02-27 20:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:26:06] [INFO] Checking activity reminders 
[2026-02-27 20:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:26:36] [INFO] Checking activity reminders 
[2026-02-27 20:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:27:06] [INFO] Checking activity reminders 
[2026-02-27 20:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:27:36] [INFO] Checking activity reminders 
[2026-02-27 20:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:28:06] [INFO] Checking activity reminders 
[2026-02-27 20:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:28:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:28:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:28:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:28:36] [INFO] Checking activity reminders 
[2026-02-27 20:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:29:07] [INFO] Checking activity reminders 
[2026-02-27 20:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:29:37] [INFO] Checking activity reminders 
[2026-02-27 20:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:29:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:29:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:29:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:29:43] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:29:43] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:29:46] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 20:29:46] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:29:46] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:29:46] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:29:46] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:30:07] [INFO] Checking activity reminders 
[2026-02-27 20:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:30:37] [INFO] Checking activity reminders 
[2026-02-27 20:30:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:30:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:31:07] [INFO] Checking activity reminders 
[2026-02-27 20:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:31:37] [INFO] Checking activity reminders 
[2026-02-27 20:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:32:08] [INFO] Checking activity reminders 
[2026-02-27 20:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:32:38] [INFO] Checking activity reminders 
[2026-02-27 20:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:33:08] [INFO] Checking activity reminders 
[2026-02-27 20:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:33:38] [INFO] Checking activity reminders 
[2026-02-27 20:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:34:08] [INFO] Checking activity reminders 
[2026-02-27 20:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:34:38] [INFO] Checking activity reminders 
[2026-02-27 20:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:34:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:34:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:34:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:35:09] [INFO] Checking activity reminders 
[2026-02-27 20:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:35:39] [INFO] Checking activity reminders 
[2026-02-27 20:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:36:09] [INFO] Checking activity reminders 
[2026-02-27 20:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:36:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:36:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:36:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:36:22] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:22] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:24] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 20:36:25] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:25] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:25] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:25] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:36:39] [INFO] Checking activity reminders 
[2026-02-27 20:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:37:10] [INFO] Checking activity reminders 
[2026-02-27 20:37:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:37:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:37:40] [INFO] Checking activity reminders 
[2026-02-27 20:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:38:11] [INFO] Checking activity reminders 
[2026-02-27 20:38:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:38:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:38:41] [INFO] Checking activity reminders 
[2026-02-27 20:38:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:38:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:39:11] [INFO] Checking activity reminders 
[2026-02-27 20:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:39:42] [INFO] Checking activity reminders 
[2026-02-27 20:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:40:12] [INFO] Checking activity reminders 
[2026-02-27 20:40:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:40:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:40:43] [INFO] Checking activity reminders 
[2026-02-27 20:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:41:13] [INFO] Checking activity reminders 
[2026-02-27 20:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:41:43] [INFO] Checking activity reminders 
[2026-02-27 20:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:42:36] [INFO] Checking activity reminders 
[2026-02-27 20:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:46:49] [INFO] Checking activity reminders 
[2026-02-27 20:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:47:19] [INFO] Checking activity reminders 
[2026-02-27 20:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:47:50] [INFO] Checking activity reminders 
[2026-02-27 20:47:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:47:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:48:34] [INFO] Checking activity reminders 
[2026-02-27 20:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:55:37] [INFO] Checking activity reminders 
[2026-02-27 20:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:55:45] [INFO] Checking activity reminders 
[2026-02-27 20:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:56:32] [INFO] Checking activity reminders 
[2026-02-27 20:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:57:02] [INFO] Checking activity reminders 
[2026-02-27 20:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:57:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:57:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:57:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:57:32] [INFO] Checking activity reminders 
[2026-02-27 20:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:57:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 20:57:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 20:57:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 20:57:44] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:57:44] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:57:47] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 20:57:47] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:57:47] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:57:47] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:57:47] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 20:58:03] [INFO] Checking activity reminders 
[2026-02-27 20:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:58:24] [INFO] Checking activity reminders 
[2026-02-27 20:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:58:55] [INFO] Checking activity reminders 
[2026-02-27 20:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 20:59:25] [INFO] Checking activity reminders 
[2026-02-27 20:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 20:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_products"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_leads"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_leads"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:13] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:30:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:30:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:30:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:38:30] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:38:30] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:38:30] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:16] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:16] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:40:16] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:17] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:24] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:24] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:27] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:30] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:30] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_products"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_leads"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:33] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_dashboard_stats"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:40:34] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:41:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_didar_users"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_users_list"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:10] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_kpi_products"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_kpi_section"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_kpi"}
[2026-02-27 21:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:46] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:41:46] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:41:46] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:43:29] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:43:29] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:43:29] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:45] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:45] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"check_reminders"}
[2026-02-27 21:44:45] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:50] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_products"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_leads"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:52] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:59] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:59] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:44:59] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_leads"}
[2026-02-27 21:44:59] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_didar_users"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_users_list"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_kpi_products"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:01] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-02-27 21:45:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"get_performance_dashboard"}
[2026-02-27 21:45:02] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:03] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:16] [WARNING] Auth check failed - not authenticated {"session_id":"pe8o56nheg0endp7gn8h6tbq4k","session_keys":[],"action":"log_client_event"}
[2026-02-27 21:45:16] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-27 21:45:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-27 21:45:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 21:45:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 21:45:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 21:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-27 21:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-02-27 21:45:47] [INFO] Checking activity reminders 
[2026-02-27 21:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:46:18] [INFO] Checking activity reminders 
[2026-02-27 21:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:46:27] [ERROR] Failed to get support logs {"contact_id":"local_699eaf23b95158.14445425","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-02-27 21:46:27] [ERROR] Error getting support logs {"contact_id":"local_699eaf23b95158.14445425","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-02-27 21:46:48] [INFO] Checking activity reminders 
[2026-02-27 21:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:47:18] [INFO] Checking activity reminders 
[2026-02-27 21:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:47:40] [INFO] Checking activity reminders 
[2026-02-27 21:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:48:11] [INFO] Checking activity reminders 
[2026-02-27 21:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:48:41] [INFO] Checking activity reminders 
[2026-02-27 21:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:51:27] [INFO] Checking activity reminders 
[2026-02-27 21:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 21:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-27 21:51:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-27 21:51:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-27 21:51:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-27 21:51:29] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 21:51:29] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 21:51:32] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-27 21:51:32] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 21:51:32] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 21:51:32] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 21:51:32] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-27 22:07:16] [INFO] Checking activity reminders 
[2026-02-27 22:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-27 22:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:39:45] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-02-28 09:39:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:39:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:39:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:39:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-28 09:40:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:40:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:40:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:40:08] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:08] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:15] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-28 09:40:15] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:15] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:15] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:15] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:40:17] [INFO] Checking activity reminders 
[2026-02-28 09:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:40:47] [INFO] Checking activity reminders 
[2026-02-28 09:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:41:17] [INFO] Checking activity reminders 
[2026-02-28 09:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:41:31] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-28 09:41:31] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-28 09:41:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-28 09:41:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:41:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:41:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:41:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 09:41:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 09:41:47] [INFO] Checking activity reminders 
[2026-02-28 09:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:42:04] [INFO] Checking activity reminders 
[2026-02-28 09:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:42:13] [INFO] KPI calculation started {"filters":{"date_from":"2025-12-22","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2025-12-22","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:13] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:16] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-28 09:42:16] [INFO] KPI calculation started {"filters":{"date_from":"2025-12-22","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2025-12-22","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:16] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:16] [INFO] KPI calculation started {"filters":{"date_from":"2025-12-22","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2025-12-22","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:16] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:42:24] [INFO] Checking activity reminders 
[2026-02-28 09:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:42:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:42:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:42:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:42:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:42:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:42:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:42:34] [INFO] Checking activity reminders 
[2026-02-28 09:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:42:54] [INFO] Checking activity reminders 
[2026-02-28 09:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:43:24] [INFO] Checking activity reminders 
[2026-02-28 09:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:43:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 09:43:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 09:43:54] [INFO] Checking activity reminders 
[2026-02-28 09:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:44:47] [INFO] Checking activity reminders 
[2026-02-28 09:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:44:57] [INFO] Checking activity reminders 
[2026-02-28 09:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:51:53] [INFO] Checking activity reminders 
[2026-02-28 09:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:55:28] [INFO] Checking activity reminders 
[2026-02-28 09:55:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:55:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:55:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:55:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:55:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 09:55:31] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:31] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:34] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-02-28 09:55:34] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:34] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:34] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:34] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-02-28 09:55:59] [INFO] Checking activity reminders 
[2026-02-28 09:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:56:29] [INFO] Checking activity reminders 
[2026-02-28 09:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:57:00] [INFO] Checking activity reminders 
[2026-02-28 09:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:57:30] [INFO] Checking activity reminders 
[2026-02-28 09:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:58:01] [INFO] Checking activity reminders 
[2026-02-28 09:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:58:31] [INFO] Checking activity reminders 
[2026-02-28 09:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:59:01] [INFO] Checking activity reminders 
[2026-02-28 09:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:59:32] [INFO] Checking activity reminders 
[2026-02-28 09:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 09:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 09:59:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 09:59:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 09:59:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 10:00:02] [INFO] Checking activity reminders 
[2026-02-28 10:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:00:33] [INFO] Checking activity reminders 
[2026-02-28 10:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:01:03] [INFO] Checking activity reminders 
[2026-02-28 10:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:01:34] [INFO] Checking activity reminders 
[2026-02-28 10:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:01:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 10:01:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 10:01:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 10:02:05] [INFO] Checking activity reminders 
[2026-02-28 10:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:02:11] [INFO] Checking activity reminders 
[2026-02-28 10:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:02:43] [WARNING] Auth check failed - not authenticated {"session_id":"oc0iqf7ahjnm5a1qm2n61n9sob","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:02:43] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-02-28 10:02:54] [WARNING] Auth check failed - not authenticated {"session_id":"oc0iqf7ahjnm5a1qm2n61n9sob","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:02:54] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-02-28 10:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"oc0iqf7ahjnm5a1qm2n61n9sob","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:03:02] [WARNING] Login attempt failed - wrong password {"user_id":"15","identifier":"خانم شایسته"}
[2026-02-28 10:03:17] [WARNING] Auth check failed - not authenticated {"session_id":"oc0iqf7ahjnm5a1qm2n61n9sob","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:03:17] [INFO] Master password used for login {"user_id":"4","identifier":"خانم تاج‌الدین","role":"system"}
[2026-02-28 10:03:17] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":true}
[2026-02-28 10:03:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-28 10:03:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 10:03:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 10:03:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 10:03:21] [INFO] Checking activity reminders 
[2026-02-28 10:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"do9ola07sjcrnlkjia53iv9d4f","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"do9ola07sjcrnlkjia53iv9d4f","session_keys":[],"action":"log_client_event"}
[2026-02-28 10:03:26] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-02-28 10:03:26] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-02-28 10:03:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-02-28 10:03:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-02-28 10:03:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-02-28 10:03:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-02-28 10:03:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 10:03:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-02-28 10:03:59] [INFO] Checking activity reminders 
[2026-02-28 10:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:04:30] [INFO] Checking activity reminders 
[2026-02-28 10:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:05:01] [INFO] Checking activity reminders 
[2026-02-28 10:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:05:31] [INFO] Checking activity reminders 
[2026-02-28 10:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:06:03] [INFO] Checking activity reminders 
[2026-02-28 10:06:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:06:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:06:34] [INFO] Checking activity reminders 
[2026-02-28 10:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:07:05] [INFO] Checking activity reminders 
[2026-02-28 10:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:07:36] [INFO] Checking activity reminders 
[2026-02-28 10:07:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:07:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:08:07] [INFO] Checking activity reminders 
[2026-02-28 10:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:08:38] [INFO] Checking activity reminders 
[2026-02-28 10:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:09:09] [INFO] Checking activity reminders 
[2026-02-28 10:09:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:09:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:09:40] [INFO] Checking activity reminders 
[2026-02-28 10:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:10:11] [INFO] Checking activity reminders 
[2026-02-28 10:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:10:42] [INFO] Checking activity reminders 
[2026-02-28 10:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:11:13] [INFO] Checking activity reminders 
[2026-02-28 10:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:11:44] [INFO] Checking activity reminders 
[2026-02-28 10:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:12:15] [INFO] Checking activity reminders 
[2026-02-28 10:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:12:46] [INFO] Checking activity reminders 
[2026-02-28 10:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:13:17] [INFO] Checking activity reminders 
[2026-02-28 10:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-02-28 10:13:48] [INFO] Checking activity reminders 
[2026-02-28 10:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-02-28 10:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-06 02:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"agjl3mu45dr0u82503aelg50rh","session_keys":[],"action":"log_client_event"}
[2026-03-06 02:53:43] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-06 02:53:43] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-06 02:53:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-06 02:53:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-06 02:53:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-06 02:53:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-06 02:53:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-06 02:53:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-06 02:53:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-06 02:54:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-06 02:54:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-06 02:54:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-06 02:54:14] [INFO] Checking activity reminders 
[2026-03-06 02:54:14] [INFO] Found due reminders {"count":2,"reminders":[{"id":"186","activity_didar_id":"local_activity_6992d1ae541808.11071462","reminder_time":"2026-02-28 11:00:00","reminder_sent":"0","reminder_offset_minutes":"60","created_at":"2026-02-16 11:43:34","owner_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","title":"فعالیت","due_date":"2026-02-28 12:00:00","contact_didar_id":"local_6991615e6c80a5.60125528"},{"id":"177","activity_didar_id":"local_activity_69888702a273f8.86283827","reminder_time":"2026-03-03 11:00:00","reminder_sent":"0","reminder_offset_minutes":"60","created_at":"2026-02-08 16:22:18","owner_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","title":"فعالیت","due_date":"2026-03-03 12:00:00","contact_didar_id":"local_6987219f8612c0.41443682"}]}
[2026-03-06 02:54:14] [INFO] Processing reminder {"reminder_id":"186","activity_id":"local_activity_6992d1ae541808.11071462","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reminder_time":"2026-02-28 11:00:00","due_date":"2026-02-28 12:00:00"}
[2026-03-06 02:54:14] [INFO] Notification created {"notification_id":"562","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"activity_reminder","show_popup":true}
[2026-03-06 02:54:14] [INFO] Reminder processed successfully {"reminder_id":"186","notification_id":"562"}
[2026-03-06 02:54:14] [INFO] Processing reminder {"reminder_id":"177","activity_id":"local_activity_69888702a273f8.86283827","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reminder_time":"2026-03-03 11:00:00","due_date":"2026-03-03 12:00:00"}
[2026-03-06 02:54:14] [INFO] Notification created {"notification_id":"563","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"activity_reminder","show_popup":true}
[2026-03-06 02:54:14] [INFO] Reminder processed successfully {"reminder_id":"177","notification_id":"563"}
[2026-03-06 02:54:14] [INFO] Finished checking reminders {"notifications_created":2}
[2026-03-06 02:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-03-06 02:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-03-06 02:55:10] [INFO] Checking activity reminders 
[2026-03-06 02:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-06 02:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-06 02:59:55] [INFO] Checking activity reminders 
[2026-03-06 02:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-06 02:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:23:15] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 11:23:15] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-08 11:23:15] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-08 11:23:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 11:23:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-08 11:23:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-08 11:23:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-08 11:42:20] [INFO] Checking activity reminders 
[2026-03-08 11:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:42:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-08 11:42:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-08 11:42:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-08 11:42:50] [INFO] Checking activity reminders 
[2026-03-08 11:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:43:20] [INFO] Checking activity reminders 
[2026-03-08 11:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:43:50] [INFO] Checking activity reminders 
[2026-03-08 11:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:44:20] [INFO] Checking activity reminders 
[2026-03-08 11:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:44:51] [INFO] Checking activity reminders 
[2026-03-08 11:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:45:21] [INFO] Checking activity reminders 
[2026-03-08 11:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:45:51] [INFO] Checking activity reminders 
[2026-03-08 11:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:46:21] [INFO] Checking activity reminders 
[2026-03-08 11:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 11:46:51] [INFO] Checking activity reminders 
[2026-03-08 11:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 11:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-08 13:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-08 13:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:18:43] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-08 13:18:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 13:33:41] [INFO] Checking activity reminders 
[2026-03-08 13:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-08 13:34:11] [INFO] Checking activity reminders 
[2026-03-08 13:34:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:34:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:34:41] [INFO] Checking activity reminders 
[2026-03-08 13:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:35:11] [INFO] Checking activity reminders 
[2026-03-08 13:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:35:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 13:35:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 13:35:40] [INFO] Checking activity reminders 
[2026-03-08 13:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:36:10] [INFO] Checking activity reminders 
[2026-03-08 13:36:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:36:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:36:40] [INFO] Checking activity reminders 
[2026-03-08 13:36:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:36:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:37:10] [INFO] Checking activity reminders 
[2026-03-08 13:37:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:37:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:37:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2901","deal_id":"local_699c6095ea0f21.32393035","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 13:37:22","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 13:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:37:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2901","is_new_deal":false}
[2026-03-08 13:37:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 13:37:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 13:37:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 13:37:22] [INFO] getContactPrimaryPhone called {"contact_id":"2901"}
[2026-03-08 13:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:37:22] [INFO] getContactPrimaryPhone result {"contact_id":"2901","person_found":true,"primary_phone":"9139284523"}
[2026-03-08 13:37:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139284523"}
[2026-03-08 13:37:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139284523","contact_id":"2901","deal_id":"local_699c6095ea0f21.32393035","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 13:37:22"}
[2026-03-08 13:37:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c6095ea0f21.32393035","contact_id":"2901","existing_deal_found":true,"existing_contact_id":"2901","existing_title":"معامله چهارم 9139284523 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 13:37:22"}
[2026-03-08 13:37:22] [INFO] DealController.save validated payments {"deal_id":"local_699c6095ea0f21.32393035","contact_id":"2901","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-08 13:37:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2901","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 13:37:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c6095ea0f21.32393035","contact_didar_id":"2901","title":"معامله چهارم 9139284523 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9139284523","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعید عادلی","existing_deal":"YES","existing_deal_id":"local_699c6095ea0f21.32393035","existing_deal_status":"Pending","server_time":"2026-03-08 13:37:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 13:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:37:22] [INFO] Deal success processed {"contact_id":"2901","person_name":"سعید عادلی","products_count":1}
[2026-03-08 13:37:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c6095ea0f21.32393035","contact_id":"2901","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9139284523 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-08 13:37:22","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 13:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-03-08 13:37:40] [INFO] Checking activity reminders 
[2026-03-08 13:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:38:10] [INFO] Checking activity reminders 
[2026-03-08 13:38:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:38:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:38:40] [INFO] Checking activity reminders 
[2026-03-08 13:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:38:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3554","deal_id":"local_694a5a62e21d34.45333989","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 13:38:48","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 13:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:38:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3554","is_new_deal":false}
[2026-03-08 13:38:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 13:38:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 13:38:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 13:38:48] [INFO] getContactPrimaryPhone called {"contact_id":"3554"}
[2026-03-08 13:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:38:48] [INFO] getContactPrimaryPhone result {"contact_id":"3554","person_found":true,"primary_phone":"9116046271"}
[2026-03-08 13:38:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9116046271"}
[2026-03-08 13:38:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9116046271","contact_id":"3554","deal_id":"local_694a5a62e21d34.45333989","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 13:38:48"}
[2026-03-08 13:38:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a5a62e21d34.45333989","contact_id":"3554","existing_deal_found":true,"existing_contact_id":"3554","existing_title":"معامله اول 9116046271 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 13:38:48"}
[2026-03-08 13:38:48] [INFO] DealController.save validated payments {"deal_id":"local_694a5a62e21d34.45333989","contact_id":"3554","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-08 13:38:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3554","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 13:38:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a5a62e21d34.45333989","contact_didar_id":"3554","title":"معامله اول 9116046271 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9116046271","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شکوری","existing_deal":"YES","existing_deal_id":"local_694a5a62e21d34.45333989","existing_deal_status":"Pending","server_time":"2026-03-08 13:38:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 13:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:38:48] [INFO] Deal success processed {"contact_id":"3554","person_name":"شکوری","products_count":1}
[2026-03-08 13:38:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a5a62e21d34.45333989","contact_id":"3554","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9116046271 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-08 13:38:48","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 13:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-03-08 13:39:10] [INFO] Checking activity reminders 
[2026-03-08 13:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:40:18] [INFO] Checking activity reminders 
[2026-03-08 13:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:40:20] [INFO] Checking activity reminders 
[2026-03-08 13:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:40:50] [INFO] Checking activity reminders 
[2026-03-08 13:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:42:34] [INFO] Checking activity reminders 
[2026-03-08 13:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:53:40] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-08 13:53:40] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:40] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_products"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_leads"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:43] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_products"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_leads"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:44] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:45] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_leads"}
[2026-03-08 13:53:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:47] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:57] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 13:53:57] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-08 13:53:57] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-08 13:53:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 13:53:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-08 13:53:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-08 13:53:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-08 13:54:27] [INFO] Checking activity reminders 
[2026-03-08 13:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 13:54:41] [INFO] Checking activity reminders 
[2026-03-08 13:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:54:42] [INFO] Checking activity reminders 
[2026-03-08 13:54:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:54:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:54:57] [INFO] Checking activity reminders 
[2026-03-08 13:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:55:05] [INFO] Lead update received {"contact_id":"2376","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-08 13:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 13:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 13:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 13:55:05] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2376"}
[2026-03-08 13:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 13:55:13] [INFO] Checking activity reminders 
[2026-03-08 13:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:55:15] [INFO] Checking activity reminders 
[2026-03-08 13:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:55:43] [INFO] Checking activity reminders 
[2026-03-08 13:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:56:13] [INFO] Checking activity reminders 
[2026-03-08 13:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:56:43] [INFO] Checking activity reminders 
[2026-03-08 13:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:57:13] [INFO] Checking activity reminders 
[2026-03-08 13:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:57:43] [INFO] Checking activity reminders 
[2026-03-08 13:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:58:13] [INFO] Checking activity reminders 
[2026-03-08 13:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:58:43] [INFO] Checking activity reminders 
[2026-03-08 13:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:59:14] [INFO] Checking activity reminders 
[2026-03-08 13:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 13:59:44] [INFO] Checking activity reminders 
[2026-03-08 13:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 13:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:00:14] [INFO] Checking activity reminders 
[2026-03-08 14:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:00:44] [INFO] Checking activity reminders 
[2026-03-08 14:00:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:00:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:00:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4167","deal_id":"local_699d886e16e9d8.86139404","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 14:00:54","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 14:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-08 14:00:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4167","is_new_deal":false}
[2026-03-08 14:00:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 14:00:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 14:00:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 14:00:54] [INFO] getContactPrimaryPhone called {"contact_id":"4167"}
[2026-03-08 14:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-08 14:00:54] [INFO] getContactPrimaryPhone result {"contact_id":"4167","person_found":true,"primary_phone":"9133125395"}
[2026-03-08 14:00:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133125395"}
[2026-03-08 14:00:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133125395","contact_id":"4167","deal_id":"local_699d886e16e9d8.86139404","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 14:00:54"}
[2026-03-08 14:00:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","existing_deal_found":true,"existing_contact_id":"4167","existing_title":"معامله سوم 9133125395 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 14:00:54"}
[2026-03-08 14:00:54] [INFO] DealController.save validated payments {"deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-08 14:00:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4167","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 14:00:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d886e16e9d8.86139404","contact_didar_id":"4167","title":"معامله سوم 9133125395 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9133125395","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینعلی محمدی","existing_deal":"YES","existing_deal_id":"local_699d886e16e9d8.86139404","existing_deal_status":"Pending","server_time":"2026-03-08 14:00:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 14:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-08 14:00:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9133125395 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-03-08 14:00:54","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 14:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-08 14:01:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:01:10] [INFO] generateDealTitle result {"contact_id":"2376","person_name":"نصیری نصیری","mobile":"9136614961","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9136614961"}
[2026-03-08 14:01:14] [INFO] Checking activity reminders 
[2026-03-08 14:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:03:20] [INFO] Checking activity reminders 
[2026-03-08 14:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:03:21] [INFO] Checking activity reminders 
[2026-03-08 14:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:03:54] [INFO] Checking activity reminders 
[2026-03-08 14:03:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:03:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:04:24] [INFO] Checking activity reminders 
[2026-03-08 14:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:04:54] [INFO] Checking activity reminders 
[2026-03-08 14:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:05:25] [INFO] Checking activity reminders 
[2026-03-08 14:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:05:55] [INFO] Checking activity reminders 
[2026-03-08 14:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:06:25] [INFO] Checking activity reminders 
[2026-03-08 14:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:06:55] [INFO] Checking activity reminders 
[2026-03-08 14:06:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:06:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:07:51] [INFO] Checking activity reminders 
[2026-03-08 14:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:08:21] [INFO] Checking activity reminders 
[2026-03-08 14:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:08:51] [INFO] Checking activity reminders 
[2026-03-08 14:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:09:22] [INFO] Checking activity reminders 
[2026-03-08 14:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:09:52] [INFO] Checking activity reminders 
[2026-03-08 14:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:10:17] [INFO] Checking activity reminders 
[2026-03-08 14:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:11:25] [INFO] Checking activity reminders 
[2026-03-08 14:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:11:48] [INFO] Checking activity reminders 
[2026-03-08 14:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:12:18] [INFO] Checking activity reminders 
[2026-03-08 14:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:12:41] [INFO] Checking activity reminders 
[2026-03-08 14:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:13:04] [INFO] Checking activity reminders 
[2026-03-08 14:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:13:32] [INFO] Checking activity reminders 
[2026-03-08 14:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:14:02] [INFO] Checking activity reminders 
[2026-03-08 14:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:14:32] [INFO] Checking activity reminders 
[2026-03-08 14:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:15:48] [INFO] Checking activity reminders 
[2026-03-08 14:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:16:18] [INFO] Checking activity reminders 
[2026-03-08 14:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:16:55] [INFO] Checking activity reminders 
[2026-03-08 14:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:17:37] [INFO] Checking activity reminders 
[2026-03-08 14:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:18:07] [INFO] Checking activity reminders 
[2026-03-08 14:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:18:37] [INFO] Checking activity reminders 
[2026-03-08 14:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:07] [INFO] Checking activity reminders 
[2026-03-08 14:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2376","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 14:19:07","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 14:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2376","is_new_deal":true}
[2026-03-08 14:19:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 14:19:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 14:19:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 14:19:07] [INFO] getContactPrimaryPhone called {"contact_id":"2376"}
[2026-03-08 14:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:07] [INFO] getContactPrimaryPhone result {"contact_id":"2376","person_found":true,"primary_phone":"9136614961"}
[2026-03-08 14:19:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9136614961"}
[2026-03-08 14:19:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9136614961","contact_id":"2376","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 14:19:07"}
[2026-03-08 14:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:07] [INFO] generateDealTitle result {"contact_id":"2376","person_name":"نصیری نصیری","mobile":"9136614961","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9136614961"}
[2026-03-08 14:19:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2376","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-08 14:19:07] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2376","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 14:19:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2376","title":"معامله سوم 9136614961 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9136614961","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصیری نصیری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-08 14:19:07","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 14:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:07] [INFO] Deal success processed {"contact_id":"2376","person_name":"نصیری نصیری","products_count":1}
[2026-03-08 14:19:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-08 14:19:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2376","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9136614961 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-08 14:19:07","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 14:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-03-08 14:19:18] [INFO] Checking activity reminders 
[2026-03-08 14:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:23] [INFO] Checking activity reminders 
[2026-03-08 14:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:25] [INFO] Checking activity reminders 
[2026-03-08 14:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:28] [INFO] Checking activity reminders 
[2026-03-08 14:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:19:58] [INFO] Checking activity reminders 
[2026-03-08 14:19:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:19:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:20:15] [INFO] Checking activity reminders 
[2026-03-08 14:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:20:17] [INFO] Checking activity reminders 
[2026-03-08 14:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:20:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:20:47] [INFO] Checking activity reminders 
[2026-03-08 14:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:21:17] [INFO] Checking activity reminders 
[2026-03-08 14:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:21:47] [INFO] Checking activity reminders 
[2026-03-08 14:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:22:17] [INFO] Checking activity reminders 
[2026-03-08 14:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:22:48] [INFO] Checking activity reminders 
[2026-03-08 14:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:23:18] [INFO] Checking activity reminders 
[2026-03-08 14:23:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:23:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:23:48] [INFO] Checking activity reminders 
[2026-03-08 14:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:24:18] [INFO] Checking activity reminders 
[2026-03-08 14:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:24:48] [INFO] Checking activity reminders 
[2026-03-08 14:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:24:53] [INFO] Activity save request {"post_data":{"contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه فعلا تو این شرایط امکان واریز ندارم \r\nخودم بهتون اطلاع میدم ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-08 14:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:24:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-08 14:24:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-08 14:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:24:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11768","note_was_empty":true}
[2026-03-08 14:24:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"11768","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-08 14:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:24:54] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-03-08 14:24:54] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-03-08 14:24:54] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-03-08 14:24:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d72d59585d5.67909885","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-08 14:24:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ad557df39094.25347051","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-08 14:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:24:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69ad557df39094.25347051"}
[2026-03-08 14:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:24:54] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-03-08 14:24:54] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-03-08 14:24:54] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-03-08 14:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-03-08 14:25:18] [INFO] Checking activity reminders 
[2026-03-08 14:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:25:48] [INFO] Checking activity reminders 
[2026-03-08 14:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:26:18] [INFO] Checking activity reminders 
[2026-03-08 14:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:26:48] [INFO] Checking activity reminders 
[2026-03-08 14:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:27:18] [INFO] Checking activity reminders 
[2026-03-08 14:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:27:49] [INFO] Checking activity reminders 
[2026-03-08 14:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:28:19] [INFO] Checking activity reminders 
[2026-03-08 14:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:28:49] [INFO] Checking activity reminders 
[2026-03-08 14:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:29:02] [INFO] Checking activity reminders 
[2026-03-08 14:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 14:29:07] [INFO] Checking activity reminders 
[2026-03-08 14:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 14:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"check_reminders"}
[2026-03-08 15:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:17] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:18] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:18] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"check_reminders"}
[2026-03-08 15:14:18] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:21] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_products"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_deals"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_deals"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"get_deals"}
[2026-03-08 15:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"3pv6ie4ipphhia3s71f2toqs34","session_keys":[],"action":"log_client_event"}
[2026-03-08 15:14:38] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-08 15:14:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 15:15:09] [INFO] Checking activity reminders 
[2026-03-08 15:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:15:39] [INFO] Checking activity reminders 
[2026-03-08 15:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:16:09] [INFO] Checking activity reminders 
[2026-03-08 15:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:16:39] [INFO] Checking activity reminders 
[2026-03-08 15:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:17:09] [INFO] Checking activity reminders 
[2026-03-08 15:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:17:39] [INFO] Checking activity reminders 
[2026-03-08 15:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:18:09] [INFO] Checking activity reminders 
[2026-03-08 15:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:18:40] [INFO] Checking activity reminders 
[2026-03-08 15:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:19:10] [INFO] Checking activity reminders 
[2026-03-08 15:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:19:40] [INFO] Checking activity reminders 
[2026-03-08 15:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:20:10] [INFO] Checking activity reminders 
[2026-03-08 15:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:20:40] [INFO] Checking activity reminders 
[2026-03-08 15:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:21:10] [INFO] Checking activity reminders 
[2026-03-08 15:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:21:40] [INFO] Checking activity reminders 
[2026-03-08 15:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:22:10] [INFO] Checking activity reminders 
[2026-03-08 15:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:22:40] [INFO] Checking activity reminders 
[2026-03-08 15:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:23:10] [INFO] Checking activity reminders 
[2026-03-08 15:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:23:40] [INFO] Checking activity reminders 
[2026-03-08 15:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:24:11] [INFO] Checking activity reminders 
[2026-03-08 15:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:24:41] [INFO] Checking activity reminders 
[2026-03-08 15:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:25:11] [INFO] Checking activity reminders 
[2026-03-08 15:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:25:41] [INFO] Checking activity reminders 
[2026-03-08 15:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:26:11] [INFO] Checking activity reminders 
[2026-03-08 15:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:26:41] [INFO] Checking activity reminders 
[2026-03-08 15:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:34:32] [INFO] Checking activity reminders 
[2026-03-08 15:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:34:36] [INFO] Checking activity reminders 
[2026-03-08 15:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:35:06] [INFO] Checking activity reminders 
[2026-03-08 15:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:35:36] [INFO] Checking activity reminders 
[2026-03-08 15:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:37:07] [INFO] Checking activity reminders 
[2026-03-08 15:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:37:37] [INFO] Checking activity reminders 
[2026-03-08 15:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:38:07] [INFO] Checking activity reminders 
[2026-03-08 15:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:38:37] [INFO] Checking activity reminders 
[2026-03-08 15:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:42:24] [INFO] Checking activity reminders 
[2026-03-08 15:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:42:54] [INFO] Checking activity reminders 
[2026-03-08 15:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:43:24] [INFO] Checking activity reminders 
[2026-03-08 15:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:43:55] [INFO] Checking activity reminders 
[2026-03-08 15:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:44:25] [INFO] Checking activity reminders 
[2026-03-08 15:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:44:55] [INFO] Checking activity reminders 
[2026-03-08 15:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:45:25] [INFO] Checking activity reminders 
[2026-03-08 15:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:45:55] [INFO] Checking activity reminders 
[2026-03-08 15:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:46:25] [INFO] Checking activity reminders 
[2026-03-08 15:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:46:55] [INFO] Checking activity reminders 
[2026-03-08 15:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:47:25] [INFO] Checking activity reminders 
[2026-03-08 15:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:47:56] [INFO] Checking activity reminders 
[2026-03-08 15:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:48:26] [INFO] Checking activity reminders 
[2026-03-08 15:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:48:56] [INFO] Checking activity reminders 
[2026-03-08 15:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:49:26] [INFO] Checking activity reminders 
[2026-03-08 15:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:49:56] [INFO] Checking activity reminders 
[2026-03-08 15:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:50:26] [INFO] Checking activity reminders 
[2026-03-08 15:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:50:56] [INFO] Checking activity reminders 
[2026-03-08 15:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:51:26] [INFO] Checking activity reminders 
[2026-03-08 15:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:51:46] [INFO] Activity save request {"post_data":{"contact_id":"855","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ماشین وارد کرده \r\nگمرک تهران \/ خودرو جانبازی \r\nخیلی متضرر شده \r\nپرزنت مشاوره تلفنی با استاد ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-08 15:51:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:51:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-08 15:51:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-08 15:51:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:51:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"855","note_was_empty":true}
[2026-03-08 15:51:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"855","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-08 15:51:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ad69da548013.92964470","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-08 15:51:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:51:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69ad69da548013.92964470"}
[2026-03-08 15:51:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:51:46] [INFO] Updating virtual stage {"contact_id":"855","stage_name":"deal_registered","force":false}
[2026-03-08 15:51:46] [INFO] Virtual stage successfully saved {"contact_id":"855","stage_name":"deal_registered"}
[2026-03-08 15:51:46] [INFO] Virtual stage updated after activity save {"contact_id":"855"}
[2026-03-08 15:51:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"855","person_id":"20879"}
[2026-03-08 15:51:56] [INFO] Checking activity reminders 
[2026-03-08 15:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:52:27] [INFO] Checking activity reminders 
[2026-03-08 15:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:52:57] [INFO] Checking activity reminders 
[2026-03-08 15:52:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:52:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:53:27] [INFO] Checking activity reminders 
[2026-03-08 15:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:53:57] [INFO] Checking activity reminders 
[2026-03-08 15:53:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:53:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:54:27] [INFO] Checking activity reminders 
[2026-03-08 15:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:54:57] [INFO] Checking activity reminders 
[2026-03-08 15:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:55:27] [INFO] Checking activity reminders 
[2026-03-08 15:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:55:57] [INFO] Checking activity reminders 
[2026-03-08 15:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:56:27] [INFO] Checking activity reminders 
[2026-03-08 15:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:56:57] [INFO] Checking activity reminders 
[2026-03-08 15:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:57:28] [INFO] Checking activity reminders 
[2026-03-08 15:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:57:58] [INFO] Checking activity reminders 
[2026-03-08 15:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 15:58:28] [INFO] Checking activity reminders 
[2026-03-08 15:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 15:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:13:17] [INFO] Checking activity reminders 
[2026-03-08 16:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:13:48] [INFO] Checking activity reminders 
[2026-03-08 16:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:14:18] [INFO] Checking activity reminders 
[2026-03-08 16:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:14:48] [INFO] Checking activity reminders 
[2026-03-08 16:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:16:19] [INFO] Checking activity reminders 
[2026-03-08 16:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:16:49] [INFO] Checking activity reminders 
[2026-03-08 16:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:17:19] [INFO] Checking activity reminders 
[2026-03-08 16:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:17:49] [INFO] Checking activity reminders 
[2026-03-08 16:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:18:19] [INFO] Checking activity reminders 
[2026-03-08 16:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:18:49] [INFO] Checking activity reminders 
[2026-03-08 16:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:19:20] [INFO] Checking activity reminders 
[2026-03-08 16:19:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:19:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:19:50] [INFO] Checking activity reminders 
[2026-03-08 16:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:20:20] [INFO] Checking activity reminders 
[2026-03-08 16:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:20:50] [INFO] Checking activity reminders 
[2026-03-08 16:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:21:20] [INFO] Checking activity reminders 
[2026-03-08 16:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:21:50] [INFO] Checking activity reminders 
[2026-03-08 16:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:22:20] [INFO] Checking activity reminders 
[2026-03-08 16:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:22:50] [INFO] Checking activity reminders 
[2026-03-08 16:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:23:20] [INFO] Checking activity reminders 
[2026-03-08 16:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:23:50] [INFO] Checking activity reminders 
[2026-03-08 16:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:24:20] [INFO] Checking activity reminders 
[2026-03-08 16:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:24:51] [INFO] Checking activity reminders 
[2026-03-08 16:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:25:21] [INFO] Checking activity reminders 
[2026-03-08 16:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:25:51] [INFO] Checking activity reminders 
[2026-03-08 16:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:26:21] [INFO] Checking activity reminders 
[2026-03-08 16:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:26:51] [INFO] Checking activity reminders 
[2026-03-08 16:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:27:21] [INFO] Checking activity reminders 
[2026-03-08 16:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:27:51] [INFO] Checking activity reminders 
[2026-03-08 16:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:28:21] [INFO] Checking activity reminders 
[2026-03-08 16:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:28:51] [INFO] Checking activity reminders 
[2026-03-08 16:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:29:21] [INFO] Checking activity reminders 
[2026-03-08 16:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:29:52] [INFO] Checking activity reminders 
[2026-03-08 16:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:30:22] [INFO] Checking activity reminders 
[2026-03-08 16:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:30:52] [INFO] Checking activity reminders 
[2026-03-08 16:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:31:22] [INFO] Checking activity reminders 
[2026-03-08 16:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:31:52] [INFO] Checking activity reminders 
[2026-03-08 16:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:32:22] [INFO] Checking activity reminders 
[2026-03-08 16:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:32:52] [INFO] Checking activity reminders 
[2026-03-08 16:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:33:22] [INFO] Checking activity reminders 
[2026-03-08 16:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:40:48] [INFO] Checking activity reminders 
[2026-03-08 16:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:19] [INFO] Checking activity reminders 
[2026-03-08 16:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:20] [INFO] Checking activity reminders 
[2026-03-08 16:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:35] [INFO] Checking activity reminders 
[2026-03-08 16:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:36] [INFO] Checking activity reminders 
[2026-03-08 16:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:38] [INFO] Checking activity reminders 
[2026-03-08 16:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:41:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-08 16:42:08] [INFO] Checking activity reminders 
[2026-03-08 16:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:42:38] [INFO] Checking activity reminders 
[2026-03-08 16:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:43:07] [INFO] Checking activity reminders 
[2026-03-08 16:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:43:43] [INFO] Checking activity reminders 
[2026-03-08 16:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:43:44] [INFO] Checking activity reminders 
[2026-03-08 16:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:44:11] [INFO] Checking activity reminders 
[2026-03-08 16:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:44:13] [INFO] Checking activity reminders 
[2026-03-08 16:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:44:43] [INFO] Checking activity reminders 
[2026-03-08 16:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:45:13] [INFO] Checking activity reminders 
[2026-03-08 16:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:45:50] [INFO] Checking activity reminders 
[2026-03-08 16:45:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:45:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:46:02] [INFO] Checking activity reminders 
[2026-03-08 16:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:46:32] [INFO] Checking activity reminders 
[2026-03-08 16:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:47:02] [INFO] Checking activity reminders 
[2026-03-08 16:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:47:33] [INFO] Checking activity reminders 
[2026-03-08 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:47:33] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 16:47:33] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-08 16:47:33] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 16:48:03] [INFO] Checking activity reminders 
[2026-03-08 16:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:48:33] [INFO] Checking activity reminders 
[2026-03-08 16:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:48:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"2845","deal_id":"local_6953ae3b941344.43032898","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 16:48:47","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-08 16:48:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"2845","is_new_deal":false}
[2026-03-08 16:48:47] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-03-08 16:48:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-03-08 16:48:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-03-08 16:48:47] [INFO] getContactPrimaryPhone called {"contact_id":"2845"}
[2026-03-08 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-08 16:48:47] [INFO] getContactPrimaryPhone result {"contact_id":"2845","person_found":true,"primary_phone":"9107756002"}
[2026-03-08 16:48:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9107756002"}
[2026-03-08 16:48:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9107756002","contact_id":"2845","deal_id":"local_6953ae3b941344.43032898","is_new_deal":false,"incoming_title":"CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 16:48:47"}
[2026-03-08 16:48:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","existing_deal_found":true,"existing_contact_id":"2845","existing_title":"معامله چهارم 9107756002 | CIP، کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 16:48:47"}
[2026-03-08 16:48:47] [INFO] DealController.save validated payments {"deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-08 16:48:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2845","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 16:48:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6953ae3b941344.43032898","contact_didar_id":"2845","title":"معامله چهارم 9107756002 | CIP، کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9107756002","services_text":"CIP، کانال VIP با پشتیبانی","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":59000000,"payments_present":true,"requested_services":["CIP","کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حاجی لو","existing_deal":"YES","existing_deal_id":"local_6953ae3b941344.43032898","existing_deal_status":"Pending","server_time":"2026-03-08 16:48:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-08 16:48:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9107756002 | CIP، کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":59000000,"server_time":"2026-03-08 16:48:47","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-08 16:49:03] [INFO] Checking activity reminders 
[2026-03-08 16:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:49:14] [INFO] Checking activity reminders 
[2026-03-08 16:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:49:44] [INFO] Checking activity reminders 
[2026-03-08 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:50:14] [INFO] Checking activity reminders 
[2026-03-08 16:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:50:16] [INFO] Activity save request {"post_data":{"contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"طلا در 21 میلیون خریده \r\nبرای کانال cip  پرزنت \r\nبیعانه واریز 405\r\n","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-08 16:50:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16990","note_was_empty":true}
[2026-03-08 16:50:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"16990","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:16] [INFO] Updating virtual stage {"contact_id":"16990","stage_name":"deal_registered","force":false}
[2026-03-08 16:50:16] [INFO] Virtual stage successfully saved {"contact_id":"16990","stage_name":"deal_registered"}
[2026-03-08 16:50:16] [INFO] Virtual stage updated after activity save {"contact_id":"16990"}
[2026-03-08 16:50:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699acfc26ad3b8.32168488","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-08 16:50:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ad7790bdb4e0.23608440","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69ad7790bdb4e0.23608440"}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:16] [INFO] Updating virtual stage {"contact_id":"16990","stage_name":"deal_registered","force":false}
[2026-03-08 16:50:16] [INFO] Virtual stage successfully saved {"contact_id":"16990","stage_name":"deal_registered"}
[2026-03-08 16:50:16] [INFO] Virtual stage updated after activity save {"contact_id":"16990"}
[2026-03-08 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:50:45] [INFO] Checking activity reminders 
[2026-03-08 16:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:51:15] [INFO] Checking activity reminders 
[2026-03-08 16:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 16:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 16:51:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 16:51:19","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 16:51:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:51:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16990","is_new_deal":false}
[2026-03-08 16:51:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 16:51:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 16:51:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 16:51:19] [INFO] getContactPrimaryPhone called {"contact_id":"16990"}
[2026-03-08 16:51:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:51:19] [INFO] getContactPrimaryPhone result {"contact_id":"16990","person_found":true,"primary_phone":"9164871600"}
[2026-03-08 16:51:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9164871600"}
[2026-03-08 16:51:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9164871600","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 16:51:19"}
[2026-03-08 16:51:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","existing_deal_found":true,"existing_contact_id":"16990","existing_title":"معامله چهارم 9164871600 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 16:51:19"}
[2026-03-08 16:51:19] [INFO] DealController.save validated payments {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-08 16:51:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16990","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 16:51:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699acfc26ad3b8.32168488","contact_didar_id":"16990","title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9164871600","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"استخری","existing_deal":"YES","existing_deal_id":"local_699acfc26ad3b8.32168488","existing_deal_status":"Pending","server_time":"2026-03-08 16:51:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 16:51:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 16:51:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-03-08 16:51:19","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 16:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-08 17:04:38] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:04:38] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-08 17:04:38] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:07] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:07] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-08 17:06:07] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_products"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_leads"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:11] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:13] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:13] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:13] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"get_leads"}
[2026-03-08 17:06:13] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:13] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-08 17:06:20] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-08 17:06:20] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-08 17:06:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-08 17:06:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-08 17:06:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-08 17:06:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-08 17:06:51] [INFO] Checking activity reminders 
[2026-03-08 17:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:06:54] [INFO] Checking activity reminders 
[2026-03-08 17:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:07:01] [INFO] Checking activity reminders 
[2026-03-08 17:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:07:09] [INFO] Checking activity reminders 
[2026-03-08 17:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:07:10] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9122247201","09122247201"]}
[2026-03-08 17:07:10] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9122247201","09122247201"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-08 17:07:10] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9122247201","full_name":"لید جدید"}
[2026-03-08 17:07:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:07:10] [INFO] Notification created {"notification_id":"564","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-08 17:08:27] [INFO] Checking activity reminders 
[2026-03-08 17:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:45] [INFO] Lead update received {"contact_id":"local_69ad7b864525c5.13835638","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-08 17:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:45] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69ad7b864525c5.13835638"}
[2026-03-08 17:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:08:57] [INFO] Checking activity reminders 
[2026-03-08 17:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:09:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69ad7b864525c5.13835638","deal_id":"local_69ad7b864a1ec","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-08 17:09:21","session_id":"3pv6ie4ipphhia3s71f2toqs34"}
[2026-03-08 17:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:09:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69ad7b864525c5.13835638","is_new_deal":false}
[2026-03-08 17:09:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-08 17:09:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 17:09:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-08 17:09:21] [INFO] getContactPrimaryPhone called {"contact_id":"local_69ad7b864525c5.13835638"}
[2026-03-08 17:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:09:21] [INFO] getContactPrimaryPhone result {"contact_id":"local_69ad7b864525c5.13835638","person_found":true,"primary_phone":"9122247201"}
[2026-03-08 17:09:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122247201"}
[2026-03-08 17:09:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122247201","contact_id":"local_69ad7b864525c5.13835638","deal_id":"local_69ad7b864a1ec","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 17:09:21"}
[2026-03-08 17:09:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ad7b864a1ec","contact_id":"local_69ad7b864525c5.13835638","existing_deal_found":true,"existing_contact_id":"local_69ad7b864525c5.13835638","existing_title":"معامله اول 9122247201","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-08 17:09:21"}
[2026-03-08 17:09:21] [INFO] DealController.save validated payments {"deal_id":"local_69ad7b864a1ec","contact_id":"local_69ad7b864525c5.13835638","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-08 17:09:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69ad7b864525c5.13835638","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-08 17:09:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ad7b864a1ec","contact_didar_id":"local_69ad7b864525c5.13835638","title":"معامله اول 9122247201 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9122247201","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم طباطبایی","existing_deal":"YES","existing_deal_id":"local_69ad7b864a1ec","existing_deal_status":"Pending","server_time":"2026-03-08 17:09:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-08 17:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:09:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ad7b864a1ec","contact_id":"local_69ad7b864525c5.13835638","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9122247201 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-08 17:09:21","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-08 17:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:09:27] [INFO] Checking activity reminders 
[2026-03-08 17:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:09:57] [INFO] Checking activity reminders 
[2026-03-08 17:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:10:25] [INFO] Activity save request {"post_data":{"contact_id":"local_69ad7b864525c5.13835638","deal_id":"local_69ad7b864a1ec","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"1 ساله دنبال \r\nمتاهل\r\nدر طلای فیزیکی و عیار سرمایه \r\nد رکانال عمومی استاد پیکگیری \r\n700 م نقد \/ وام \r\nپرزنت 405 \/ پشتیبانی با استاد \r\nمشورت با همسر \r\nپیامک ارسال ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-08 17:10:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69ad7b864525c5.13835638","note_was_empty":true}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:25] [INFO] Updating virtual stage {"contact_id":"local_69ad7b864525c5.13835638","stage_name":"new","force":false}
[2026-03-08 17:10:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69ad7b864525c5.13835638","stage_name":"new"}
[2026-03-08 17:10:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69ad7b864525c5.13835638"}
[2026-03-08 17:10:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ad7b864a1ec","stage":"تماس پیگیری","status_change":null}
[2026-03-08 17:10:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ad7c49b3e1c5.50794305","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69ad7c49b3e1c5.50794305"}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:25] [INFO] Updating virtual stage {"contact_id":"local_69ad7b864525c5.13835638","stage_name":"deal_registered","force":false}
[2026-03-08 17:10:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69ad7b864525c5.13835638","stage_name":"deal_registered"}
[2026-03-08 17:10:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69ad7b864525c5.13835638"}
[2026-03-08 17:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ad7b864525c5.13835638","person_id":"21821"}
[2026-03-08 17:10:28] [INFO] Checking activity reminders 
[2026-03-08 17:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:17:22] [INFO] Checking activity reminders 
[2026-03-08 17:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:17:52] [INFO] Checking activity reminders 
[2026-03-08 17:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:18:22] [INFO] Checking activity reminders 
[2026-03-08 17:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:18:52] [INFO] Checking activity reminders 
[2026-03-08 17:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-08 17:19:23] [INFO] Checking activity reminders 
[2026-03-08 17:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-08 17:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-09 09:47:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 09:47:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 09:47:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:05:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:05:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:05:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:08:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:08:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:08:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:15:59] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:15:59] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:15:59] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:30:50] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:30:50] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:30:50] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:30:54] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:30:54] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:30:54] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 11:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 11:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 12:52:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 12:52:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 12:52:34] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:19:42] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:19:42] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 13:19:42] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:20:05] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:20:05] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 13:20:05] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:30:36] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 13:30:36] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:30:36] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:30:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-09 13:30:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"check_reminders"}
[2026-03-09 13:30:41] [WARNING] Auth check failed - not authenticated {"session_id":"9kob7e508acr04kt4380qre8pd","session_keys":[],"action":"log_client_event"}
[2026-03-10 22:02:13] [WARNING] Auth check failed - not authenticated {"session_id":"78ab0m75df68lbm1di34gllkht","session_keys":[],"action":"log_client_event"}
[2026-03-10 22:02:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-10 22:02:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-10 22:02:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:02:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:02:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:02:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:02:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:02:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:02:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:02:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:02:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:02:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:02:44] [INFO] Checking activity reminders 
[2026-03-10 22:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:03:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:03:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:03:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:03:14] [INFO] Checking activity reminders 
[2026-03-10 22:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:03:28] [INFO] Checking activity reminders 
[2026-03-10 22:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:04:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:04:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:04:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:04:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:04:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:04:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:04:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:04:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:05:28] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-10 22:05:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:05:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:05:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:05:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:05:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:05:59] [INFO] Checking activity reminders 
[2026-03-10 22:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:06:29] [INFO] Checking activity reminders 
[2026-03-10 22:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:06:59] [INFO] Checking activity reminders 
[2026-03-10 22:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:07:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-10 22:07:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-10 22:07:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-10 22:07:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-10 22:26:21] [INFO] Checking activity reminders 
[2026-03-10 22:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-10 22:26:52] [INFO] Checking activity reminders 
[2026-03-10 22:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-10 22:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:45:22] [WARNING] Auth check failed - not authenticated {"session_id":"78ab0m75df68lbm1di34gllkht","session_keys":[],"action":"log_client_event"}
[2026-03-11 02:45:22] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-03-11 02:45:46] [WARNING] Auth check failed - not authenticated {"session_id":"78ab0m75df68lbm1di34gllkht","session_keys":[],"action":"log_client_event"}
[2026-03-11 02:45:46] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 02:45:46] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 02:45:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 02:45:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 02:45:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 02:45:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 02:46:13] [INFO] Checking activity reminders 
[2026-03-11 02:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:46:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:46:43] [INFO] Checking activity reminders 
[2026-03-11 02:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:47:13] [INFO] Checking activity reminders 
[2026-03-11 02:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:47:46] [INFO] Checking activity reminders 
[2026-03-11 02:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:48:17] [INFO] Checking activity reminders 
[2026-03-11 02:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:48:47] [INFO] Checking activity reminders 
[2026-03-11 02:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:49:17] [INFO] Checking activity reminders 
[2026-03-11 02:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:49:47] [INFO] Checking activity reminders 
[2026-03-11 02:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:50:17] [INFO] Checking activity reminders 
[2026-03-11 02:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:50:48] [INFO] Checking activity reminders 
[2026-03-11 02:50:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:50:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:51:18] [INFO] Checking activity reminders 
[2026-03-11 02:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:52:23] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 02:52:23] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 02:52:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 02:52:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 02:52:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:52:54] [INFO] Checking activity reminders 
[2026-03-11 02:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:52:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:52:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:52:59] [INFO] generateDealTitle result {"contact_id":"5059","person_name":"رجبی","mobile":"9393020727","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9393020727"}
[2026-03-11 02:53:24] [INFO] Checking activity reminders 
[2026-03-11 02:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:53:54] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5059","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 02:53:54","session_id":"78ab0m75df68lbm1di34gllkht"}
[2026-03-11 02:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:53:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5059","is_new_deal":true}
[2026-03-11 02:53:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 02:53:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:53:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:53:54] [INFO] getContactPrimaryPhone called {"contact_id":"5059"}
[2026-03-11 02:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:53:54] [INFO] getContactPrimaryPhone result {"contact_id":"5059","person_found":true,"primary_phone":"9393020727"}
[2026-03-11 02:53:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393020727"}
[2026-03-11 02:53:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393020727","contact_id":"5059","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 02:53:54"}
[2026-03-11 02:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:53:54] [INFO] generateDealTitle result {"contact_id":"5059","person_name":"رجبی","mobile":"9393020727","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9393020727"}
[2026-03-11 02:53:54] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5059","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 02:53:54] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5059","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 02:53:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5059","title":"معامله سوم 9393020727 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9393020727","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رجبی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 02:53:54","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 02:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:53:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 02:53:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5059","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9393020727 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 02:53:54","ip_address":"46.41.250.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 02:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-11 02:53:56] [INFO] Checking activity reminders 
[2026-03-11 02:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:54:26] [INFO] Checking activity reminders 
[2026-03-11 02:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:54:56] [INFO] Checking activity reminders 
[2026-03-11 02:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:55:26] [INFO] Checking activity reminders 
[2026-03-11 02:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:56:04] [INFO] Checking activity reminders 
[2026-03-11 02:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:56:34] [INFO] Checking activity reminders 
[2026-03-11 02:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:56:47] [INFO] Checking activity reminders 
[2026-03-11 02:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:06] [INFO] generateDealTitle result {"contact_id":"15094","person_name":"آقای رستمی","mobile":"9113760141","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9113760141"}
[2026-03-11 02:57:17] [INFO] Checking activity reminders 
[2026-03-11 02:57:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:57:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:57:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15094","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 02:57:36","session_id":"78ab0m75df68lbm1di34gllkht"}
[2026-03-11 02:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15094","is_new_deal":true}
[2026-03-11 02:57:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 02:57:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:57:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:57:36] [INFO] getContactPrimaryPhone called {"contact_id":"15094"}
[2026-03-11 02:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:36] [INFO] getContactPrimaryPhone result {"contact_id":"15094","person_found":true,"primary_phone":"9113760141"}
[2026-03-11 02:57:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760141"}
[2026-03-11 02:57:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760141","contact_id":"15094","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 02:57:36"}
[2026-03-11 02:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:36] [INFO] generateDealTitle result {"contact_id":"15094","person_name":"آقای رستمی","mobile":"9113760141","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9113760141"}
[2026-03-11 02:57:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15094","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 02:57:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15094","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 02:57:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15094","title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9113760141","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای رستمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 02:57:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 02:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:57:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 02:57:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15094","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 02:57:36","ip_address":"46.41.250.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 02:57:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-11 02:58:06] [INFO] Checking activity reminders 
[2026-03-11 02:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:23] [INFO] generateDealTitle result {"contact_id":"1743","person_name":"خدابخش","mobile":"9396157682","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9396157682"}
[2026-03-11 02:58:36] [INFO] Checking activity reminders 
[2026-03-11 02:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 02:58:51] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1743","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 02:58:51","session_id":"78ab0m75df68lbm1di34gllkht"}
[2026-03-11 02:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1743","is_new_deal":true}
[2026-03-11 02:58:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 02:58:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:58:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 02:58:51] [INFO] getContactPrimaryPhone called {"contact_id":"1743"}
[2026-03-11 02:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:51] [INFO] getContactPrimaryPhone result {"contact_id":"1743","person_found":true,"primary_phone":"9396157682"}
[2026-03-11 02:58:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396157682"}
[2026-03-11 02:58:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396157682","contact_id":"1743","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 02:58:51"}
[2026-03-11 02:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:51] [INFO] generateDealTitle result {"contact_id":"1743","person_name":"خدابخش","mobile":"9396157682","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9396157682"}
[2026-03-11 02:58:51] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1743","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 02:58:51] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1743","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 02:58:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1743","title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9396157682","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خدابخش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 02:58:51","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 02:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:58:51] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 02:58:51] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1743","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 02:58:51","ip_address":"46.41.250.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 02:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-11 02:59:11] [INFO] Checking activity reminders 
[2026-03-11 02:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 02:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 09:35:03] [WARNING] Auth check failed - not authenticated {"session_id":"h56o3thhftsssofk4e7rl743kj","session_keys":[],"action":"log_client_event"}
[2026-03-11 09:35:04] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-11 09:35:07] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-11 09:35:09] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-11 09:35:11] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-11 09:35:11] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-11 09:35:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 09:35:43] [INFO] Checking activity reminders 
[2026-03-11 09:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 09:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 09:36:13] [INFO] Checking activity reminders 
[2026-03-11 09:36:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 09:36:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 09:36:43] [INFO] Checking activity reminders 
[2026-03-11 09:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 09:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 09:37:14] [INFO] Checking activity reminders 
[2026-03-11 09:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 09:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 09:38:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 11:03:53] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:03:53] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-11 11:03:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 11:04:24] [INFO] Checking activity reminders 
[2026-03-11 11:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 11:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 11:04:54] [INFO] Checking activity reminders 
[2026-03-11 11:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 11:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 11:39:04] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:04] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"check_reminders"}
[2026-03-11 11:39:04] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:08] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:09] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:09] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:09] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"get_products"}
[2026-03-11 11:39:09] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"get_leads"}
[2026-03-11 11:39:09] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:10] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:10] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:10] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:10] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:11] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:11] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:11] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"get_leads"}
[2026-03-11 11:39:11] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:15] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:16] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:16] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:17] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:25] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:25] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"check_reminders"}
[2026-03-11 11:39:25] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:28] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:28] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:29] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:30] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:30] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:31] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:32] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:32] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:32] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:32] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"get_leads"}
[2026-03-11 11:39:32] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:33] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:35] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:35] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 11:39:35] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"get_leads"}
[2026-03-11 11:39:35] [WARNING] Auth check failed - not authenticated {"session_id":"cjbgcvbj2361f397dlcsorucl0","session_keys":[],"action":"log_client_event"}
[2026-03-11 13:32:14] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-11 13:32:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 13:32:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-03-11 13:32:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-03-11 13:32:45] [INFO] Checking activity reminders 
[2026-03-11 13:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 13:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 13:32:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-03-11 13:32:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-03-11 13:33:15] [INFO] Checking activity reminders 
[2026-03-11 13:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 13:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:21:36] [WARNING] Auth check failed - not authenticated {"session_id":"nmavvjivdpbtfu1s80kkltace2","session_keys":[],"action":"log_client_event"}
[2026-03-11 17:21:36] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 17:21:36] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 17:21:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 17:21:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 17:21:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 17:21:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 17:22:07] [INFO] Checking activity reminders 
[2026-03-11 17:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:22:37] [INFO] Checking activity reminders 
[2026-03-11 17:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:24:07] [INFO] Checking activity reminders 
[2026-03-11 17:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:24:20] [INFO] Checking activity reminders 
[2026-03-11 17:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:24:36] [INFO] Checking activity reminders 
[2026-03-11 17:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:24:52] [INFO] Checking activity reminders 
[2026-03-11 17:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:25:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:08] [INFO] generateDealTitle result {"contact_id":"5334","person_name":"فرشید کیهانی","mobile":"9033577801","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9033577801"}
[2026-03-11 17:25:22] [INFO] Checking activity reminders 
[2026-03-11 17:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:25:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5334","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 17:25:41","session_id":"nmavvjivdpbtfu1s80kkltace2"}
[2026-03-11 17:25:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5334","is_new_deal":true}
[2026-03-11 17:25:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 17:25:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:25:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:25:41] [INFO] getContactPrimaryPhone called {"contact_id":"5334"}
[2026-03-11 17:25:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:41] [INFO] getContactPrimaryPhone result {"contact_id":"5334","person_found":true,"primary_phone":"9033577801"}
[2026-03-11 17:25:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9033577801"}
[2026-03-11 17:25:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9033577801","contact_id":"5334","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 17:25:41"}
[2026-03-11 17:25:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:41] [INFO] generateDealTitle result {"contact_id":"5334","person_name":"فرشید کیهانی","mobile":"9033577801","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9033577801"}
[2026-03-11 17:25:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5334","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 17:25:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5334","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 17:25:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5334","title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9033577801","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرشید کیهانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 17:25:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 17:25:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:25:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 17:25:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5334","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 17:25:41","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 17:25:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-11 17:26:25] [INFO] Checking activity reminders 
[2026-03-11 17:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:26:47] [INFO] generateDealTitle result {"contact_id":"21218","person_name":"اقای خان بانی","mobile":"9131066469","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131066469"}
[2026-03-11 17:26:55] [INFO] Checking activity reminders 
[2026-03-11 17:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:27:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21218","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 17:27:12","session_id":"nmavvjivdpbtfu1s80kkltace2"}
[2026-03-11 17:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:27:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21218","is_new_deal":true}
[2026-03-11 17:27:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 17:27:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:27:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:27:12] [INFO] getContactPrimaryPhone called {"contact_id":"21218"}
[2026-03-11 17:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:27:12] [INFO] getContactPrimaryPhone result {"contact_id":"21218","person_found":true,"primary_phone":"9131066469"}
[2026-03-11 17:27:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131066469"}
[2026-03-11 17:27:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131066469","contact_id":"21218","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 17:27:12"}
[2026-03-11 17:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:27:12] [INFO] generateDealTitle result {"contact_id":"21218","person_name":"اقای خان بانی","mobile":"9131066469","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131066469"}
[2026-03-11 17:27:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21218","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 17:27:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21218","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 17:27:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21218","title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131066469","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای خان بانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 17:27:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 17:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:27:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 17:27:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21218","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 17:27:12","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 17:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-11 17:27:32] [INFO] Checking activity reminders 
[2026-03-11 17:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:27:53] [INFO] Checking activity reminders 
[2026-03-11 17:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:28:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:09] [INFO] generateDealTitle result {"contact_id":"17366","person_name":"جعفری","mobile":"9921093400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9921093400"}
[2026-03-11 17:28:24] [INFO] Checking activity reminders 
[2026-03-11 17:28:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:28:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:28:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17366","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 17:28:50","session_id":"nmavvjivdpbtfu1s80kkltace2"}
[2026-03-11 17:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17366","is_new_deal":true}
[2026-03-11 17:28:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 17:28:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:28:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:28:50] [INFO] getContactPrimaryPhone called {"contact_id":"17366"}
[2026-03-11 17:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:50] [INFO] getContactPrimaryPhone result {"contact_id":"17366","person_found":true,"primary_phone":"9921093400"}
[2026-03-11 17:28:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9921093400"}
[2026-03-11 17:28:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9921093400","contact_id":"17366","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 17:28:50"}
[2026-03-11 17:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:50] [INFO] generateDealTitle result {"contact_id":"17366","person_name":"جعفری","mobile":"9921093400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9921093400"}
[2026-03-11 17:28:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17366","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 17:28:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"17366","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 17:28:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17366","title":"معامله دوم 9921093400 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9921093400","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جعفری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 17:28:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 17:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:28:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 17:28:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17366","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9921093400 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 17:28:50","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 17:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-11 17:29:04] [INFO] Checking activity reminders 
[2026-03-11 17:29:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:29:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:29:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:26] [INFO] generateDealTitle result {"contact_id":"1008","person_name":"شریفی","mobile":"9138578190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138578190"}
[2026-03-11 17:29:34] [INFO] Checking activity reminders 
[2026-03-11 17:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 17:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 17:29:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1008","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 17:29:49","session_id":"nmavvjivdpbtfu1s80kkltace2"}
[2026-03-11 17:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1008","is_new_deal":true}
[2026-03-11 17:29:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 17:29:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:29:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 17:29:49] [INFO] getContactPrimaryPhone called {"contact_id":"1008"}
[2026-03-11 17:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:49] [INFO] getContactPrimaryPhone result {"contact_id":"1008","person_found":true,"primary_phone":"9138578190"}
[2026-03-11 17:29:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138578190"}
[2026-03-11 17:29:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138578190","contact_id":"1008","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 17:29:49"}
[2026-03-11 17:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:49] [INFO] generateDealTitle result {"contact_id":"1008","person_name":"شریفی","mobile":"9138578190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138578190"}
[2026-03-11 17:29:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1008","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 17:29:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1008","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 17:29:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1008","title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138578190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شریفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 17:29:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 17:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 17:29:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 17:29:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1008","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 17:29:49","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-11 17:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-11 20:30:19] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 20:30:19] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 20:30:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:30:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:30:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:30:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:30:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:30:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:30:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:30:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:30:51] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["1245649494"]}
[2026-03-11 20:30:51] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["1245649494"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-11 20:30:51] [INFO] Didar write disabled; creating local lead only {"owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","mobile":"1245649494","full_name":"لید جدید"}
[2026-03-11 20:30:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-11 20:30:51] [INFO] Notification created {"notification_id":"565","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"lead_assigned","show_popup":true}
[2026-03-11 20:31:21] [INFO] Checking activity reminders 
[2026-03-11 20:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:32:06] [INFO] Checking activity reminders 
[2026-03-11 20:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:32:36] [INFO] Checking activity reminders 
[2026-03-11 20:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:32:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:32:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:32:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:32:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:32:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d889d2a6f81.91701468","person_id":"21793"}
[2026-03-11 20:32:58] [INFO] Checking activity reminders 
[2026-03-11 20:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:33:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:33:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:33:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:33:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:57:16] [WARNING] Auth check failed - not authenticated {"session_id":"724tt1gs81pvt6hkt7j7bhprtp","session_keys":[],"action":"log_client_event"}
[2026-03-11 20:57:16] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 20:57:16] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 20:57:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:57:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:57:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:57:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:57:47] [INFO] Checking activity reminders 
[2026-03-11 20:57:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:57:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:57:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:57:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:57:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:57:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:57:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:57:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:57:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:57:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:58:39] [INFO] Checking activity reminders 
[2026-03-11 20:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:58:47] [INFO] Checking activity reminders 
[2026-03-11 20:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:58:55] [INFO] Checking activity reminders 
[2026-03-11 20:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:59:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 20:59:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:59:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:59:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 20:59:25] [INFO] Checking activity reminders 
[2026-03-11 20:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 20:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 20:59:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 20:59:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 20:59:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 21:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"check_reminders"}
[2026-03-11 21:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:05:11] [INFO] Checking activity reminders 
[2026-03-11 21:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:05:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 21:05:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 21:05:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 21:05:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 21:07:25] [INFO] Checking activity reminders 
[2026-03-11 21:07:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:07:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:07:55] [INFO] Checking activity reminders 
[2026-03-11 21:07:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:07:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:08:09] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9181074961","09181074961"]}
[2026-03-11 21:08:09] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9181074961","09181074961"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-11 21:08:09] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9181074961","full_name":"لید جدید"}
[2026-03-11 21:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-11 21:08:09] [INFO] Notification created {"notification_id":"566","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-11 21:08:53] [INFO] Checking activity reminders 
[2026-03-11 21:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:09:15] [INFO] Checking activity reminders 
[2026-03-11 21:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:23] [INFO] generateDealTitle result {"contact_id":"15989","person_name":"محمد رسول ایمانی","mobile":"9121914101","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121914101"}
[2026-03-11 21:09:46] [INFO] Checking activity reminders 
[2026-03-11 21:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:09:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15989","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:09:47","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15989","is_new_deal":true}
[2026-03-11 21:09:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:09:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:09:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:09:47] [INFO] getContactPrimaryPhone called {"contact_id":"15989"}
[2026-03-11 21:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:47] [INFO] getContactPrimaryPhone result {"contact_id":"15989","person_found":true,"primary_phone":"9121914101"}
[2026-03-11 21:09:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121914101"}
[2026-03-11 21:09:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121914101","contact_id":"15989","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:09:47"}
[2026-03-11 21:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:47] [INFO] generateDealTitle result {"contact_id":"15989","person_name":"محمد رسول ایمانی","mobile":"9121914101","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121914101"}
[2026-03-11 21:09:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15989","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:09:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"15989","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:09:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15989","title":"معامله دوم 9121914101 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121914101","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"محمد رسول ایمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:09:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:09:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:09:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15989","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121914101 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:09:47","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:09:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-11 21:10:16] [INFO] Checking activity reminders 
[2026-03-11 21:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:10:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-11 21:10:47] [INFO] Checking activity reminders 
[2026-03-11 21:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:11:23] [INFO] Checking activity reminders 
[2026-03-11 21:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:13:22] [INFO] Checking activity reminders 
[2026-03-11 21:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:13:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:13:53] [INFO] Checking activity reminders 
[2026-03-11 21:13:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:13:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:13:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:13:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:13:53] [INFO] generateDealTitle result {"contact_id":"9282","person_name":"امیررضا ناظری","mobile":"9123645496","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9123645496"}
[2026-03-11 21:14:23] [INFO] Checking activity reminders 
[2026-03-11 21:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:14:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9282","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:14:36","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:14:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:14:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9282","is_new_deal":true}
[2026-03-11 21:14:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:14:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:14:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:14:36] [INFO] getContactPrimaryPhone called {"contact_id":"9282"}
[2026-03-11 21:14:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:14:36] [INFO] getContactPrimaryPhone result {"contact_id":"9282","person_found":true,"primary_phone":"9123645496"}
[2026-03-11 21:14:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123645496"}
[2026-03-11 21:14:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123645496","contact_id":"9282","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:14:36"}
[2026-03-11 21:14:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:14:36] [INFO] generateDealTitle result {"contact_id":"9282","person_name":"امیررضا ناظری","mobile":"9123645496","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9123645496"}
[2026-03-11 21:14:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9282","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:14:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9282","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:14:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9282","title":"معامله چهارم 9123645496 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9123645496","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیررضا ناظری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:14:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:14:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:14:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:14:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9282","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9123645496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:14:36","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:14:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-11 21:14:55] [INFO] Checking activity reminders 
[2026-03-11 21:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:15:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:11] [INFO] generateDealTitle result {"contact_id":"9555","person_name":"زهره جواهر پور","mobile":"9121210391","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121210391"}
[2026-03-11 21:15:25] [INFO] Checking activity reminders 
[2026-03-11 21:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:15:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9555","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:15:35","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9555","is_new_deal":true}
[2026-03-11 21:15:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:15:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:15:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:15:35] [INFO] getContactPrimaryPhone called {"contact_id":"9555"}
[2026-03-11 21:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:35] [INFO] getContactPrimaryPhone result {"contact_id":"9555","person_found":true,"primary_phone":"9121210391"}
[2026-03-11 21:15:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121210391"}
[2026-03-11 21:15:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121210391","contact_id":"9555","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:15:35"}
[2026-03-11 21:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:35] [INFO] generateDealTitle result {"contact_id":"9555","person_name":"زهره جواهر پور","mobile":"9121210391","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121210391"}
[2026-03-11 21:15:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9555","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:15:35] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9555","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:15:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9555","title":"معامله دوم 9121210391 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121210391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"زهره جواهر پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:15:35","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:15:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9555","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121210391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:15:35","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-11 21:15:50] [INFO] Checking activity reminders 
[2026-03-11 21:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:15:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-11 21:16:21] [INFO] Checking activity reminders 
[2026-03-11 21:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:16:42] [INFO] Checking activity reminders 
[2026-03-11 21:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:18:37] [INFO] Checking activity reminders 
[2026-03-11 21:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:19:01] [INFO] Checking activity reminders 
[2026-03-11 21:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:19:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-11 21:19:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:19:29] [INFO] Checking activity reminders 
[2026-03-11 21:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:19:46] [INFO] generateDealTitle result {"contact_id":"21241","person_name":"حسین شعبانی","mobile":"9398624795","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9398624795"}
[2026-03-11 21:19:59] [INFO] Checking activity reminders 
[2026-03-11 21:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:20:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21241","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:20:14","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:20:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21241","is_new_deal":true}
[2026-03-11 21:20:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:20:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:20:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:20:14] [INFO] getContactPrimaryPhone called {"contact_id":"21241"}
[2026-03-11 21:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:20:14] [INFO] getContactPrimaryPhone result {"contact_id":"21241","person_found":true,"primary_phone":"9398624795"}
[2026-03-11 21:20:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9398624795"}
[2026-03-11 21:20:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9398624795","contact_id":"21241","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:20:14"}
[2026-03-11 21:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:20:14] [INFO] generateDealTitle result {"contact_id":"21241","person_name":"حسین شعبانی","mobile":"9398624795","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9398624795"}
[2026-03-11 21:20:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21241","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:20:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21241","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:20:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21241","title":"معامله دوم 9398624795 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9398624795","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین شعبانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:20:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:20:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:20:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21241","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9398624795 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:20:14","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-11 21:20:30] [INFO] Checking activity reminders 
[2026-03-11 21:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21533","person_id":"4142"}
[2026-03-11 21:20:48] [INFO] Checking activity reminders 
[2026-03-11 21:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:21:04] [INFO] Checking activity reminders 
[2026-03-11 21:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:22:11] [INFO] Checking activity reminders 
[2026-03-11 21:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:22:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:25] [INFO] generateDealTitle result {"contact_id":"3739","person_name":"رضا شیخ","mobile":"9120978699","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120978699"}
[2026-03-11 21:22:41] [INFO] Checking activity reminders 
[2026-03-11 21:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:22:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3739","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:22:53","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3739","is_new_deal":true}
[2026-03-11 21:22:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:22:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:22:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:22:53] [INFO] getContactPrimaryPhone called {"contact_id":"3739"}
[2026-03-11 21:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:53] [INFO] getContactPrimaryPhone result {"contact_id":"3739","person_found":true,"primary_phone":"9120978699"}
[2026-03-11 21:22:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120978699"}
[2026-03-11 21:22:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120978699","contact_id":"3739","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:22:53"}
[2026-03-11 21:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:53] [INFO] generateDealTitle result {"contact_id":"3739","person_name":"رضا شیخ","mobile":"9120978699","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120978699"}
[2026-03-11 21:22:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3739","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:22:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3739","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:22:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3739","title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120978699","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا شیخ","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:22:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:22:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:22:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3739","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:22:53","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-11 21:23:16] [INFO] Checking activity reminders 
[2026-03-11 21:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:30] [INFO] generateDealTitle result {"contact_id":"7841","person_name":"موسوی موسوی","mobile":"9144233512","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144233512"}
[2026-03-11 21:23:46] [INFO] Checking activity reminders 
[2026-03-11 21:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:23:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7841","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-11 21:23:52","session_id":"724tt1gs81pvt6hkt7j7bhprtp"}
[2026-03-11 21:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7841","is_new_deal":true}
[2026-03-11 21:23:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-11 21:23:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:23:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-11 21:23:52] [INFO] getContactPrimaryPhone called {"contact_id":"7841"}
[2026-03-11 21:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:52] [INFO] getContactPrimaryPhone result {"contact_id":"7841","person_found":true,"primary_phone":"9144233512"}
[2026-03-11 21:23:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144233512"}
[2026-03-11 21:23:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144233512","contact_id":"7841","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-11 21:23:52"}
[2026-03-11 21:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:52] [INFO] generateDealTitle result {"contact_id":"7841","person_name":"موسوی موسوی","mobile":"9144233512","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144233512"}
[2026-03-11 21:23:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7841","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-11 21:23:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7841","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-11 21:23:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7841","title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144233512","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"موسوی موسوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-11 21:23:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-11 21:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:23:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-11 21:23:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7841","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-11 21:23:52","ip_address":"46.41.247.109","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-11 21:23:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-11 21:33:17] [INFO] Checking activity reminders 
[2026-03-11 21:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:33:48] [INFO] Checking activity reminders 
[2026-03-11 21:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:34:18] [INFO] Checking activity reminders 
[2026-03-11 21:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:34:43] [WARNING] Auth check failed - not authenticated {"session_id":"bn9b21k4pm8utql6c3ro7f9ipl","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:34:43] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-11 21:34:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 21:34:48] [INFO] Checking activity reminders 
[2026-03-11 21:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:35:13] [INFO] Checking activity reminders 
[2026-03-11 21:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:35:18] [INFO] Checking activity reminders 
[2026-03-11 21:35:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:35:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:35:43] [INFO] Checking activity reminders 
[2026-03-11 21:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:35:48] [INFO] Checking activity reminders 
[2026-03-11 21:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:36:14] [INFO] Checking activity reminders 
[2026-03-11 21:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:36:44] [INFO] Checking activity reminders 
[2026-03-11 21:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:37:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"get_person_profile"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"check_reminders"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:54] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"get_lookup_groups"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:57] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:37:59] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"get_products"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"get_leads"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:01] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"d7j6kfuhrj0c2d313ctlb45mnh","session_keys":[],"action":"log_client_event"}
[2026-03-11 21:38:09] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-11 21:38:09] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-11 21:38:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-11 21:38:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-11 21:38:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-11 21:38:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 21:38:31] [INFO] Checking activity reminders 
[2026-03-11 21:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:43:51] [INFO] Checking activity reminders 
[2026-03-11 21:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:44:22] [INFO] Checking activity reminders 
[2026-03-11 21:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:44:49] [INFO] Checking activity reminders 
[2026-03-11 21:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:45:20] [INFO] Checking activity reminders 
[2026-03-11 21:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:45:30] [INFO] Checking activity reminders 
[2026-03-11 21:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:45:50] [INFO] Checking activity reminders 
[2026-03-11 21:45:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:45:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:46:20] [INFO] Checking activity reminders 
[2026-03-11 21:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:46:51] [INFO] Checking activity reminders 
[2026-03-11 21:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:47:21] [INFO] Checking activity reminders 
[2026-03-11 21:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:47:51] [INFO] Checking activity reminders 
[2026-03-11 21:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:48:22] [INFO] Checking activity reminders 
[2026-03-11 21:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:54:10] [INFO] Checking activity reminders 
[2026-03-11 21:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 21:56:47] [INFO] Checking activity reminders 
[2026-03-11 21:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 21:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 23:05:14] [WARNING] Auth check failed - not authenticated {"session_id":"9e87kn1rt8jjnm6f6hlsqkmcve","session_keys":[],"action":"log_client_event"}
[2026-03-11 23:05:15] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-11 23:05:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-11 23:05:45] [INFO] Checking activity reminders 
[2026-03-11 23:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 23:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-11 23:06:15] [INFO] Checking activity reminders 
[2026-03-11 23:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-11 23:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:28:25] [WARNING] Auth check failed - not authenticated {"session_id":"bhc74aff3k9t64v770s8pn3a2f","session_keys":[],"action":"log_client_event"}
[2026-03-12 14:28:25] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-12 14:28:25] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-12 14:28:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 14:28:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-12 14:28:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-12 14:28:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-12 14:29:54] [INFO] Checking activity reminders 
[2026-03-12 14:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:34:52] [WARNING] Auth check failed - not authenticated {"session_id":"80opcohlr736huddh1o61kak6v","session_keys":[],"action":"log_client_event"}
[2026-03-12 14:34:53] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-12 14:34:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 14:37:53] [INFO] Checking activity reminders 
[2026-03-12 14:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:38:15] [INFO] Checking activity reminders 
[2026-03-12 14:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:38:24] [INFO] Checking activity reminders 
[2026-03-12 14:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:38:29] [INFO] Checking activity reminders 
[2026-03-12 14:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:38:59] [INFO] Checking activity reminders 
[2026-03-12 14:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:39:32] [INFO] Checking activity reminders 
[2026-03-12 14:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:39:48] [INFO] Checking activity reminders 
[2026-03-12 14:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:40:16] [INFO] Checking activity reminders 
[2026-03-12 14:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:42:16] [INFO] Checking activity reminders 
[2026-03-12 14:42:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:42:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:42:42] [INFO] Checking activity reminders 
[2026-03-12 14:42:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:42:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:43:28] [INFO] Checking activity reminders 
[2026-03-12 14:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:44:01] [INFO] Checking activity reminders 
[2026-03-12 14:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:44:31] [INFO] Checking activity reminders 
[2026-03-12 14:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:45:28] [INFO] Checking activity reminders 
[2026-03-12 14:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:45:58] [INFO] Checking activity reminders 
[2026-03-12 14:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:46:29] [INFO] Checking activity reminders 
[2026-03-12 14:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:58:33] [INFO] Checking activity reminders 
[2026-03-12 14:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 14:59:03] [INFO] Checking activity reminders 
[2026-03-12 14:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 14:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:01:22] [INFO] Checking activity reminders 
[2026-03-12 15:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:01:52] [INFO] Checking activity reminders 
[2026-03-12 15:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:02:23] [INFO] Checking activity reminders 
[2026-03-12 15:02:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:02:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:02:53] [INFO] Checking activity reminders 
[2026-03-12 15:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:20:02] [INFO] Checking activity reminders 
[2026-03-12 15:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:20:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-12 15:20:33] [INFO] Checking activity reminders 
[2026-03-12 15:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:20:46] [INFO] Checking activity reminders 
[2026-03-12 15:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:21:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 15:21:35] [INFO] Checking activity reminders 
[2026-03-12 15:21:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:21:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:26:09] [INFO] Checking activity reminders 
[2026-03-12 15:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:26:39] [INFO] Checking activity reminders 
[2026-03-12 15:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:27:09] [INFO] Checking activity reminders 
[2026-03-12 15:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 15:27:40] [INFO] Checking activity reminders 
[2026-03-12 15:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 15:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:22:34] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-12 16:22:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 16:22:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 16:22:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:23:09] [INFO] Checking activity reminders 
[2026-03-12 16:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:23:39] [INFO] Checking activity reminders 
[2026-03-12 16:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:24:09] [INFO] Checking activity reminders 
[2026-03-12 16:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:24:29] [INFO] Activity save request {"post_data":{"contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","note":"","result_note":"گفتن بخاطر خانمشون که پا به ماه هستن نمیتونن پرداخت کنند و فقط پیگیری کردن بگن هستن با ۷۹ بهشون گفتم حداقل بخشی رو بزنن جواب ندادن","activity_duration":"5","direction":"incoming","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:24:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:24:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:24:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7841","note_was_empty":true}
[2026-03-12 16:24:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"7841","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:24:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:29] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-03-12 16:24:29] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-03-12 16:24:29] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-03-12 16:24:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1ac30de8a70.84324584","stage":"تماس پیگیری","status_change":null}
[2026-03-12 16:24:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2b785906754.05105004","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:24:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2b785906754.05105004"}
[2026-03-12 16:24:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:29] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-03-12 16:24:29] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-03-12 16:24:29] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-03-12 16:24:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-12 16:24:40] [INFO] Checking activity reminders 
[2026-03-12 16:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:25:10] [INFO] Checking activity reminders 
[2026-03-12 16:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:25:47] [INFO] Checking activity reminders 
[2026-03-12 16:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:29:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 16:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:30:10] [INFO] Checking activity reminders 
[2026-03-12 16:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:30:40] [INFO] Checking activity reminders 
[2026-03-12 16:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:31:05] [INFO] Activity save request {"post_data":{"contact_id":"9555","deal_id":"local_69b1aa3fa3da43.35205040","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۴۰۵ پررنت پولش دست مردمه تا پنج خبر نهایی","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:31:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"9555","note_was_empty":true}
[2026-03-12 16:31:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"9555","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:05] [INFO] Updating virtual stage {"contact_id":"9555","stage_name":"deal_registered","force":false}
[2026-03-12 16:31:05] [INFO] Virtual stage successfully saved {"contact_id":"9555","stage_name":"deal_registered"}
[2026-03-12 16:31:05] [INFO] Virtual stage updated after activity save {"contact_id":"9555"}
[2026-03-12 16:31:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1aa3fa3da43.35205040","stage":"تماس پیگیری","status_change":null}
[2026-03-12 16:31:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2b911d81d44.47468371","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2b911d81d44.47468371"}
[2026-03-12 16:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:05] [INFO] Updating virtual stage {"contact_id":"9555","stage_name":"deal_registered","force":false}
[2026-03-12 16:31:05] [INFO] Virtual stage successfully saved {"contact_id":"9555","stage_name":"deal_registered"}
[2026-03-12 16:31:05] [INFO] Virtual stage updated after activity save {"contact_id":"9555"}
[2026-03-12 16:31:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:11] [INFO] Checking activity reminders 
[2026-03-12 16:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:31:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9555","deal_id":"local_69b1aa3fa3da43.35205040","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 16:31:25","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 16:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9555","is_new_deal":false}
[2026-03-12 16:31:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 16:31:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:31:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:31:25] [INFO] getContactPrimaryPhone called {"contact_id":"9555"}
[2026-03-12 16:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:25] [INFO] getContactPrimaryPhone result {"contact_id":"9555","person_found":true,"primary_phone":"9121210391"}
[2026-03-12 16:31:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121210391"}
[2026-03-12 16:31:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121210391","contact_id":"9555","deal_id":"local_69b1aa3fa3da43.35205040","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:31:25"}
[2026-03-12 16:31:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1aa3fa3da43.35205040","contact_id":"9555","existing_deal_found":true,"existing_contact_id":"9555","existing_title":"معامله دوم 9121210391 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:31:25"}
[2026-03-12 16:31:25] [INFO] DealController.save validated payments {"deal_id":"local_69b1aa3fa3da43.35205040","contact_id":"9555","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-12 16:31:25] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9555","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 16:31:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1aa3fa3da43.35205040","contact_didar_id":"9555","title":"معامله دوم 9121210391 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121210391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"زهره جواهر پور","existing_deal":"YES","existing_deal_id":"local_69b1aa3fa3da43.35205040","existing_deal_status":"Pending","server_time":"2026-03-12 16:31:25","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 16:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1aa3fa3da43.35205040","contact_id":"9555","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9121210391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 16:31:26","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 16:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-12 16:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:31:41] [INFO] Checking activity reminders 
[2026-03-12 16:31:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:31:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:32:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15989","deal_id":"local_69b1a8e3e3aaa7.30575903","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 16:32:07","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 16:32:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:32:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15989","is_new_deal":false}
[2026-03-12 16:32:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 16:32:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:32:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:32:07] [INFO] getContactPrimaryPhone called {"contact_id":"15989"}
[2026-03-12 16:32:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:32:07] [INFO] getContactPrimaryPhone result {"contact_id":"15989","person_found":true,"primary_phone":"9121914101"}
[2026-03-12 16:32:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121914101"}
[2026-03-12 16:32:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121914101","contact_id":"15989","deal_id":"local_69b1a8e3e3aaa7.30575903","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:32:07"}
[2026-03-12 16:32:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1a8e3e3aaa7.30575903","contact_id":"15989","existing_deal_found":true,"existing_contact_id":"15989","existing_title":"معامله دوم 9121914101 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:32:07"}
[2026-03-12 16:32:07] [INFO] DealController.save validated payments {"deal_id":"local_69b1a8e3e3aaa7.30575903","contact_id":"15989","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-12 16:32:07] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"15989","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 16:32:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1a8e3e3aaa7.30575903","contact_didar_id":"15989","title":"معامله دوم 9121914101 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121914101","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"محمد رسول ایمانی","existing_deal":"YES","existing_deal_id":"local_69b1a8e3e3aaa7.30575903","existing_deal_status":"Pending","server_time":"2026-03-12 16:32:07","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 16:32:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:32:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1a8e3e3aaa7.30575903","contact_id":"15989","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9121914101 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 16:32:07","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 16:32:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:32:11] [INFO] Checking activity reminders 
[2026-03-12 16:32:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:32:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:32:41] [INFO] Checking activity reminders 
[2026-03-12 16:32:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:32:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:33:06] [INFO] Activity save request {"post_data":{"contact_id":"15989","deal_id":"local_69b1a8e3e3aaa7.30575903","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت ۴۰۵ پرزنت گفتم ۷۹ گفت همش یکجا گفتم بله زنگ زدم شرایطی ببندم ریجکت کرد بی ادب ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:33:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"15989","note_was_empty":true}
[2026-03-12 16:33:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"15989","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:06] [INFO] Updating virtual stage {"contact_id":"15989","stage_name":"deal_registered","force":false}
[2026-03-12 16:33:06] [INFO] Virtual stage successfully saved {"contact_id":"15989","stage_name":"deal_registered"}
[2026-03-12 16:33:06] [INFO] Virtual stage updated after activity save {"contact_id":"15989"}
[2026-03-12 16:33:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1a8e3e3aaa7.30575903","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-12 16:33:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2b98a8496d3.15543818","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2b98a8496d3.15543818"}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:06] [INFO] Updating virtual stage {"contact_id":"15989","stage_name":"deal_registered","force":false}
[2026-03-12 16:33:06] [INFO] Virtual stage successfully saved {"contact_id":"15989","stage_name":"deal_registered"}
[2026-03-12 16:33:06] [INFO] Virtual stage updated after activity save {"contact_id":"15989"}
[2026-03-12 16:33:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-12 16:33:11] [INFO] Checking activity reminders 
[2026-03-12 16:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:33:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 16:33:30","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 16:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21218","is_new_deal":false}
[2026-03-12 16:33:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 16:33:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:33:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:33:30] [INFO] getContactPrimaryPhone called {"contact_id":"21218"}
[2026-03-12 16:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:30] [INFO] getContactPrimaryPhone result {"contact_id":"21218","person_found":true,"primary_phone":"9131066469"}
[2026-03-12 16:33:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131066469"}
[2026-03-12 16:33:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131066469","contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:33:30"}
[2026-03-12 16:33:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","existing_deal_found":true,"existing_contact_id":"21218","existing_title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:33:30"}
[2026-03-12 16:33:30] [INFO] DealController.save validated payments {"deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-12 16:33:30] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21218","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 16:33:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b174b8860c67.06805808","contact_didar_id":"21218","title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131066469","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای خان بانی","existing_deal":"YES","existing_deal_id":"local_69b174b8860c67.06805808","existing_deal_status":"Pending","server_time":"2026-03-12 16:33:30","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 16:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 16:33:30","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 16:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:42] [INFO] Checking activity reminders 
[2026-03-12 16:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:33:57] [INFO] Activity save request {"post_data":{"contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت ۴۰۵ زنگ زدم جواب ندادن پیام دادم ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:33:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"21218","note_was_empty":true}
[2026-03-12 16:33:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"21218","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:57] [INFO] Updating virtual stage {"contact_id":"21218","stage_name":"deal_registered","force":false}
[2026-03-12 16:33:57] [INFO] Virtual stage successfully saved {"contact_id":"21218","stage_name":"deal_registered"}
[2026-03-12 16:33:57] [INFO] Virtual stage updated after activity save {"contact_id":"21218"}
[2026-03-12 16:33:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b174b8860c67.06805808","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-12 16:33:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2b9bd957704.22596381","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2b9bd957704.22596381"}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:33:57] [INFO] Updating virtual stage {"contact_id":"21218","stage_name":"deal_registered","force":false}
[2026-03-12 16:33:57] [INFO] Virtual stage successfully saved {"contact_id":"21218","stage_name":"deal_registered"}
[2026-03-12 16:33:57] [INFO] Virtual stage updated after activity save {"contact_id":"21218"}
[2026-03-12 16:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 16:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:34:12] [INFO] Checking activity reminders 
[2026-03-12 16:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:34:42] [INFO] Checking activity reminders 
[2026-03-12 16:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:35:12] [INFO] Checking activity reminders 
[2026-03-12 16:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:35:42] [INFO] Checking activity reminders 
[2026-03-12 16:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:35:43] [INFO] Activity save request {"post_data":{"contact_id":"1743","deal_id":"local_69b0a933825430.23411177","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","note":"","result_note":"بابت کانال میگه هرچی دارم توی بورسه که استاد سبد گردانی میکننچیزی ندارم برای کانال زنگ زدم در دسترس نبودن ویس دادم مجددا کامل تفاوت رو گفتم ","activity_duration":"5","direction":"incoming","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:35:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"1743","note_was_empty":true}
[2026-03-12 16:35:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"1743","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:43] [INFO] Updating virtual stage {"contact_id":"1743","stage_name":"deal_registered","force":false}
[2026-03-12 16:35:43] [INFO] Virtual stage successfully saved {"contact_id":"1743","stage_name":"deal_registered"}
[2026-03-12 16:35:43] [INFO] Virtual stage updated after activity save {"contact_id":"1743"}
[2026-03-12 16:35:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b0a933825430.23411177","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-12 16:35:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2ba275103d3.55951219","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2ba275103d3.55951219"}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:43] [INFO] Updating virtual stage {"contact_id":"1743","stage_name":"deal_registered","force":false}
[2026-03-12 16:35:43] [INFO] Virtual stage successfully saved {"contact_id":"1743","stage_name":"deal_registered"}
[2026-03-12 16:35:43] [INFO] Virtual stage updated after activity save {"contact_id":"1743"}
[2026-03-12 16:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1743","deal_id":"local_69b0a933825430.23411177","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 16:35:58","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 16:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1743","is_new_deal":false}
[2026-03-12 16:35:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 16:35:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:35:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:35:58] [INFO] getContactPrimaryPhone called {"contact_id":"1743"}
[2026-03-12 16:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:58] [INFO] getContactPrimaryPhone result {"contact_id":"1743","person_found":true,"primary_phone":"9396157682"}
[2026-03-12 16:35:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396157682"}
[2026-03-12 16:35:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396157682","contact_id":"1743","deal_id":"local_69b0a933825430.23411177","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:35:58"}
[2026-03-12 16:35:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b0a933825430.23411177","contact_id":"1743","existing_deal_found":true,"existing_contact_id":"1743","existing_title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:35:58"}
[2026-03-12 16:35:58] [INFO] DealController.save validated payments {"deal_id":"local_69b0a933825430.23411177","contact_id":"1743","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-12 16:35:58] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1743","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 16:35:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b0a933825430.23411177","contact_didar_id":"1743","title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9396157682","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خدابخش","existing_deal":"YES","existing_deal_id":"local_69b0a933825430.23411177","existing_deal_status":"Pending","server_time":"2026-03-12 16:35:58","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 16:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:35:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b0a933825430.23411177","contact_id":"1743","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 16:35:58","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 16:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-12 16:36:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:36:13] [INFO] Checking activity reminders 
[2026-03-12 16:36:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:36:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:38:16] [INFO] Checking activity reminders 
[2026-03-12 16:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:39:21] [INFO] Checking activity reminders 
[2026-03-12 16:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:39:51] [INFO] Checking activity reminders 
[2026-03-12 16:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:40:21] [INFO] Checking activity reminders 
[2026-03-12 16:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:46:25] [INFO] Checking activity reminders 
[2026-03-12 16:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:46:55] [INFO] Checking activity reminders 
[2026-03-12 16:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:46:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5059","deal_id":"5010","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 16:46:58","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 16:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:46:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5059","is_new_deal":false}
[2026-03-12 16:46:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 16:46:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:46:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 16:46:58] [INFO] getContactPrimaryPhone called {"contact_id":"5059"}
[2026-03-12 16:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:46:58] [INFO] getContactPrimaryPhone result {"contact_id":"5059","person_found":true,"primary_phone":"9393020727"}
[2026-03-12 16:46:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393020727"}
[2026-03-12 16:46:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393020727","contact_id":"5059","deal_id":"5010","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:46:58"}
[2026-03-12 16:46:58] [INFO] DealController.save existing deal lookup {"deal_id":"5010","contact_id":"5059","existing_deal_found":true,"existing_contact_id":"5059","existing_title":"معامله رجبی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 16:46:58"}
[2026-03-12 16:46:58] [INFO] DealController.save validated payments {"deal_id":"5010","contact_id":"5059","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-12 16:46:58] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5059","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 16:46:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"5010","contact_didar_id":"5059","title":"معامله رجبی | کانال VIP با پشتیبانی","base_title_used":"معامله رجبی","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رجبی","existing_deal":"YES","existing_deal_id":"5010","existing_deal_status":"Pending","server_time":"2026-03-12 16:46:58","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 16:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:46:58] [INFO] ensureDealProductsFromText: products synced {"deal_id":"5010","product_ids":[23]}
[2026-03-12 16:46:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"5010","contact_id":"5059","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله رجبی | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 16:46:58","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 16:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:26] [INFO] Checking activity reminders 
[2026-03-12 16:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:47:56] [INFO] Checking activity reminders 
[2026-03-12 16:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:47:57] [INFO] Activity save request {"post_data":{"contact_id":"5059","deal_id":"local_69b0a80a0e58e4.82794644","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت کانال پرزنت ۷۹ ارسال شبا ملت در دو مرحله ","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:47:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"5059","note_was_empty":true}
[2026-03-12 16:47:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"5059","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:57] [INFO] Updating virtual stage {"contact_id":"5059","stage_name":"deal_registered","force":false}
[2026-03-12 16:47:57] [INFO] Virtual stage successfully saved {"contact_id":"5059","stage_name":"deal_registered"}
[2026-03-12 16:47:57] [INFO] Virtual stage updated after activity save {"contact_id":"5059"}
[2026-03-12 16:47:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b0a80a0e58e4.82794644","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-12 16:47:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2bd053c7b56.49536417","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2bd053c7b56.49536417"}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:47:57] [INFO] Updating virtual stage {"contact_id":"5059","stage_name":"deal_registered","force":false}
[2026-03-12 16:47:57] [INFO] Virtual stage successfully saved {"contact_id":"5059","stage_name":"deal_registered"}
[2026-03-12 16:47:57] [INFO] Virtual stage updated after activity save {"contact_id":"5059"}
[2026-03-12 16:47:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 16:48:26] [INFO] Checking activity reminders 
[2026-03-12 16:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:48:31] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 16:48:31] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-12 16:48:31] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-12 16:48:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 16:48:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-12 16:48:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-12 16:48:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-12 16:49:02] [INFO] Checking activity reminders 
[2026-03-12 16:49:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:49:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:49:25] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 16:49:25] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-03-12 16:49:25] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-03-12 16:49:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 16:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:44] [INFO] Checking activity reminders 
[2026-03-12 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:49:56] [INFO] Checking activity reminders 
[2026-03-12 16:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:49:56] [INFO] Activity save request {"post_data":{"contact_id":"local_69b19fc3494035.29107056","deal_id":"local_69b19fc353f10","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"تللار","activity_duration":"0","direction":"incoming","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:49:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","database_didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_email":"hanaficarscoo@gmail.com","user_name":"امیر سهرابی ","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69b19fc3494035.29107056","note_was_empty":true}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:56] [INFO] Updating virtual stage {"contact_id":"local_69b19fc3494035.29107056","stage_name":"new","force":false}
[2026-03-12 16:49:56] [INFO] Virtual stage successfully saved {"contact_id":"local_69b19fc3494035.29107056","stage_name":"new"}
[2026-03-12 16:49:56] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b19fc3494035.29107056"}
[2026-03-12 16:49:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b19fc353f10","stage":"تماس پیگیری","status_change":null}
[2026-03-12 16:49:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2bd7c3fe672.27716030","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2bd7c3fe672.27716030"}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:49:56] [INFO] Updating virtual stage {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered","force":false}
[2026-03-12 16:49:56] [INFO] Virtual stage successfully saved {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered"}
[2026-03-12 16:49:56] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b19fc3494035.29107056"}
[2026-03-12 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:14] [INFO] Checking activity reminders 
[2026-03-12 16:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:50:19] [INFO] Checking activity reminders 
[2026-03-12 16:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:50:32] [INFO] Activity save request {"post_data":{"contact_id":"local_69b19fc3494035.29107056","deal_id":"local_69b19fc353f10","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"اللاف","activity_duration":"0","direction":"incoming","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 16:50:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","database_didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_email":"hanaficarscoo@gmail.com","user_name":"امیر سهرابی ","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69b19fc3494035.29107056","note_was_empty":true}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:32] [INFO] Updating virtual stage {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered","force":false}
[2026-03-12 16:50:32] [INFO] Virtual stage successfully saved {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered"}
[2026-03-12 16:50:32] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b19fc3494035.29107056"}
[2026-03-12 16:50:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b19fc353f10","stage":"تماس پیگیری","status_change":null}
[2026-03-12 16:50:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2bda0967422.77717316","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2bda0967422.77717316"}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:50:32] [INFO] Updating virtual stage {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered","force":false}
[2026-03-12 16:50:32] [INFO] Virtual stage successfully saved {"contact_id":"local_69b19fc3494035.29107056","stage_name":"deal_registered"}
[2026-03-12 16:50:32] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b19fc3494035.29107056"}
[2026-03-12 16:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-12 16:55:30] [INFO] Checking activity reminders 
[2026-03-12 16:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:56:00] [INFO] Checking activity reminders 
[2026-03-12 16:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:57:57] [INFO] Checking activity reminders 
[2026-03-12 16:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:58:27] [INFO] Checking activity reminders 
[2026-03-12 16:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 16:58:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 16:58:48] [INFO] Checking activity reminders 
[2026-03-12 16:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 16:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:02:10] [INFO] Checking activity reminders 
[2026-03-12 17:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:02:33] [INFO] Checking activity reminders 
[2026-03-12 17:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:03:03] [INFO] Checking activity reminders 
[2026-03-12 17:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:03:28] [INFO] Checking activity reminders 
[2026-03-12 17:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:04:36] [INFO] Checking activity reminders 
[2026-03-12 17:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:04:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9291","person_id":"1948"}
[2026-03-12 17:05:16] [INFO] Checking activity reminders 
[2026-03-12 17:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:05:38] [INFO] Checking activity reminders 
[2026-03-12 17:05:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:05:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-12 17:06:08] [INFO] Checking activity reminders 
[2026-03-12 17:06:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:06:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:06:28] [INFO] Checking activity reminders 
[2026-03-12 17:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:06:38] [INFO] Checking activity reminders 
[2026-03-12 17:06:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:06:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:06:52] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 17:06:52] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-12 17:06:52] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-12 17:06:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 17:06:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-12 17:06:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-12 17:06:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-12 17:07:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:07:08] [INFO] Checking activity reminders 
[2026-03-12 17:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:07:35] [INFO] Checking activity reminders 
[2026-03-12 17:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:07:38] [INFO] Checking activity reminders 
[2026-03-12 17:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:08:09] [INFO] Checking activity reminders 
[2026-03-12 17:08:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:08:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:08:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15064","deal_id":"local_6950eeb7afc840.34161609","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:08:10","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:08:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-12 17:08:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15064","is_new_deal":false}
[2026-03-12 17:08:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:08:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:08:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:08:10] [INFO] getContactPrimaryPhone called {"contact_id":"15064"}
[2026-03-12 17:08:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-12 17:08:10] [INFO] getContactPrimaryPhone result {"contact_id":"15064","person_found":true,"primary_phone":"9179279427"}
[2026-03-12 17:08:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9179279427"}
[2026-03-12 17:08:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9179279427","contact_id":"15064","deal_id":"local_6950eeb7afc840.34161609","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:08:10"}
[2026-03-12 17:08:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950eeb7afc840.34161609","contact_id":"15064","existing_deal_found":true,"existing_contact_id":"15064","existing_title":"معامله اول 9179279427 | کانال VIP","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:08:10"}
[2026-03-12 17:08:10] [INFO] DealController.save validated payments {"deal_id":"local_6950eeb7afc840.34161609","contact_id":"15064","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 17:08:10] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"15064","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:08:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950eeb7afc840.34161609","contact_didar_id":"15064","title":"معامله اول 9179279427 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9179279427","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای حسینی","existing_deal":"YES","existing_deal_id":"local_6950eeb7afc840.34161609","existing_deal_status":"Pending","server_time":"2026-03-12 17:08:10","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:08:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-12 17:08:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950eeb7afc840.34161609","contact_id":"15064","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله اول 9179279427 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-03-12 17:08:11","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:08:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-03-12 17:08:25] [INFO] Checking activity reminders 
[2026-03-12 17:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:08:39] [INFO] Checking activity reminders 
[2026-03-12 17:08:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:08:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-12 17:09:09] [INFO] Checking activity reminders 
[2026-03-12 17:09:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:09:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:09:39] [INFO] Checking activity reminders 
[2026-03-12 17:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:10:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13708","deal_id":"18893","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:10:00","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-12 17:10:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13708","is_new_deal":false}
[2026-03-12 17:10:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:10:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:10:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:10:00] [INFO] getContactPrimaryPhone called {"contact_id":"13708"}
[2026-03-12 17:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-12 17:10:00] [INFO] getContactPrimaryPhone result {"contact_id":"13708","person_found":true,"primary_phone":"9303935310"}
[2026-03-12 17:10:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9303935310"}
[2026-03-12 17:10:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9303935310","contact_id":"13708","deal_id":"18893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:10:00"}
[2026-03-12 17:10:00] [INFO] DealController.save existing deal lookup {"deal_id":"18893","contact_id":"13708","existing_deal_found":true,"existing_contact_id":"13708","existing_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:10:00"}
[2026-03-12 17:10:00] [INFO] DealController.save validated payments {"deal_id":"18893","contact_id":"13708","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 17:10:00] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13708","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:10:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18893","contact_didar_id":"13708","title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","base_title_used":"معامله سمیه آهنگریان","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":60000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"سمیه آهنگریان","existing_deal":"YES","existing_deal_id":"18893","existing_deal_status":"Pending","server_time":"2026-03-12 17:10:00","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-12 17:10:00] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18893","product_ids":[23]}
[2026-03-12 17:10:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18893","contact_id":"13708","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":60000000,"server_time":"2026-03-12 17:10:00","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:10:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-12 17:10:10] [INFO] Checking activity reminders 
[2026-03-12 17:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:10:40] [INFO] Checking activity reminders 
[2026-03-12 17:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:10:58] [INFO] Checking activity reminders 
[2026-03-12 17:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:11:26] [INFO] Checking activity reminders 
[2026-03-12 17:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:11:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:11:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:11:52] [INFO] generateDealTitle result {"contact_id":"2956","person_name":"رحمانی","mobile":"9153336096","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153336096"}
[2026-03-12 17:11:56] [INFO] Checking activity reminders 
[2026-03-12 17:11:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:11:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:12:26] [INFO] Checking activity reminders 
[2026-03-12 17:12:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:12:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:12:57] [INFO] Checking activity reminders 
[2026-03-12 17:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:13:27] [INFO] Checking activity reminders 
[2026-03-12 17:13:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:13:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:13:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2956","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:13:31","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:13:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2956","is_new_deal":true}
[2026-03-12 17:13:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:13:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:13:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:13:31] [INFO] getContactPrimaryPhone called {"contact_id":"2956"}
[2026-03-12 17:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:13:31] [INFO] getContactPrimaryPhone result {"contact_id":"2956","person_found":true,"primary_phone":"9153336096"}
[2026-03-12 17:13:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153336096"}
[2026-03-12 17:13:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153336096","contact_id":"2956","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:13:31"}
[2026-03-12 17:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:13:31] [INFO] generateDealTitle result {"contact_id":"2956","person_name":"رحمانی","mobile":"9153336096","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153336096"}
[2026-03-12 17:13:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2956","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 17:13:31] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"2956","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:13:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2956","title":"معامله دوم 9153336096 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153336096","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رحمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 17:13:31","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:13:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 17:13:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2956","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9153336096 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-12 17:13:31","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-03-12 17:14:16] [INFO] Checking activity reminders 
[2026-03-12 17:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:14:33] [INFO] Checking activity reminders 
[2026-03-12 17:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:14:39] [INFO] Checking activity reminders 
[2026-03-12 17:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:14:54] [INFO] generateDealTitle result {"contact_id":"21093","person_name":"یزدانی فارس","mobile":"9381675368","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9381675368"}
[2026-03-12 17:15:10] [INFO] Checking activity reminders 
[2026-03-12 17:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:16:29] [INFO] Checking activity reminders 
[2026-03-12 17:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:16:59] [INFO] Checking activity reminders 
[2026-03-12 17:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:17:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21093","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:17:12","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:17:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21093","is_new_deal":true}
[2026-03-12 17:17:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:17:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:17:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:17:12] [INFO] getContactPrimaryPhone called {"contact_id":"21093"}
[2026-03-12 17:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:17:12] [INFO] getContactPrimaryPhone result {"contact_id":"21093","person_found":true,"primary_phone":"9381675368"}
[2026-03-12 17:17:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9381675368"}
[2026-03-12 17:17:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9381675368","contact_id":"21093","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:17:12"}
[2026-03-12 17:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:17:12] [INFO] generateDealTitle result {"contact_id":"21093","person_name":"یزدانی فارس","mobile":"9381675368","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9381675368"}
[2026-03-12 17:17:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21093","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-12 17:17:12] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21093","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:17:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21093","title":"معامله دوم 9381675368 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9381675368","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"یزدانی فارس","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 17:17:12","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:17:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 17:17:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21093","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9381675368 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-12 17:17:12","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-03-12 17:17:29] [INFO] Checking activity reminders 
[2026-03-12 17:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:17:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-03-12 17:17:53] [INFO] Checking activity reminders 
[2026-03-12 17:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:18:23] [INFO] Checking activity reminders 
[2026-03-12 17:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:18:38] [INFO] Checking activity reminders 
[2026-03-12 17:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:19:06] [INFO] Checking activity reminders 
[2026-03-12 17:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:19:38] [INFO] Checking activity reminders 
[2026-03-12 17:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:19:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5741","deal_id":"5693","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:19:50","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-03-12 17:19:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5741","is_new_deal":false}
[2026-03-12 17:19:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:19:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:19:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:19:50] [INFO] getContactPrimaryPhone called {"contact_id":"5741"}
[2026-03-12 17:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-03-12 17:19:50] [INFO] getContactPrimaryPhone result {"contact_id":"5741","person_found":true,"primary_phone":"9138689892"}
[2026-03-12 17:19:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138689892"}
[2026-03-12 17:19:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138689892","contact_id":"5741","deal_id":"5693","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:19:50"}
[2026-03-12 17:19:50] [INFO] DealController.save existing deal lookup {"deal_id":"5693","contact_id":"5741","existing_deal_found":true,"existing_contact_id":"5741","existing_title":"معامله کردی برو جنی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:19:50"}
[2026-03-12 17:19:50] [INFO] DealController.save validated payments {"deal_id":"5693","contact_id":"5741","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-12 17:19:50] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5741","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:19:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"5693","contact_didar_id":"5741","title":"معامله کردی برو جنی | کانال VIP با پشتیبانی","base_title_used":"معامله کردی برو جنی","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"کردی برو جنی","existing_deal":"YES","existing_deal_id":"5693","existing_deal_status":"Pending","server_time":"2026-03-12 17:19:50","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-03-12 17:19:50] [INFO] ensureDealProductsFromText: products synced {"deal_id":"5693","product_ids":[23]}
[2026-03-12 17:19:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"5693","contact_id":"5741","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله کردی برو جنی | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-03-12 17:19:50","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-03-12 17:21:28] [INFO] Checking activity reminders 
[2026-03-12 17:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:21:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:21:43] [INFO] generateDealTitle result {"contact_id":"21039","person_name":"پورکریم","mobile":"9126856192","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126856192"}
[2026-03-12 17:21:58] [INFO] Checking activity reminders 
[2026-03-12 17:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:22:28] [INFO] Checking activity reminders 
[2026-03-12 17:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:22:58] [INFO] Checking activity reminders 
[2026-03-12 17:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:23:29] [INFO] Checking activity reminders 
[2026-03-12 17:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:23:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21039","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:23:35","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:23:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21039","is_new_deal":true}
[2026-03-12 17:23:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:23:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:23:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:23:35] [INFO] getContactPrimaryPhone called {"contact_id":"21039"}
[2026-03-12 17:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:23:35] [INFO] getContactPrimaryPhone result {"contact_id":"21039","person_found":true,"primary_phone":"9126856192"}
[2026-03-12 17:23:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126856192"}
[2026-03-12 17:23:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126856192","contact_id":"21039","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:23:35"}
[2026-03-12 17:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:23:35] [INFO] generateDealTitle result {"contact_id":"21039","person_name":"پورکریم","mobile":"9126856192","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126856192"}
[2026-03-12 17:23:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21039","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 17:23:35] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21039","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:23:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21039","title":"معامله دوم 9126856192 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126856192","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"پورکریم","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 17:23:35","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:23:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 17:23:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21039","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9126856192 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-12 17:23:35","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-12 17:23:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:23:59] [INFO] Checking activity reminders 
[2026-03-12 17:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:24:29] [INFO] Checking activity reminders 
[2026-03-12 17:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:24:59] [INFO] Checking activity reminders 
[2026-03-12 17:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:25:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:25:29] [INFO] Checking activity reminders 
[2026-03-12 17:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:26:00] [INFO] Checking activity reminders 
[2026-03-12 17:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:26:30] [INFO] Checking activity reminders 
[2026-03-12 17:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:27:06] [INFO] Checking activity reminders 
[2026-03-12 17:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:27:36] [INFO] Checking activity reminders 
[2026-03-12 17:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:28:08] [INFO] Checking activity reminders 
[2026-03-12 17:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:28:59] [INFO] Checking activity reminders 
[2026-03-12 17:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:29:30] [INFO] Checking activity reminders 
[2026-03-12 17:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:30:00] [INFO] Checking activity reminders 
[2026-03-12 17:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:30:30] [INFO] Checking activity reminders 
[2026-03-12 17:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:30:30] [INFO] Checking activity reminders 
[2026-03-12 17:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:31:00] [INFO] Checking activity reminders 
[2026-03-12 17:31:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:31:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:31:31] [INFO] Checking activity reminders 
[2026-03-12 17:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:32:01] [INFO] Checking activity reminders 
[2026-03-12 17:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:32:31] [INFO] Checking activity reminders 
[2026-03-12 17:32:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:32:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:33:01] [INFO] Checking activity reminders 
[2026-03-12 17:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:33:32] [INFO] Checking activity reminders 
[2026-03-12 17:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:34:02] [INFO] Checking activity reminders 
[2026-03-12 17:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:34:32] [INFO] Checking activity reminders 
[2026-03-12 17:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:35:02] [INFO] Checking activity reminders 
[2026-03-12 17:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:35:32] [INFO] Checking activity reminders 
[2026-03-12 17:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:36:03] [INFO] Checking activity reminders 
[2026-03-12 17:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:36:33] [INFO] Checking activity reminders 
[2026-03-12 17:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:37:03] [INFO] Checking activity reminders 
[2026-03-12 17:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:37:34] [INFO] Checking activity reminders 
[2026-03-12 17:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:38:04] [INFO] Checking activity reminders 
[2026-03-12 17:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:38:34] [INFO] Checking activity reminders 
[2026-03-12 17:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:39:04] [INFO] Checking activity reminders 
[2026-03-12 17:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:39:16] [INFO] Checking activity reminders 
[2026-03-12 17:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:39:47] [INFO] Checking activity reminders 
[2026-03-12 17:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:40:17] [INFO] Checking activity reminders 
[2026-03-12 17:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:40:47] [INFO] Checking activity reminders 
[2026-03-12 17:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:41:17] [INFO] Checking activity reminders 
[2026-03-12 17:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:42:52] [INFO] Checking activity reminders 
[2026-03-12 17:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:43:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5059","deal_id":"local_69b0a80a0e58e4.82794644","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:43:07","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:43:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5059","is_new_deal":false}
[2026-03-12 17:43:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:43:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:43:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:43:07] [INFO] getContactPrimaryPhone called {"contact_id":"5059"}
[2026-03-12 17:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:43:07] [INFO] getContactPrimaryPhone result {"contact_id":"5059","person_found":true,"primary_phone":"9393020727"}
[2026-03-12 17:43:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393020727"}
[2026-03-12 17:43:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393020727","contact_id":"5059","deal_id":"local_69b0a80a0e58e4.82794644","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:43:07"}
[2026-03-12 17:43:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b0a80a0e58e4.82794644","contact_id":"5059","existing_deal_found":true,"existing_contact_id":"5059","existing_title":"معامله سوم 9393020727 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:43:07"}
[2026-03-12 17:43:07] [INFO] DealController.save validated payments {"deal_id":"local_69b0a80a0e58e4.82794644","contact_id":"5059","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 17:43:07] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5059","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:43:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b0a80a0e58e4.82794644","contact_didar_id":"5059","title":"معامله سوم 9393020727 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9393020727","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رجبی","existing_deal":"YES","existing_deal_id":"local_69b0a80a0e58e4.82794644","existing_deal_status":"Pending","server_time":"2026-03-12 17:43:07","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:43:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b0a80a0e58e4.82794644","contact_id":"5059","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9393020727 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39500000,"server_time":"2026-03-12 17:43:07","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:44:11] [INFO] Checking activity reminders 
[2026-03-12 17:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:44:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:44:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-12 17:44:18] [INFO] generateDealTitle result {"contact_id":"5059","person_name":"رجبی","mobile":"9393020727","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9393020727"}
[2026-03-12 17:44:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:44:41] [INFO] Checking activity reminders 
[2026-03-12 17:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:44:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 17:44:57","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 17:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:44:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21218","is_new_deal":false}
[2026-03-12 17:44:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 17:44:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:44:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 17:44:57] [INFO] getContactPrimaryPhone called {"contact_id":"21218"}
[2026-03-12 17:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:44:57] [INFO] getContactPrimaryPhone result {"contact_id":"21218","person_found":true,"primary_phone":"9131066469"}
[2026-03-12 17:44:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131066469"}
[2026-03-12 17:44:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131066469","contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:44:57"}
[2026-03-12 17:44:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","existing_deal_found":true,"existing_contact_id":"21218","existing_title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 17:44:57"}
[2026-03-12 17:44:57] [INFO] DealController.save validated payments {"deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-12 17:44:57] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21218","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 17:44:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b174b8860c67.06805808","contact_didar_id":"21218","title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131066469","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای خان بانی","existing_deal":"YES","existing_deal_id":"local_69b174b8860c67.06805808","existing_deal_status":"Pending","server_time":"2026-03-12 17:44:57","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 17:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:44:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b174b8860c67.06805808","contact_id":"21218","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9131066469 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 17:44:57","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 17:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:12] [INFO] Checking activity reminders 
[2026-03-12 17:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 17:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 17:45:21] [INFO] Activity save request {"post_data":{"contact_id":"21218","deal_id":"local_69b174b8860c67.06805808","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"کانال یکشنبه واریز میکنه","activity_duration":"5","direction":"incoming","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 17:45:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"21218","note_was_empty":true}
[2026-03-12 17:45:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"21218","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:21] [INFO] Updating virtual stage {"contact_id":"21218","stage_name":"deal_registered","force":false}
[2026-03-12 17:45:21] [INFO] Virtual stage successfully saved {"contact_id":"21218","stage_name":"deal_registered"}
[2026-03-12 17:45:21] [INFO] Virtual stage updated after activity save {"contact_id":"21218"}
[2026-03-12 17:45:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b174b8860c67.06805808","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-12 17:45:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2ca792d74e7.64276845","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2ca792d74e7.64276845"}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 17:45:21] [INFO] Updating virtual stage {"contact_id":"21218","stage_name":"deal_registered","force":false}
[2026-03-12 17:45:21] [INFO] Virtual stage successfully saved {"contact_id":"21218","stage_name":"deal_registered"}
[2026-03-12 17:45:21] [INFO] Virtual stage updated after activity save {"contact_id":"21218"}
[2026-03-12 17:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-03-12 18:03:23] [INFO] Checking activity reminders 
[2026-03-12 18:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 18:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 18:03:54] [INFO] Checking activity reminders 
[2026-03-12 18:03:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 18:03:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 18:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:04:08] [INFO] generateDealTitle result {"contact_id":"7586","person_name":"اقای قاسمی","mobile":"9173759839","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173759839"}
[2026-03-12 18:04:25] [INFO] Checking activity reminders 
[2026-03-12 18:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 18:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 18:05:02] [INFO] Checking activity reminders 
[2026-03-12 18:05:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 18:05:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 18:05:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7586","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 18:05:12","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-12 18:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:05:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7586","is_new_deal":true}
[2026-03-12 18:05:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 18:05:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 18:05:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 18:05:12] [INFO] getContactPrimaryPhone called {"contact_id":"7586"}
[2026-03-12 18:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:05:12] [INFO] getContactPrimaryPhone result {"contact_id":"7586","person_found":true,"primary_phone":"9173759839"}
[2026-03-12 18:05:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173759839"}
[2026-03-12 18:05:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173759839","contact_id":"7586","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-12 18:05:12"}
[2026-03-12 18:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:05:12] [INFO] generateDealTitle result {"contact_id":"7586","person_name":"اقای قاسمی","mobile":"9173759839","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173759839"}
[2026-03-12 18:05:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7586","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-12 18:05:12] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7586","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 18:05:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7586","title":"معامله دوم 9173759839 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173759839","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای قاسمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 18:05:12","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-12 18:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 18:05:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 18:05:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7586","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9173759839 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-12 18:05:12","ip_address":"5.210.218.150","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-12 18:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-03-12 19:21:01] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:21:01] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-12 19:21:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 19:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 19:21:31] [INFO] Checking activity reminders 
[2026-03-12 19:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 19:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 19:26:14] [INFO] Checking activity reminders 
[2026-03-12 19:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 19:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 19:32:21] [INFO] Checking activity reminders 
[2026-03-12 19:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 19:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 19:32:52] [INFO] Checking activity reminders 
[2026-03-12 19:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 19:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 19:58:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 19:58:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:30] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:30] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:30] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_person_profile"}
[2026-03-12 19:58:30] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:30] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_person_profile"}
[2026-03-12 19:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_person_profile"}
[2026-03-12 19:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:40] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:58:52] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:52] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:54] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:56] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:58:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:04] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:04] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:04] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:04] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 19:59:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:18] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:20] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:20] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:20] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:20] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:24] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:26] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:26] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:26] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:26] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:26] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:27] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:27] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:27] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:27] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:27] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:36] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:36] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:36] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:36] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:36] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:38] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:39] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:44] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:47] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:47] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:47] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 19:59:47] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 19:59:47] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:07] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:07] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:07] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:00:07] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:00:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:10] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:01:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:01:34] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-12 20:01:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 20:01:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 20:02:05] [INFO] Checking activity reminders 
[2026-03-12 20:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:02:35] [INFO] Checking activity reminders 
[2026-03-12 20:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:03:06] [INFO] Checking activity reminders 
[2026-03-12 20:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:03:36] [INFO] Checking activity reminders 
[2026-03-12 20:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:05:58] [INFO] Checking activity reminders 
[2026-03-12 20:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:06:28] [INFO] Checking activity reminders 
[2026-03-12 20:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:06:58] [INFO] Checking activity reminders 
[2026-03-12 20:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:07:31] [INFO] Checking activity reminders 
[2026-03-12 20:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:08:02] [INFO] Checking activity reminders 
[2026-03-12 20:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:08:32] [INFO] Checking activity reminders 
[2026-03-12 20:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:08:53] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3739","deal_id":"local_69b1abf574d4e3.11797176","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 20:08:53","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 20:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 20:08:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3739","is_new_deal":false}
[2026-03-12 20:08:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 20:08:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:08:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:08:53] [INFO] getContactPrimaryPhone called {"contact_id":"3739"}
[2026-03-12 20:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 20:08:53] [INFO] getContactPrimaryPhone result {"contact_id":"3739","person_found":true,"primary_phone":"9120978699"}
[2026-03-12 20:08:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120978699"}
[2026-03-12 20:08:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120978699","contact_id":"3739","deal_id":"local_69b1abf574d4e3.11797176","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:08:53"}
[2026-03-12 20:08:53] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","existing_deal_found":true,"existing_contact_id":"3739","existing_title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:08:53"}
[2026-03-12 20:08:53] [INFO] DealController.save validated payments {"deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 20:08:53] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3739","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 20:08:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1abf574d4e3.11797176","contact_didar_id":"3739","title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120978699","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا شیخ","existing_deal":"YES","existing_deal_id":"local_69b1abf574d4e3.11797176","existing_deal_status":"Pending","server_time":"2026-03-12 20:08:53","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 20:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 20:08:53] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-12 20:08:53","ip_address":"2.147.157.182","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 20:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-12 20:09:02] [INFO] Checking activity reminders 
[2026-03-12 20:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:09:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:09:32] [INFO] Checking activity reminders 
[2026-03-12 20:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:10:02] [INFO] Checking activity reminders 
[2026-03-12 20:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:10:41] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:41] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"check_reminders"}
[2026-03-12 20:10:41] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:43] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_products"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_leads"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:45] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:49] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:49] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:50] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:51] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:51] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:52] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:53] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:53] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:53] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:54] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:54] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:55] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:55] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:55] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_leads"}
[2026-03-12 20:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:59] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:59] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:10:59] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_leads"}
[2026-03-12 20:10:59] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:04] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:05] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:05] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:06] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:06] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:07] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:08] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:08] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:08] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_leads"}
[2026-03-12 20:11:08] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:08] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_didar_users"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_users_list"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_kpi_products"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-03-12 20:11:18] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:18] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:18] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_performance_dashboard"}
[2026-03-12 20:11:18] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:23] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:33] [INFO] Checking activity reminders 
[2026-03-12 20:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:11:33] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 20:11:33] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-12 20:11:33] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-12 20:11:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 20:11:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-12 20:11:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-12 20:11:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-12 20:11:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9282","deal_id":"local_69b1aa0468f6f9.06269968","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 20:11:58","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 20:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:11:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9282","is_new_deal":false}
[2026-03-12 20:11:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 20:11:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:11:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:11:58] [INFO] getContactPrimaryPhone called {"contact_id":"9282"}
[2026-03-12 20:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:11:58] [INFO] getContactPrimaryPhone result {"contact_id":"9282","person_found":true,"primary_phone":"9123645496"}
[2026-03-12 20:11:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123645496"}
[2026-03-12 20:11:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123645496","contact_id":"9282","deal_id":"local_69b1aa0468f6f9.06269968","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:11:58"}
[2026-03-12 20:11:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1aa0468f6f9.06269968","contact_id":"9282","existing_deal_found":true,"existing_contact_id":"9282","existing_title":"معامله چهارم 9123645496 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:11:58"}
[2026-03-12 20:11:58] [INFO] DealController.save validated payments {"deal_id":"local_69b1aa0468f6f9.06269968","contact_id":"9282","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-12 20:11:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9282","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 20:11:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1aa0468f6f9.06269968","contact_didar_id":"9282","title":"معامله چهارم 9123645496 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9123645496","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیررضا ناظری","existing_deal":"YES","existing_deal_id":"local_69b1aa0468f6f9.06269968","existing_deal_status":"Pending","server_time":"2026-03-12 20:11:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 20:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:11:58] [INFO] Deal success processed {"contact_id":"9282","person_name":"امیررضا ناظری","products_count":1}
[2026-03-12 20:11:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1aa0468f6f9.06269968","contact_id":"9282","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9123645496 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-12 20:11:58","ip_address":"2.147.157.182","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 20:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:12:03] [INFO] Checking activity reminders 
[2026-03-12 20:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:12:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-12 20:12:14] [INFO] Checking activity reminders 
[2026-03-12 20:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69490b8d0555d5.67862116","person_id":"21309"}
[2026-03-12 20:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69490b8d0555d5.67862116","person_id":"21309"}
[2026-03-12 20:12:44] [INFO] Checking activity reminders 
[2026-03-12 20:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:13:14] [INFO] Checking activity reminders 
[2026-03-12 20:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:21:38] [INFO] Checking activity reminders 
[2026-03-12 20:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:22:06] [INFO] Checking activity reminders 
[2026-03-12 20:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:25:02] [INFO] Checking activity reminders 
[2026-03-12 20:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:25:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-12 20:25:32] [INFO] Checking activity reminders 
[2026-03-12 20:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:26:03] [INFO] Checking activity reminders 
[2026-03-12 20:26:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:26:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:30:29] [INFO] Checking activity reminders 
[2026-03-12 20:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:30:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15094","deal_id":"local_69b0a8e8d448b8.95253221","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 20:30:52","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 20:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-12 20:30:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15094","is_new_deal":false}
[2026-03-12 20:30:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 20:30:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:30:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 20:30:52] [INFO] getContactPrimaryPhone called {"contact_id":"15094"}
[2026-03-12 20:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-12 20:30:52] [INFO] getContactPrimaryPhone result {"contact_id":"15094","person_found":true,"primary_phone":"9113760141"}
[2026-03-12 20:30:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760141"}
[2026-03-12 20:30:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760141","contact_id":"15094","deal_id":"local_69b0a8e8d448b8.95253221","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:30:52"}
[2026-03-12 20:30:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","existing_deal_found":true,"existing_contact_id":"15094","existing_title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:30:52"}
[2026-03-12 20:30:52] [INFO] DealController.save validated payments {"deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-12 20:30:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15094","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 20:30:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b0a8e8d448b8.95253221","contact_didar_id":"15094","title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9113760141","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای رستمی","existing_deal":"YES","existing_deal_id":"local_69b0a8e8d448b8.95253221","existing_deal_status":"Pending","server_time":"2026-03-12 20:30:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 20:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-12 20:30:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 20:30:52","ip_address":"2.147.198.108","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 20:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-12 20:31:16] [INFO] Checking activity reminders 
[2026-03-12 20:31:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:31:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:36:05] [INFO] Checking activity reminders 
[2026-03-12 20:36:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:36:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:42:22] [INFO] Checking activity reminders 
[2026-03-12 20:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:42:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:42:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:42:52] [INFO] Checking activity reminders 
[2026-03-12 20:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:43:22] [INFO] Checking activity reminders 
[2026-03-12 20:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:43:53] [INFO] Checking activity reminders 
[2026-03-12 20:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:44:23] [INFO] Checking activity reminders 
[2026-03-12 20:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:44:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_69b1a881e9adc0.54806435","deal_id":"local_69b1a881ece41","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 20:44:26","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:44:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_69b1a881e9adc0.54806435","is_new_deal":false}
[2026-03-12 20:44:26] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-03-12 20:44:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-03-12 20:44:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-03-12 20:44:26] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b1a881e9adc0.54806435"}
[2026-03-12 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:44:26] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b1a881e9adc0.54806435","person_found":true,"primary_phone":"9181074961"}
[2026-03-12 20:44:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9181074961"}
[2026-03-12 20:44:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9181074961","contact_id":"local_69b1a881e9adc0.54806435","deal_id":"local_69b1a881ece41","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:44:26"}
[2026-03-12 20:44:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1a881ece41","contact_id":"local_69b1a881e9adc0.54806435","existing_deal_found":true,"existing_contact_id":"local_69b1a881e9adc0.54806435","existing_title":"معامله اول 9181074961","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 20:44:26"}
[2026-03-12 20:44:26] [INFO] DealController.save validated payments {"deal_id":"local_69b1a881ece41","contact_id":"local_69b1a881e9adc0.54806435","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-12 20:44:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b1a881e9adc0.54806435","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 20:44:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1a881ece41","contact_didar_id":"local_69b1a881e9adc0.54806435","title":"معامله اول 9181074961 | هوش خودرو","base_title_used":"معامله اول 9181074961","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7900000,"payment_amount":0,"payments_present":false,"requested_services":["هوش خودرو"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69b1a881ece41","existing_deal_status":"Pending","server_time":"2026-03-12 20:44:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:44:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1a881ece41","contact_id":"local_69b1a881e9adc0.54806435","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9181074961 | هوش خودرو","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7900000,"payment_amount":0,"server_time":"2026-03-12 20:44:26","ip_address":"2.147.198.108","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:44:53] [INFO] Checking activity reminders 
[2026-03-12 20:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:45:24] [INFO] Checking activity reminders 
[2026-03-12 20:45:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:45:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:45:24] [INFO] Activity save request {"post_data":{"contact_id":"local_69b1a881e9adc0.54806435","deal_id":"local_69b1a881ece41","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کردستان \r\nپرزنت هوش\r\nجهت افزایش درآمد \r\nمیگه هوش چندین قسط، پرداخت کنم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-12 20:45:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b1a881e9adc0.54806435","note_was_empty":true}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:24] [INFO] Updating virtual stage {"contact_id":"local_69b1a881e9adc0.54806435","stage_name":"new","force":false}
[2026-03-12 20:45:24] [INFO] Virtual stage successfully saved {"contact_id":"local_69b1a881e9adc0.54806435","stage_name":"new"}
[2026-03-12 20:45:24] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b1a881e9adc0.54806435"}
[2026-03-12 20:45:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1a881ece41","stage":"تماس پیگیری","status_change":null}
[2026-03-12 20:45:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b2f4ac6c1f78.20027554","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69b2f4ac6c1f78.20027554"}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:24] [INFO] Updating virtual stage {"contact_id":"local_69b1a881e9adc0.54806435","stage_name":"deal_registered","force":false}
[2026-03-12 20:45:24] [INFO] Virtual stage successfully saved {"contact_id":"local_69b1a881e9adc0.54806435","stage_name":"deal_registered"}
[2026-03-12 20:45:24] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b1a881e9adc0.54806435"}
[2026-03-12 20:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:45:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-12 20:49:25] [INFO] Checking activity reminders 
[2026-03-12 20:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:49:55] [INFO] Checking activity reminders 
[2026-03-12 20:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 20:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-12 20:50:25] [INFO] Checking activity reminders 
[2026-03-12 20:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 20:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 21:59:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 21:59:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 21:59:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:00:19] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:00:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:00:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:00:32] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:01:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:01:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:01:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:01:48] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:01:48] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:01:48] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:02:11] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:02:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:03:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:03:43] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:14] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:04:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:00] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:00] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:06:00] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:06:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:08] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:15] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:15] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:15] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:06:15] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:06:17] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:02] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:02] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:07:02] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:06] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:06] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:06] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:11] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:11] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:11] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:14] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:16] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:16] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:16] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:16] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:22] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:22] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:22] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:22] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_products"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_leads"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:26] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:28] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:28] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-12 22:07:28] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:36] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"skfht643nsukfog82jvgf73ro8","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:07:47] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-12 22:07:47] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-12 22:07:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 22:07:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-12 22:07:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-12 22:07:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:14:03] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:04] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:05] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"save_deal"}
[2026-03-12 22:14:06] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:14:31] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:15:22] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:23] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:23] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:25] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:29] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:33] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:34] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:35] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:37] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:40] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_products"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"get_deals"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:15:41] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:42] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:50] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:50] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:50] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:17:57] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:19:54] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"check_reminders"}
[2026-03-12 22:19:54] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:19:54] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:20:59] [WARNING] Auth check failed - not authenticated {"session_id":"aoemkugbhvc0l45uc61dsd9v3q","session_keys":[],"action":"log_client_event"}
[2026-03-12 22:20:59] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-12 22:20:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 22:21:29] [INFO] Checking activity reminders 
[2026-03-12 22:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:21:59] [INFO] Checking activity reminders 
[2026-03-12 22:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:22:30] [INFO] Checking activity reminders 
[2026-03-12 22:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:24:09] [INFO] Checking activity reminders 
[2026-03-12 22:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:24:27] [INFO] Checking activity reminders 
[2026-03-12 22:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:24:57] [INFO] Checking activity reminders 
[2026-03-12 22:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:25:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7241","deal_id":"local_6947f835677612.69272749","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 22:25:27","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 22:25:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:25:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7241","is_new_deal":false}
[2026-03-12 22:25:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 22:25:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:25:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:25:27] [INFO] getContactPrimaryPhone called {"contact_id":"7241"}
[2026-03-12 22:25:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:25:27] [INFO] getContactPrimaryPhone result {"contact_id":"7241","person_found":true,"primary_phone":"9133056914"}
[2026-03-12 22:25:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133056914"}
[2026-03-12 22:25:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133056914","contact_id":"7241","deal_id":"local_6947f835677612.69272749","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:25:27"}
[2026-03-12 22:25:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_6947f835677612.69272749","contact_id":"7241","existing_deal_found":true,"existing_contact_id":"7241","existing_title":"معامله اول 9133056914 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:25:27"}
[2026-03-12 22:25:27] [INFO] DealController.save validated payments {"deal_id":"local_6947f835677612.69272749","contact_id":"7241","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-12 22:25:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7241","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 22:25:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6947f835677612.69272749","contact_didar_id":"7241","title":"معامله اول 9133056914 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9133056914","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"باصری","existing_deal":"YES","existing_deal_id":"local_6947f835677612.69272749","existing_deal_status":"Pending","server_time":"2026-03-12 22:25:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 22:25:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:25:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:25:27] [INFO] Deal success processed {"contact_id":"7241","person_name":"باصری","products_count":1}
[2026-03-12 22:25:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6947f835677612.69272749","contact_id":"7241","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9133056914 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-12 22:25:27","ip_address":"37.98.52.57","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 22:25:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-03-12 22:25:27] [INFO] Checking activity reminders 
[2026-03-12 22:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:33:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-12 22:33:44] [INFO] Checking activity reminders 
[2026-03-12 22:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:34:14] [INFO] Checking activity reminders 
[2026-03-12 22:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:34:55] [INFO] Checking activity reminders 
[2026-03-12 22:34:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:34:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:35:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:35:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:35:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:35:19] [INFO] generateDealTitle result {"contact_id":"7771","person_name":"محمد حیدری نیا","mobile":"9151689075","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9151689075"}
[2026-03-12 22:35:25] [INFO] Checking activity reminders 
[2026-03-12 22:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:38:39] [INFO] Checking activity reminders 
[2026-03-12 22:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:39:09] [INFO] Checking activity reminders 
[2026-03-12 22:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:39:34] [INFO] Checking activity reminders 
[2026-03-12 22:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:40:54] [INFO] Checking activity reminders 
[2026-03-12 22:40:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:40:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:41:08] [INFO] Checking activity reminders 
[2026-03-12 22:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:41:39] [INFO] Checking activity reminders 
[2026-03-12 22:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:42:09] [INFO] Checking activity reminders 
[2026-03-12 22:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:42:39] [INFO] Checking activity reminders 
[2026-03-12 22:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:43:09] [INFO] Checking activity reminders 
[2026-03-12 22:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:43:40] [INFO] Checking activity reminders 
[2026-03-12 22:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:44:11] [INFO] Checking activity reminders 
[2026-03-12 22:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:44:41] [INFO] Checking activity reminders 
[2026-03-12 22:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:45:12] [INFO] Checking activity reminders 
[2026-03-12 22:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:45:42] [INFO] Checking activity reminders 
[2026-03-12 22:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:46:13] [INFO] Checking activity reminders 
[2026-03-12 22:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:46:43] [INFO] Checking activity reminders 
[2026-03-12 22:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:47:16] [INFO] Checking activity reminders 
[2026-03-12 22:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:47:46] [INFO] Checking activity reminders 
[2026-03-12 22:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:48:16] [INFO] Checking activity reminders 
[2026-03-12 22:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:48:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7771","deal_id":"local_699ef445977808.08443386","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 22:48:43","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 22:48:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:48:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7771","is_new_deal":false}
[2026-03-12 22:48:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 22:48:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:48:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:48:43] [INFO] getContactPrimaryPhone called {"contact_id":"7771"}
[2026-03-12 22:48:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:48:43] [INFO] getContactPrimaryPhone result {"contact_id":"7771","person_found":true,"primary_phone":"9151689075"}
[2026-03-12 22:48:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151689075"}
[2026-03-12 22:48:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151689075","contact_id":"7771","deal_id":"local_699ef445977808.08443386","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:48:43"}
[2026-03-12 22:48:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","existing_deal_found":true,"existing_contact_id":"7771","existing_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:48:43"}
[2026-03-12 22:48:43] [INFO] DealController.save validated payments {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 22:48:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7771","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 22:48:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ef445977808.08443386","contact_didar_id":"7771","title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151689075","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد حیدری نیا","existing_deal":"YES","existing_deal_id":"local_699ef445977808.08443386","existing_deal_status":"Pending","server_time":"2026-03-12 22:48:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 22:48:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:48:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ef445977808.08443386","contact_id":"7771","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-03-12 22:48:43","ip_address":"2.147.14.114","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 22:48:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:48:46] [INFO] Checking activity reminders 
[2026-03-12 22:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:49:17] [INFO] Checking activity reminders 
[2026-03-12 22:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 22:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 22:49:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7771","deal_id":"local_699ef445977808.08443386","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 22:49:37","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 22:49:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:49:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7771","is_new_deal":false}
[2026-03-12 22:49:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 22:49:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:49:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 22:49:37] [INFO] getContactPrimaryPhone called {"contact_id":"7771"}
[2026-03-12 22:49:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:49:37] [INFO] getContactPrimaryPhone result {"contact_id":"7771","person_found":true,"primary_phone":"9151689075"}
[2026-03-12 22:49:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151689075"}
[2026-03-12 22:49:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151689075","contact_id":"7771","deal_id":"local_699ef445977808.08443386","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:49:37"}
[2026-03-12 22:49:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","existing_deal_found":true,"existing_contact_id":"7771","existing_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 22:49:37"}
[2026-03-12 22:49:37] [INFO] DealController.save validated payments {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 22:49:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7771","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 22:49:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ef445977808.08443386","contact_didar_id":"7771","title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151689075","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد حیدری نیا","existing_deal":"YES","existing_deal_id":"local_699ef445977808.08443386","existing_deal_status":"Pending","server_time":"2026-03-12 22:49:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 22:49:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 22:49:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ef445977808.08443386","contact_id":"7771","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-03-12 22:49:37","ip_address":"2.147.14.114","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 22:49:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 23:01:08] [INFO] Checking activity reminders 
[2026-03-12 23:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:01:45] [INFO] Checking activity reminders 
[2026-03-12 23:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:02:15] [INFO] Checking activity reminders 
[2026-03-12 23:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:02:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:02:45] [INFO] Checking activity reminders 
[2026-03-12 23:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:02:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:02:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:02:48] [INFO] generateDealTitle result {"contact_id":"12047","person_name":"مظفری مظفری","mobile":"9365369437","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9365369437"}
[2026-03-12 23:03:16] [INFO] Checking activity reminders 
[2026-03-12 23:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:03:47] [INFO] Checking activity reminders 
[2026-03-12 23:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:04:41] [INFO] Checking activity reminders 
[2026-03-12 23:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:04:54] [INFO] Checking activity reminders 
[2026-03-12 23:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:05:19] [INFO] Checking activity reminders 
[2026-03-12 23:05:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:05:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:05:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12047","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 23:05:32","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 23:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:05:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12047","is_new_deal":true}
[2026-03-12 23:05:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 23:05:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:05:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:05:32] [INFO] getContactPrimaryPhone called {"contact_id":"12047"}
[2026-03-12 23:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:05:32] [INFO] getContactPrimaryPhone result {"contact_id":"12047","person_found":true,"primary_phone":"9365369437"}
[2026-03-12 23:05:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365369437"}
[2026-03-12 23:05:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365369437","contact_id":"12047","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 23:05:32"}
[2026-03-12 23:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:05:32] [INFO] generateDealTitle result {"contact_id":"12047","person_name":"مظفری مظفری","mobile":"9365369437","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9365369437"}
[2026-03-12 23:05:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12047","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 23:05:32] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12047","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 23:05:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12047","title":"معامله سوم 9365369437 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9365369437","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مظفری مظفری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 23:05:32","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 23:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:05:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 23:05:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12047","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9365369437 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-12 23:05:32","ip_address":"5.212.145.170","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 23:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:05:49] [INFO] Checking activity reminders 
[2026-03-12 23:05:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:05:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:06:39] [INFO] Checking activity reminders 
[2026-03-12 23:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:06:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:06:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:06:55] [INFO] generateDealTitle result {"contact_id":"987","person_name":"فتحی","mobile":"9168768819","existing_deals":5,"ordinal":"ششم","title":"معامله ششم 9168768819"}
[2026-03-12 23:07:09] [INFO] Checking activity reminders 
[2026-03-12 23:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-03-12 23:07:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-12 23:07:40] [INFO] Checking activity reminders 
[2026-03-12 23:07:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:07:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:07:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:08:09] [INFO] generateDealTitle result {"contact_id":"987","person_name":"فتحی","mobile":"9168768819","existing_deals":5,"ordinal":"ششم","title":"معامله ششم 9168768819"}
[2026-03-12 23:08:10] [INFO] Checking activity reminders 
[2026-03-12 23:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:08:50] [INFO] Checking activity reminders 
[2026-03-12 23:08:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:08:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:09:22] [INFO] Checking activity reminders 
[2026-03-12 23:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:09:57] [INFO] Checking activity reminders 
[2026-03-12 23:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:10:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"987","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 23:10:05","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 23:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:10:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"987","is_new_deal":true}
[2026-03-12 23:10:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 23:10:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:10:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:10:05] [INFO] getContactPrimaryPhone called {"contact_id":"987"}
[2026-03-12 23:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:10:05] [INFO] getContactPrimaryPhone result {"contact_id":"987","person_found":true,"primary_phone":"9168768819"}
[2026-03-12 23:10:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9168768819"}
[2026-03-12 23:10:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9168768819","contact_id":"987","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 23:10:05"}
[2026-03-12 23:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:10:05] [INFO] generateDealTitle result {"contact_id":"987","person_name":"فتحی","mobile":"9168768819","existing_deals":5,"ordinal":"ششم","title":"معامله ششم 9168768819"}
[2026-03-12 23:10:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"987","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 23:10:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"987","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 23:10:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"987","title":"معامله ششم 9168768819 | کانال VIP با پشتیبانی","base_title_used":"معامله ششم 9168768819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 23:10:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 23:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:10:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 23:10:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"987","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله ششم 9168768819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-12 23:10:05","ip_address":"5.52.238.175","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 23:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:10:27] [INFO] Checking activity reminders 
[2026-03-12 23:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:10:57] [INFO] Checking activity reminders 
[2026-03-12 23:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:11:39] [INFO] Checking activity reminders 
[2026-03-12 23:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:11:47] [INFO] Checking activity reminders 
[2026-03-12 23:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:12:18] [INFO] Checking activity reminders 
[2026-03-12 23:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:12:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"987","deal_id":"local_69b316955557b9.12574454","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 23:12:41","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 23:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:12:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"987","is_new_deal":false}
[2026-03-12 23:12:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 23:12:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:12:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:12:41] [INFO] getContactPrimaryPhone called {"contact_id":"987"}
[2026-03-12 23:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:12:41] [INFO] getContactPrimaryPhone result {"contact_id":"987","person_found":true,"primary_phone":"9168768819"}
[2026-03-12 23:12:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9168768819"}
[2026-03-12 23:12:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9168768819","contact_id":"987","deal_id":"local_69b316955557b9.12574454","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 23:12:41"}
[2026-03-12 23:12:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b316955557b9.12574454","contact_id":"987","existing_deal_found":true,"existing_contact_id":"987","existing_title":"معامله ششم 9168768819 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 23:12:41"}
[2026-03-12 23:12:41] [INFO] DealController.save validated payments {"deal_id":"local_69b316955557b9.12574454","contact_id":"987","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-12 23:12:41] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"987","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 23:12:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b316955557b9.12574454","contact_didar_id":"987","title":"معامله ششم 9168768819 | کانال VIP با پشتیبانی","base_title_used":"معامله ششم 9168768819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتحی","existing_deal":"YES","existing_deal_id":"local_69b316955557b9.12574454","existing_deal_status":"Pending","server_time":"2026-03-12 23:12:41","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 23:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:12:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b316955557b9.12574454","contact_id":"987","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله ششم 9168768819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-12 23:12:41","ip_address":"5.52.238.175","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 23:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:14:23] [INFO] Checking activity reminders 
[2026-03-12 23:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:14:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-03-12 23:14:53] [INFO] Checking activity reminders 
[2026-03-12 23:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:15:16] [INFO] Checking activity reminders 
[2026-03-12 23:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:15:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:15:27] [INFO] generateDealTitle result {"contact_id":"16164","person_name":"مانی طاهریان نژاد","mobile":"9121508323","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121508323"}
[2026-03-12 23:15:46] [INFO] Checking activity reminders 
[2026-03-12 23:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:16:16] [INFO] Checking activity reminders 
[2026-03-12 23:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:16:46] [INFO] Checking activity reminders 
[2026-03-12 23:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:17:17] [INFO] Checking activity reminders 
[2026-03-12 23:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:17:47] [INFO] Checking activity reminders 
[2026-03-12 23:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:18:17] [INFO] Checking activity reminders 
[2026-03-12 23:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:18:47] [INFO] Checking activity reminders 
[2026-03-12 23:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:19:18] [INFO] Checking activity reminders 
[2026-03-12 23:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:19:48] [INFO] Checking activity reminders 
[2026-03-12 23:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:20:19] [INFO] Checking activity reminders 
[2026-03-12 23:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:20:50] [INFO] Checking activity reminders 
[2026-03-12 23:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:21:20] [INFO] Checking activity reminders 
[2026-03-12 23:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:21:50] [INFO] Checking activity reminders 
[2026-03-12 23:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:22:21] [INFO] Checking activity reminders 
[2026-03-12 23:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:22:51] [INFO] Checking activity reminders 
[2026-03-12 23:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:23:26] [INFO] Checking activity reminders 
[2026-03-12 23:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:24:07] [INFO] Checking activity reminders 
[2026-03-12 23:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:24:38] [INFO] Checking activity reminders 
[2026-03-12 23:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:25:08] [INFO] Checking activity reminders 
[2026-03-12 23:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:25:28] [INFO] Checking activity reminders 
[2026-03-12 23:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:25:51] [INFO] Checking activity reminders 
[2026-03-12 23:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:26:10] [INFO] Checking activity reminders 
[2026-03-12 23:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:26:40] [INFO] Checking activity reminders 
[2026-03-12 23:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:27:11] [INFO] Checking activity reminders 
[2026-03-12 23:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:28:27] [INFO] Checking activity reminders 
[2026-03-12 23:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:28:39] [INFO] Checking activity reminders 
[2026-03-12 23:28:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:28:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:28:54] [INFO] Checking activity reminders 
[2026-03-12 23:28:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-12 23:28:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-12 23:29:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16164","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-12 23:29:15","session_id":"aoemkugbhvc0l45uc61dsd9v3q"}
[2026-03-12 23:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:29:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16164","is_new_deal":true}
[2026-03-12 23:29:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-12 23:29:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:29:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-12 23:29:15] [INFO] getContactPrimaryPhone called {"contact_id":"16164"}
[2026-03-12 23:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:29:15] [INFO] getContactPrimaryPhone result {"contact_id":"16164","person_found":true,"primary_phone":"9121508323"}
[2026-03-12 23:29:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121508323"}
[2026-03-12 23:29:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121508323","contact_id":"16164","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-12 23:29:15"}
[2026-03-12 23:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:29:15] [INFO] generateDealTitle result {"contact_id":"16164","person_name":"مانی طاهریان نژاد","mobile":"9121508323","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121508323"}
[2026-03-12 23:29:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16164","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-12 23:29:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16164","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-12 23:29:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16164","title":"معامله دوم 9121508323 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121508323","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مانی طاهریان نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-12 23:29:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-12 23:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-12 23:29:15] [INFO] Deal success processed {"contact_id":"16164","person_name":"مانی طاهریان نژاد","products_count":1}
[2026-03-12 23:29:15] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-12 23:29:15] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9121508323 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-12 23:29:15","ip_address":"5.52.238.175","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-12 23:29:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-13 14:52:45] [WARNING] Auth check failed - not authenticated {"session_id":"unsvkihglh174jcaj6lbfee1f8","session_keys":[],"action":"log_client_event"}
[2026-03-13 14:52:46] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-13 14:52:46] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-13 14:52:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 14:52:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-13 14:52:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-13 14:52:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-13 14:53:44] [INFO] Checking activity reminders 
[2026-03-13 14:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 14:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:33:48] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 16:33:48] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-13 16:33:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 16:34:19] [INFO] Checking activity reminders 
[2026-03-13 16:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:34:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-13 16:34:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-13 16:34:49] [INFO] Checking activity reminders 
[2026-03-13 16:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:35:19] [INFO] Checking activity reminders 
[2026-03-13 16:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:35:49] [INFO] Checking activity reminders 
[2026-03-13 16:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:36:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 16:36:31] [INFO] Checking activity reminders 
[2026-03-13 16:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:37:01] [INFO] Checking activity reminders 
[2026-03-13 16:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:38:43] [INFO] Checking activity reminders 
[2026-03-13 16:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:38:50] [INFO] Activity save request {"post_data":{"contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال ۴۰۵ ول یز بیعانه دیروز شد ۱۹ ت تسویه شنبه\r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-13 16:38:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5334","note_was_empty":true}
[2026-03-13 16:38:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"5334","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:50] [INFO] Updating virtual stage {"contact_id":"5334","stage_name":"deal_registered","force":false}
[2026-03-13 16:38:50] [INFO] Virtual stage successfully saved {"contact_id":"5334","stage_name":"deal_registered"}
[2026-03-13 16:38:50] [INFO] Virtual stage updated after activity save {"contact_id":"5334"}
[2026-03-13 16:38:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1745d5f25f6.43254270","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-13 16:38:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b40c627b9998.52672034","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69b40c627b9998.52672034"}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:50] [INFO] Updating virtual stage {"contact_id":"5334","stage_name":"deal_registered","force":false}
[2026-03-13 16:38:50] [INFO] Virtual stage successfully saved {"contact_id":"5334","stage_name":"deal_registered"}
[2026-03-13 16:38:50] [INFO] Virtual stage updated after activity save {"contact_id":"5334"}
[2026-03-13 16:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:38:54] [INFO] generateDealTitle result {"contact_id":"5334","person_name":"فرشید کیهانی","mobile":"9033577801","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9033577801"}
[2026-03-13 16:39:13] [INFO] Checking activity reminders 
[2026-03-13 16:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:40:29] [INFO] Checking activity reminders 
[2026-03-13 16:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:41:12] [INFO] Checking activity reminders 
[2026-03-13 16:41:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:41:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:41:45] [INFO] Checking activity reminders 
[2026-03-13 16:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:42:15] [INFO] Checking activity reminders 
[2026-03-13 16:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:42:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 16:42:16","session_id":"b5gqggjfalv0ksqi8ld9s9q96s"}
[2026-03-13 16:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:42:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5334","is_new_deal":false}
[2026-03-13 16:42:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 16:42:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:42:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:42:16] [INFO] getContactPrimaryPhone called {"contact_id":"5334"}
[2026-03-13 16:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:42:16] [INFO] getContactPrimaryPhone result {"contact_id":"5334","person_found":true,"primary_phone":"9033577801"}
[2026-03-13 16:42:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9033577801"}
[2026-03-13 16:42:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9033577801","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:42:16"}
[2026-03-13 16:42:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","existing_deal_found":true,"existing_contact_id":"5334","existing_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:42:16"}
[2026-03-13 16:42:16] [INFO] DealController.save validated payments {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-13 16:42:16] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5334","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 16:42:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1745d5f25f6.43254270","contact_didar_id":"5334","title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9033577801","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":19000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرشید کیهانی","existing_deal":"YES","existing_deal_id":"local_69b1745d5f25f6.43254270","existing_deal_status":"Pending","server_time":"2026-03-13 16:42:16","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 16:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:42:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":19000000,"server_time":"2026-03-13 16:42:16","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 16:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 16:42:45] [INFO] Checking activity reminders 
[2026-03-13 16:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:43:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:43:16] [INFO] Checking activity reminders 
[2026-03-13 16:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:43:52] [INFO] Checking activity reminders 
[2026-03-13 16:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:44:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1008","deal_id":"local_69b17555533563.99672996","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 16:44:05","session_id":"b5gqggjfalv0ksqi8ld9s9q96s"}
[2026-03-13 16:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:44:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1008","is_new_deal":false}
[2026-03-13 16:44:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 16:44:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:44:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:44:05] [INFO] getContactPrimaryPhone called {"contact_id":"1008"}
[2026-03-13 16:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:44:05] [INFO] getContactPrimaryPhone result {"contact_id":"1008","person_found":true,"primary_phone":"9138578190"}
[2026-03-13 16:44:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138578190"}
[2026-03-13 16:44:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138578190","contact_id":"1008","deal_id":"local_69b17555533563.99672996","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:44:05"}
[2026-03-13 16:44:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b17555533563.99672996","contact_id":"1008","existing_deal_found":true,"existing_contact_id":"1008","existing_title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:44:05"}
[2026-03-13 16:44:05] [INFO] DealController.save validated payments {"deal_id":"local_69b17555533563.99672996","contact_id":"1008","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-13 16:44:05] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1008","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 16:44:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b17555533563.99672996","contact_didar_id":"1008","title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138578190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شریفی","existing_deal":"YES","existing_deal_id":"local_69b17555533563.99672996","existing_deal_status":"Pending","server_time":"2026-03-13 16:44:05","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 16:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:44:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b17555533563.99672996","contact_id":"1008","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-13 16:44:05","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 16:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:44:22] [INFO] Checking activity reminders 
[2026-03-13 16:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:44:40] [INFO] Checking activity reminders 
[2026-03-13 16:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:44:55] [INFO] Checking activity reminders 
[2026-03-13 16:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:45:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1008","deal_id":"local_69b17555533563.99672996","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 16:45:25","session_id":"b5gqggjfalv0ksqi8ld9s9q96s"}
[2026-03-13 16:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:45:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1008","is_new_deal":false}
[2026-03-13 16:45:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 16:45:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:45:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 16:45:25] [INFO] getContactPrimaryPhone called {"contact_id":"1008"}
[2026-03-13 16:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:45:25] [INFO] getContactPrimaryPhone result {"contact_id":"1008","person_found":true,"primary_phone":"9138578190"}
[2026-03-13 16:45:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138578190"}
[2026-03-13 16:45:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138578190","contact_id":"1008","deal_id":"local_69b17555533563.99672996","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:45:25"}
[2026-03-13 16:45:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b17555533563.99672996","contact_id":"1008","existing_deal_found":true,"existing_contact_id":"1008","existing_title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 16:45:25"}
[2026-03-13 16:45:25] [INFO] DealController.save validated payments {"deal_id":"local_69b17555533563.99672996","contact_id":"1008","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-13 16:45:25] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1008","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 16:45:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b17555533563.99672996","contact_didar_id":"1008","title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138578190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شریفی","existing_deal":"YES","existing_deal_id":"local_69b17555533563.99672996","existing_deal_status":"Pending","server_time":"2026-03-13 16:45:25","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 16:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:45:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b17555533563.99672996","contact_id":"1008","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9138578190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-13 16:45:25","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 16:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-13 16:45:25] [INFO] Checking activity reminders 
[2026-03-13 16:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 16:45:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 16:45:56] [INFO] Checking activity reminders 
[2026-03-13 16:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 16:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 17:45:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"check_reminders"}
[2026-03-13 17:45:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_field_configurations"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_deal"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:27] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:45:29] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_field_configurations"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_deal"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:13] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:15] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:19] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:19] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:19] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:19] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_person_profile"}
[2026-03-13 17:46:19] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"check_reminders"}
[2026-03-13 17:46:21] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:23] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:24] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:24] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_person_profile"}
[2026-03-13 17:46:24] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:24] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"get_person_profile"}
[2026-03-13 17:46:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:46:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5gqggjfalv0ksqi8ld9s9q96s","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"kt6ligi9ioc6ho4rr2bmmoc58m","session_keys":[],"action":"log_client_event"}
[2026-03-13 17:47:03] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-13 17:47:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 17:47:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:33] [INFO] Checking activity reminders 
[2026-03-13 17:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 17:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 17:47:35] [INFO] Activity save request {"post_data":{"contact_id":"17366","deal_id":"local_69b1751a5258b0.41406265","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک ،","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-13 17:47:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17366","note_was_empty":true}
[2026-03-13 17:47:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"17366","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:35] [INFO] Updating virtual stage {"contact_id":"17366","stage_name":"deal_registered","force":false}
[2026-03-13 17:47:35] [INFO] Virtual stage successfully saved {"contact_id":"17366","stage_name":"deal_registered"}
[2026-03-13 17:47:35] [INFO] Virtual stage updated after activity save {"contact_id":"17366"}
[2026-03-13 17:47:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1751a5258b0.41406265","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-13 17:47:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b41c7f6ca920.03688329","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69b41c7f6ca920.03688329"}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:35] [INFO] Updating virtual stage {"contact_id":"17366","stage_name":"deal_registered","force":false}
[2026-03-13 17:47:35] [INFO] Virtual stage successfully saved {"contact_id":"17366","stage_name":"deal_registered"}
[2026-03-13 17:47:35] [INFO] Virtual stage updated after activity save {"contact_id":"17366"}
[2026-03-13 17:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17366","person_id":"7554"}
[2026-03-13 17:47:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 17:47:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:09:21] [INFO] Checking activity reminders 
[2026-03-13 18:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:09:51] [INFO] Checking activity reminders 
[2026-03-13 18:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:10:19] [INFO] Activity save request {"post_data":{"contact_id":"local_699d851d0fd1e9.65401964","deal_id":"local_699d851d18792","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۲۰ سالشه داراب شیراز کشاورز، تازه فالو هوش وارشناسی پرزنت ۱۵ت مشورت باخانواده اطلاع شنبه فردا تا ساعت ۱۶\r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-13 18:10:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699d851d0fd1e9.65401964","note_was_empty":true}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:19] [INFO] Updating virtual stage {"contact_id":"local_699d851d0fd1e9.65401964","stage_name":"new","force":false}
[2026-03-13 18:10:19] [INFO] Virtual stage successfully saved {"contact_id":"local_699d851d0fd1e9.65401964","stage_name":"new"}
[2026-03-13 18:10:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d851d0fd1e9.65401964"}
[2026-03-13 18:10:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d851d18792","stage":"تماس پیگیری","status_change":null}
[2026-03-13 18:10:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b421d3a682e4.28584502","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69b421d3a682e4.28584502"}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:19] [INFO] Updating virtual stage {"contact_id":"local_699d851d0fd1e9.65401964","stage_name":"deal_registered","force":false}
[2026-03-13 18:10:19] [INFO] Virtual stage successfully saved {"contact_id":"local_699d851d0fd1e9.65401964","stage_name":"deal_registered"}
[2026-03-13 18:10:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d851d0fd1e9.65401964"}
[2026-03-13 18:10:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:10:21] [INFO] Checking activity reminders 
[2026-03-13 18:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:10:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-13 18:17:05] [WARNING] Auth check failed - not authenticated {"session_id":"5m6b4o4e1rl9q2tc826ckdl3qr","session_keys":[],"action":"log_client_event"}
[2026-03-13 18:17:05] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-13 18:17:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 18:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-13 18:17:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-13 18:49:41] [WARNING] Auth check failed - not authenticated {"session_id":"o4hhbvs8iql8m448jsp1546j26","session_keys":[],"action":"log_client_event"}
[2026-03-13 18:49:41] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-13 18:49:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 18:50:12] [INFO] Checking activity reminders 
[2026-03-13 18:50:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:50:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:50:27] [INFO] generateDealTitle result {"contact_id":"local_695cb9a7325153.22369790","person_name":"معدنی معدنی","mobile":"9128590709","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128590709"}
[2026-03-13 18:50:42] [INFO] Checking activity reminders 
[2026-03-13 18:50:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:50:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:51:12] [INFO] Checking activity reminders 
[2026-03-13 18:51:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:51:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:51:32] [INFO] Checking activity reminders 
[2026-03-13 18:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:51:36] [INFO] Checking activity reminders 
[2026-03-13 18:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:51:48] [INFO] Checking activity reminders 
[2026-03-13 18:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:52:08] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_695cb9a7325153.22369790","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 18:52:08","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 18:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:52:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_695cb9a7325153.22369790","is_new_deal":true}
[2026-03-13 18:52:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 18:52:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 18:52:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 18:52:08] [INFO] getContactPrimaryPhone called {"contact_id":"local_695cb9a7325153.22369790"}
[2026-03-13 18:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:52:08] [INFO] getContactPrimaryPhone result {"contact_id":"local_695cb9a7325153.22369790","person_found":true,"primary_phone":"9128590709"}
[2026-03-13 18:52:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128590709"}
[2026-03-13 18:52:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128590709","contact_id":"local_695cb9a7325153.22369790","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 18:52:08"}
[2026-03-13 18:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:52:08] [INFO] generateDealTitle result {"contact_id":"local_695cb9a7325153.22369790","person_name":"معدنی معدنی","mobile":"9128590709","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128590709"}
[2026-03-13 18:52:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_695cb9a7325153.22369790","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-13 18:52:08] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_695cb9a7325153.22369790","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 18:52:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_695cb9a7325153.22369790","title":"معامله دوم 9128590709 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128590709","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"معدنی معدنی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-13 18:52:08","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 18:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:52:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-13 18:52:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_695cb9a7325153.22369790","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9128590709 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-13 18:52:08","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 18:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-03-13 18:52:19] [INFO] Checking activity reminders 
[2026-03-13 18:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:52:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:52:57] [INFO] Checking activity reminders 
[2026-03-13 18:52:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:52:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:53:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:53:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:53:02] [INFO] generateDealTitle result {"contact_id":"7353","person_name":"علی نیستانی","mobile":"9152341161","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152341161"}
[2026-03-13 18:53:27] [INFO] Checking activity reminders 
[2026-03-13 18:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:53:40] [INFO] Checking activity reminders 
[2026-03-13 18:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:54:10] [INFO] Checking activity reminders 
[2026-03-13 18:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:54:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"7353","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 18:54:30","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 18:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"7353","is_new_deal":true}
[2026-03-13 18:54:30] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-03-13 18:54:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-03-13 18:54:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-03-13 18:54:30] [INFO] getContactPrimaryPhone called {"contact_id":"7353"}
[2026-03-13 18:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:30] [INFO] getContactPrimaryPhone result {"contact_id":"7353","person_found":true,"primary_phone":"9152341161"}
[2026-03-13 18:54:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152341161"}
[2026-03-13 18:54:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152341161","contact_id":"7353","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 18:54:30"}
[2026-03-13 18:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:30] [INFO] generateDealTitle result {"contact_id":"7353","person_name":"علی نیستانی","mobile":"9152341161","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152341161"}
[2026-03-13 18:54:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7353","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-13 18:54:30] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7353","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 18:54:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7353","title":"معامله دوم 9152341161 | CIP","base_title_used":"معامله دوم 9152341161","services_text":"CIP","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":200000000,"payment_amount":200000000,"payments_present":true,"requested_services":["CIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی نیستانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-13 18:54:30","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 18:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-13 18:54:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7353","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9152341161 | CIP","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":200000000,"payment_amount":200000000,"server_time":"2026-03-13 18:54:30","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 18:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:54:36] [INFO] generateDealTitle result {"contact_id":"7353","person_name":"علی نیستانی","mobile":"9152341161","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9152341161"}
[2026-03-13 18:54:40] [INFO] Checking activity reminders 
[2026-03-13 18:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:55:31] [INFO] Checking activity reminders 
[2026-03-13 18:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:56:11] [INFO] Checking activity reminders 
[2026-03-13 18:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:56:33] [INFO] Checking activity reminders 
[2026-03-13 18:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:57:09] [INFO] Checking activity reminders 
[2026-03-13 18:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:57:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7353","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 18:57:31","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 18:57:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:57:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7353","is_new_deal":true}
[2026-03-13 18:57:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 18:57:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 18:57:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 18:57:31] [INFO] getContactPrimaryPhone called {"contact_id":"7353"}
[2026-03-13 18:57:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:57:31] [INFO] getContactPrimaryPhone result {"contact_id":"7353","person_found":true,"primary_phone":"9152341161"}
[2026-03-13 18:57:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152341161"}
[2026-03-13 18:57:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152341161","contact_id":"7353","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 18:57:31"}
[2026-03-13 18:57:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:57:31] [INFO] generateDealTitle result {"contact_id":"7353","person_name":"علی نیستانی","mobile":"9152341161","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9152341161"}
[2026-03-13 18:57:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7353","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-13 18:57:31] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7353","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 18:57:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7353","title":"معامله سوم 9152341161 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9152341161","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی نیستانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-13 18:57:31","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 18:57:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:57:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-13 18:57:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7353","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9152341161 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-13 18:57:31","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 18:57:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-03-13 18:58:11] [INFO] Checking activity reminders 
[2026-03-13 18:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-03-13 18:58:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-03-13 18:58:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-03-13 18:58:22] [INFO] generateDealTitle result {"contact_id":"18241","person_name":"بهبودی بهبودی","mobile":"9367169378","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367169378"}
[2026-03-13 18:58:41] [INFO] Checking activity reminders 
[2026-03-13 18:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 18:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 18:59:31] [WARNING] Auth check failed - not authenticated {"session_id":"lj4hg3p1h217sheq0o6hmgaqfj","session_keys":[],"action":"log_client_event"}
[2026-03-13 18:59:31] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-13 18:59:31] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-13 18:59:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-13 18:59:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-13 18:59:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-13 18:59:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-13 19:00:18] [INFO] Checking activity reminders 
[2026-03-13 19:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:00:43] [INFO] Checking activity reminders 
[2026-03-13 19:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-03-13 19:01:13] [INFO] Checking activity reminders 
[2026-03-13 19:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:01:23] [INFO] Checking activity reminders 
[2026-03-13 19:01:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:01:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:01:45] [INFO] Checking activity reminders 
[2026-03-13 19:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:01:58] [INFO] Checking activity reminders 
[2026-03-13 19:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:02:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"20553","deal_id":"local_699ed883bc6589.31674747","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 19:02:21","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 19:02:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-03-13 19:02:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"20553","is_new_deal":false}
[2026-03-13 19:02:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-03-13 19:02:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-13 19:02:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-13 19:02:21] [INFO] getContactPrimaryPhone called {"contact_id":"20553"}
[2026-03-13 19:02:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-03-13 19:02:21] [INFO] getContactPrimaryPhone result {"contact_id":"20553","person_found":true,"primary_phone":"9397087808"}
[2026-03-13 19:02:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9397087808"}
[2026-03-13 19:02:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9397087808","contact_id":"20553","deal_id":"local_699ed883bc6589.31674747","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 19:02:21"}
[2026-03-13 19:02:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed883bc6589.31674747","contact_id":"20553","existing_deal_found":true,"existing_contact_id":"20553","existing_title":"معامله دوم 9397087808 | vip","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 19:02:21"}
[2026-03-13 19:02:21] [INFO] DealController.save validated payments {"deal_id":"local_699ed883bc6589.31674747","contact_id":"20553","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-13 19:02:21] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20553","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 19:02:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed883bc6589.31674747","contact_didar_id":"20553","title":"معامله دوم 9397087808 | کانال VIP بدون پشتیبانی","base_title_used":"معامله دوم 9397087808","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نیری","existing_deal":"YES","existing_deal_id":"local_699ed883bc6589.31674747","existing_deal_status":"Pending","server_time":"2026-03-13 19:02:21","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 19:02:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-03-13 19:02:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed883bc6589.31674747","contact_id":"20553","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9397087808 | کانال VIP بدون پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-03-13 19:02:21","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 19:02:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-03-13 19:02:38] [INFO] Checking activity reminders 
[2026-03-13 19:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:02:54] [INFO] generateDealTitle result {"contact_id":"13563","person_name":"خلف پور","mobile":"9336791711","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9336791711"}
[2026-03-13 19:03:08] [INFO] Checking activity reminders 
[2026-03-13 19:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:04:23] [INFO] Checking activity reminders 
[2026-03-13 19:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:04:47] [INFO] Checking activity reminders 
[2026-03-13 19:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:05:00] [INFO] Checking activity reminders 
[2026-03-13 19:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:05:36] [INFO] Checking activity reminders 
[2026-03-13 19:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:06:06] [INFO] Checking activity reminders 
[2026-03-13 19:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:06:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13563","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 19:06:11","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 19:06:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13563","is_new_deal":true}
[2026-03-13 19:06:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:11] [INFO] getContactPrimaryPhone called {"contact_id":"13563"}
[2026-03-13 19:06:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:11] [INFO] getContactPrimaryPhone result {"contact_id":"13563","person_found":true,"primary_phone":"9336791711"}
[2026-03-13 19:06:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336791711"}
[2026-03-13 19:06:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336791711","contact_id":"13563","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 19:06:11"}
[2026-03-13 19:06:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:11] [INFO] generateDealTitle result {"contact_id":"13563","person_name":"خلف پور","mobile":"9336791711","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9336791711"}
[2026-03-13 19:06:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13563","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 19:06:15","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 19:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13563","is_new_deal":true}
[2026-03-13 19:06:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:15] [INFO] getContactPrimaryPhone called {"contact_id":"13563"}
[2026-03-13 19:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:15] [INFO] getContactPrimaryPhone result {"contact_id":"13563","person_found":true,"primary_phone":"9336791711"}
[2026-03-13 19:06:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336791711"}
[2026-03-13 19:06:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336791711","contact_id":"13563","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 19:06:15"}
[2026-03-13 19:06:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:15] [INFO] generateDealTitle result {"contact_id":"13563","person_name":"خلف پور","mobile":"9336791711","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9336791711"}
[2026-03-13 19:06:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13563","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-13 19:06:30","session_id":"o4hhbvs8iql8m448jsp1546j26"}
[2026-03-13 19:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13563","is_new_deal":true}
[2026-03-13 19:06:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-13 19:06:30] [INFO] getContactPrimaryPhone called {"contact_id":"13563"}
[2026-03-13 19:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:30] [INFO] getContactPrimaryPhone result {"contact_id":"13563","person_found":true,"primary_phone":"9336791711"}
[2026-03-13 19:06:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336791711"}
[2026-03-13 19:06:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336791711","contact_id":"13563","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-13 19:06:30"}
[2026-03-13 19:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:30] [INFO] generateDealTitle result {"contact_id":"13563","person_name":"خلف پور","mobile":"9336791711","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9336791711"}
[2026-03-13 19:06:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13563","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-13 19:06:30] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"13563","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-13 19:06:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13563","title":"معامله دوم 9336791711 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9336791711","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خلف پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-13 19:06:30","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-13 19:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:06:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-13 19:06:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13563","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9336791711 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-13 19:06:30","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-13 19:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-13 19:07:16] [INFO] Checking activity reminders 
[2026-03-13 19:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:07:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-13 19:07:47] [INFO] Checking activity reminders 
[2026-03-13 19:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:08:15] [INFO] Checking activity reminders 
[2026-03-13 19:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-13 19:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-13 19:08:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-03-14 09:33:25] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-03-14 09:33:25] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-03-14 09:33:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 09:33:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 09:33:58] [INFO] Checking activity reminders 
[2026-03-14 09:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 09:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 09:34:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 09:34:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 09:34:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 09:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d851d0fd1e9.65401964","person_id":"21791"}
[2026-03-14 09:34:52] [INFO] Checking activity reminders 
[2026-03-14 09:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 09:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:41:33] [WARNING] Auth check failed - not authenticated {"session_id":"4o2ftqo5vlberd3b46vufdcd8o","session_keys":[],"action":"log_client_event"}
[2026-03-14 10:41:33] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 10:41:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 10:43:16] [INFO] Checking activity reminders 
[2026-03-14 10:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:43:54] [INFO] Checking activity reminders 
[2026-03-14 10:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:44:18] [INFO] Checking activity reminders 
[2026-03-14 10:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:44:26] [INFO] Checking activity reminders 
[2026-03-14 10:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:44:42] [INFO] generateDealTitle result {"contact_id":"14845","person_name":"مهدی پور","mobile":"9170273021","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170273021"}
[2026-03-14 10:44:56] [INFO] Checking activity reminders 
[2026-03-14 10:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:45:34] [INFO] Checking activity reminders 
[2026-03-14 10:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:45:39] [INFO] Checking activity reminders 
[2026-03-14 10:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:46:10] [INFO] Checking activity reminders 
[2026-03-14 10:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:47:04] [INFO] Checking activity reminders 
[2026-03-14 10:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:47:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"14845","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 10:47:19","session_id":"4o2ftqo5vlberd3b46vufdcd8o"}
[2026-03-14 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:47:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"14845","is_new_deal":true}
[2026-03-14 10:47:19] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-03-14 10:47:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-03-14 10:47:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-03-14 10:47:19] [INFO] getContactPrimaryPhone called {"contact_id":"14845"}
[2026-03-14 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:47:19] [INFO] getContactPrimaryPhone result {"contact_id":"14845","person_found":true,"primary_phone":"9170273021"}
[2026-03-14 10:47:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170273021"}
[2026-03-14 10:47:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170273021","contact_id":"14845","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 10:47:19"}
[2026-03-14 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:47:19] [INFO] generateDealTitle result {"contact_id":"14845","person_name":"مهدی پور","mobile":"9170273021","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170273021"}
[2026-03-14 10:47:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14845","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 10:47:19] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14845","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 10:47:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14845","title":"معامله دوم 9170273021 | CIP","base_title_used":"معامله دوم 9170273021","services_text":"CIP","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":200000000,"payment_amount":200000000,"payments_present":true,"requested_services":["CIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 10:47:19","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:47:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 10:47:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14845","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9170273021 | CIP","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":200000000,"payment_amount":200000000,"server_time":"2026-03-14 10:47:19","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14845","person_id":"2703"}
[2026-03-14 10:53:10] [WARNING] Auth check failed - not authenticated {"session_id":"h4n68ank74dsvnjbbv8dpvblcc","session_keys":[],"action":"log_client_event"}
[2026-03-14 10:53:10] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 10:53:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 10:53:41] [INFO] Checking activity reminders 
[2026-03-14 10:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:58:06] [INFO] Checking activity reminders 
[2026-03-14 10:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 10:59:55] [INFO] Checking activity reminders 
[2026-03-14 10:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 10:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:02:16] [INFO] Checking activity reminders 
[2026-03-14 11:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:02:52] [INFO] Checking activity reminders 
[2026-03-14 11:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-03-14 11:03:22] [INFO] Checking activity reminders 
[2026-03-14 11:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:03:53] [INFO] Checking activity reminders 
[2026-03-14 11:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:04:06] [INFO] Checking activity reminders 
[2026-03-14 11:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:04:17] [INFO] Checking activity reminders 
[2026-03-14 11:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:04:47] [INFO] Checking activity reminders 
[2026-03-14 11:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:04:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_85","deal_id":"local_699aa86cec7831.53202266","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 11:04:52","session_id":"h4n68ank74dsvnjbbv8dpvblcc"}
[2026-03-14 11:04:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-03-14 11:04:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_85","is_new_deal":false}
[2026-03-14 11:04:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 11:04:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:04:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:04:52] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_85"}
[2026-03-14 11:04:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-03-14 11:04:52] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_85","person_found":true,"primary_phone":"9160669232"}
[2026-03-14 11:04:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9160669232"}
[2026-03-14 11:04:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9160669232","contact_id":"local_1403_09_26_85","deal_id":"local_699aa86cec7831.53202266","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:04:52"}
[2026-03-14 11:04:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_699aa86cec7831.53202266","contact_id":"local_1403_09_26_85","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_85","existing_title":"معامله اول 9160669232 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:04:52"}
[2026-03-14 11:04:52] [INFO] DealController.save validated payments {"deal_id":"local_699aa86cec7831.53202266","contact_id":"local_1403_09_26_85","payments_count":4,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 11:04:52] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_1403_09_26_85","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 11:04:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699aa86cec7831.53202266","contact_didar_id":"local_1403_09_26_85","title":"معامله اول 9160669232 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9160669232","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"صادق وفایی","existing_deal":"YES","existing_deal_id":"local_699aa86cec7831.53202266","existing_deal_status":"Pending","server_time":"2026-03-14 11:04:52","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 11:04:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-03-14 11:04:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699aa86cec7831.53202266","contact_id":"local_1403_09_26_85","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9160669232 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 11:04:52","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 11:04:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-03-14 11:06:04] [INFO] Checking activity reminders 
[2026-03-14 11:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:24:00] [INFO] Checking activity reminders 
[2026-03-14 11:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:24:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-03-14 11:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-14 11:26:38] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 11:26:38] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 11:26:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 11:26:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 11:26:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 11:26:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 11:27:09] [INFO] Checking activity reminders 
[2026-03-14 11:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:28:33] [INFO] Checking activity reminders 
[2026-03-14 11:28:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:28:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:28:46] [INFO] Checking activity reminders 
[2026-03-14 11:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:29:11] [INFO] Checking activity reminders 
[2026-03-14 11:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:29:34] [INFO] Checking activity reminders 
[2026-03-14 11:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:29:44] [INFO] Checking activity reminders 
[2026-03-14 11:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:30:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3438","deal_id":"local_6950fd36929387.00126304","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 11:30:11","session_id":"h4n68ank74dsvnjbbv8dpvblcc"}
[2026-03-14 11:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-03-14 11:30:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3438","is_new_deal":false}
[2026-03-14 11:30:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 11:30:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:30:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:30:11] [INFO] getContactPrimaryPhone called {"contact_id":"3438"}
[2026-03-14 11:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-03-14 11:30:11] [INFO] getContactPrimaryPhone result {"contact_id":"3438","person_found":true,"primary_phone":"9128886513"}
[2026-03-14 11:30:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128886513"}
[2026-03-14 11:30:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128886513","contact_id":"3438","deal_id":"local_6950fd36929387.00126304","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:30:11"}
[2026-03-14 11:30:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950fd36929387.00126304","contact_id":"3438","existing_deal_found":true,"existing_contact_id":"3438","existing_title":"معامله دوم 9128886513 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:30:11"}
[2026-03-14 11:30:11] [INFO] DealController.save validated payments {"deal_id":"local_6950fd36929387.00126304","contact_id":"3438","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 11:30:11] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"3438","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 11:30:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950fd36929387.00126304","contact_didar_id":"3438","title":"معامله دوم 9128886513 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128886513","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علیرضا ساویز","existing_deal":"YES","existing_deal_id":"local_6950fd36929387.00126304","existing_deal_status":"Pending","server_time":"2026-03-14 11:30:11","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 11:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-03-14 11:30:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950fd36929387.00126304","contact_id":"3438","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9128886513 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 11:30:11","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 11:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-03-14 11:30:14] [INFO] Checking activity reminders 
[2026-03-14 11:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:42:20] [INFO] Checking activity reminders 
[2026-03-14 11:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:42:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-14 11:42:51] [INFO] Checking activity reminders 
[2026-03-14 11:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:43:21] [INFO] Checking activity reminders 
[2026-03-14 11:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:43:51] [INFO] Checking activity reminders 
[2026-03-14 11:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:44:04] [INFO] Checking activity reminders 
[2026-03-14 11:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:44:28] [INFO] Checking activity reminders 
[2026-03-14 11:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:44:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14719","deal_id":"local_69998097075d70.26992683","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 11:44:54","session_id":"h4n68ank74dsvnjbbv8dpvblcc"}
[2026-03-14 11:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-14 11:44:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14719","is_new_deal":false}
[2026-03-14 11:44:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 11:44:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:44:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 11:44:54] [INFO] getContactPrimaryPhone called {"contact_id":"14719"}
[2026-03-14 11:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-14 11:44:54] [INFO] getContactPrimaryPhone result {"contact_id":"14719","person_found":true,"primary_phone":"9153614091"}
[2026-03-14 11:44:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153614091"}
[2026-03-14 11:44:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153614091","contact_id":"14719","deal_id":"local_69998097075d70.26992683","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:44:54"}
[2026-03-14 11:44:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69998097075d70.26992683","contact_id":"14719","existing_deal_found":true,"existing_contact_id":"14719","existing_title":"معامله دوم 9153614091 | vip","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 11:44:54"}
[2026-03-14 11:44:54] [INFO] DealController.save validated payments {"deal_id":"local_69998097075d70.26992683","contact_id":"14719","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 11:44:54] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 11:44:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69998097075d70.26992683","contact_didar_id":"14719","title":"معامله دوم 9153614091 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153614091","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیرآبادی","existing_deal":"YES","existing_deal_id":"local_69998097075d70.26992683","existing_deal_status":"Pending","server_time":"2026-03-14 11:44:54","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 11:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-14 11:44:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69998097075d70.26992683","contact_id":"14719","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9153614091 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 11:44:54","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 11:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-14 11:44:58] [INFO] Checking activity reminders 
[2026-03-14 11:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:56:31] [INFO] Checking activity reminders 
[2026-03-14 11:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 11:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 11:56:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:00:26] [INFO] Checking activity reminders 
[2026-03-14 12:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:00:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-03-14 12:00:56] [INFO] Checking activity reminders 
[2026-03-14 12:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:01:34] [INFO] Checking activity reminders 
[2026-03-14 12:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:01:47] [INFO] Checking activity reminders 
[2026-03-14 12:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:01:56] [INFO] Checking activity reminders 
[2026-03-14 12:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:02:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15859","deal_id":"local_699d7b45746293.65715363","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 12:02:15","session_id":"h4n68ank74dsvnjbbv8dpvblcc"}
[2026-03-14 12:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-03-14 12:02:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15859","is_new_deal":false}
[2026-03-14 12:02:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 12:02:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:02:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:02:15] [INFO] getContactPrimaryPhone called {"contact_id":"15859"}
[2026-03-14 12:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-03-14 12:02:15] [INFO] getContactPrimaryPhone result {"contact_id":"15859","person_found":true,"primary_phone":"9368283102"}
[2026-03-14 12:02:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9368283102"}
[2026-03-14 12:02:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9368283102","contact_id":"15859","deal_id":"local_699d7b45746293.65715363","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 12:02:15"}
[2026-03-14 12:02:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d7b45746293.65715363","contact_id":"15859","existing_deal_found":true,"existing_contact_id":"15859","existing_title":"معامله دوم 9368283102 | vip","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 12:02:15"}
[2026-03-14 12:02:15] [INFO] DealController.save validated payments {"deal_id":"local_699d7b45746293.65715363","contact_id":"15859","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 12:02:15] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15859","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 12:02:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d7b45746293.65715363","contact_didar_id":"15859","title":"معامله دوم 9368283102 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9368283102","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فدایی","existing_deal":"YES","existing_deal_id":"local_699d7b45746293.65715363","existing_deal_status":"Pending","server_time":"2026-03-14 12:02:15","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 12:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-03-14 12:02:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d7b45746293.65715363","contact_id":"15859","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9368283102 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 12:02:15","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 12:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-03-14 12:02:26] [INFO] Checking activity reminders 
[2026-03-14 12:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:24:36] [WARNING] Auth check failed - not authenticated {"session_id":"qvtn8etbfho6mmlpjha55oq96o","session_keys":[],"action":"log_client_event"}
[2026-03-14 12:24:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 12:24:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 12:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:25:07] [INFO] Checking activity reminders 
[2026-03-14 12:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:25:18] [INFO] Checking activity reminders 
[2026-03-14 12:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:25:32] [INFO] Checking activity reminders 
[2026-03-14 12:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:26:04] [INFO] Checking activity reminders 
[2026-03-14 12:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:26:14] [INFO] Checking activity reminders 
[2026-03-14 12:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:26:44] [INFO] Checking activity reminders 
[2026-03-14 12:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:26:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20238","deal_id":"local_694a989c07a066.35830103","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 12:26:55","session_id":"qvtn8etbfho6mmlpjha55oq96o"}
[2026-03-14 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:26:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20238","is_new_deal":false}
[2026-03-14 12:26:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 12:26:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:26:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:26:55] [INFO] getContactPrimaryPhone called {"contact_id":"20238"}
[2026-03-14 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:26:55] [INFO] getContactPrimaryPhone result {"contact_id":"20238","person_found":true,"primary_phone":"9391534547"}
[2026-03-14 12:26:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9391534547"}
[2026-03-14 12:26:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9391534547","contact_id":"20238","deal_id":"local_694a989c07a066.35830103","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 12:26:55"}
[2026-03-14 12:26:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a989c07a066.35830103","contact_id":"20238","existing_deal_found":true,"existing_contact_id":"20238","existing_title":"معامله اول 9391534547 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-14 12:26:55"}
[2026-03-14 12:26:55] [INFO] DealController.save validated payments {"deal_id":"local_694a989c07a066.35830103","contact_id":"20238","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 12:26:55] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20238","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 12:26:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a989c07a066.35830103","contact_didar_id":"20238","title":"معامله اول 9391534547 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9391534547","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سیدمحمدرضا حسینی","existing_deal":"YES","existing_deal_id":"local_694a989c07a066.35830103","existing_deal_status":"Pending","server_time":"2026-03-14 12:26:55","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-14 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:26:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a989c07a066.35830103","contact_id":"20238","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9391534547 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":54000000,"server_time":"2026-03-14 12:26:55","ip_address":"5.106.147.134","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 12:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-03-14 12:28:27] [INFO] Checking activity reminders 
[2026-03-14 12:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:29:09] [INFO] Checking activity reminders 
[2026-03-14 12:29:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:29:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:31:26] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 12:31:26] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 12:31:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 12:31:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 12:31:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 12:31:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 12:31:57] [INFO] Checking activity reminders 
[2026-03-14 12:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:32:33] [INFO] Checking activity reminders 
[2026-03-14 12:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:32:42] [INFO] Checking activity reminders 
[2026-03-14 12:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 12:33:12] [INFO] Checking activity reminders 
[2026-03-14 12:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-14 12:33:29] [INFO] Checking activity reminders 
[2026-03-14 12:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:33:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:41] [INFO] generateDealTitle result {"contact_id":"7691","person_name":"خان زایی","mobile":"9131527141","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9131527141"}
[2026-03-14 12:33:59] [INFO] Checking activity reminders 
[2026-03-14 12:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:33:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7691","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 12:33:59","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 12:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7691","is_new_deal":true}
[2026-03-14 12:33:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 12:33:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:33:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 12:33:59] [INFO] getContactPrimaryPhone called {"contact_id":"7691"}
[2026-03-14 12:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:59] [INFO] getContactPrimaryPhone result {"contact_id":"7691","person_found":true,"primary_phone":"9131527141"}
[2026-03-14 12:33:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131527141"}
[2026-03-14 12:33:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131527141","contact_id":"7691","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 12:33:59"}
[2026-03-14 12:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:33:59] [INFO] generateDealTitle result {"contact_id":"7691","person_name":"خان زایی","mobile":"9131527141","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9131527141"}
[2026-03-14 12:33:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7691","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 12:33:59] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7691","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 12:33:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7691","title":"معامله پنجم 9131527141 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9131527141","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خان زایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 12:33:59","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 12:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:34:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 12:34:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7691","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9131527141 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 12:34:00","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 12:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 12:34:24] [INFO] Checking activity reminders 
[2026-03-14 12:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:54:26] [INFO] Checking activity reminders 
[2026-03-14 12:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:54:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 12:54:56] [INFO] Checking activity reminders 
[2026-03-14 12:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:55:26] [INFO] Checking activity reminders 
[2026-03-14 12:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:55:56] [INFO] Checking activity reminders 
[2026-03-14 12:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:56:26] [INFO] Checking activity reminders 
[2026-03-14 12:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:56:57] [INFO] Checking activity reminders 
[2026-03-14 12:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:57:27] [INFO] Checking activity reminders 
[2026-03-14 12:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:57:57] [INFO] Checking activity reminders 
[2026-03-14 12:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:58:27] [INFO] Checking activity reminders 
[2026-03-14 12:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:58:57] [INFO] Checking activity reminders 
[2026-03-14 12:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:59:27] [INFO] Checking activity reminders 
[2026-03-14 12:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 12:59:58] [INFO] Checking activity reminders 
[2026-03-14 12:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 12:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:00:28] [INFO] Checking activity reminders 
[2026-03-14 13:00:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:00:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:00:58] [INFO] Checking activity reminders 
[2026-03-14 13:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:01:28] [INFO] Checking activity reminders 
[2026-03-14 13:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:01:58] [INFO] Checking activity reminders 
[2026-03-14 13:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:02:28] [INFO] Checking activity reminders 
[2026-03-14 13:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:02:59] [INFO] Checking activity reminders 
[2026-03-14 13:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:03:29] [INFO] Checking activity reminders 
[2026-03-14 13:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:03:59] [INFO] Checking activity reminders 
[2026-03-14 13:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:04:29] [INFO] Checking activity reminders 
[2026-03-14 13:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:04:59] [INFO] Checking activity reminders 
[2026-03-14 13:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:05:29] [INFO] Checking activity reminders 
[2026-03-14 13:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:06:00] [INFO] Checking activity reminders 
[2026-03-14 13:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:06:30] [INFO] Checking activity reminders 
[2026-03-14 13:06:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:06:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:07:00] [INFO] Checking activity reminders 
[2026-03-14 13:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:07:30] [INFO] Checking activity reminders 
[2026-03-14 13:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:08:00] [INFO] Checking activity reminders 
[2026-03-14 13:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:08:30] [INFO] Checking activity reminders 
[2026-03-14 13:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:09:00] [INFO] Checking activity reminders 
[2026-03-14 13:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:09:31] [INFO] Checking activity reminders 
[2026-03-14 13:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:10:01] [INFO] Checking activity reminders 
[2026-03-14 13:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:10:31] [INFO] Checking activity reminders 
[2026-03-14 13:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:10:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:48] [INFO] Lead update received {"contact_id":"6949","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 13:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:48] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6949"}
[2026-03-14 13:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:10:55] [INFO] generateDealTitle result {"contact_id":"6949","person_name":"اقای ملکی","mobile":"9115674897","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9115674897"}
[2026-03-14 13:11:01] [INFO] Checking activity reminders 
[2026-03-14 13:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:11:31] [INFO] Checking activity reminders 
[2026-03-14 13:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:11:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6949","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:11:48","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:11:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6949","is_new_deal":true}
[2026-03-14 13:11:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:11:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:11:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:11:48] [INFO] getContactPrimaryPhone called {"contact_id":"6949"}
[2026-03-14 13:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:11:48] [INFO] getContactPrimaryPhone result {"contact_id":"6949","person_found":true,"primary_phone":"9115674897"}
[2026-03-14 13:11:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9115674897"}
[2026-03-14 13:11:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9115674897","contact_id":"6949","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:11:48"}
[2026-03-14 13:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:11:48] [INFO] generateDealTitle result {"contact_id":"6949","person_name":"اقای ملکی","mobile":"9115674897","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9115674897"}
[2026-03-14 13:11:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6949","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:11:48] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"6949","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:11:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6949","title":"معامله دوم 9115674897 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9115674897","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای ملکی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:11:48","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:11:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:11:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6949","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9115674897 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:11:48","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 13:12:02] [INFO] Checking activity reminders 
[2026-03-14 13:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:12:32] [INFO] Checking activity reminders 
[2026-03-14 13:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:13:05] [INFO] Checking activity reminders 
[2026-03-14 13:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:13:35] [INFO] Checking activity reminders 
[2026-03-14 13:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:14:05] [INFO] Checking activity reminders 
[2026-03-14 13:14:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:14:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:14:35] [INFO] Checking activity reminders 
[2026-03-14 13:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:15:05] [INFO] Checking activity reminders 
[2026-03-14 13:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:15:35] [INFO] Checking activity reminders 
[2026-03-14 13:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:16:06] [INFO] Checking activity reminders 
[2026-03-14 13:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:16:36] [INFO] Checking activity reminders 
[2026-03-14 13:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:17:06] [INFO] Checking activity reminders 
[2026-03-14 13:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:17:36] [INFO] Checking activity reminders 
[2026-03-14 13:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:18:06] [INFO] Checking activity reminders 
[2026-03-14 13:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:18:36] [INFO] Checking activity reminders 
[2026-03-14 13:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:19:06] [INFO] Checking activity reminders 
[2026-03-14 13:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:19:36] [INFO] Checking activity reminders 
[2026-03-14 13:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:20:07] [INFO] Checking activity reminders 
[2026-03-14 13:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:20:44] [INFO] Checking activity reminders 
[2026-03-14 13:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:20:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:20:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:20:50] [INFO] generateDealTitle result {"contact_id":"13827","person_name":"اقای حسین زاده","mobile":"9393427403","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9393427403"}
[2026-03-14 13:21:15] [INFO] Checking activity reminders 
[2026-03-14 13:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:21:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13827","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:21:22","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:21:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13827","is_new_deal":true}
[2026-03-14 13:21:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:21:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:21:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:21:22] [INFO] getContactPrimaryPhone called {"contact_id":"13827"}
[2026-03-14 13:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:21:22] [INFO] getContactPrimaryPhone result {"contact_id":"13827","person_found":true,"primary_phone":"9393427403"}
[2026-03-14 13:21:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393427403"}
[2026-03-14 13:21:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393427403","contact_id":"13827","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:21:22"}
[2026-03-14 13:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:21:22] [INFO] generateDealTitle result {"contact_id":"13827","person_name":"اقای حسین زاده","mobile":"9393427403","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9393427403"}
[2026-03-14 13:21:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13827","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:21:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13827","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:21:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13827","title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9393427403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای حسین زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:21:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:21:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:21:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13827","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:21:22","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 13:22:01] [INFO] Checking activity reminders 
[2026-03-14 13:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:22:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:22:29] [INFO] Checking activity reminders 
[2026-03-14 13:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:22:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:22:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:22:33] [INFO] generateDealTitle result {"contact_id":"9781","person_name":"عرف فرقانی","mobile":"9124211217","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9124211217"}
[2026-03-14 13:22:59] [INFO] Checking activity reminders 
[2026-03-14 13:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:23:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9781","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:23:12","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:23:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9781","is_new_deal":true}
[2026-03-14 13:23:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:23:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:23:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:23:12] [INFO] getContactPrimaryPhone called {"contact_id":"9781"}
[2026-03-14 13:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:23:12] [INFO] getContactPrimaryPhone result {"contact_id":"9781","person_found":true,"primary_phone":"9124211217"}
[2026-03-14 13:23:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124211217"}
[2026-03-14 13:23:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124211217","contact_id":"9781","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:23:12"}
[2026-03-14 13:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:23:12] [INFO] generateDealTitle result {"contact_id":"9781","person_name":"عرف فرقانی","mobile":"9124211217","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9124211217"}
[2026-03-14 13:23:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9781","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:23:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9781","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:23:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9781","title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9124211217","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرف فرقانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:23:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:23:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:23:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9781","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:23:12","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:23:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-14 13:23:33] [INFO] Checking activity reminders 
[2026-03-14 13:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:23:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:24:03] [INFO] Checking activity reminders 
[2026-03-14 13:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:24:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:24:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:24:21] [INFO] generateDealTitle result {"contact_id":"13663","person_name":"اسماعیل حسینی","mobile":"9184359007","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9184359007"}
[2026-03-14 13:24:33] [INFO] Checking activity reminders 
[2026-03-14 13:24:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:24:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:25:03] [INFO] Checking activity reminders 
[2026-03-14 13:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:25:33] [INFO] Checking activity reminders 
[2026-03-14 13:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:26:04] [INFO] Checking activity reminders 
[2026-03-14 13:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:26:34] [INFO] Checking activity reminders 
[2026-03-14 13:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:27:04] [INFO] Checking activity reminders 
[2026-03-14 13:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:27:34] [INFO] Checking activity reminders 
[2026-03-14 13:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:28:04] [INFO] Checking activity reminders 
[2026-03-14 13:28:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:28:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:28:34] [INFO] Checking activity reminders 
[2026-03-14 13:28:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:28:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:29:02] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13663","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:29:02","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:29:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:29:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13663","is_new_deal":true}
[2026-03-14 13:29:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:29:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:29:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:29:02] [INFO] getContactPrimaryPhone called {"contact_id":"13663"}
[2026-03-14 13:29:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:29:02] [INFO] getContactPrimaryPhone result {"contact_id":"13663","person_found":true,"primary_phone":"9184359007"}
[2026-03-14 13:29:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184359007"}
[2026-03-14 13:29:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184359007","contact_id":"13663","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:29:02"}
[2026-03-14 13:29:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:29:02] [INFO] generateDealTitle result {"contact_id":"13663","person_name":"اسماعیل حسینی","mobile":"9184359007","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9184359007"}
[2026-03-14 13:29:02] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13663","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:29:02] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13663","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:29:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13663","title":"معامله سوم 9184359007 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9184359007","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:29:02","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:29:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:29:02] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:29:02] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13663","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9184359007 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:29:02","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:29:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 13:29:08] [INFO] Checking activity reminders 
[2026-03-14 13:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:29:38] [INFO] Checking activity reminders 
[2026-03-14 13:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:30:08] [INFO] Checking activity reminders 
[2026-03-14 13:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:30:38] [INFO] Checking activity reminders 
[2026-03-14 13:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:31:08] [INFO] Checking activity reminders 
[2026-03-14 13:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:31:39] [INFO] Checking activity reminders 
[2026-03-14 13:31:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:31:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:31:54] [INFO] Checking activity reminders 
[2026-03-14 13:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:31:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:08] [INFO] generateDealTitle result {"contact_id":"21191","person_name":"حمیدرضا احمدی","mobile":"9127599068","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127599068"}
[2026-03-14 13:32:25] [INFO] Checking activity reminders 
[2026-03-14 13:32:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:32:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:32:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21191","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:32:25","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:32:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21191","is_new_deal":true}
[2026-03-14 13:32:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:32:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:32:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:32:25] [INFO] getContactPrimaryPhone called {"contact_id":"21191"}
[2026-03-14 13:32:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:25] [INFO] getContactPrimaryPhone result {"contact_id":"21191","person_found":true,"primary_phone":"9127599068"}
[2026-03-14 13:32:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127599068"}
[2026-03-14 13:32:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127599068","contact_id":"21191","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:32:25"}
[2026-03-14 13:32:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:25] [INFO] generateDealTitle result {"contact_id":"21191","person_name":"حمیدرضا احمدی","mobile":"9127599068","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127599068"}
[2026-03-14 13:32:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21191","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:32:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21191","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:32:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21191","title":"معامله دوم 9127599068 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127599068","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حمیدرضا احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:32:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:32:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:32:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:32:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21191","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127599068 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:32:25","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:32:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:36:05] [INFO] Checking activity reminders 
[2026-03-14 13:36:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:36:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 13:36:22] [INFO] Checking activity reminders 
[2026-03-14 13:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:36:45] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9118125684","09118125684"]}
[2026-03-14 13:36:45] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9118125684","09118125684"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 13:36:45] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9118125684","full_name":"لید جدید"}
[2026-03-14 13:36:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-14 13:36:45] [INFO] Notification created {"notification_id":"567","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 13:36:58] [INFO] Checking activity reminders 
[2026-03-14 13:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:37:27] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9141680951","09141680951"]}
[2026-03-14 13:37:27] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9141680951","09141680951"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 13:37:27] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9141680951","full_name":"لید جدید"}
[2026-03-14 13:37:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:37:27] [INFO] Notification created {"notification_id":"568","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 13:37:28] [INFO] Checking activity reminders 
[2026-03-14 13:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:37:54] [INFO] Checking activity reminders 
[2026-03-14 13:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:37:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:37:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:04] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_103","person_name":"حسینی","mobile":"9197727343","existing_deals":0,"ordinal":"اول","title":"معامله اول 9197727343"}
[2026-03-14 13:38:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_103","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:38:21","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_103","is_new_deal":true}
[2026-03-14 13:38:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:38:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:38:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:38:21] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_103"}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:21] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_103","person_found":true,"primary_phone":"9197727343"}
[2026-03-14 13:38:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197727343"}
[2026-03-14 13:38:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197727343","contact_id":"local_1403_09_26_103","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:38:21"}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:21] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_103","person_name":"حسینی","mobile":"9197727343","existing_deals":0,"ordinal":"اول","title":"معامله اول 9197727343"}
[2026-03-14 13:38:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_103","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:38:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_103","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:38:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_103","title":"معامله اول 9197727343 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9197727343","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:38:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:38:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_103","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9197727343 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:38:21","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 13:38:26] [INFO] Checking activity reminders 
[2026-03-14 13:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:38:36] [INFO] Checking activity reminders 
[2026-03-14 13:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:38:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:38:44] [INFO] generateDealTitle result {"contact_id":"21608","person_name":"اسماعیل دلسوز","mobile":"9151632237","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151632237"}
[2026-03-14 13:39:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21608","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:39:00","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:39:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21608","is_new_deal":true}
[2026-03-14 13:39:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:00] [INFO] getContactPrimaryPhone called {"contact_id":"21608"}
[2026-03-14 13:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:39:00] [INFO] getContactPrimaryPhone result {"contact_id":"21608","person_found":true,"primary_phone":"9151632237"}
[2026-03-14 13:39:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151632237"}
[2026-03-14 13:39:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151632237","contact_id":"21608","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:39:00"}
[2026-03-14 13:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:39:00] [INFO] generateDealTitle result {"contact_id":"21608","person_name":"اسماعیل دلسوز","mobile":"9151632237","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151632237"}
[2026-03-14 13:39:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21608","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:39:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21608","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:39:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21608","title":"معامله دوم 9151632237 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151632237","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل دلسوز","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:39:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:39:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:39:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21608","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9151632237 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:39:00","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 13:39:07] [INFO] Checking activity reminders 
[2026-03-14 13:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:39:15] [INFO] Checking activity reminders 
[2026-03-14 13:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:39:24] [INFO] Checking activity reminders 
[2026-03-14 13:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:31] [INFO] generateDealTitle result {"contact_id":"3360","person_name":"یلقی","mobile":"9052054153","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9052054153"}
[2026-03-14 13:39:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3360","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:39:47","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3360","is_new_deal":true}
[2026-03-14 13:39:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:39:47] [INFO] getContactPrimaryPhone called {"contact_id":"3360"}
[2026-03-14 13:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:47] [INFO] getContactPrimaryPhone result {"contact_id":"3360","person_found":true,"primary_phone":"9052054153"}
[2026-03-14 13:39:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9052054153"}
[2026-03-14 13:39:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9052054153","contact_id":"3360","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:39:47"}
[2026-03-14 13:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:47] [INFO] generateDealTitle result {"contact_id":"3360","person_name":"یلقی","mobile":"9052054153","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9052054153"}
[2026-03-14 13:39:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3360","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:39:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3360","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:39:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3360","title":"معامله سوم 9052054153 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9052054153","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یلقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:39:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:39:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3360","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9052054153 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:39:47","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-14 13:39:58] [INFO] Checking activity reminders 
[2026-03-14 13:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:40:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-14 13:45:26] [INFO] Checking activity reminders 
[2026-03-14 13:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-03-14 13:45:48] [INFO] Checking activity reminders 
[2026-03-14 13:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:45:54] [INFO] Checking activity reminders 
[2026-03-14 13:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:46:13] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9024315511","09024315511"]}
[2026-03-14 13:46:13] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9024315511","09024315511"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 13:46:13] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9024315511","full_name":"لید جدید"}
[2026-03-14 13:46:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:46:13] [INFO] Notification created {"notification_id":"569","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 13:46:26] [INFO] Checking activity reminders 
[2026-03-14 13:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:46:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:46:56] [INFO] Checking activity reminders 
[2026-03-14 13:46:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:46:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:47:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:47:14] [INFO] generateDealTitle result {"contact_id":"20906","person_name":"محمد حسین رضایی","mobile":"9214772934","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9214772934"}
[2026-03-14 13:47:27] [INFO] Checking activity reminders 
[2026-03-14 13:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:47:57] [INFO] Checking activity reminders 
[2026-03-14 13:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:48:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20906","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 13:48:03","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 13:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20906","is_new_deal":true}
[2026-03-14 13:48:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 13:48:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:48:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 13:48:03] [INFO] getContactPrimaryPhone called {"contact_id":"20906"}
[2026-03-14 13:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:03] [INFO] getContactPrimaryPhone result {"contact_id":"20906","person_found":true,"primary_phone":"9214772934"}
[2026-03-14 13:48:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9214772934"}
[2026-03-14 13:48:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9214772934","contact_id":"20906","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 13:48:03"}
[2026-03-14 13:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:03] [INFO] generateDealTitle result {"contact_id":"20906","person_name":"محمد حسین رضایی","mobile":"9214772934","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9214772934"}
[2026-03-14 13:48:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20906","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 13:48:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"20906","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 13:48:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20906","title":"معامله سوم 9214772934 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9214772934","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"محمد حسین رضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 13:48:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 13:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 13:48:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20906","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9214772934 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 13:48:03","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 13:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 13:48:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 13:48:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 13:48:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 13:48:27] [INFO] Checking activity reminders 
[2026-03-14 13:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:48:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:48:34] [INFO] generateDealTitle result {"contact_id":"20906","person_name":"محمد حسین رضایی","mobile":"9214772934","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9214772934"}
[2026-03-14 13:48:57] [INFO] Checking activity reminders 
[2026-03-14 13:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:49:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 13:51:23] [WARNING] Auth check failed - not authenticated {"session_id":"nuldltih8q1joc3lt7c2et7m5m","session_keys":[],"action":"log_client_event"}
[2026-03-14 13:51:23] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-14 13:51:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 13:51:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 13:51:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 13:51:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 13:51:54] [INFO] Checking activity reminders 
[2026-03-14 13:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:52:23] [WARNING] Auth check failed - not authenticated {"session_id":"pvclkphf37urjf2cc2ctmd3el4","session_keys":[],"action":"log_client_event"}
[2026-03-14 13:52:23] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 13:52:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 13:52:24] [INFO] Checking activity reminders 
[2026-03-14 13:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:52:46] [INFO] Checking activity reminders 
[2026-03-14 13:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:52:54] [INFO] Checking activity reminders 
[2026-03-14 13:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:53:24] [INFO] Checking activity reminders 
[2026-03-14 13:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:53:54] [INFO] Checking activity reminders 
[2026-03-14 13:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:54:24] [INFO] Checking activity reminders 
[2026-03-14 13:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:54:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-03-14 13:55:01] [INFO] Checking activity reminders 
[2026-03-14 13:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:55:31] [INFO] Checking activity reminders 
[2026-03-14 13:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:56:01] [INFO] Checking activity reminders 
[2026-03-14 13:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:56:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:56:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:56:31] [INFO] Checking activity reminders 
[2026-03-14 13:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:57:16] [INFO] Checking activity reminders 
[2026-03-14 13:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:57:26] [INFO] Checking activity reminders 
[2026-03-14 13:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:57:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:57:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:57:46] [INFO] Checking activity reminders 
[2026-03-14 13:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:57:56] [INFO] Checking activity reminders 
[2026-03-14 13:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:58:07] [INFO] Checking activity reminders 
[2026-03-14 13:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:58:10] [INFO] Lead update received {"contact_id":"local_69b5335f2549b0.92776064","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 13:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:58:10] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5335f2549b0.92776064"}
[2026-03-14 13:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 13:58:26] [INFO] Checking activity reminders 
[2026-03-14 13:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:58:37] [INFO] Checking activity reminders 
[2026-03-14 13:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:58:56] [INFO] Checking activity reminders 
[2026-03-14 13:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:59:07] [INFO] Checking activity reminders 
[2026-03-14 13:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 13:59:13] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5335f2549b0.92776064","deal_id":"local_69b5335f31c6c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پولشو سرمایه گذاری کرده طلای فیزیکی سودش بعد عید میاد دستش اکن زمان گفت تمتس بگیرین، باشگاه دار ، مهاباد ، گفت درخواست نواشتم زده بود طلا اون گزینه رو زدم","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 13:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 13:59:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 13:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5335f2549b0.92776064","note_was_empty":true}
[2026-03-14 13:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:13] [INFO] Updating virtual stage {"contact_id":"local_69b5335f2549b0.92776064","stage_name":"new","force":false}
[2026-03-14 13:59:13] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5335f2549b0.92776064","stage_name":"new"}
[2026-03-14 13:59:13] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5335f2549b0.92776064"}
[2026-03-14 13:59:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5335f31c6c","stage":"تماس پیگیری","status_change":null}
[2026-03-14 13:59:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53879c8c1d2.79789077","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 13:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53879c8c1d2.79789077"}
[2026-03-14 13:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:13] [INFO] Updating virtual stage {"contact_id":"local_69b5335f2549b0.92776064","stage_name":"deal_registered","force":false}
[2026-03-14 13:59:13] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5335f2549b0.92776064","stage_name":"deal_registered"}
[2026-03-14 13:59:13] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5335f2549b0.92776064"}
[2026-03-14 13:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 13:59:27] [INFO] Checking activity reminders 
[2026-03-14 13:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 13:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:00:00] [INFO] Checking activity reminders 
[2026-03-14 14:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:00:27] [INFO] Checking activity reminders 
[2026-03-14 14:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:00:30] [INFO] Checking activity reminders 
[2026-03-14 14:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:00:57] [INFO] Checking activity reminders 
[2026-03-14 14:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:01:00] [INFO] Checking activity reminders 
[2026-03-14 14:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:01:27] [INFO] Checking activity reminders 
[2026-03-14 14:01:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:01:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:02:02] [INFO] Checking activity reminders 
[2026-03-14 14:02:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:02:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:02:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:02:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:02:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 14:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-14 14:02:19] [INFO] Checking activity reminders 
[2026-03-14 14:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:02:24] [INFO] Checking activity reminders 
[2026-03-14 14:02:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:02:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:02:52] [INFO] Checking activity reminders 
[2026-03-14 14:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:03:01] [INFO] Checking activity reminders 
[2026-03-14 14:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:03:28] [INFO] Checking activity reminders 
[2026-03-14 14:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:03:36] [INFO] Checking activity reminders 
[2026-03-14 14:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:03:52] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9111723449","09111723449"]}
[2026-03-14 14:03:52] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9111723449","09111723449"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 14:03:52] [INFO] Didar write disabled; creating local lead only {"owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","mobile":"9111723449","full_name":"لید جدید"}
[2026-03-14 14:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 14:03:52] [INFO] Notification created {"notification_id":"570","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"lead_assigned","show_popup":true}
[2026-03-14 14:03:58] [INFO] Checking activity reminders 
[2026-03-14 14:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:04:06] [INFO] Checking activity reminders 
[2026-03-14 14:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:04:51] [INFO] Checking activity reminders 
[2026-03-14 14:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:05:03] [INFO] Checking activity reminders 
[2026-03-14 14:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:05:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:12] [INFO] generateDealTitle result {"contact_id":"9792","person_name":"فتاحی","mobile":"9123237522","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123237522"}
[2026-03-14 14:05:23] [INFO] Checking activity reminders 
[2026-03-14 14:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:05:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9792","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:05:32","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9792","is_new_deal":true}
[2026-03-14 14:05:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:05:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:05:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:05:32] [INFO] getContactPrimaryPhone called {"contact_id":"9792"}
[2026-03-14 14:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:32] [INFO] getContactPrimaryPhone result {"contact_id":"9792","person_found":true,"primary_phone":"9123237522"}
[2026-03-14 14:05:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123237522"}
[2026-03-14 14:05:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123237522","contact_id":"9792","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 14:05:32"}
[2026-03-14 14:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:32] [INFO] generateDealTitle result {"contact_id":"9792","person_name":"فتاحی","mobile":"9123237522","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123237522"}
[2026-03-14 14:05:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9792","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:05:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9792","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:05:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9792","title":"معامله دوم 9123237522 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123237522","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"فتاحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:05:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:05:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9792","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123237522 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:05:32","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:05:33] [INFO] Checking activity reminders 
[2026-03-14 14:05:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:05:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:06:09] [INFO] Checking activity reminders 
[2026-03-14 14:06:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:06:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:18] [INFO] generateDealTitle result {"contact_id":"17008","person_name":"اسدی","mobile":"9124284088","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124284088"}
[2026-03-14 14:06:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17008","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:06:35","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:06:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17008","is_new_deal":true}
[2026-03-14 14:06:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:06:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:06:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:06:35] [INFO] getContactPrimaryPhone called {"contact_id":"17008"}
[2026-03-14 14:06:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:35] [INFO] getContactPrimaryPhone result {"contact_id":"17008","person_found":true,"primary_phone":"9124284088"}
[2026-03-14 14:06:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124284088"}
[2026-03-14 14:06:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124284088","contact_id":"17008","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 14:06:35"}
[2026-03-14 14:06:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:35] [INFO] generateDealTitle result {"contact_id":"17008","person_name":"اسدی","mobile":"9124284088","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124284088"}
[2026-03-14 14:06:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17008","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:06:35] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17008","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:06:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17008","title":"معامله سوم 9124284088 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9124284088","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:06:35","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:06:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:06:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17008","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9124284088 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:06:35","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:06:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 14:06:41] [INFO] Checking activity reminders 
[2026-03-14 14:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:06:42] [INFO] Checking activity reminders 
[2026-03-14 14:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:07:05] [INFO] Checking activity reminders 
[2026-03-14 14:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:07:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:12] [INFO] Checking activity reminders 
[2026-03-14 14:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:07:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:07:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:07:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:07:22] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:07:22] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-14 14:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:22] [INFO] generateDealTitle result {"contact_id":"local_695cc3ba045d98.86248747","person_name":"علی محمدی","mobile":"9308512004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9308512004"}
[2026-03-14 14:07:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:07:35] [INFO] Checking activity reminders 
[2026-03-14 14:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:07:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_695cc3ba045d98.86248747","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:07:42","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:07:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_695cc3ba045d98.86248747","is_new_deal":true}
[2026-03-14 14:07:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:07:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:07:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:07:42] [INFO] getContactPrimaryPhone called {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-03-14 14:07:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:42] [INFO] getContactPrimaryPhone result {"contact_id":"local_695cc3ba045d98.86248747","person_found":true,"primary_phone":"9308512004"}
[2026-03-14 14:07:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9308512004"}
[2026-03-14 14:07:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9308512004","contact_id":"local_695cc3ba045d98.86248747","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-14 14:07:42"}
[2026-03-14 14:07:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:42] [INFO] generateDealTitle result {"contact_id":"local_695cc3ba045d98.86248747","person_name":"علی محمدی","mobile":"9308512004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9308512004"}
[2026-03-14 14:07:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_695cc3ba045d98.86248747","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:07:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_695cc3ba045d98.86248747","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:07:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_695cc3ba045d98.86248747","title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9308512004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:07:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:07:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:07:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_695cc3ba045d98.86248747","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:07:42","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:07:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:07:44] [INFO] Checking activity reminders 
[2026-03-14 14:07:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:07:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:07:53] [INFO] Checking activity reminders 
[2026-03-14 14:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:11] [INFO] Checking activity reminders 
[2026-03-14 14:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:08:15] [INFO] Checking activity reminders 
[2026-03-14 14:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:08:18] [INFO] generateDealTitle result {"contact_id":"873","person_name":"ناصر براتی","mobile":"9934194403","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9934194403"}
[2026-03-14 14:08:23] [INFO] Checking activity reminders 
[2026-03-14 14:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-03-14 14:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-03-14 14:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-03-14 14:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-03-14 14:08:41] [INFO] Checking activity reminders 
[2026-03-14 14:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:54] [INFO] Checking activity reminders 
[2026-03-14 14:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:08:54] [INFO] Checking activity reminders 
[2026-03-14 14:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:09:11] [INFO] Checking activity reminders 
[2026-03-14 14:09:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:09:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:09:19] [DEBUG] findByPhone: Found person {"phones":["9934194403"],"found_id":"6680","found_didar_id":"873","found_name":"ناصر براتی"}
[2026-03-14 14:09:19] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9934194403","found_didar_id":"873","found_local_id":"6680","found_name":"ناصر براتی"}
[2026-03-14 14:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:19] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9934194403","09934194403"]}
[2026-03-14 14:09:19] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9934194403","09934194403"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 14:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:19] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9934194403","existing_contact_id":"873","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9934194403"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9934194403","09934194403"]}
[2026-03-14 14:09:19] [INFO] Duplicate lead response prepared using local ID {"local_id":"6680","didar_id":"873"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [INFO] generateDealTitle result {"contact_id":"873","person_name":"ناصر براتی","mobile":"9934194403","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9934194403"}
[2026-03-14 14:09:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9934194403","contact_id":"873","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 14:09:22","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9934194403","contact_id":"873","is_new_deal":true}
[2026-03-14 14:09:22] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9934194403"}
[2026-03-14 14:09:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9934194403"}
[2026-03-14 14:09:22] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9934194403","pattern":"معامله_ordinal_phone"}
[2026-03-14 14:09:22] [INFO] getContactPrimaryPhone called {"contact_id":"873"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [INFO] getContactPrimaryPhone result {"contact_id":"873","person_found":true,"primary_phone":"9934194403"}
[2026-03-14 14:09:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9934194403","contact_primary_phone":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison called {"input_phone":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison cleaned {"original":"9934194403","cleaned":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison called {"input_phone":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison cleaned {"original":"9934194403","cleaned":"9934194403"}
[2026-03-14 14:09:22] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9934194403"}
[2026-03-14 14:09:22] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9934194403","normalized_contact_phone":"9934194403","phones_match":true}
[2026-03-14 14:09:22] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9934194403","deal_phone":"9934194403","contact_phone":"9934194403","contact_id":"873","validation":"PASSED"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [INFO] generateDealTitle result {"contact_id":"873","person_name":"ناصر براتی","mobile":"9934194403","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9934194403"}
[2026-03-14 14:09:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"873","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:09:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"873","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:09:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"873","title":"معامله دوم 9934194403","base_title_used":"معامله دوم 9934194403","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"ناصر براتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:09:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:09:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"873","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9934194403","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 14:09:22","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:09:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:09:24] [INFO] Checking activity reminders 
[2026-03-14 14:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:09:42] [INFO] Checking activity reminders 
[2026-03-14 14:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:09:54] [INFO] Checking activity reminders 
[2026-03-14 14:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:12] [INFO] Checking activity reminders 
[2026-03-14 14:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:20] [INFO] Checking activity reminders 
[2026-03-14 14:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:23] [DEBUG] findByPhone: Found person {"phones":["9039213149"],"found_id":"15136","found_didar_id":"7829","found_name":"9039213149"}
[2026-03-14 14:10:23] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9039213149","found_didar_id":"7829","found_local_id":"15136","found_name":"9039213149"}
[2026-03-14 14:10:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:23] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9039213149","09039213149"]}
[2026-03-14 14:10:23] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9039213149","09039213149"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 14:10:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:23] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9039213149","existing_contact_id":"7829","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9039213149"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9039213149","09039213149"]}
[2026-03-14 14:10:23] [INFO] Duplicate lead response prepared using local ID {"local_id":"15136","didar_id":"7829"}
[2026-03-14 14:10:24] [INFO] Checking activity reminders 
[2026-03-14 14:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [INFO] generateDealTitle result {"contact_id":"7829","person_name":"9039213149","mobile":"9039213149","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9039213149"}
[2026-03-14 14:10:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9039213149","contact_id":"7829","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 14:10:25","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9039213149","contact_id":"7829","is_new_deal":true}
[2026-03-14 14:10:25] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9039213149"}
[2026-03-14 14:10:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9039213149"}
[2026-03-14 14:10:25] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9039213149","pattern":"معامله_ordinal_phone"}
[2026-03-14 14:10:25] [INFO] getContactPrimaryPhone called {"contact_id":"7829"}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [INFO] getContactPrimaryPhone result {"contact_id":"7829","person_found":true,"primary_phone":"9039213149"}
[2026-03-14 14:10:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9039213149","contact_primary_phone":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison called {"input_phone":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison cleaned {"original":"9039213149","cleaned":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison called {"input_phone":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison cleaned {"original":"9039213149","cleaned":"9039213149"}
[2026-03-14 14:10:25] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9039213149"}
[2026-03-14 14:10:25] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9039213149","normalized_contact_phone":"9039213149","phones_match":true}
[2026-03-14 14:10:25] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9039213149","deal_phone":"9039213149","contact_phone":"9039213149","contact_id":"7829","validation":"PASSED"}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [INFO] generateDealTitle result {"contact_id":"7829","person_name":"9039213149","mobile":"9039213149","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9039213149"}
[2026-03-14 14:10:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7829","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:10:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7829","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:10:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7829","title":"معامله دوم 9039213149","base_title_used":"معامله دوم 9039213149","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"9039213149","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:10:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:10:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:10:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7829","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9039213149","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 14:10:25","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:10:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:10:38] [INFO] Checking activity reminders 
[2026-03-14 14:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:50] [INFO] Checking activity reminders 
[2026-03-14 14:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:54] [INFO] Checking activity reminders 
[2026-03-14 14:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:10:56] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9106187042","09106187042"]}
[2026-03-14 14:10:56] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9106187042","09106187042"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 14:10:56] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9106187042","full_name":"لید جدید"}
[2026-03-14 14:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:10:56] [INFO] Notification created {"notification_id":"571","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 14:11:08] [INFO] Checking activity reminders 
[2026-03-14 14:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:12] [INFO] Checking activity reminders 
[2026-03-14 14:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:25] [INFO] Checking activity reminders 
[2026-03-14 14:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:41] [INFO] Checking activity reminders 
[2026-03-14 14:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:42] [INFO] Checking activity reminders 
[2026-03-14 14:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:54] [INFO] Checking activity reminders 
[2026-03-14 14:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:11:55] [INFO] Checking activity reminders 
[2026-03-14 14:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:12:18] [INFO] Lead update received {"contact_id":"local_69b53b38944027.01024355","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:12:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53b38944027.01024355"}
[2026-03-14 14:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-14 14:12:24] [INFO] Checking activity reminders 
[2026-03-14 14:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:12:25] [INFO] Checking activity reminders 
[2026-03-14 14:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:12:55] [INFO] Checking activity reminders 
[2026-03-14 14:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:13:26] [INFO] Checking activity reminders 
[2026-03-14 14:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:13:30] [INFO] Checking activity reminders 
[2026-03-14 14:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-03-14 14:13:56] [INFO] Checking activity reminders 
[2026-03-14 14:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:14:26] [INFO] Checking activity reminders 
[2026-03-14 14:14:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:14:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:14:42] [INFO] Checking activity reminders 
[2026-03-14 14:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:14:54] [INFO] Checking activity reminders 
[2026-03-14 14:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:14:56] [INFO] Checking activity reminders 
[2026-03-14 14:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:04] [WARNING] Auth check failed - not authenticated {"session_id":"hf52mktqglo82f41uetm5ggtpj","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:15:04] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-14 14:15:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:15:06] [INFO] Checking activity reminders 
[2026-03-14 14:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:18] [INFO] Checking activity reminders 
[2026-03-14 14:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:23] [INFO] Checking activity reminders 
[2026-03-14 14:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:27] [INFO] Checking activity reminders 
[2026-03-14 14:15:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:29] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9125125139","09125125139"]}
[2026-03-14 14:15:29] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9125125139","09125125139"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 14:15:29] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9125125139","full_name":"لید جدید"}
[2026-03-14 14:15:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-14 14:15:29] [INFO] Notification created {"notification_id":"572","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 14:15:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:15:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:15:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:15:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:15:34] [INFO] Checking activity reminders 
[2026-03-14 14:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:46] [INFO] Checking activity reminders 
[2026-03-14 14:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:15:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:15:57] [INFO] Checking activity reminders 
[2026-03-14 14:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:01] [INFO] Checking activity reminders 
[2026-03-14 14:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:05] [INFO] Checking activity reminders 
[2026-03-14 14:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:16:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:16:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:16:16] [INFO] Checking activity reminders 
[2026-03-14 14:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:16:28] [INFO] Checking activity reminders 
[2026-03-14 14:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:31] [INFO] Checking activity reminders 
[2026-03-14 14:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:35] [INFO] Checking activity reminders 
[2026-03-14 14:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:46] [INFO] Checking activity reminders 
[2026-03-14 14:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:16:58] [INFO] Checking activity reminders 
[2026-03-14 14:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:02] [INFO] Checking activity reminders 
[2026-03-14 14:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:02] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9016553493","09016553493"]}
[2026-03-14 14:17:02] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9016553493","09016553493"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 14:17:02] [INFO] Didar write disabled; creating local lead only {"owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","mobile":"9016553493","full_name":"نازنین"}
[2026-03-14 14:17:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:17:02] [INFO] Notification created {"notification_id":"573","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"lead_assigned","show_popup":true}
[2026-03-14 14:17:05] [INFO] Lead update received {"contact_id":"15382","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:17:05] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15382"}
[2026-03-14 14:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:17:05] [INFO] Checking activity reminders 
[2026-03-14 14:17:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:16] [INFO] Checking activity reminders 
[2026-03-14 14:17:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:28] [INFO] Checking activity reminders 
[2026-03-14 14:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:50] [INFO] Checking activity reminders 
[2026-03-14 14:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:17:59] [INFO] Checking activity reminders 
[2026-03-14 14:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:18:03] [INFO] Checking activity reminders 
[2026-03-14 14:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:18:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:18:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:18:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:18:16] [INFO] Checking activity reminders 
[2026-03-14 14:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:18:33] [INFO] Checking activity reminders 
[2026-03-14 14:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:18:33] [INFO] Checking activity reminders 
[2026-03-14 14:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:18:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b53a766e21c1.63962287","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:18:43","session_id":"hf52mktqglo82f41uetm5ggtpj"}
[2026-03-14 14:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:18:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_695cc3ba045d98.86248747","is_new_deal":false}
[2026-03-14 14:18:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:18:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:18:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:18:43] [INFO] getContactPrimaryPhone called {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-03-14 14:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:18:43] [INFO] getContactPrimaryPhone result {"contact_id":"local_695cc3ba045d98.86248747","person_found":true,"primary_phone":"9308512004"}
[2026-03-14 14:18:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9308512004"}
[2026-03-14 14:18:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9308512004","contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b53a766e21c1.63962287","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 14:18:43"}
[2026-03-14 14:18:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","existing_deal_found":true,"existing_contact_id":"local_695cc3ba045d98.86248747","existing_title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 14:18:43"}
[2026-03-14 14:18:43] [INFO] DealController.save validated payments {"deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:18:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_695cc3ba045d98.86248747","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:18:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53a766e21c1.63962287","contact_didar_id":"local_695cc3ba045d98.86248747","title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9308512004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی محمدی","existing_deal":"YES","existing_deal_id":"local_69b53a766e21c1.63962287","existing_deal_status":"Pending","server_time":"2026-03-14 14:18:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 14:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:18:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:18:43","ip_address":"5.215.162.96","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 14:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:18:46] [INFO] Checking activity reminders 
[2026-03-14 14:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:03] [INFO] Checking activity reminders 
[2026-03-14 14:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:03] [INFO] Checking activity reminders 
[2026-03-14 14:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:10] [INFO] Activity save request {"post_data":{"contact_id":"local_695cc3ba045d98.86248747","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:19:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:19:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:19:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_695cc3ba045d98.86248747","note_was_empty":true}
[2026-03-14 14:19:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53d26ad6198.74181834","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:19:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53d26ad6198.74181834"}
[2026-03-14 14:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:19:10] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-03-14 14:19:10] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-03-14 14:19:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-03-14 14:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:19:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:19:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:19:17] [INFO] Checking activity reminders 
[2026-03-14 14:19:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:34] [INFO] Checking activity reminders 
[2026-03-14 14:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:34] [INFO] Checking activity reminders 
[2026-03-14 14:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:47] [INFO] Checking activity reminders 
[2026-03-14 14:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:19:47] [INFO] Checking activity reminders 
[2026-03-14 14:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:20:04] [INFO] Checking activity reminders 
[2026-03-14 14:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:20:17] [INFO] Checking activity reminders 
[2026-03-14 14:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:20:34] [INFO] Checking activity reminders 
[2026-03-14 14:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:21:04] [INFO] Checking activity reminders 
[2026-03-14 14:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:21:10] [INFO] Checking activity reminders 
[2026-03-14 14:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:21:34] [INFO] Checking activity reminders 
[2026-03-14 14:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:21:40] [INFO] Checking activity reminders 
[2026-03-14 14:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:21:57] [INFO] Checking activity reminders 
[2026-03-14 14:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:22:30] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:22:30] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-03-14 14:22:30] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-03-14 14:22:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:22:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:22:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:23:01] [INFO] Checking activity reminders 
[2026-03-14 14:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:23:07] [INFO] Checking activity reminders 
[2026-03-14 14:23:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:23:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:23:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:23:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:23:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:23:16] [INFO] generateDealTitle result {"contact_id":"15382","person_name":"مهران ابراهیم زاده","mobile":"9352568001","existing_deals":0,"ordinal":"اول","title":"معامله اول 9352568001"}
[2026-03-14 14:23:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:23:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:23:37] [INFO] Checking activity reminders 
[2026-03-14 14:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:24:07] [INFO] Checking activity reminders 
[2026-03-14 14:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:24:24] [INFO] Checking activity reminders 
[2026-03-14 14:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:24:37] [INFO] Checking activity reminders 
[2026-03-14 14:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:25:08] [INFO] Checking activity reminders 
[2026-03-14 14:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:25:22] [INFO] Checking activity reminders 
[2026-03-14 14:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:25:38] [INFO] Checking activity reminders 
[2026-03-14 14:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:25:52] [INFO] Checking activity reminders 
[2026-03-14 14:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21191","deal_id":"local_69b5323140e015.18048129","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:26:05","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21191","is_new_deal":false}
[2026-03-14 14:26:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:26:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:26:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:26:05] [INFO] getContactPrimaryPhone called {"contact_id":"21191"}
[2026-03-14 14:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:05] [INFO] getContactPrimaryPhone result {"contact_id":"21191","person_found":true,"primary_phone":"9127599068"}
[2026-03-14 14:26:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127599068"}
[2026-03-14 14:26:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127599068","contact_id":"21191","deal_id":"local_69b5323140e015.18048129","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:26:05"}
[2026-03-14 14:26:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5323140e015.18048129","contact_id":"21191","existing_deal_found":true,"existing_contact_id":"21191","existing_title":"معامله دوم 9127599068 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:26:05"}
[2026-03-14 14:26:05] [INFO] DealController.save validated payments {"deal_id":"local_69b5323140e015.18048129","contact_id":"21191","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-14 14:26:05] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21191","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:26:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5323140e015.18048129","contact_didar_id":"21191","title":"معامله دوم 9127599068 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127599068","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حمیدرضا احمدی","existing_deal":"YES","existing_deal_id":"local_69b5323140e015.18048129","existing_deal_status":"Pending","server_time":"2026-03-14 14:26:05","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5323140e015.18048129","contact_id":"21191","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9127599068 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:26:05","ip_address":"5.113.68.26","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:26:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:08] [INFO] Checking activity reminders 
[2026-03-14 14:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:26:12] [INFO] generateDealTitle result {"contact_id":"21191","person_name":"حمیدرضا احمدی","mobile":"9127599068","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9127599068"}
[2026-03-14 14:26:12] [INFO] Checking activity reminders 
[2026-03-14 14:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:14] [INFO] Checking activity reminders 
[2026-03-14 14:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:22] [INFO] Checking activity reminders 
[2026-03-14 14:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:26] [INFO] Checking activity reminders 
[2026-03-14 14:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:26:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:26:34] [INFO] Activity save request {"post_data":{"contact_id":"local_699d84ef7e27c0.12508462","deal_id":"local_699d84ef97582","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:26:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699d84ef7e27c0.12508462","note_was_empty":true}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:34] [INFO] Updating virtual stage {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"new","force":false}
[2026-03-14 14:26:34] [INFO] Virtual stage successfully saved {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"new"}
[2026-03-14 14:26:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d84ef7e27c0.12508462"}
[2026-03-14 14:26:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d84ef97582","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:26:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53ee22e8ea8.70500605","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53ee22e8ea8.70500605"}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:34] [INFO] Updating virtual stage {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered","force":false}
[2026-03-14 14:26:34] [INFO] Virtual stage successfully saved {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered"}
[2026-03-14 14:26:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d84ef7e27c0.12508462"}
[2026-03-14 14:26:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:26:42] [INFO] Checking activity reminders 
[2026-03-14 14:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:52] [INFO] Checking activity reminders 
[2026-03-14 14:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:26:56] [INFO] Checking activity reminders 
[2026-03-14 14:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:07] [INFO] Activity save request {"post_data":{"contact_id":"21191","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"405پرزنت گفت اوضاع مالی خوب نیس گفتم دو مرحله گفت خبر میدم","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:27:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:27:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:27:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:27:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:27:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"21191","note_was_empty":true}
[2026-03-14 14:27:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"21191","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:27:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53f03dd4c96.81191312","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:27:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:27:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53f03dd4c96.81191312"}
[2026-03-14 14:27:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:27:07] [INFO] Updating virtual stage {"contact_id":"21191","stage_name":"deal_registered","force":false}
[2026-03-14 14:27:07] [INFO] Virtual stage successfully saved {"contact_id":"21191","stage_name":"deal_registered"}
[2026-03-14 14:27:07] [INFO] Virtual stage updated after activity save {"contact_id":"21191"}
[2026-03-14 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-14 14:27:19] [INFO] Checking activity reminders 
[2026-03-14 14:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:23] [INFO] Checking activity reminders 
[2026-03-14 14:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:27] [INFO] Checking activity reminders 
[2026-03-14 14:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:49] [INFO] Checking activity reminders 
[2026-03-14 14:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:53] [INFO] Checking activity reminders 
[2026-03-14 14:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:27:57] [INFO] Checking activity reminders 
[2026-03-14 14:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:28:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:28:22] [INFO] Checking activity reminders 
[2026-03-14 14:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:28:27] [INFO] Checking activity reminders 
[2026-03-14 14:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:28:52] [INFO] Checking activity reminders 
[2026-03-14 14:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:28:57] [INFO] Checking activity reminders 
[2026-03-14 14:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:29:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:29:22] [INFO] Checking activity reminders 
[2026-03-14 14:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:29:27] [INFO] Checking activity reminders 
[2026-03-14 14:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:29:52] [INFO] Checking activity reminders 
[2026-03-14 14:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:29:57] [INFO] Checking activity reminders 
[2026-03-14 14:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:29:59] [INFO] Checking activity reminders 
[2026-03-14 14:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:14] [DEBUG] findByPhone: Found person {"phones":["9155227490"],"found_id":"9011","found_didar_id":"15382","found_name":"مهران ابراهیم زاده"}
[2026-03-14 14:30:14] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9155227490","found_didar_id":"15382","found_local_id":"9011","found_name":"مهران ابراهیم زاده"}
[2026-03-14 14:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:14] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9155227490","09155227490"]}
[2026-03-14 14:30:14] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9155227490","09155227490"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 14:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:14] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9155227490","existing_contact_id":"15382","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9155227490"],"user_attempting_creation":"ef266a9a-ff55-4893-8be3-7848badfcdce","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9155227490","09155227490"]}
[2026-03-14 14:30:14] [INFO] Duplicate lead response prepared using local ID {"local_id":"9011","didar_id":"15382"}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [INFO] generateDealTitle result {"contact_id":"15382","person_name":"مهران ابراهیم زاده","mobile":"9352568001","existing_deals":0,"ordinal":"اول","title":"معامله اول 9352568001"}
[2026-03-14 14:30:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله اول 9352568001","contact_id":"15382","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 14:30:20","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله اول 9352568001","contact_id":"15382","is_new_deal":true}
[2026-03-14 14:30:20] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله اول 9352568001"}
[2026-03-14 14:30:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله اول 9352568001"}
[2026-03-14 14:30:20] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9352568001","pattern":"معامله_ordinal_phone"}
[2026-03-14 14:30:20] [INFO] getContactPrimaryPhone called {"contact_id":"15382"}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [INFO] getContactPrimaryPhone result {"contact_id":"15382","person_found":true,"primary_phone":"9352568001"}
[2026-03-14 14:30:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9352568001","contact_primary_phone":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison called {"input_phone":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison cleaned {"original":"9352568001","cleaned":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison called {"input_phone":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison cleaned {"original":"9352568001","cleaned":"9352568001"}
[2026-03-14 14:30:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9352568001"}
[2026-03-14 14:30:20] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9352568001","normalized_contact_phone":"9352568001","phones_match":true}
[2026-03-14 14:30:20] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله اول 9352568001","deal_phone":"9352568001","contact_phone":"9352568001","contact_id":"15382","validation":"PASSED"}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [INFO] generateDealTitle result {"contact_id":"15382","person_name":"مهران ابراهیم زاده","mobile":"9352568001","existing_deals":0,"ordinal":"اول","title":"معامله اول 9352568001"}
[2026-03-14 14:30:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15382","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:30:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15382","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:30:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15382","title":"معامله اول 9352568001","base_title_used":"معامله اول 9352568001","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهران ابراهیم زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:30:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:30:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15382","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9352568001","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 14:30:20","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 14:30:22] [INFO] Checking activity reminders 
[2026-03-14 14:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"873","deal_id":"local_69b53ada330058.91082130","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:30:24","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:30:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:30:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"873","is_new_deal":false}
[2026-03-14 14:30:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:30:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:30:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:30:24] [INFO] getContactPrimaryPhone called {"contact_id":"873"}
[2026-03-14 14:30:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:30:24] [INFO] getContactPrimaryPhone result {"contact_id":"873","person_found":true,"primary_phone":"9934194403"}
[2026-03-14 14:30:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9934194403"}
[2026-03-14 14:30:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9934194403","contact_id":"873","deal_id":"local_69b53ada330058.91082130","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:30:24"}
[2026-03-14 14:30:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53ada330058.91082130","contact_id":"873","existing_deal_found":true,"existing_contact_id":"873","existing_title":"معامله دوم 9934194403","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:30:24"}
[2026-03-14 14:30:24] [INFO] DealController.save validated payments {"deal_id":"local_69b53ada330058.91082130","contact_id":"873","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:30:24] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"873","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:30:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53ada330058.91082130","contact_didar_id":"873","title":"معامله دوم 9934194403 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9934194403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"ناصر براتی","existing_deal":"YES","existing_deal_id":"local_69b53ada330058.91082130","existing_deal_status":"Pending","server_time":"2026-03-14 14:30:24","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:30:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:30:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53ada330058.91082130","contact_id":"873","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9934194403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:30:24","ip_address":"5.113.68.26","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:30:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:30:27] [INFO] Checking activity reminders 
[2026-03-14 14:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:29] [INFO] Checking activity reminders 
[2026-03-14 14:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:33] [INFO] Checking activity reminders 
[2026-03-14 14:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:48] [INFO] Lead update received {"contact_id":"local_699c947020ec48.45521689","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:30:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:30:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:30:48] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_699c947020ec48.45521689"}
[2026-03-14 14:30:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:30:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:30:52] [INFO] Checking activity reminders 
[2026-03-14 14:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:57] [INFO] Checking activity reminders 
[2026-03-14 14:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:30:59] [INFO] Checking activity reminders 
[2026-03-14 14:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:03] [INFO] Checking activity reminders 
[2026-03-14 14:31:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:12] [INFO] Activity save request {"post_data":{"contact_id":"873","deal_id":"local_69b53ada330058.91082130","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بهمن پرزنت شد گفت نمیخوام الآنم جواب نداد ارسال پیامک","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:31:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"873","note_was_empty":true}
[2026-03-14 14:31:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"873","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:12] [INFO] Updating virtual stage {"contact_id":"873","stage_name":"deal_registered","force":false}
[2026-03-14 14:31:12] [INFO] Virtual stage successfully saved {"contact_id":"873","stage_name":"deal_registered"}
[2026-03-14 14:31:12] [INFO] Virtual stage updated after activity save {"contact_id":"873"}
[2026-03-14 14:31:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53ada330058.91082130","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:31:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53ff8db10e9.61310639","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53ff8db10e9.61310639"}
[2026-03-14 14:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:12] [INFO] Updating virtual stage {"contact_id":"873","stage_name":"deal_registered","force":false}
[2026-03-14 14:31:12] [INFO] Virtual stage successfully saved {"contact_id":"873","stage_name":"deal_registered"}
[2026-03-14 14:31:12] [INFO] Virtual stage updated after activity save {"contact_id":"873"}
[2026-03-14 14:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-14 14:31:18] [INFO] Activity save request {"post_data":{"contact_id":"local_699c947020ec48.45521689","deal_id":"local_699c94702579c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کارشناسی میخواد پشت فرمون بود ۱۰ دقیقه دیگه تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:31:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699c947020ec48.45521689","note_was_empty":true}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:18] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"new","force":false}
[2026-03-14 14:31:18] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"new"}
[2026-03-14 14:31:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-14 14:31:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699c94702579c","stage":"تماس پیگیری","status_change":null}
[2026-03-14 14:31:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b53ffe9abf97.72661372","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69b53ffe9abf97.72661372"}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:18] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-03-14 14:31:18] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-03-14 14:31:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-14 14:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:31:19] [INFO] Checking activity reminders 
[2026-03-14 14:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:31:29] [INFO] Checking activity reminders 
[2026-03-14 14:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:33] [INFO] Checking activity reminders 
[2026-03-14 14:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-03-14 14:31:49] [INFO] Checking activity reminders 
[2026-03-14 14:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:31:55] [INFO] Checking activity reminders 
[2026-03-14 14:31:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:31:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-03-14 14:32:03] [INFO] Checking activity reminders 
[2026-03-14 14:32:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:32:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:09] [INFO] Checking activity reminders 
[2026-03-14 14:32:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:32:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:18] [INFO] Checking activity reminders 
[2026-03-14 14:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:19] [INFO] Checking activity reminders 
[2026-03-14 14:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:21] [DEBUG] findByPhone: Found person {"phones":["9906599355"],"found_id":"14259","found_didar_id":"15757","found_name":"جمال بنار"}
[2026-03-14 14:32:21] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9906599355","found_didar_id":"15757","found_local_id":"14259","found_name":"جمال بنار"}
[2026-03-14 14:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:21] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9906599355","09906599355"]}
[2026-03-14 14:32:21] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9906599355","09906599355"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 14:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:21] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9906599355","existing_contact_id":"15757","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9906599355"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9906599355","09906599355"]}
[2026-03-14 14:32:21] [INFO] Duplicate lead response prepared using local ID {"local_id":"14259","didar_id":"15757"}
[2026-03-14 14:32:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:23] [INFO] generateDealTitle result {"contact_id":"15757","person_name":"جمال بنار","mobile":"9906599355","existing_deals":0,"ordinal":"اول","title":"معامله اول 9906599355"}
[2026-03-14 14:32:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله اول 9906599355","contact_id":"15757","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 14:32:24","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله اول 9906599355","contact_id":"15757","is_new_deal":true}
[2026-03-14 14:32:24] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله اول 9906599355"}
[2026-03-14 14:32:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله اول 9906599355"}
[2026-03-14 14:32:24] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9906599355","pattern":"معامله_ordinal_phone"}
[2026-03-14 14:32:24] [INFO] getContactPrimaryPhone called {"contact_id":"15757"}
[2026-03-14 14:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:24] [INFO] getContactPrimaryPhone result {"contact_id":"15757","person_found":true,"primary_phone":"9906599355"}
[2026-03-14 14:32:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9906599355","contact_primary_phone":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison called {"input_phone":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison cleaned {"original":"9906599355","cleaned":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison called {"input_phone":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison cleaned {"original":"9906599355","cleaned":"9906599355"}
[2026-03-14 14:32:24] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9906599355"}
[2026-03-14 14:32:24] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9906599355","normalized_contact_phone":"9906599355","phones_match":true}
[2026-03-14 14:32:24] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله اول 9906599355","deal_phone":"9906599355","contact_phone":"9906599355","contact_id":"15757","validation":"PASSED"}
[2026-03-14 14:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:24] [INFO] generateDealTitle result {"contact_id":"15757","person_name":"جمال بنار","mobile":"9906599355","existing_deals":0,"ordinal":"اول","title":"معامله اول 9906599355"}
[2026-03-14 14:32:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15757","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:32:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15757","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:32:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15757","title":"معامله اول 9906599355","base_title_used":"معامله اول 9906599355","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جمال بنار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:32:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:32:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15757","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9906599355","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 14:32:24","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:32:43] [INFO] Checking activity reminders 
[2026-03-14 14:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:33:04] [INFO] Checking activity reminders 
[2026-03-14 14:33:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:33:06] [INFO] Checking activity reminders 
[2026-03-14 14:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:33:21] [INFO] Checking activity reminders 
[2026-03-14 14:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:33:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20906","deal_id":"local_69b535db1a3d41.88971672","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:33:22","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20906","is_new_deal":false}
[2026-03-14 14:33:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:33:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:33:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:33:22] [INFO] getContactPrimaryPhone called {"contact_id":"20906"}
[2026-03-14 14:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:22] [INFO] getContactPrimaryPhone result {"contact_id":"20906","person_found":true,"primary_phone":"9214772934"}
[2026-03-14 14:33:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9214772934"}
[2026-03-14 14:33:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9214772934","contact_id":"20906","deal_id":"local_69b535db1a3d41.88971672","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:33:22"}
[2026-03-14 14:33:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b535db1a3d41.88971672","contact_id":"20906","existing_deal_found":true,"existing_contact_id":"20906","existing_title":"معامله سوم 9214772934 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:33:22"}
[2026-03-14 14:33:22] [INFO] DealController.save validated payments {"deal_id":"local_69b535db1a3d41.88971672","contact_id":"20906","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:33:22] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"20906","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:33:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b535db1a3d41.88971672","contact_didar_id":"20906","title":"معامله سوم 9214772934 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9214772934","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"محمد حسین رضایی","existing_deal":"YES","existing_deal_id":"local_69b535db1a3d41.88971672","existing_deal_status":"Pending","server_time":"2026-03-14 14:33:22","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b535db1a3d41.88971672","contact_id":"20906","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9214772934 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:33:22","ip_address":"5.113.68.26","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:34] [INFO] Checking activity reminders 
[2026-03-14 14:33:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:33:37] [INFO] Checking activity reminders 
[2026-03-14 14:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:33:37] [INFO] Lead update received {"contact_id":"local_69b53ca6a1b9a3.18868862","has_previous_purchase":"1","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:33:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:37] [INFO] CRM Transfer Check - Transfer required {"has_previous_purchase":"1","previous_purchase_number":"","contact_id":"local_69b53ca6a1b9a3.18868862"}
[2026-03-14 14:33:37] [WARNING] No CRM specialist found; referral record not created {"contact_id":"local_69b53ca6a1b9a3.18868862"}
[2026-03-14 14:33:37] [INFO] Previous purchase detected - owner moved to Amir and referral created {"contact_id":"local_69b53ca6a1b9a3.18868862","old_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","new_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","crm_specialist_id":null,"previous_purchase_number":""}
[2026-03-14 14:33:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:44] [INFO] Lead update received {"contact_id":"local_69b53ca6a1b9a3.18868862","has_previous_purchase":"not_set","previous_purchase_number":"not_set","activity_has_purchase":"","activity_previous_number":""}
[2026-03-14 14:33:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"","contact_id":"local_69b53ca6a1b9a3.18868862"}
[2026-03-14 14:33:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:33:50] [INFO] Activity save request {"post_data":{"contact_id":"20906","deal_id":"local_69b535db1a3d41.88971672","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:33:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"20906","note_was_empty":true}
[2026-03-14 14:33:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"20906","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:50] [INFO] Updating virtual stage {"contact_id":"20906","stage_name":"deal_registered","force":false}
[2026-03-14 14:33:50] [INFO] Virtual stage successfully saved {"contact_id":"20906","stage_name":"deal_registered"}
[2026-03-14 14:33:50] [INFO] Virtual stage updated after activity save {"contact_id":"20906"}
[2026-03-14 14:33:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b535db1a3d41.88971672","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:33:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5409641d999.86911381","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5409641d999.86911381"}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:50] [INFO] Updating virtual stage {"contact_id":"20906","stage_name":"deal_registered","force":false}
[2026-03-14 14:33:50] [INFO] Virtual stage successfully saved {"contact_id":"20906","stage_name":"deal_registered"}
[2026-03-14 14:33:50] [INFO] Virtual stage updated after activity save {"contact_id":"20906"}
[2026-03-14 14:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20906","person_id":"14008"}
[2026-03-14 14:33:51] [INFO] Checking activity reminders 
[2026-03-14 14:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:34:04] [INFO] Checking activity reminders 
[2026-03-14 14:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:34:07] [INFO] Checking activity reminders 
[2026-03-14 14:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:34:37] [INFO] Checking activity reminders 
[2026-03-14 14:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:35:07] [INFO] Checking activity reminders 
[2026-03-14 14:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:35:23] [INFO] Checking activity reminders 
[2026-03-14 14:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:35:37] [INFO] Checking activity reminders 
[2026-03-14 14:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:06] [INFO] Checking activity reminders 
[2026-03-14 14:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:07] [INFO] Checking activity reminders 
[2026-03-14 14:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:19] [INFO] Checking activity reminders 
[2026-03-14 14:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:22] [INFO] Lead update received {"contact_id":"local_69b53ca6a1b9a3.18868862","has_previous_purchase":"1","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:36:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:36:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-14 14:36:22] [ERROR] API Error {"action":"update_lead","exception":{"message":"کد ملی پس از ثبت قابل تغییر نیست.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":997,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#2 {main}"}}
[2026-03-14 14:36:23] [WARNING] Auth check failed - not authenticated {"session_id":"244mqkfoqmat1bak19ommg6kk1","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:36:23] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 14:36:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:36:37] [INFO] Checking activity reminders 
[2026-03-14 14:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6949","deal_id":"local_69b52d5c8f8852.03739164","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:36:39","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:36:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6949","is_new_deal":false}
[2026-03-14 14:36:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:36:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:36:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:36:39] [INFO] getContactPrimaryPhone called {"contact_id":"6949"}
[2026-03-14 14:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:36:39] [INFO] getContactPrimaryPhone result {"contact_id":"6949","person_found":true,"primary_phone":"9115674897"}
[2026-03-14 14:36:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9115674897"}
[2026-03-14 14:36:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9115674897","contact_id":"6949","deal_id":"local_69b52d5c8f8852.03739164","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:36:39"}
[2026-03-14 14:36:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b52d5c8f8852.03739164","contact_id":"6949","existing_deal_found":true,"existing_contact_id":"6949","existing_title":"معامله دوم 9115674897 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:36:39"}
[2026-03-14 14:36:39] [INFO] DealController.save validated payments {"deal_id":"local_69b52d5c8f8852.03739164","contact_id":"6949","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-14 14:36:39] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"6949","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:36:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b52d5c8f8852.03739164","contact_didar_id":"6949","title":"معامله دوم 9115674897 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9115674897","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای ملکی","existing_deal":"YES","existing_deal_id":"local_69b52d5c8f8852.03739164","existing_deal_status":"Pending","server_time":"2026-03-14 14:36:39","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:36:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b52d5c8f8852.03739164","contact_id":"6949","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9115674897 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:36:39","ip_address":"5.113.68.26","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:36:49] [INFO] Checking activity reminders 
[2026-03-14 14:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:36:58] [INFO] Checking activity reminders 
[2026-03-14 14:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:03] [INFO] Checking activity reminders 
[2026-03-14 14:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:04] [INFO] Checking activity reminders 
[2026-03-14 14:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:07] [INFO] Checking activity reminders 
[2026-03-14 14:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:13] [INFO] Activity save request {"post_data":{"contact_id":"6949","deal_id":"local_69b52d5c8f8852.03739164","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"گفت عدد بالاست شرایط ندارم ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:37:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"6949","note_was_empty":true}
[2026-03-14 14:37:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"6949","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:13] [INFO] Updating virtual stage {"contact_id":"6949","stage_name":"deal_registered","force":false}
[2026-03-14 14:37:13] [INFO] Virtual stage successfully saved {"contact_id":"6949","stage_name":"deal_registered"}
[2026-03-14 14:37:13] [INFO] Virtual stage updated after activity save {"contact_id":"6949"}
[2026-03-14 14:37:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b52d5c8f8852.03739164","stage":"تماس پیگیری","status_change":null}
[2026-03-14 14:37:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b54161374025.35163103","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69b54161374025.35163103"}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:13] [INFO] Updating virtual stage {"contact_id":"6949","stage_name":"deal_registered","force":false}
[2026-03-14 14:37:13] [INFO] Virtual stage successfully saved {"contact_id":"6949","stage_name":"deal_registered"}
[2026-03-14 14:37:13] [INFO] Virtual stage updated after activity save {"contact_id":"6949"}
[2026-03-14 14:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-03-14 14:37:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-14 14:37:19] [INFO] Checking activity reminders 
[2026-03-14 14:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:37:32] [INFO] Checking activity reminders 
[2026-03-14 14:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:38] [INFO] Checking activity reminders 
[2026-03-14 14:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:46] [INFO] Checking activity reminders 
[2026-03-14 14:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:37:56] [INFO] Checking activity reminders 
[2026-03-14 14:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:03] [INFO] Checking activity reminders 
[2026-03-14 14:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:05] [INFO] Checking activity reminders 
[2026-03-14 14:38:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:05] [INFO] Checking activity reminders 
[2026-03-14 14:38:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:08] [INFO] Checking activity reminders 
[2026-03-14 14:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:38:26] [INFO] Checking activity reminders 
[2026-03-14 14:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:33] [INFO] Checking activity reminders 
[2026-03-14 14:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:38:48] [INFO] Lead update received {"contact_id":"15666","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:38:48] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15666"}
[2026-03-14 14:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:38:57] [INFO] Checking activity reminders 
[2026-03-14 14:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:01] [INFO] Checking activity reminders 
[2026-03-14 14:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:04] [INFO] Checking activity reminders 
[2026-03-14 14:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:10] [INFO] Checking activity reminders 
[2026-03-14 14:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:18] [DEBUG] findByPhone: Found person {"phones":["9124744021"],"found_id":"21585","found_didar_id":"local_698723293d7b53.43036879","found_name":"اقای ابراهیم زاده"}
[2026-03-14 14:39:18] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9124744021","found_didar_id":"local_698723293d7b53.43036879","found_local_id":"21585","found_name":"اقای ابراهیم زاده"}
[2026-03-14 14:39:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:18] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9124744021","09124744021"]}
[2026-03-14 14:39:18] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9124744021","09124744021"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 14:39:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:18] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9124744021","existing_contact_id":"local_698723293d7b53.43036879","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9124744021"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9124744021","09124744021"]}
[2026-03-14 14:39:18] [INFO] Duplicate lead response prepared using local ID {"local_id":"21585","didar_id":"local_698723293d7b53.43036879"}
[2026-03-14 14:39:18] [INFO] Checking activity reminders 
[2026-03-14 14:39:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [INFO] generateDealTitle result {"contact_id":"local_698723293d7b53.43036879","person_name":"اقای ابراهیم زاده","mobile":"9124744021","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124744021"}
[2026-03-14 14:39:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9124744021","contact_id":"local_698723293d7b53.43036879","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 14:39:20","session_id":"r7vieo1nak5d0v125uj42pt1pg"}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9124744021","contact_id":"local_698723293d7b53.43036879","is_new_deal":true}
[2026-03-14 14:39:20] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9124744021"}
[2026-03-14 14:39:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9124744021"}
[2026-03-14 14:39:20] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9124744021","pattern":"معامله_ordinal_phone"}
[2026-03-14 14:39:20] [INFO] getContactPrimaryPhone called {"contact_id":"local_698723293d7b53.43036879"}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [INFO] getContactPrimaryPhone result {"contact_id":"local_698723293d7b53.43036879","person_found":true,"primary_phone":"9124744021"}
[2026-03-14 14:39:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9124744021","contact_primary_phone":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison called {"input_phone":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison cleaned {"original":"9124744021","cleaned":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison called {"input_phone":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison cleaned {"original":"9124744021","cleaned":"9124744021"}
[2026-03-14 14:39:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9124744021"}
[2026-03-14 14:39:20] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9124744021","normalized_contact_phone":"9124744021","phones_match":true}
[2026-03-14 14:39:20] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9124744021","deal_phone":"9124744021","contact_phone":"9124744021","contact_id":"local_698723293d7b53.43036879","validation":"PASSED"}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [INFO] generateDealTitle result {"contact_id":"local_698723293d7b53.43036879","person_name":"اقای ابراهیم زاده","mobile":"9124744021","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124744021"}
[2026-03-14 14:39:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_698723293d7b53.43036879","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 14:39:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_698723293d7b53.43036879","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 14:39:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_698723293d7b53.43036879","title":"معامله سوم 9124744021","base_title_used":"معامله سوم 9124744021","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای ابراهیم زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 14:39:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 14:39:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_698723293d7b53.43036879","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9124744021","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 14:39:20","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:39:24] [INFO] Checking activity reminders 
[2026-03-14 14:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:27] [INFO] Checking activity reminders 
[2026-03-14 14:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:29] [INFO] Checking activity reminders 
[2026-03-14 14:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:35] [INFO] Checking activity reminders 
[2026-03-14 14:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:41] [INFO] Checking activity reminders 
[2026-03-14 14:39:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:46] [INFO] Checking activity reminders 
[2026-03-14 14:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:39:57] [INFO] Checking activity reminders 
[2026-03-14 14:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:39:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9792","deal_id":"local_69b539f42fa4d5.42391986","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:39:58","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:39:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:39:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9792","is_new_deal":false}
[2026-03-14 14:39:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:39:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:39:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:39:58] [INFO] getContactPrimaryPhone called {"contact_id":"9792"}
[2026-03-14 14:39:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:39:58] [INFO] getContactPrimaryPhone result {"contact_id":"9792","person_found":true,"primary_phone":"9123237522"}
[2026-03-14 14:39:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123237522"}
[2026-03-14 14:39:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123237522","contact_id":"9792","deal_id":"local_69b539f42fa4d5.42391986","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:39:58"}
[2026-03-14 14:39:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b539f42fa4d5.42391986","contact_id":"9792","existing_deal_found":true,"existing_contact_id":"9792","existing_title":"معامله دوم 9123237522 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:39:58"}
[2026-03-14 14:39:58] [INFO] DealController.save validated payments {"deal_id":"local_69b539f42fa4d5.42391986","contact_id":"9792","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:39:58] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9792","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:39:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b539f42fa4d5.42391986","contact_didar_id":"9792","title":"معامله دوم 9123237522 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123237522","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"فتاحی","existing_deal":"YES","existing_deal_id":"local_69b539f42fa4d5.42391986","existing_deal_status":"Pending","server_time":"2026-03-14 14:39:58","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:39:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:39:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b539f42fa4d5.42391986","contact_id":"9792","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9123237522 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:39:58","ip_address":"5.113.105.112","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:39:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:39:59] [INFO] Checking activity reminders 
[2026-03-14 14:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:40:16] [INFO] Checking activity reminders 
[2026-03-14 14:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:40:28] [INFO] Checking activity reminders 
[2026-03-14 14:40:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:40:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:40:30] [INFO] Checking activity reminders 
[2026-03-14 14:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:40:38] [INFO] Activity save request {"post_data":{"contact_id":"15666","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کاتال ۴۰۴ اوند بلاخره چند ناه اخر رو ، امروز تندید کانال ۴۰۵ صحبت شد گفت شرایط ندارن ۷۹ت گفتم تخفیف جنگ ا، دست می ی مثل قب فعلا اطلاعی نداده","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:40:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:40:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:40:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15666","note_was_empty":true}
[2026-03-14 14:40:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"15666","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-14 14:40:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5422ec497f8.80906133","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:40:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5422ec497f8.80906133"}
[2026-03-14 14:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:40:38] [INFO] Updating virtual stage {"contact_id":"15666","stage_name":"deal_registered","force":false}
[2026-03-14 14:40:38] [INFO] Virtual stage successfully saved {"contact_id":"15666","stage_name":"deal_registered"}
[2026-03-14 14:40:38] [INFO] Virtual stage updated after activity save {"contact_id":"15666"}
[2026-03-14 14:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15666","person_id":"13830"}
[2026-03-14 14:40:47] [INFO] Checking activity reminders 
[2026-03-14 14:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:40:58] [INFO] Checking activity reminders 
[2026-03-14 14:40:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:40:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:41:00] [INFO] Checking activity reminders 
[2026-03-14 14:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:41:18] [INFO] Checking activity reminders 
[2026-03-14 14:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:41:28] [INFO] Checking activity reminders 
[2026-03-14 14:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:41:30] [INFO] Checking activity reminders 
[2026-03-14 14:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:41:33] [INFO] Activity save request {"post_data":{"contact_id":"9792","deal_id":"local_69b539f42fa4d5.42391986","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کلا دنبال خدمات مفته هربار میاد قیمت میگیره انقد بی ادبه جواب هم نمیده می‌ره \r\nارسال پیامک اگر جواب داد پرزنت مجدد","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:41:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"9792","note_was_empty":true}
[2026-03-14 14:41:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"9792","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:33] [INFO] Updating virtual stage {"contact_id":"9792","stage_name":"deal_registered","force":false}
[2026-03-14 14:41:33] [INFO] Virtual stage successfully saved {"contact_id":"9792","stage_name":"deal_registered"}
[2026-03-14 14:41:33] [INFO] Virtual stage updated after activity save {"contact_id":"9792"}
[2026-03-14 14:41:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b539f42fa4d5.42391986","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:41:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5426553e7b6.17410954","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5426553e7b6.17410954"}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:33] [INFO] Updating virtual stage {"contact_id":"9792","stage_name":"deal_registered","force":false}
[2026-03-14 14:41:33] [INFO] Virtual stage successfully saved {"contact_id":"9792","stage_name":"deal_registered"}
[2026-03-14 14:41:33] [INFO] Virtual stage updated after activity save {"contact_id":"9792"}
[2026-03-14 14:41:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 14:41:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:41:58] [INFO] Checking activity reminders 
[2026-03-14 14:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:42:11] [INFO] Checking activity reminders 
[2026-03-14 14:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:42:28] [INFO] Checking activity reminders 
[2026-03-14 14:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:42:58] [INFO] Checking activity reminders 
[2026-03-14 14:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:43:03] [INFO] Checking activity reminders 
[2026-03-14 14:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:43:28] [INFO] Activity save request {"post_data":{"contact_id":"15757","deal_id":"local_69b5404010ec40.84695605","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:43:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15757","note_was_empty":true}
[2026-03-14 14:43:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"15757","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:28] [INFO] Updating virtual stage {"contact_id":"15757","stage_name":"deal_registered","force":false}
[2026-03-14 14:43:28] [INFO] Virtual stage successfully saved {"contact_id":"15757","stage_name":"deal_registered"}
[2026-03-14 14:43:28] [INFO] Virtual stage updated after activity save {"contact_id":"15757"}
[2026-03-14 14:43:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5404010ec40.84695605","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:43:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b542d8368772.46513520","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69b542d8368772.46513520"}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:28] [INFO] Updating virtual stage {"contact_id":"15757","stage_name":"deal_registered","force":false}
[2026-03-14 14:43:28] [INFO] Virtual stage successfully saved {"contact_id":"15757","stage_name":"deal_registered"}
[2026-03-14 14:43:28] [INFO] Virtual stage updated after activity save {"contact_id":"15757"}
[2026-03-14 14:43:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 14:43:29] [INFO] Checking activity reminders 
[2026-03-14 14:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:43:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:43:46] [INFO] Checking activity reminders 
[2026-03-14 14:43:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:43:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:43:59] [INFO] Checking activity reminders 
[2026-03-14 14:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:44:16] [INFO] Checking activity reminders 
[2026-03-14 14:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:44:29] [INFO] Checking activity reminders 
[2026-03-14 14:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:44:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_698723293d7b53.43036879","deal_id":"local_69b541e0304997.04118812","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:44:33","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:44:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_698723293d7b53.43036879","is_new_deal":false}
[2026-03-14 14:44:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:44:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:44:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:44:33] [INFO] getContactPrimaryPhone called {"contact_id":"local_698723293d7b53.43036879"}
[2026-03-14 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:44:33] [INFO] getContactPrimaryPhone result {"contact_id":"local_698723293d7b53.43036879","person_found":true,"primary_phone":"9124744021"}
[2026-03-14 14:44:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124744021"}
[2026-03-14 14:44:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124744021","contact_id":"local_698723293d7b53.43036879","deal_id":"local_69b541e0304997.04118812","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:44:33"}
[2026-03-14 14:44:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b541e0304997.04118812","contact_id":"local_698723293d7b53.43036879","existing_deal_found":true,"existing_contact_id":"local_698723293d7b53.43036879","existing_title":"معامله سوم 9124744021","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:44:33"}
[2026-03-14 14:44:33] [INFO] DealController.save validated payments {"deal_id":"local_69b541e0304997.04118812","contact_id":"local_698723293d7b53.43036879","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:44:33] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_698723293d7b53.43036879","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:44:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b541e0304997.04118812","contact_didar_id":"local_698723293d7b53.43036879","title":"معامله سوم 9124744021 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9124744021","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای ابراهیم زاده","existing_deal":"YES","existing_deal_id":"local_69b541e0304997.04118812","existing_deal_status":"Pending","server_time":"2026-03-14 14:44:33","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:44:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b541e0304997.04118812","contact_id":"local_698723293d7b53.43036879","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9124744021 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:44:33","ip_address":"5.113.105.112","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:44:35] [WARNING] Auth check failed - not authenticated {"session_id":"fht5qav4a37o93ms6ht9ge9r0s","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:44:35] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 14:44:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5335f2549b0.92776064","person_id":"21827"}
[2026-03-14 14:44:46] [INFO] Checking activity reminders 
[2026-03-14 14:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:44:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:44:59] [INFO] Checking activity reminders 
[2026-03-14 14:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:45:06] [INFO] Checking activity reminders 
[2026-03-14 14:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:45:10] [INFO] Activity save request {"post_data":{"contact_id":"local_699c947020ec48.45521689","deal_id":"local_699c94702579c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در دتسرس نبود ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:45:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699c947020ec48.45521689","note_was_empty":true}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:10] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-03-14 14:45:10] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-03-14 14:45:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-14 14:45:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699c94702579c","stage":"تماس پیگیری","status_change":null}
[2026-03-14 14:45:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5433e376607.06198592","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5433e376607.06198592"}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:10] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-03-14 14:45:10] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-03-14 14:45:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-14 14:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-14 14:45:16] [INFO] Checking activity reminders 
[2026-03-14 14:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:45:28] [INFO] Activity save request {"post_data":{"contact_id":"local_698723293d7b53.43036879","deal_id":"local_69b541e0304997.04118812","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اون سری شیا گرفت پبچوند منو الآنم زنگ زدم شمارم بلک لیست با اون یکی خط پیام دادم ","activity_duration":"3","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:45:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_698723293d7b53.43036879","note_was_empty":true}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:28] [INFO] Updating virtual stage {"contact_id":"local_698723293d7b53.43036879","stage_name":"deal_registered","force":false}
[2026-03-14 14:45:28] [INFO] Virtual stage successfully saved {"contact_id":"local_698723293d7b53.43036879","stage_name":"deal_registered"}
[2026-03-14 14:45:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_698723293d7b53.43036879"}
[2026-03-14 14:45:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b541e0304997.04118812","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:45:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b54350ac9f34.10966476","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69b54350ac9f34.10966476"}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:28] [INFO] Updating virtual stage {"contact_id":"local_698723293d7b53.43036879","stage_name":"deal_registered","force":false}
[2026-03-14 14:45:28] [INFO] Virtual stage successfully saved {"contact_id":"local_698723293d7b53.43036879","stage_name":"deal_registered"}
[2026-03-14 14:45:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_698723293d7b53.43036879"}
[2026-03-14 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 14:45:29] [INFO] Checking activity reminders 
[2026-03-14 14:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:45:59] [INFO] Checking activity reminders 
[2026-03-14 14:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:46:18] [INFO] Checking activity reminders 
[2026-03-14 14:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:46:29] [INFO] Checking activity reminders 
[2026-03-14 14:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:46:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:46:48] [INFO] Checking activity reminders 
[2026-03-14 14:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:47:00] [INFO] Checking activity reminders 
[2026-03-14 14:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:47:30] [INFO] Checking activity reminders 
[2026-03-14 14:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:48:00] [INFO] Checking activity reminders 
[2026-03-14 14:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:48:30] [INFO] Checking activity reminders 
[2026-03-14 14:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:48:42] [INFO] Checking activity reminders 
[2026-03-14 14:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:48:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:48:57","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:48:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13827","is_new_deal":false}
[2026-03-14 14:48:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:48:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:48:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:48:57] [INFO] getContactPrimaryPhone called {"contact_id":"13827"}
[2026-03-14 14:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:48:57] [INFO] getContactPrimaryPhone result {"contact_id":"13827","person_found":true,"primary_phone":"9393427403"}
[2026-03-14 14:48:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393427403"}
[2026-03-14 14:48:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393427403","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:48:57"}
[2026-03-14 14:48:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","existing_deal_found":true,"existing_contact_id":"13827","existing_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:48:57"}
[2026-03-14 14:48:57] [INFO] DealController.save validated payments {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:48:57] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13827","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:48:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b52f9a686c29.73319543","contact_didar_id":"13827","title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9393427403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای حسین زاده","existing_deal":"YES","existing_deal_id":"local_69b52f9a686c29.73319543","existing_deal_status":"Pending","server_time":"2026-03-14 14:48:57","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:48:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:48:57","ip_address":"5.113.105.112","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:00] [INFO] Checking activity reminders 
[2026-03-14 14:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:49:12] [INFO] Checking activity reminders 
[2026-03-14 14:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:49:17] [INFO] Activity save request {"post_data":{"contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:49:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"13827","note_was_empty":true}
[2026-03-14 14:49:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"13827","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:17] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-14 14:49:17] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-14 14:49:17] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-14 14:49:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b52f9a686c29.73319543","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:49:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b54435450835.98386218","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69b54435450835.98386218"}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:17] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-14 14:49:17] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-14 14:49:17] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-14 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-14 14:49:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:49:42] [INFO] Checking activity reminders 
[2026-03-14 14:49:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:49:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:51:34] [INFO] Checking activity reminders 
[2026-03-14 14:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:51:37] [INFO] Checking activity reminders 
[2026-03-14 14:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:51:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7691","deal_id":"local_69b5247fecc858.65564810","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 14:51:57","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 14:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:51:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7691","is_new_deal":false}
[2026-03-14 14:51:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 14:51:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:51:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 14:51:57] [INFO] getContactPrimaryPhone called {"contact_id":"7691"}
[2026-03-14 14:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:51:57] [INFO] getContactPrimaryPhone result {"contact_id":"7691","person_found":true,"primary_phone":"9131527141"}
[2026-03-14 14:51:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131527141"}
[2026-03-14 14:51:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131527141","contact_id":"7691","deal_id":"local_69b5247fecc858.65564810","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:51:57"}
[2026-03-14 14:51:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5247fecc858.65564810","contact_id":"7691","existing_deal_found":true,"existing_contact_id":"7691","existing_title":"معامله پنجم 9131527141 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 14:51:57"}
[2026-03-14 14:51:57] [INFO] DealController.save validated payments {"deal_id":"local_69b5247fecc858.65564810","contact_id":"7691","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-14 14:51:57] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7691","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 14:51:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5247fecc858.65564810","contact_didar_id":"7691","title":"معامله پنجم 9131527141 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9131527141","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خان زایی","existing_deal":"YES","existing_deal_id":"local_69b5247fecc858.65564810","existing_deal_status":"Pending","server_time":"2026-03-14 14:51:57","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 14:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:51:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5247fecc858.65564810","contact_id":"7691","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله پنجم 9131527141 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 14:51:57","ip_address":"5.113.105.112","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 14:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:08] [INFO] Checking activity reminders 
[2026-03-14 14:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:52:22] [INFO] Activity save request {"post_data":{"contact_id":"7691","deal_id":"local_69b5247fecc858.65564810","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک درحال پیگیری ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:52:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7691","note_was_empty":true}
[2026-03-14 14:52:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"7691","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:22] [INFO] Updating virtual stage {"contact_id":"7691","stage_name":"deal_registered","force":false}
[2026-03-14 14:52:22] [INFO] Virtual stage successfully saved {"contact_id":"7691","stage_name":"deal_registered"}
[2026-03-14 14:52:22] [INFO] Virtual stage updated after activity save {"contact_id":"7691"}
[2026-03-14 14:52:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5247fecc858.65564810","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:52:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b544ee8a16c6.90930092","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69b544ee8a16c6.90930092"}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:22] [INFO] Updating virtual stage {"contact_id":"7691","stage_name":"deal_registered","force":false}
[2026-03-14 14:52:22] [INFO] Virtual stage successfully saved {"contact_id":"7691","stage_name":"deal_registered"}
[2026-03-14 14:52:22] [INFO] Virtual stage updated after activity save {"contact_id":"7691"}
[2026-03-14 14:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-03-14 14:52:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:52:38] [INFO] Checking activity reminders 
[2026-03-14 14:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:53:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-14 14:53:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-14 14:53:08] [INFO] Checking activity reminders 
[2026-03-14 14:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:54:36] [INFO] Checking activity reminders 
[2026-03-14 14:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:54:45] [WARNING] Auth check failed - not authenticated {"session_id":"ft1k9sg4kg2u0sfp949cebbtaq","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:54:45] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-14 14:54:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:55:00] [INFO] Checking activity reminders 
[2026-03-14 14:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:55:16] [INFO] Checking activity reminders 
[2026-03-14 14:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:55:23] [INFO] Lead update received {"contact_id":"local_699d84ef7e27c0.12508462","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-14 14:55:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:55:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:55:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_699d84ef7e27c0.12508462"}
[2026-03-14 14:55:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:55:31] [INFO] Checking activity reminders 
[2026-03-14 14:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:55:46] [INFO] Checking activity reminders 
[2026-03-14 14:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:56:01] [INFO] Checking activity reminders 
[2026-03-14 14:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:56:14] [INFO] Activity save request {"post_data":{"contact_id":"7998","deal_id":"local_6999b7f4bcf308.29397970","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ نامشخص ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:56:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7998","note_was_empty":true}
[2026-03-14 14:56:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"7998","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:14] [INFO] Updating virtual stage {"contact_id":"7998","stage_name":"new","force":false}
[2026-03-14 14:56:14] [WARNING] Prevented overwriting special stage with 'new' {"contact_id":"7998","existing_special_stage":"without_purchase","requested_stage":"new"}
[2026-03-14 14:56:14] [INFO] Virtual stage updated after activity save {"contact_id":"7998"}
[2026-03-14 14:56:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b7f4bcf308.29397970","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:56:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b545d664fbe7.96869484","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69b545d664fbe7.96869484"}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:14] [INFO] Updating virtual stage {"contact_id":"7998","stage_name":"deal_registered","force":false}
[2026-03-14 14:56:14] [INFO] Virtual stage successfully saved {"contact_id":"7998","stage_name":"deal_registered"}
[2026-03-14 14:56:14] [INFO] Virtual stage updated after activity save {"contact_id":"7998"}
[2026-03-14 14:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-14 14:56:16] [INFO] Checking activity reminders 
[2026-03-14 14:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:56:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:56:31] [INFO] Checking activity reminders 
[2026-03-14 14:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-14 14:56:46] [INFO] Checking activity reminders 
[2026-03-14 14:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:56:55] [WARNING] Auth check failed - not authenticated {"session_id":"l408fn09vmdifn6g00c03qcsk5","session_keys":[],"action":"log_client_event"}
[2026-03-14 14:56:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 14:56:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 14:56:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 14:56:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:56:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:56:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:57:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 14:57:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 14:57:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 14:57:02] [INFO] Activity save request {"post_data":{"contact_id":"local_699d84ef7e27c0.12508462","deal_id":"local_699d84ef97582","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه فکر کر م برق و کامپیوتر خودرو هست","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:57:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699d84ef7e27c0.12508462","note_was_empty":true}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Updating virtual stage {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered","force":false}
[2026-03-14 14:57:02] [INFO] Virtual stage successfully saved {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered"}
[2026-03-14 14:57:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d84ef7e27c0.12508462"}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d84ef97582","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-14 14:57:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b546062584f0.67085511","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69b546062584f0.67085511"}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:02] [INFO] Updating virtual stage {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered","force":false}
[2026-03-14 14:57:02] [INFO] Virtual stage successfully saved {"contact_id":"local_699d84ef7e27c0.12508462","stage_name":"deal_registered"}
[2026-03-14 14:57:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d84ef7e27c0.12508462"}
[2026-03-14 14:57:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d84ef7e27c0.12508462","person_id":"21790"}
[2026-03-14 14:57:09] [INFO] Checking activity reminders 
[2026-03-14 14:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:57:13] [INFO] Checking activity reminders 
[2026-03-14 14:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:57:26] [INFO] Activity save request {"post_data":{"contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b533eb614698.79634681","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 14:57:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_695cc3ba045d98.86248747","note_was_empty":true}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:26] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-03-14 14:57:26] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-03-14 14:57:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-03-14 14:57:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533eb614698.79634681","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 14:57:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5461e94b2c9.06849973","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5461e94b2c9.06849973"}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:26] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-03-14 14:57:26] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-03-14 14:57:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-03-14 14:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 14:57:39] [INFO] Checking activity reminders 
[2026-03-14 14:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:57:43] [INFO] Checking activity reminders 
[2026-03-14 14:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:57:52] [INFO] Checking activity reminders 
[2026-03-14 14:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 14:58:22] [INFO] Checking activity reminders 
[2026-03-14 14:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:59:09] [INFO] Checking activity reminders 
[2026-03-14 14:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 14:59:36] [INFO] Checking activity reminders 
[2026-03-14 14:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 14:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:00:00] [INFO] Checking activity reminders 
[2026-03-14 15:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:00:06] [INFO] Checking activity reminders 
[2026-03-14 15:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:00:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8144","deal_id":"local_6999b4b54097a2.16178484","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 15:00:33","session_id":"hf52mktqglo82f41uetm5ggtpj"}
[2026-03-14 15:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 15:00:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8144","is_new_deal":false}
[2026-03-14 15:00:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 15:00:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 15:00:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 15:00:33] [INFO] getContactPrimaryPhone called {"contact_id":"8144"}
[2026-03-14 15:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 15:00:33] [INFO] getContactPrimaryPhone result {"contact_id":"8144","person_found":true,"primary_phone":"9122162935"}
[2026-03-14 15:00:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122162935"}
[2026-03-14 15:00:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122162935","contact_id":"8144","deal_id":"local_6999b4b54097a2.16178484","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 15:00:33"}
[2026-03-14 15:00:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","existing_deal_found":true,"existing_contact_id":"8144","existing_title":"معامله دوم 9122162935 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 15:00:33"}
[2026-03-14 15:00:33] [INFO] DealController.save validated payments {"deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-14 15:00:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8144","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 15:00:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6999b4b54097a2.16178484","contact_didar_id":"8144","title":"معامله دوم 9122162935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122162935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ثریا پرویزی","existing_deal":"YES","existing_deal_id":"local_6999b4b54097a2.16178484","existing_deal_status":"Pending","server_time":"2026-03-14 15:00:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 15:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 15:00:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9122162935 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":29000000,"server_time":"2026-03-14 15:00:33","ip_address":"5.215.162.96","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 15:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 15:00:36] [INFO] Checking activity reminders 
[2026-03-14 15:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:00:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-14 15:00:55] [INFO] Checking activity reminders 
[2026-03-14 15:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:01:01] [INFO] Checking activity reminders 
[2026-03-14 15:01:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:01:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:01:25] [INFO] Checking activity reminders 
[2026-03-14 15:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:01:28] [INFO] Checking activity reminders 
[2026-03-14 15:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:01:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8102","person_id":"1305"}
[2026-03-14 15:01:55] [INFO] Checking activity reminders 
[2026-03-14 15:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:01:58] [INFO] Checking activity reminders 
[2026-03-14 15:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:02:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-03-14 15:02:25] [INFO] Checking activity reminders 
[2026-03-14 15:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:02:28] [INFO] Checking activity reminders 
[2026-03-14 15:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:02:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:02:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:02:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-03-14 15:02:55] [INFO] Checking activity reminders 
[2026-03-14 15:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:02:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:02:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:03:05] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-03-14 15:03:05] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-03-14 15:03:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 15:03:08] [INFO] Checking activity reminders 
[2026-03-14 15:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:03:25] [INFO] Checking activity reminders 
[2026-03-14 15:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:03:38] [INFO] Checking activity reminders 
[2026-03-14 15:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:03:38] [INFO] Checking activity reminders 
[2026-03-14 15:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:03:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:03:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:03:55] [INFO] Checking activity reminders 
[2026-03-14 15:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:04:10] [INFO] Checking activity reminders 
[2026-03-14 15:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:04:25] [INFO] Checking activity reminders 
[2026-03-14 15:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:04:40] [INFO] Checking activity reminders 
[2026-03-14 15:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:04:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:04:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:04:55] [INFO] Checking activity reminders 
[2026-03-14 15:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:05:11] [INFO] Checking activity reminders 
[2026-03-14 15:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:05:25] [INFO] Checking activity reminders 
[2026-03-14 15:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:05:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:05:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:05:41] [INFO] Checking activity reminders 
[2026-03-14 15:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:05:55] [INFO] Checking activity reminders 
[2026-03-14 15:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:06:09] [INFO] generateDealTitle result {"contact_id":"local_69b53990872fd7.72637675","person_name":"لید جدید","mobile":"9111723449","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111723449"}
[2026-03-14 15:06:12] [INFO] Checking activity reminders 
[2026-03-14 15:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:06:26] [INFO] Checking activity reminders 
[2026-03-14 15:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:06:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:06:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:06:43] [INFO] Checking activity reminders 
[2026-03-14 15:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:06:56] [INFO] Checking activity reminders 
[2026-03-14 15:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:07:13] [INFO] Checking activity reminders 
[2026-03-14 15:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:07:43] [INFO] Checking activity reminders 
[2026-03-14 15:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:07:54] [WARNING] Auth check failed - not authenticated {"session_id":"l408fn09vmdifn6g00c03qcsk5","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:07:54] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 15:07:54] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 15:07:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 15:07:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:07:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:07:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:07:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:07:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:07:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:08:25] [INFO] Checking activity reminders 
[2026-03-14 15:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:08:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:08:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:08:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:08:57] [INFO] Checking activity reminders 
[2026-03-14 15:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:09:27] [INFO] Checking activity reminders 
[2026-03-14 15:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:09:57] [INFO] Checking activity reminders 
[2026-03-14 15:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:10:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-14 15:10:07] [INFO] Checking activity reminders 
[2026-03-14 15:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:10:28] [INFO] Checking activity reminders 
[2026-03-14 15:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:10:58] [INFO] Checking activity reminders 
[2026-03-14 15:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:11:15] [INFO] Checking activity reminders 
[2026-03-14 15:11:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:11:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:11:28] [INFO] Checking activity reminders 
[2026-03-14 15:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:11:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:11:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:11:45] [INFO] Checking activity reminders 
[2026-03-14 15:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:11:58] [INFO] Checking activity reminders 
[2026-03-14 15:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:12:15] [INFO] Checking activity reminders 
[2026-03-14 15:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:12:29] [INFO] Checking activity reminders 
[2026-03-14 15:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:12:45] [INFO] Checking activity reminders 
[2026-03-14 15:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:12:59] [INFO] Checking activity reminders 
[2026-03-14 15:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:13:15] [INFO] Checking activity reminders 
[2026-03-14 15:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:13:29] [INFO] Checking activity reminders 
[2026-03-14 15:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:14:00] [INFO] Checking activity reminders 
[2026-03-14 15:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:14:30] [INFO] Checking activity reminders 
[2026-03-14 15:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:15:00] [INFO] Checking activity reminders 
[2026-03-14 15:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:15:09] [INFO] Checking activity reminders 
[2026-03-14 15:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:15:30] [INFO] Checking activity reminders 
[2026-03-14 15:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:16:01] [INFO] Checking activity reminders 
[2026-03-14 15:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:16:31] [INFO] Checking activity reminders 
[2026-03-14 15:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:16:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:16:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:16:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:17:03] [INFO] Checking activity reminders 
[2026-03-14 15:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:17:31] [INFO] Checking activity reminders 
[2026-03-14 15:17:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:17:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:17:34] [INFO] Checking activity reminders 
[2026-03-14 15:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:18:04] [INFO] Checking activity reminders 
[2026-03-14 15:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:18:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:18:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:18:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:18:35] [INFO] Checking activity reminders 
[2026-03-14 15:18:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:18:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:02] [INFO] Checking activity reminders 
[2026-03-14 15:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:05] [INFO] Checking activity reminders 
[2026-03-14 15:19:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:19:16] [INFO] Checking activity reminders 
[2026-03-14 15:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:26] [INFO] Checking activity reminders 
[2026-03-14 15:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:35] [INFO] Checking activity reminders 
[2026-03-14 15:19:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:46] [INFO] Checking activity reminders 
[2026-03-14 15:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:19:56] [INFO] Checking activity reminders 
[2026-03-14 15:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:20:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:20:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:20:06] [INFO] Checking activity reminders 
[2026-03-14 15:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:17] [INFO] Checking activity reminders 
[2026-03-14 15:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:26] [INFO] Checking activity reminders 
[2026-03-14 15:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:39] [INFO] Checking activity reminders 
[2026-03-14 15:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:47] [INFO] Checking activity reminders 
[2026-03-14 15:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:20:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:20:56] [INFO] Checking activity reminders 
[2026-03-14 15:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:21:09] [INFO] Checking activity reminders 
[2026-03-14 15:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:21:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:21:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:21:17] [INFO] Checking activity reminders 
[2026-03-14 15:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:21:26] [INFO] Checking activity reminders 
[2026-03-14 15:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:21:39] [INFO] Checking activity reminders 
[2026-03-14 15:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:21:51] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدید"}
[2026-03-14 15:21:51] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدید"}
[2026-03-14 15:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:21:51] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9111723449","09111723449"]}
[2026-03-14 15:21:51] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9111723449","09111723449"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 15:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:21:51] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9111723449","existing_contact_id":"local_69b53990872fd7.72637675","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9111723449"],"user_attempting_creation":"ef266a9a-ff55-4893-8be3-7848badfcdce","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9111723449","09111723449"]}
[2026-03-14 15:21:51] [INFO] Duplicate lead response prepared using local ID {"local_id":"21830","didar_id":"local_69b53990872fd7.72637675"}
[2026-03-14 15:21:56] [INFO] Checking activity reminders 
[2026-03-14 15:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [INFO] generateDealTitle result {"contact_id":"local_69b53990872fd7.72637675","person_name":"لید جدید","mobile":"9111723449","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111723449"}
[2026-03-14 15:22:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9111723449","contact_id":"local_69b53990872fd7.72637675","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 15:22:06","session_id":"nuldltih8q1joc3lt7c2et7m5m"}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9111723449","contact_id":"local_69b53990872fd7.72637675","is_new_deal":true}
[2026-03-14 15:22:06] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9111723449"}
[2026-03-14 15:22:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9111723449"}
[2026-03-14 15:22:06] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9111723449","pattern":"معامله_ordinal_phone"}
[2026-03-14 15:22:06] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b53990872fd7.72637675"}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b53990872fd7.72637675","person_found":true,"primary_phone":"9111723449"}
[2026-03-14 15:22:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9111723449","contact_primary_phone":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison called {"input_phone":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison cleaned {"original":"9111723449","cleaned":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison called {"input_phone":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison cleaned {"original":"9111723449","cleaned":"9111723449"}
[2026-03-14 15:22:06] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9111723449"}
[2026-03-14 15:22:06] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9111723449","normalized_contact_phone":"9111723449","phones_match":true}
[2026-03-14 15:22:06] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9111723449","deal_phone":"9111723449","contact_phone":"9111723449","contact_id":"local_69b53990872fd7.72637675","validation":"PASSED"}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [INFO] generateDealTitle result {"contact_id":"local_69b53990872fd7.72637675","person_name":"لید جدید","mobile":"9111723449","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111723449"}
[2026-03-14 15:22:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69b53990872fd7.72637675","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 15:22:06] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_69b53990872fd7.72637675","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 15:22:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69b53990872fd7.72637675","title":"معامله دوم 9111723449","base_title_used":"معامله دوم 9111723449","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"لید جدید","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 15:22:06","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-14 15:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 15:22:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69b53990872fd7.72637675","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9111723449","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 15:22:06","ip_address":"5.208.43.145","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 15:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:22:10] [INFO] Checking activity reminders 
[2026-03-14 15:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:22:26] [INFO] Checking activity reminders 
[2026-03-14 15:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:22:40] [INFO] Checking activity reminders 
[2026-03-14 15:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:23:10] [INFO] Checking activity reminders 
[2026-03-14 15:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:23:41] [INFO] Checking activity reminders 
[2026-03-14 15:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:24:11] [INFO] Checking activity reminders 
[2026-03-14 15:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:24:41] [INFO] Checking activity reminders 
[2026-03-14 15:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:25:07] [INFO] Checking activity reminders 
[2026-03-14 15:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:25:11] [INFO] Checking activity reminders 
[2026-03-14 15:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:25:41] [INFO] Checking activity reminders 
[2026-03-14 15:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:25:42] [INFO] Checking activity reminders 
[2026-03-14 15:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:26:12] [INFO] Checking activity reminders 
[2026-03-14 15:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:26:42] [INFO] Checking activity reminders 
[2026-03-14 15:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:27:15] [INFO] Checking activity reminders 
[2026-03-14 15:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:27:47] [INFO] Checking activity reminders 
[2026-03-14 15:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:28:17] [INFO] Checking activity reminders 
[2026-03-14 15:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:28:48] [INFO] Checking activity reminders 
[2026-03-14 15:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:29:18] [INFO] Checking activity reminders 
[2026-03-14 15:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:29:48] [INFO] Checking activity reminders 
[2026-03-14 15:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:30:18] [INFO] Checking activity reminders 
[2026-03-14 15:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:30:49] [INFO] Checking activity reminders 
[2026-03-14 15:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:31:19] [INFO] Checking activity reminders 
[2026-03-14 15:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:31:49] [INFO] Checking activity reminders 
[2026-03-14 15:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:32:19] [INFO] Checking activity reminders 
[2026-03-14 15:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:32:50] [INFO] Checking activity reminders 
[2026-03-14 15:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:33:20] [INFO] Checking activity reminders 
[2026-03-14 15:33:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:33:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:33:50] [INFO] Checking activity reminders 
[2026-03-14 15:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:34:22] [INFO] Checking activity reminders 
[2026-03-14 15:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:34:26] [INFO] Checking activity reminders 
[2026-03-14 15:34:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:34:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:34:53] [INFO] Checking activity reminders 
[2026-03-14 15:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:34:56] [INFO] Checking activity reminders 
[2026-03-14 15:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:35:21] [INFO] Checking activity reminders 
[2026-03-14 15:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:35:26] [INFO] Checking activity reminders 
[2026-03-14 15:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:35:51] [INFO] Checking activity reminders 
[2026-03-14 15:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:35:56] [INFO] Checking activity reminders 
[2026-03-14 15:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:36:16] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_103","deal_id":"local_69b533951721d1.85512353","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 15:36:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_103","note_was_empty":true}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:16] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_103","stage_name":"new","force":false}
[2026-03-14 15:36:16] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_103","stage_name":"new"}
[2026-03-14 15:36:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_103"}
[2026-03-14 15:36:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533951721d1.85512353","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 15:36:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b54f38caebd4.83526979","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69b54f38caebd4.83526979"}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:16] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_103","stage_name":"deal_registered","force":false}
[2026-03-14 15:36:16] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_103","stage_name":"deal_registered"}
[2026-03-14 15:36:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_103"}
[2026-03-14 15:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:21] [INFO] Checking activity reminders 
[2026-03-14 15:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:36:26] [INFO] Checking activity reminders 
[2026-03-14 15:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:36:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 15:36:51] [INFO] Checking activity reminders 
[2026-03-14 15:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:36:56] [INFO] Checking activity reminders 
[2026-03-14 15:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:37:22] [INFO] Checking activity reminders 
[2026-03-14 15:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:37:27] [INFO] Checking activity reminders 
[2026-03-14 15:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:37:45] [INFO] Checking activity reminders 
[2026-03-14 15:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:37:59] [INFO] Checking activity reminders 
[2026-03-14 15:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:38:16] [INFO] Checking activity reminders 
[2026-03-14 15:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:38:30] [INFO] Checking activity reminders 
[2026-03-14 15:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:38:46] [INFO] Checking activity reminders 
[2026-03-14 15:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:39:00] [INFO] Checking activity reminders 
[2026-03-14 15:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:39:16] [INFO] Checking activity reminders 
[2026-03-14 15:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:39:30] [INFO] Checking activity reminders 
[2026-03-14 15:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:39:46] [INFO] Checking activity reminders 
[2026-03-14 15:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:40:00] [INFO] Checking activity reminders 
[2026-03-14 15:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:40:17] [INFO] Checking activity reminders 
[2026-03-14 15:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:40:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:40:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:40:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:40:30] [INFO] Checking activity reminders 
[2026-03-14 15:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:40:47] [INFO] Checking activity reminders 
[2026-03-14 15:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:41:00] [INFO] Checking activity reminders 
[2026-03-14 15:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:41:17] [INFO] Checking activity reminders 
[2026-03-14 15:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:41:30] [INFO] Checking activity reminders 
[2026-03-14 15:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:41:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:41:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:41:47] [INFO] Checking activity reminders 
[2026-03-14 15:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:42:00] [INFO] Checking activity reminders 
[2026-03-14 15:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:42:18] [INFO] Checking activity reminders 
[2026-03-14 15:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:42:48] [INFO] Checking activity reminders 
[2026-03-14 15:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:43:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:43:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:43:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:43:18] [INFO] Checking activity reminders 
[2026-03-14 15:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:43:26] [INFO] Checking activity reminders 
[2026-03-14 15:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:43:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:43:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:43:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:43:48] [INFO] Checking activity reminders 
[2026-03-14 15:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:44:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:44:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:44:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:44:19] [INFO] Checking activity reminders 
[2026-03-14 15:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:44:38] [INFO] Checking activity reminders 
[2026-03-14 15:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:44:51] [INFO] Checking activity reminders 
[2026-03-14 15:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:44:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:44:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:44:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:45:08] [INFO] Checking activity reminders 
[2026-03-14 15:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:45:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:45:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:45:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:45:21] [INFO] Checking activity reminders 
[2026-03-14 15:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 15:45:38] [INFO] Checking activity reminders 
[2026-03-14 15:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:45:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:45:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:45:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:45:51] [INFO] Checking activity reminders 
[2026-03-14 15:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:45:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:45:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:45:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:46:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:46:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:46:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:46:08] [INFO] Checking activity reminders 
[2026-03-14 15:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:46:22] [INFO] Checking activity reminders 
[2026-03-14 15:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:46:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:46:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:46:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:46:38] [INFO] Checking activity reminders 
[2026-03-14 15:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:46:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:46:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:46:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:46:52] [INFO] Checking activity reminders 
[2026-03-14 15:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:47:08] [INFO] Checking activity reminders 
[2026-03-14 15:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:47:22] [INFO] Checking activity reminders 
[2026-03-14 15:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:47:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:47:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:47:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:47:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:47:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:47:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:47:54] [INFO] Checking activity reminders 
[2026-03-14 15:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:48:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:48:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:48:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:48:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:48:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:48:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:48:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:48:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:48:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:48:25] [INFO] Checking activity reminders 
[2026-03-14 15:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:48:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:48:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:48:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:48:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:48:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:48:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:48:55] [INFO] Checking activity reminders 
[2026-03-14 15:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:49:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:49:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:49:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:49:26] [INFO] Checking activity reminders 
[2026-03-14 15:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:49:56] [INFO] Checking activity reminders 
[2026-03-14 15:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:50:27] [INFO] Checking activity reminders 
[2026-03-14 15:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:50:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:50:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:50:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:50:57] [INFO] Checking activity reminders 
[2026-03-14 15:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:51:27] [INFO] Checking activity reminders 
[2026-03-14 15:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:51:57] [INFO] Checking activity reminders 
[2026-03-14 15:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:52:02] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:02] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"check_reminders"}
[2026-03-14 15:52:02] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:05] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:05] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:05] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:05] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_person_profile"}
[2026-03-14 15:52:05] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:08] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:08] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:08] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_person_profile"}
[2026-03-14 15:52:08] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:08] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:10] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:10] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:10] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:10] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_person_profile"}
[2026-03-14 15:52:10] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:13] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:13] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:13] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:13] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:13] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_products"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:18] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:19] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:19] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:19] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:19] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:19] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:24] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_products"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:25] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:28] [INFO] Checking activity reminders 
[2026-03-14 15:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:31] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_products"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:33] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:35] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:35] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:35] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:35] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:35] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:42] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:42] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:42] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_deals"}
[2026-03-14 15:52:42] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:42] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_products"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_leads"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:47] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:53] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:53] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:53] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_leads"}
[2026-03-14 15:52:53] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:52:59] [INFO] Checking activity reminders 
[2026-03-14 15:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:53:00] [INFO] Checking activity reminders 
[2026-03-14 15:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:02] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"check_reminders"}
[2026-03-14 15:53:03] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-14 15:53:06] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:23] [WARNING] Auth check failed - not authenticated {"session_id":"oa87v97h01gi04imcb25sgmb9j","session_keys":[],"action":"log_client_event"}
[2026-03-14 15:53:23] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-14 15:53:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 15:53:27] [INFO] Activity save request {"post_data":{"contact_id":"17008","deal_id":"local_69b53a33778359.64290036","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 15:53:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17008","note_was_empty":true}
[2026-03-14 15:53:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"17008","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:27] [INFO] Updating virtual stage {"contact_id":"17008","stage_name":"deal_registered","force":false}
[2026-03-14 15:53:27] [INFO] Virtual stage successfully saved {"contact_id":"17008","stage_name":"deal_registered"}
[2026-03-14 15:53:27] [INFO] Virtual stage updated after activity save {"contact_id":"17008"}
[2026-03-14 15:53:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53a33778359.64290036","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 15:53:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5533f07fa12.81356183","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5533f07fa12.81356183"}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:27] [INFO] Updating virtual stage {"contact_id":"17008","stage_name":"deal_registered","force":false}
[2026-03-14 15:53:27] [INFO] Virtual stage successfully saved {"contact_id":"17008","stage_name":"deal_registered"}
[2026-03-14 15:53:27] [INFO] Virtual stage updated after activity save {"contact_id":"17008"}
[2026-03-14 15:53:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:29] [INFO] Checking activity reminders 
[2026-03-14 15:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:53:30] [INFO] Checking activity reminders 
[2026-03-14 15:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-14 15:53:53] [INFO] Checking activity reminders 
[2026-03-14 15:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:00] [INFO] Checking activity reminders 
[2026-03-14 15:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:01] [INFO] Checking activity reminders 
[2026-03-14 15:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-14 15:54:24] [INFO] Checking activity reminders 
[2026-03-14 15:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 15:54:30] [INFO] Checking activity reminders 
[2026-03-14 15:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:31] [INFO] Checking activity reminders 
[2026-03-14 15:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:54:53] [INFO] Checking activity reminders 
[2026-03-14 15:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:01] [INFO] Checking activity reminders 
[2026-03-14 15:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:01] [INFO] Checking activity reminders 
[2026-03-14 15:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:10] [INFO] Checking activity reminders 
[2026-03-14 15:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:31] [INFO] Checking activity reminders 
[2026-03-14 15:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:31] [INFO] Checking activity reminders 
[2026-03-14 15:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:55:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5560","deal_id":"local_69997ed08fe188.26749874","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 15:55:34","session_id":"oa87v97h01gi04imcb25sgmb9j"}
[2026-03-14 15:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-14 15:55:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5560","is_new_deal":false}
[2026-03-14 15:55:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 15:55:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 15:55:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 15:55:34] [INFO] getContactPrimaryPhone called {"contact_id":"5560"}
[2026-03-14 15:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-14 15:55:34] [INFO] getContactPrimaryPhone result {"contact_id":"5560","person_found":true,"primary_phone":"9128481567"}
[2026-03-14 15:55:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128481567"}
[2026-03-14 15:55:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128481567","contact_id":"5560","deal_id":"local_69997ed08fe188.26749874","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 15:55:34"}
[2026-03-14 15:55:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69997ed08fe188.26749874","contact_id":"5560","existing_deal_found":true,"existing_contact_id":"5560","existing_title":"معامله سوم 9128481567 | کانال VIP","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-14 15:55:34"}
[2026-03-14 15:55:34] [INFO] DealController.save validated payments {"deal_id":"local_69997ed08fe188.26749874","contact_id":"5560","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-14 15:55:34] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5560","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 15:55:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69997ed08fe188.26749874","contact_didar_id":"5560","title":"معامله سوم 9128481567 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9128481567","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"بیابانی","existing_deal":"YES","existing_deal_id":"local_69997ed08fe188.26749874","existing_deal_status":"Pending","server_time":"2026-03-14 15:55:34","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-14 15:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-14 15:55:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69997ed08fe188.26749874","contact_id":"5560","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9128481567 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 15:55:34","ip_address":"5.113.50.15","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-14 15:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-14 15:56:01] [INFO] Checking activity reminders 
[2026-03-14 15:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:56:03] [INFO] Checking activity reminders 
[2026-03-14 15:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:56:31] [INFO] Checking activity reminders 
[2026-03-14 15:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:56:33] [INFO] Checking activity reminders 
[2026-03-14 15:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:57:02] [INFO] Checking activity reminders 
[2026-03-14 15:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:57:03] [INFO] Checking activity reminders 
[2026-03-14 15:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:57:32] [INFO] Checking activity reminders 
[2026-03-14 15:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:57:33] [INFO] Checking activity reminders 
[2026-03-14 15:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:58:02] [INFO] Checking activity reminders 
[2026-03-14 15:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:58:04] [INFO] Checking activity reminders 
[2026-03-14 15:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:58:32] [INFO] Checking activity reminders 
[2026-03-14 15:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:58:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:58:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:58:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:58:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 15:58:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 15:58:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 15:59:02] [INFO] Checking activity reminders 
[2026-03-14 15:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 15:59:33] [INFO] Checking activity reminders 
[2026-03-14 15:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 15:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:00:03] [INFO] Checking activity reminders 
[2026-03-14 16:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:00:33] [INFO] Checking activity reminders 
[2026-03-14 16:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:00:52] [INFO] Checking activity reminders 
[2026-03-14 16:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:01:04] [INFO] Checking activity reminders 
[2026-03-14 16:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:01:22] [INFO] Checking activity reminders 
[2026-03-14 16:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:01:23] [INFO] Activity save request {"post_data":{"contact_id":"21608","deal_id":"local_69b533bc5cb524.07389212","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 16:01:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21608","note_was_empty":true}
[2026-03-14 16:01:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"21608","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:23] [INFO] Updating virtual stage {"contact_id":"21608","stage_name":"deal_registered","force":false}
[2026-03-14 16:01:23] [INFO] Virtual stage successfully saved {"contact_id":"21608","stage_name":"deal_registered"}
[2026-03-14 16:01:23] [INFO] Virtual stage updated after activity save {"contact_id":"21608"}
[2026-03-14 16:01:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533bc5cb524.07389212","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 16:01:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b5551b6f1094.34155254","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69b5551b6f1094.34155254"}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:23] [INFO] Updating virtual stage {"contact_id":"21608","stage_name":"deal_registered","force":false}
[2026-03-14 16:01:23] [INFO] Virtual stage successfully saved {"contact_id":"21608","stage_name":"deal_registered"}
[2026-03-14 16:01:23] [INFO] Virtual stage updated after activity save {"contact_id":"21608"}
[2026-03-14 16:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 16:01:28] [INFO] Checking activity reminders 
[2026-03-14 16:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:01:34] [INFO] Checking activity reminders 
[2026-03-14 16:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:01:58] [INFO] Checking activity reminders 
[2026-03-14 16:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:02:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:02:04] [INFO] Checking activity reminders 
[2026-03-14 16:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:02:34] [INFO] Checking activity reminders 
[2026-03-14 16:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:03:05] [INFO] Checking activity reminders 
[2026-03-14 16:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:04:57] [INFO] Checking activity reminders 
[2026-03-14 16:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:05:17] [INFO] Activity save request {"post_data":{"contact_id":"13663","deal_id":"local_69b5316689acd4.42167347","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-14 16:05:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13663","note_was_empty":true}
[2026-03-14 16:05:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"13663","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:17] [INFO] Updating virtual stage {"contact_id":"13663","stage_name":"deal_registered","force":false}
[2026-03-14 16:05:17] [INFO] Virtual stage successfully saved {"contact_id":"13663","stage_name":"deal_registered"}
[2026-03-14 16:05:17] [INFO] Virtual stage updated after activity save {"contact_id":"13663"}
[2026-03-14 16:05:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5316689acd4.42167347","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-14 16:05:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b556051a3af2.13551219","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69b556051a3af2.13551219"}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:17] [INFO] Updating virtual stage {"contact_id":"13663","stage_name":"deal_registered","force":false}
[2026-03-14 16:05:17] [INFO] Virtual stage successfully saved {"contact_id":"13663","stage_name":"deal_registered"}
[2026-03-14 16:05:17] [INFO] Virtual stage updated after activity save {"contact_id":"13663"}
[2026-03-14 16:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:05:23] [INFO] Checking activity reminders 
[2026-03-14 16:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13663","person_id":"4240"}
[2026-03-14 16:19:15] [INFO] Checking activity reminders 
[2026-03-14 16:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:19:45] [INFO] Checking activity reminders 
[2026-03-14 16:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:20:15] [INFO] Checking activity reminders 
[2026-03-14 16:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:20:45] [INFO] Checking activity reminders 
[2026-03-14 16:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:21:15] [INFO] Checking activity reminders 
[2026-03-14 16:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:21:45] [INFO] Checking activity reminders 
[2026-03-14 16:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:22:15] [INFO] Checking activity reminders 
[2026-03-14 16:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:23:19] [INFO] Checking activity reminders 
[2026-03-14 16:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:23:38] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9662683496","09662683496"]}
[2026-03-14 16:23:38] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9662683496","09662683496"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 16:23:38] [INFO] Didar write disabled; creating local lead only {"owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","mobile":"9662683496","full_name":"لید جدید"}
[2026-03-14 16:23:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:23:38] [INFO] Notification created {"notification_id":"574","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"lead_assigned","show_popup":true}
[2026-03-14 16:24:23] [INFO] Checking activity reminders 
[2026-03-14 16:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:25:02] [INFO] Checking activity reminders 
[2026-03-14 16:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:25:27] [WARNING] Auth check failed - not authenticated {"session_id":"iv3n85e1bm72lsf31btfctdc6d","session_keys":[],"action":"log_client_event"}
[2026-03-14 16:25:28] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-03-14 16:25:28] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-03-14 16:25:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 16:25:29] [INFO] Checking activity reminders 
[2026-03-14 16:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:25:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:25:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:25:59] [INFO] Checking activity reminders 
[2026-03-14 16:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:26:18] [INFO] Checking activity reminders 
[2026-03-14 16:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:26:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:26:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:26:29] [INFO] Checking activity reminders 
[2026-03-14 16:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:26:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:26:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:27:01] [INFO] Checking activity reminders 
[2026-03-14 16:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:27:05] [INFO] Checking activity reminders 
[2026-03-14 16:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:27:28] [INFO] Checking activity reminders 
[2026-03-14 16:27:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:27:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:29:00] [INFO] Checking activity reminders 
[2026-03-14 16:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:29:47] [INFO] Checking activity reminders 
[2026-03-14 16:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:29:58] [WARNING] Auth check failed - not authenticated {"session_id":"iv3n85e1bm72lsf31btfctdc6d","session_keys":[],"action":"log_client_event"}
[2026-03-14 16:29:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 16:29:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 16:29:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 16:29:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 16:29:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 16:29:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 16:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-14 16:34:31] [INFO] Checking activity reminders 
[2026-03-14 16:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:34:37] [INFO] Checking activity reminders 
[2026-03-14 16:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-14 16:35:07] [INFO] Checking activity reminders 
[2026-03-14 16:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:35:37] [INFO] Checking activity reminders 
[2026-03-14 16:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21021","person_id":"11548"}
[2026-03-14 16:36:07] [INFO] Checking activity reminders 
[2026-03-14 16:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20989","person_id":"6224"}
[2026-03-14 16:36:37] [INFO] Checking activity reminders 
[2026-03-14 16:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20904","person_id":"5473"}
[2026-03-14 16:37:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20863","person_id":"9915"}
[2026-03-14 16:37:07] [INFO] Checking activity reminders 
[2026-03-14 16:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:37:09] [INFO] Checking activity reminders 
[2026-03-14 16:37:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:37:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:37:37] [INFO] Checking activity reminders 
[2026-03-14 16:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:37:40] [INFO] Checking activity reminders 
[2026-03-14 16:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:37:40] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9390793111","09390793111"]}
[2026-03-14 16:37:40] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9390793111","09390793111"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 16:37:40] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9390793111","full_name":"لید جدید"}
[2026-03-14 16:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 16:37:40] [INFO] Notification created {"notification_id":"575","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 16:38:07] [INFO] Checking activity reminders 
[2026-03-14 16:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21004","person_id":"464"}
[2026-03-14 16:38:37] [INFO] Checking activity reminders 
[2026-03-14 16:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:39:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20996","person_id":"1472"}
[2026-03-14 16:39:07] [INFO] Checking activity reminders 
[2026-03-14 16:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:39:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20911","person_id":"2715"}
[2026-03-14 16:39:38] [INFO] Checking activity reminders 
[2026-03-14 16:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:40:53] [INFO] Checking activity reminders 
[2026-03-14 16:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 16:41:23] [INFO] Checking activity reminders 
[2026-03-14 16:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:41:53] [INFO] Checking activity reminders 
[2026-03-14 16:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 16:42:23] [INFO] Checking activity reminders 
[2026-03-14 16:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 16:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:04:37] [INFO] Checking activity reminders 
[2026-03-14 17:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:10:41] [INFO] Checking activity reminders 
[2026-03-14 17:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:12:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 17:13:19] [INFO] Checking activity reminders 
[2026-03-14 17:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:13:50] [INFO] Checking activity reminders 
[2026-03-14 17:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:14:30] [INFO] Checking activity reminders 
[2026-03-14 17:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:15:02] [INFO] Checking activity reminders 
[2026-03-14 17:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:15:33] [INFO] Checking activity reminders 
[2026-03-14 17:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:16:18] [INFO] Checking activity reminders 
[2026-03-14 17:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:16:52] [INFO] Checking activity reminders 
[2026-03-14 17:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:17:23] [INFO] Checking activity reminders 
[2026-03-14 17:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:17:54] [INFO] Checking activity reminders 
[2026-03-14 17:17:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:17:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:18:25] [INFO] Checking activity reminders 
[2026-03-14 17:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:18:55] [INFO] Checking activity reminders 
[2026-03-14 17:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:19:28] [INFO] Checking activity reminders 
[2026-03-14 17:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:20:01] [INFO] Checking activity reminders 
[2026-03-14 17:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:20:34] [INFO] Checking activity reminders 
[2026-03-14 17:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:21:04] [INFO] Checking activity reminders 
[2026-03-14 17:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:21:40] [INFO] Checking activity reminders 
[2026-03-14 17:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:32:44] [INFO] Checking activity reminders 
[2026-03-14 17:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:38:25] [INFO] Checking activity reminders 
[2026-03-14 17:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:40:47] [INFO] Checking activity reminders 
[2026-03-14 17:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:41:25] [INFO] Checking activity reminders 
[2026-03-14 17:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 17:41:58] [INFO] Checking activity reminders 
[2026-03-14 17:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:42:45] [INFO] Checking activity reminders 
[2026-03-14 17:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:42:46] [INFO] Checking activity reminders 
[2026-03-14 17:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:43:56] [INFO] Checking activity reminders 
[2026-03-14 17:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:45:18] [INFO] Checking activity reminders 
[2026-03-14 17:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 17:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 17:45:49] [INFO] Checking activity reminders 
[2026-03-14 17:45:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:45:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:46:20] [INFO] Checking activity reminders 
[2026-03-14 17:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:46:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 17:46:42] [INFO] Checking activity reminders 
[2026-03-14 17:46:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:46:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:47:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:47:12] [INFO] Checking activity reminders 
[2026-03-14 17:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:47:43] [INFO] Checking activity reminders 
[2026-03-14 17:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:48:16] [INFO] Checking activity reminders 
[2026-03-14 17:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:48:47] [INFO] Checking activity reminders 
[2026-03-14 17:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:49:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20096","deal_id":"local_694d2fa3333907.12852430","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 17:49:01","session_id":"hf52mktqglo82f41uetm5ggtpj"}
[2026-03-14 17:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20096","is_new_deal":false}
[2026-03-14 17:49:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 17:49:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 17:49:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 17:49:01] [INFO] getContactPrimaryPhone called {"contact_id":"20096"}
[2026-03-14 17:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:01] [INFO] getContactPrimaryPhone result {"contact_id":"20096","person_found":true,"primary_phone":"9145282170"}
[2026-03-14 17:49:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9145282170"}
[2026-03-14 17:49:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9145282170","contact_id":"20096","deal_id":"local_694d2fa3333907.12852430","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 17:49:01"}
[2026-03-14 17:49:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_694d2fa3333907.12852430","contact_id":"20096","existing_deal_found":true,"existing_contact_id":"20096","existing_title":"معامله اول 9145282170 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 17:49:01"}
[2026-03-14 17:49:01] [INFO] DealController.save validated payments {"deal_id":"local_694d2fa3333907.12852430","contact_id":"20096","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-14 17:49:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20096","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 17:49:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694d2fa3333907.12852430","contact_didar_id":"20096","title":"معامله اول 9145282170 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9145282170","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لیلا میکاییل زاده","existing_deal":"YES","existing_deal_id":"local_694d2fa3333907.12852430","existing_deal_status":"Pending","server_time":"2026-03-14 17:49:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 17:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:01] [INFO] Deal success processed {"contact_id":"20096","person_name":"لیلا میکاییل زاده","products_count":1}
[2026-03-14 17:49:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694d2fa3333907.12852430","contact_id":"20096","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9145282170 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 17:49:01","ip_address":"5.215.162.96","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 17:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:49:17] [INFO] Checking activity reminders 
[2026-03-14 17:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:50:47] [INFO] Checking activity reminders 
[2026-03-14 17:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:51:34] [INFO] Checking activity reminders 
[2026-03-14 17:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:53:27] [INFO] Checking activity reminders 
[2026-03-14 17:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:57:20] [INFO] Checking activity reminders 
[2026-03-14 17:57:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:57:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:57:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55d9c4d74b1.82762151","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 17:57:41","session_id":"hf52mktqglo82f41uetm5ggtpj"}
[2026-03-14 17:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55d9c4d74b1.82762151","is_new_deal":true}
[2026-03-14 17:57:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 17:57:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 17:57:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 17:57:41] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55d9c4d74b1.82762151"}
[2026-03-14 17:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:41] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55d9c4d74b1.82762151","person_found":true,"primary_phone":"9390793111"}
[2026-03-14 17:57:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9390793111"}
[2026-03-14 17:57:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9390793111","contact_id":"local_69b55d9c4d74b1.82762151","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 17:57:41"}
[2026-03-14 17:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:41] [INFO] generateDealTitle result {"contact_id":"local_69b55d9c4d74b1.82762151","person_name":"لید جدید","mobile":"9390793111","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9390793111"}
[2026-03-14 17:57:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69b55d9c4d74b1.82762151","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-14 17:57:41] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b55d9c4d74b1.82762151","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 17:57:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69b55d9c4d74b1.82762151","title":"معامله دوم 9390793111 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9390793111","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لید جدید","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 17:57:41","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 17:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:41] [INFO] Deal success processed {"contact_id":"local_69b55d9c4d74b1.82762151","person_name":"لید جدید","products_count":1}
[2026-03-14 17:57:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 17:57:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69b55d9c4d74b1.82762151","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9390793111 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-14 17:57:41","ip_address":"5.215.162.96","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 17:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-14 17:58:01] [INFO] Checking activity reminders 
[2026-03-14 17:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 17:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 17:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-14 17:58:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 17:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-03-14 18:01:59] [INFO] Checking activity reminders 
[2026-03-14 18:01:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 18:01:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:08:12] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-14 19:08:12] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 19:08:12] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 19:08:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 19:08:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 19:08:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 19:08:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 19:08:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 19:08:43] [INFO] Checking activity reminders 
[2026-03-14 19:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 19:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 19:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_103","person_id":"21180"}
[2026-03-14 19:09:13] [INFO] Checking activity reminders 
[2026-03-14 19:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:27:51] [INFO] Checking activity reminders 
[2026-03-14 19:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:28:22] [INFO] Checking activity reminders 
[2026-03-14 19:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:28:52] [INFO] Checking activity reminders 
[2026-03-14 19:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:29:22] [INFO] Checking activity reminders 
[2026-03-14 19:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:29:52] [INFO] Checking activity reminders 
[2026-03-14 19:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:30:23] [INFO] Checking activity reminders 
[2026-03-14 19:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:30:53] [INFO] Checking activity reminders 
[2026-03-14 19:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 19:31:23] [INFO] Checking activity reminders 
[2026-03-14 19:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 19:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:12:52] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 21:12:52] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-14 21:12:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 21:13:22] [INFO] Checking activity reminders 
[2026-03-14 21:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:13:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:13:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:13:36] [INFO] generateDealTitle result {"contact_id":"2877","person_name":"باقرپور","mobile":"9118084374","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9118084374"}
[2026-03-14 21:13:53] [INFO] Checking activity reminders 
[2026-03-14 21:13:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:13:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:14:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2877","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 21:14:23","session_id":"h5556oat80o5rinvqb9ilrkspq"}
[2026-03-14 21:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:14:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2877","is_new_deal":true}
[2026-03-14 21:14:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 21:14:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 21:14:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 21:14:23] [INFO] getContactPrimaryPhone called {"contact_id":"2877"}
[2026-03-14 21:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:14:23] [INFO] getContactPrimaryPhone result {"contact_id":"2877","person_found":true,"primary_phone":"9118084374"}
[2026-03-14 21:14:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9118084374"}
[2026-03-14 21:14:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9118084374","contact_id":"2877","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 21:14:23"}
[2026-03-14 21:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:14:23] [INFO] generateDealTitle result {"contact_id":"2877","person_name":"باقرپور","mobile":"9118084374","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9118084374"}
[2026-03-14 21:14:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2877","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-14 21:14:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2877","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 21:14:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2877","title":"معامله دوم 9118084374 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9118084374","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"باقرپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 21:14:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 21:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:14:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 21:14:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2877","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9118084374 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-14 21:14:23","ip_address":"5.211.60.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 21:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:14:24] [INFO] Checking activity reminders 
[2026-03-14 21:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:14:55] [INFO] Checking activity reminders 
[2026-03-14 21:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:15:56] [INFO] Checking activity reminders 
[2026-03-14 21:15:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:15:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:16:28] [INFO] Checking activity reminders 
[2026-03-14 21:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:16:59] [INFO] Checking activity reminders 
[2026-03-14 21:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:17:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2877","deal_id":"local_69b59e7746fed4.31508500","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-14 21:17:08","session_id":"h5556oat80o5rinvqb9ilrkspq"}
[2026-03-14 21:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:17:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2877","is_new_deal":false}
[2026-03-14 21:17:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-14 21:17:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 21:17:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-14 21:17:08] [INFO] getContactPrimaryPhone called {"contact_id":"2877"}
[2026-03-14 21:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:17:08] [INFO] getContactPrimaryPhone result {"contact_id":"2877","person_found":true,"primary_phone":"9118084374"}
[2026-03-14 21:17:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9118084374"}
[2026-03-14 21:17:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9118084374","contact_id":"2877","deal_id":"local_69b59e7746fed4.31508500","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 21:17:08"}
[2026-03-14 21:17:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b59e7746fed4.31508500","contact_id":"2877","existing_deal_found":true,"existing_contact_id":"2877","existing_title":"معامله دوم 9118084374 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-14 21:17:08"}
[2026-03-14 21:17:08] [INFO] DealController.save validated payments {"deal_id":"local_69b59e7746fed4.31508500","contact_id":"2877","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-14 21:17:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2877","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-14 21:17:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b59e7746fed4.31508500","contact_didar_id":"2877","title":"معامله دوم 9118084374 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9118084374","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"باقرپور","existing_deal":"YES","existing_deal_id":"local_69b59e7746fed4.31508500","existing_deal_status":"Pending","server_time":"2026-03-14 21:17:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-14 21:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:17:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b59e7746fed4.31508500","contact_id":"2877","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9118084374 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-14 21:17:08","ip_address":"5.211.60.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-14 21:17:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-14 21:17:18] [INFO] Checking activity reminders 
[2026-03-14 21:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:17:48] [INFO] Checking activity reminders 
[2026-03-14 21:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 21:36:34] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-14 21:36:34] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"check_reminders"}
[2026-03-14 21:36:34] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-14 21:36:42] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-14 21:36:52] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-14 21:36:52] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 21:36:52] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 21:36:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 21:36:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 21:36:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 21:36:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 21:37:23] [INFO] Checking activity reminders 
[2026-03-14 21:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 21:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:32:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"check_reminders"}
[2026-03-14 22:32:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:29] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:29] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:29] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"save_deal"}
[2026-03-14 22:32:29] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:30] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:42] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:42] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:45] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:45] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:45] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:51] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:32:51] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"check_reminders"}
[2026-03-14 22:32:51] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:02] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:02] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:06] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:06] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:06] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:09] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:09] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:09] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:09] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:09] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:10] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:10] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:10] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:10] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:10] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:11] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:11] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:11] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:11] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:11] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_person_profile"}
[2026-03-14 22:33:12] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_deals"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_products"}
[2026-03-14 22:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:17] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:17] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:20] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_products"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_leads"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:24] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_leads"}
[2026-03-14 22:33:24] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:26] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:26] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:26] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_leads"}
[2026-03-14 22:33:26] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:27] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:27] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:27] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_leads"}
[2026-03-14 22:33:27] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_products"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_deals"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:33:31] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:34:07] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:34:07] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-14 22:34:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 22:34:38] [INFO] Checking activity reminders 
[2026-03-14 22:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:35:08] [INFO] Checking activity reminders 
[2026-03-14 22:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:35:38] [INFO] Checking activity reminders 
[2026-03-14 22:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:36:08] [INFO] Checking activity reminders 
[2026-03-14 22:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:36:10] [WARNING] Auth check failed - not authenticated {"session_id":"8kdu1karsm4oqrh5msjlqrmen1","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:36:10] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-14 22:36:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 22:36:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 22:36:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 22:36:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 22:36:38] [INFO] Checking activity reminders 
[2026-03-14 22:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:36:38] [INFO] Checking activity reminders 
[2026-03-14 22:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:37:00] [INFO] Checking activity reminders 
[2026-03-14 22:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:37:30] [INFO] Checking activity reminders 
[2026-03-14 22:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:38:00] [INFO] Checking activity reminders 
[2026-03-14 22:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:38:30] [INFO] Checking activity reminders 
[2026-03-14 22:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:39:00] [INFO] Checking activity reminders 
[2026-03-14 22:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:39:30] [INFO] Checking activity reminders 
[2026-03-14 22:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:40:00] [INFO] Checking activity reminders 
[2026-03-14 22:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:40:31] [INFO] Checking activity reminders 
[2026-03-14 22:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:41:01] [INFO] Checking activity reminders 
[2026-03-14 22:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:41:31] [INFO] Checking activity reminders 
[2026-03-14 22:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:42:01] [INFO] Checking activity reminders 
[2026-03-14 22:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:42:18] [INFO] Checking activity reminders 
[2026-03-14 22:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:46:54] [INFO] Checking activity reminders 
[2026-03-14 22:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:47:46] [INFO] Checking activity reminders 
[2026-03-14 22:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:48:16] [INFO] Checking activity reminders 
[2026-03-14 22:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:48:46] [INFO] Checking activity reminders 
[2026-03-14 22:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:49:17] [INFO] Checking activity reminders 
[2026-03-14 22:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:49:47] [INFO] Checking activity reminders 
[2026-03-14 22:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:50:17] [INFO] Checking activity reminders 
[2026-03-14 22:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:50:47] [INFO] Checking activity reminders 
[2026-03-14 22:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:51:17] [INFO] Checking activity reminders 
[2026-03-14 22:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:51:47] [INFO] Checking activity reminders 
[2026-03-14 22:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:51:55] [INFO] Checking activity reminders 
[2026-03-14 22:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:52:25] [INFO] Checking activity reminders 
[2026-03-14 22:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:53:27] [INFO] Checking activity reminders 
[2026-03-14 22:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:53:57] [INFO] Checking activity reminders 
[2026-03-14 22:53:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:53:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:54:27] [INFO] Checking activity reminders 
[2026-03-14 22:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:54:38] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-03-14 22:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"hklpnolki0826i4nllnapc1965","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"hklpnolki0826i4nllnapc1965","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:54:50] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-03-14 22:54:57] [INFO] Checking activity reminders 
[2026-03-14 22:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:55:27] [INFO] Checking activity reminders 
[2026-03-14 22:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:55:58] [INFO] Checking activity reminders 
[2026-03-14 22:55:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:55:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:56:28] [INFO] Checking activity reminders 
[2026-03-14 22:56:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:56:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:56:37] [WARNING] Auth check failed - not authenticated {"session_id":"hklpnolki0826i4nllnapc1965","session_keys":[],"action":"log_client_event"}
[2026-03-14 22:56:37] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-14 22:56:37] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-14 22:56:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 22:56:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 22:56:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 22:56:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 22:56:40] [INFO] Checking activity reminders 
[2026-03-14 22:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:56:51] [INFO] Checking activity reminders 
[2026-03-14 22:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:57:08] [INFO] Checking activity reminders 
[2026-03-14 22:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:58:54] [INFO] Checking activity reminders 
[2026-03-14 22:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 22:59:24] [INFO] Checking activity reminders 
[2026-03-14 22:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 22:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:02:43] [INFO] Checking activity reminders 
[2026-03-14 23:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:02:50] [INFO] Checking activity reminders 
[2026-03-14 23:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:02:58] [INFO] Checking activity reminders 
[2026-03-14 23:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:03:06] [INFO] Checking activity reminders 
[2026-03-14 23:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:03:12] [INFO] Checking activity reminders 
[2026-03-14 23:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:03:19] [DEBUG] findByPhone: Found person {"phones":["9129527939"],"found_id":"20225","found_didar_id":"8796","found_name":"محمد رضا تقوی"}
[2026-03-14 23:03:19] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9129527939","found_didar_id":"8796","found_local_id":"20225","found_name":"محمد رضا تقوی"}
[2026-03-14 23:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-14 23:03:19] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9129527939","09129527939"]}
[2026-03-14 23:03:19] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9129527939","09129527939"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-14 23:03:19] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9129527939","existing_contact_id":"8796","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9129527939"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9129527939","09129527939"]}
[2026-03-14 23:03:19] [INFO] Duplicate lead response prepared using local ID {"local_id":"20225","didar_id":"8796"}
[2026-03-14 23:03:42] [INFO] Checking activity reminders 
[2026-03-14 23:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:04:02] [INFO] Checking activity reminders 
[2026-03-14 23:04:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:04:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:04:12] [INFO] Checking activity reminders 
[2026-03-14 23:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:04:30] [INFO] Checking activity reminders 
[2026-03-14 23:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:04:42] [INFO] Checking activity reminders 
[2026-03-14 23:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:05:00] [INFO] Checking activity reminders 
[2026-03-14 23:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:05:13] [INFO] Checking activity reminders 
[2026-03-14 23:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:05:43] [INFO] Checking activity reminders 
[2026-03-14 23:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:06:13] [INFO] Checking activity reminders 
[2026-03-14 23:06:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:06:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:06:43] [INFO] Checking activity reminders 
[2026-03-14 23:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:07:13] [INFO] Checking activity reminders 
[2026-03-14 23:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:07:43] [INFO] Checking activity reminders 
[2026-03-14 23:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:08:36] [INFO] Checking activity reminders 
[2026-03-14 23:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:08:41] [INFO] Checking activity reminders 
[2026-03-14 23:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:09:29] [INFO] Checking activity reminders 
[2026-03-14 23:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:09:50] [INFO] Checking activity reminders 
[2026-03-14 23:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:09:54] [INFO] Checking activity reminders 
[2026-03-14 23:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:10:02] [INFO] Checking activity reminders 
[2026-03-14 23:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:10:32] [INFO] Checking activity reminders 
[2026-03-14 23:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:11:02] [INFO] Checking activity reminders 
[2026-03-14 23:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:11:44] [INFO] Checking activity reminders 
[2026-03-14 23:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:12:14] [INFO] Checking activity reminders 
[2026-03-14 23:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:12:44] [INFO] Checking activity reminders 
[2026-03-14 23:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:20:35] [INFO] Checking activity reminders 
[2026-03-14 23:20:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:20:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:20:45] [INFO] Checking activity reminders 
[2026-03-14 23:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:21:01] [INFO] Checking activity reminders 
[2026-03-14 23:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:21:31] [INFO] Checking activity reminders 
[2026-03-14 23:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-14 23:22:01] [INFO] Checking activity reminders 
[2026-03-14 23:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:22:31] [INFO] Checking activity reminders 
[2026-03-14 23:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:23:02] [INFO] Checking activity reminders 
[2026-03-14 23:23:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:23:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:23:32] [INFO] Checking activity reminders 
[2026-03-14 23:23:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:23:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:24:12] [INFO] Checking activity reminders 
[2026-03-14 23:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:24:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:24:42] [INFO] Checking activity reminders 
[2026-03-14 23:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:25:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:25:12] [INFO] Checking activity reminders 
[2026-03-14 23:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:25:42] [INFO] Checking activity reminders 
[2026-03-14 23:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:26:12] [INFO] Checking activity reminders 
[2026-03-14 23:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:26:42] [INFO] Checking activity reminders 
[2026-03-14 23:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:27:12] [INFO] Checking activity reminders 
[2026-03-14 23:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:27:43] [INFO] Checking activity reminders 
[2026-03-14 23:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:28:13] [INFO] Checking activity reminders 
[2026-03-14 23:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:28:43] [INFO] Checking activity reminders 
[2026-03-14 23:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:29:13] [INFO] Checking activity reminders 
[2026-03-14 23:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:29:43] [INFO] Checking activity reminders 
[2026-03-14 23:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:30:13] [INFO] Checking activity reminders 
[2026-03-14 23:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:30:20] [INFO] Checking activity reminders 
[2026-03-14 23:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:30:43] [INFO] Checking activity reminders 
[2026-03-14 23:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:30:53] [INFO] Checking activity reminders 
[2026-03-14 23:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:30:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-14 23:31:13] [INFO] Checking activity reminders 
[2026-03-14 23:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:31:23] [INFO] Checking activity reminders 
[2026-03-14 23:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:31:53] [INFO] Checking activity reminders 
[2026-03-14 23:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:32:24] [INFO] Checking activity reminders 
[2026-03-14 23:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:32:35] [INFO] Checking activity reminders 
[2026-03-14 23:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:32:39] [INFO] Checking activity reminders 
[2026-03-14 23:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:32:54] [INFO] Checking activity reminders 
[2026-03-14 23:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:33:03] [INFO] Checking activity reminders 
[2026-03-14 23:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:33:22] [INFO] Checking activity reminders 
[2026-03-14 23:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-14 23:33:52] [INFO] Checking activity reminders 
[2026-03-14 23:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:34:15] [INFO] Checking activity reminders 
[2026-03-14 23:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:34:22] [INFO] Checking activity reminders 
[2026-03-14 23:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:34:49] [INFO] Checking activity reminders 
[2026-03-14 23:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:34:52] [INFO] Checking activity reminders 
[2026-03-14 23:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:35:13] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9030104140","09030104140"]}
[2026-03-14 23:35:13] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9030104140","09030104140"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:35:13] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9030104140","full_name":"لید جدید"}
[2026-03-14 23:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-14 23:35:13] [INFO] Notification created {"notification_id":"576","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:35:22] [INFO] Checking activity reminders 
[2026-03-14 23:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:35:22] [INFO] Checking activity reminders 
[2026-03-14 23:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:35:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:47] [DEBUG] findByPhone: Found person {"phones":["9367776843"],"found_id":"10334","found_didar_id":"11224","found_name":"زارعی"}
[2026-03-14 23:35:47] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9367776843","found_didar_id":"11224","found_local_id":"10334","found_name":"زارعی"}
[2026-03-14 23:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:47] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9367776843","09367776843"]}
[2026-03-14 23:35:47] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9367776843","09367776843"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:47] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9367776843","existing_contact_id":"11224","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9367776843"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9367776843","09367776843"]}
[2026-03-14 23:35:47] [INFO] Duplicate lead response prepared using local ID {"local_id":"10334","didar_id":"11224"}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [INFO] generateDealTitle result {"contact_id":"11224","person_name":"زارعی","mobile":"9367776843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9367776843"}
[2026-03-14 23:35:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9367776843","contact_id":"11224","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:35:49","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9367776843","contact_id":"11224","is_new_deal":true}
[2026-03-14 23:35:49] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9367776843"}
[2026-03-14 23:35:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9367776843"}
[2026-03-14 23:35:49] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9367776843","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:35:49] [INFO] getContactPrimaryPhone called {"contact_id":"11224"}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [INFO] getContactPrimaryPhone result {"contact_id":"11224","person_found":true,"primary_phone":"9367776843"}
[2026-03-14 23:35:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9367776843","contact_primary_phone":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison called {"input_phone":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison cleaned {"original":"9367776843","cleaned":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison called {"input_phone":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison cleaned {"original":"9367776843","cleaned":"9367776843"}
[2026-03-14 23:35:49] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9367776843"}
[2026-03-14 23:35:49] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9367776843","normalized_contact_phone":"9367776843","phones_match":true}
[2026-03-14 23:35:49] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9367776843","deal_phone":"9367776843","contact_phone":"9367776843","contact_id":"11224","validation":"PASSED"}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [INFO] generateDealTitle result {"contact_id":"11224","person_name":"زارعی","mobile":"9367776843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9367776843"}
[2026-03-14 23:35:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11224","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:35:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11224","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:35:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11224","title":"معامله دوم 9367776843","base_title_used":"معامله دوم 9367776843","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"زارعی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:35:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:35:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11224","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9367776843","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:35:49","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:35:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-14 23:35:52] [INFO] Checking activity reminders 
[2026-03-14 23:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:35:53] [INFO] Checking activity reminders 
[2026-03-14 23:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:01] [INFO] Checking activity reminders 
[2026-03-14 23:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:23] [INFO] Checking activity reminders 
[2026-03-14 23:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:27] [INFO] Checking activity reminders 
[2026-03-14 23:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:28] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9141256360","09141256360"]}
[2026-03-14 23:36:28] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9141256360","09141256360"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:36:28] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9141256360","full_name":"لید جدید"}
[2026-03-14 23:36:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-14 23:36:28] [INFO] Notification created {"notification_id":"577","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:36:35] [INFO] Checking activity reminders 
[2026-03-14 23:36:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9792","person_id":"14029"}
[2026-03-14 23:36:53] [INFO] Checking activity reminders 
[2026-03-14 23:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:54] [INFO] Checking activity reminders 
[2026-03-14 23:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:19] [DEBUG] findByPhone: Found person {"phones":["9144127127"],"found_id":"18212","found_didar_id":"4544","found_name":"مهدی عبادی فر"}
[2026-03-14 23:37:19] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9144127127","found_didar_id":"4544","found_local_id":"18212","found_name":"مهدی عبادی فر"}
[2026-03-14 23:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:19] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9144127127","09144127127"]}
[2026-03-14 23:37:19] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9144127127","09144127127"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:19] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9144127127","existing_contact_id":"4544","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9144127127"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9144127127","09144127127"]}
[2026-03-14 23:37:19] [INFO] Duplicate lead response prepared using local ID {"local_id":"18212","didar_id":"4544"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [INFO] generateDealTitle result {"contact_id":"4544","person_name":"مهدی عبادی فر","mobile":"9144127127","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144127127"}
[2026-03-14 23:37:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9144127127","contact_id":"4544","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:37:21","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9144127127","contact_id":"4544","is_new_deal":true}
[2026-03-14 23:37:21] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9144127127"}
[2026-03-14 23:37:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9144127127"}
[2026-03-14 23:37:21] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9144127127","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:37:21] [INFO] getContactPrimaryPhone called {"contact_id":"4544"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [INFO] getContactPrimaryPhone result {"contact_id":"4544","person_found":true,"primary_phone":"9144127127"}
[2026-03-14 23:37:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9144127127","contact_primary_phone":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison called {"input_phone":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison cleaned {"original":"9144127127","cleaned":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison called {"input_phone":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison cleaned {"original":"9144127127","cleaned":"9144127127"}
[2026-03-14 23:37:21] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9144127127"}
[2026-03-14 23:37:21] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9144127127","normalized_contact_phone":"9144127127","phones_match":true}
[2026-03-14 23:37:21] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9144127127","deal_phone":"9144127127","contact_phone":"9144127127","contact_id":"4544","validation":"PASSED"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [INFO] generateDealTitle result {"contact_id":"4544","person_name":"مهدی عبادی فر","mobile":"9144127127","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144127127"}
[2026-03-14 23:37:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4544","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:37:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4544","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:37:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4544","title":"معامله دوم 9144127127","base_title_used":"معامله دوم 9144127127","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی عبادی فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:37:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:37:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4544","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9144127127","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:37:21","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-14 23:37:23] [INFO] Checking activity reminders 
[2026-03-14 23:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:37:24] [INFO] Checking activity reminders 
[2026-03-14 23:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:37:31] [INFO] Checking activity reminders 
[2026-03-14 23:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:37:40] [INFO] Checking activity reminders 
[2026-03-14 23:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:01] [INFO] Checking activity reminders 
[2026-03-14 23:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:04] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9153112949","09153112949"]}
[2026-03-14 23:38:04] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9153112949","09153112949"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:38:04] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9153112949","full_name":"لید جدید"}
[2026-03-14 23:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-14 23:38:04] [INFO] Notification created {"notification_id":"578","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:38:10] [INFO] Checking activity reminders 
[2026-03-14 23:38:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:38:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:17] [INFO] Checking activity reminders 
[2026-03-14 23:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-14 23:38:37] [DEBUG] findByPhone: Found person {"phones":["9334118027"],"found_id":"1957","found_didar_id":"15579","found_name":"9334118027"}
[2026-03-14 23:38:37] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9334118027","found_didar_id":"15579","found_local_id":"1957","found_name":"9334118027"}
[2026-03-14 23:38:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:37] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9334118027","09334118027"]}
[2026-03-14 23:38:37] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9334118027","09334118027"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:38:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:37] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9334118027","existing_contact_id":"15579","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9334118027"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9334118027","09334118027"]}
[2026-03-14 23:38:37] [INFO] Duplicate lead response prepared using local ID {"local_id":"1957","didar_id":"15579"}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [INFO] generateDealTitle result {"contact_id":"15579","person_name":"9334118027","mobile":"9334118027","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9334118027"}
[2026-03-14 23:38:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9334118027","contact_id":"15579","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:38:38","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9334118027","contact_id":"15579","is_new_deal":true}
[2026-03-14 23:38:38] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9334118027"}
[2026-03-14 23:38:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9334118027"}
[2026-03-14 23:38:38] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9334118027","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:38:38] [INFO] getContactPrimaryPhone called {"contact_id":"15579"}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [INFO] getContactPrimaryPhone result {"contact_id":"15579","person_found":true,"primary_phone":"9334118027"}
[2026-03-14 23:38:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9334118027","contact_primary_phone":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison called {"input_phone":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison cleaned {"original":"9334118027","cleaned":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison called {"input_phone":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison cleaned {"original":"9334118027","cleaned":"9334118027"}
[2026-03-14 23:38:38] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9334118027"}
[2026-03-14 23:38:38] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9334118027","normalized_contact_phone":"9334118027","phones_match":true}
[2026-03-14 23:38:38] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9334118027","deal_phone":"9334118027","contact_phone":"9334118027","contact_id":"15579","validation":"PASSED"}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [INFO] generateDealTitle result {"contact_id":"15579","person_name":"9334118027","mobile":"9334118027","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9334118027"}
[2026-03-14 23:38:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15579","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:38:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15579","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:38:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15579","title":"معامله دوم 9334118027","base_title_used":"معامله دوم 9334118027","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"9334118027","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:38:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:38:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15579","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9334118027","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:38:38","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-14 23:38:40] [INFO] Checking activity reminders 
[2026-03-14 23:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:49] [INFO] Checking activity reminders 
[2026-03-14 23:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:10] [DEBUG] findByPhone: Found person {"phones":["9223560491"],"found_id":"2088","found_didar_id":"12282","found_name":"مهدی الیاسی"}
[2026-03-14 23:39:10] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9223560491","found_didar_id":"12282","found_local_id":"2088","found_name":"مهدی الیاسی"}
[2026-03-14 23:39:10] [INFO] Checking activity reminders 
[2026-03-14 23:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:10] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9223560491","09223560491"]}
[2026-03-14 23:39:10] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9223560491","09223560491"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:10] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9223560491","existing_contact_id":"12282","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9223560491"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9223560491","09223560491"]}
[2026-03-14 23:39:10] [INFO] Duplicate lead response prepared using local ID {"local_id":"2088","didar_id":"12282"}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [INFO] generateDealTitle result {"contact_id":"12282","person_name":"مهدی الیاسی","mobile":"9223560491","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9223560491"}
[2026-03-14 23:39:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله چهارم 9223560491","contact_id":"12282","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:39:11","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله چهارم 9223560491","contact_id":"12282","is_new_deal":true}
[2026-03-14 23:39:11] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله چهارم 9223560491"}
[2026-03-14 23:39:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله چهارم 9223560491"}
[2026-03-14 23:39:11] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9223560491","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:39:11] [INFO] getContactPrimaryPhone called {"contact_id":"12282"}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [INFO] getContactPrimaryPhone result {"contact_id":"12282","person_found":true,"primary_phone":"9223560491"}
[2026-03-14 23:39:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9223560491","contact_primary_phone":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison called {"input_phone":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison cleaned {"original":"9223560491","cleaned":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison called {"input_phone":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison cleaned {"original":"9223560491","cleaned":"9223560491"}
[2026-03-14 23:39:11] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9223560491"}
[2026-03-14 23:39:11] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9223560491","normalized_contact_phone":"9223560491","phones_match":true}
[2026-03-14 23:39:11] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله چهارم 9223560491","deal_phone":"9223560491","contact_phone":"9223560491","contact_id":"12282","validation":"PASSED"}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [INFO] generateDealTitle result {"contact_id":"12282","person_name":"مهدی الیاسی","mobile":"9223560491","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9223560491"}
[2026-03-14 23:39:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12282","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:39:11] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12282","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:39:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12282","title":"معامله چهارم 9223560491","base_title_used":"معامله چهارم 9223560491","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی الیاسی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:39:11","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:39:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12282","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9223560491","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:39:11","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:39:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-14 23:39:19] [INFO] Checking activity reminders 
[2026-03-14 23:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:39:49] [INFO] Checking activity reminders 
[2026-03-14 23:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:39:50] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9363873423","09363873423"]}
[2026-03-14 23:39:50] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9363873423","09363873423"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:39:50] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9363873423","full_name":"لید جدید"}
[2026-03-14 23:39:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-14 23:39:50] [INFO] Notification created {"notification_id":"579","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:40:00] [INFO] Checking activity reminders 
[2026-03-14 23:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:40:14] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9131090424","09131090424"]}
[2026-03-14 23:40:14] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9131090424","09131090424"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:40:14] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9131090424","full_name":"لید جدید"}
[2026-03-14 23:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-14 23:40:14] [INFO] Notification created {"notification_id":"580","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:40:21] [INFO] Checking activity reminders 
[2026-03-14 23:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:40:37] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9142186124","09142186124"]}
[2026-03-14 23:40:37] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9142186124","09142186124"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:40:37] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9142186124","full_name":"لید جدید"}
[2026-03-14 23:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-14 23:40:37] [INFO] Notification created {"notification_id":"581","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:40:45] [INFO] Checking activity reminders 
[2026-03-14 23:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:41:16] [INFO] Checking activity reminders 
[2026-03-14 23:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:41:30] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9187788995","09187788995"]}
[2026-03-14 23:41:30] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9187788995","09187788995"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:41:30] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9187788995","full_name":"لید جدید"}
[2026-03-14 23:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-14 23:41:30] [INFO] Notification created {"notification_id":"582","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:41:40] [INFO] Checking activity reminders 
[2026-03-14 23:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:42:11] [INFO] Checking activity reminders 
[2026-03-14 23:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:42:22] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9399469056","09399469056"]}
[2026-03-14 23:42:22] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9399469056","09399469056"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:42:22] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9399469056","full_name":"لید جدید"}
[2026-03-14 23:42:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-14 23:42:22] [INFO] Notification created {"notification_id":"583","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-14 23:42:32] [INFO] Checking activity reminders 
[2026-03-14 23:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:42:50] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9173817949","09173817949"]}
[2026-03-14 23:42:50] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9173817949","09173817949"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:42:50] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9173817949","full_name":"لید جدید"}
[2026-03-14 23:42:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-14 23:42:50] [INFO] Notification created {"notification_id":"584","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 23:45:59] [INFO] Checking activity reminders 
[2026-03-14 23:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-14 23:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-14 23:46:12] [INFO] Checking activity reminders 
[2026-03-14 23:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:46:31] [WARNING] Auth check failed - not authenticated {"session_id":"2r8g9nct0msf34c1jjmeqqp798","session_keys":[],"action":"log_client_event"}
[2026-03-14 23:46:32] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-14 23:46:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-14 23:46:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-14 23:46:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-14 23:46:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-14 23:46:37] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9924071732","09924071732"]}
[2026-03-14 23:46:37] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9924071732","09924071732"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:46:37] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9924071732","full_name":"لید جدید"}
[2026-03-14 23:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-14 23:46:37] [INFO] Notification created {"notification_id":"585","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 23:46:48] [INFO] Checking activity reminders 
[2026-03-14 23:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:47:11] [INFO] Checking activity reminders 
[2026-03-14 23:47:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:47:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:47:41] [INFO] Checking activity reminders 
[2026-03-14 23:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:47:41] [INFO] Checking activity reminders 
[2026-03-14 23:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:47:42] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9367648176","09367648176"]}
[2026-03-14 23:47:42] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9367648176","09367648176"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:47:42] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9367648176","full_name":"لید جدید"}
[2026-03-14 23:47:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-14 23:47:42] [INFO] Notification created {"notification_id":"586","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 23:47:57] [INFO] Checking activity reminders 
[2026-03-14 23:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:48:15] [INFO] Checking activity reminders 
[2026-03-14 23:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:48:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-14 23:48:23] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9183138252","09183138252"]}
[2026-03-14 23:48:23] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9183138252","09183138252"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:48:23] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9183138252","full_name":"لید جدید"}
[2026-03-14 23:48:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-14 23:48:23] [INFO] Notification created {"notification_id":"587","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 23:48:33] [INFO] Checking activity reminders 
[2026-03-14 23:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987214ea5ce88.65618936","person_id":"21575"}
[2026-03-14 23:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987214ea5ce88.65618936","person_id":"21575"}
[2026-03-14 23:48:45] [INFO] Checking activity reminders 
[2026-03-14 23:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:49:15] [INFO] Checking activity reminders 
[2026-03-14 23:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:49:45] [INFO] Checking activity reminders 
[2026-03-14 23:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:50:30] [INFO] Checking activity reminders 
[2026-03-14 23:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:50:48] [INFO] Checking activity reminders 
[2026-03-14 23:50:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:50:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:50:49] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9144211033","09144211033"]}
[2026-03-14 23:50:49] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9144211033","09144211033"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-14 23:50:49] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9144211033","full_name":"لید جدید"}
[2026-03-14 23:50:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-14 23:50:49] [INFO] Notification created {"notification_id":"588","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-14 23:51:01] [INFO] Checking activity reminders 
[2026-03-14 23:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:51:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698723293d7b53.43036879","person_id":"21585"}
[2026-03-14 23:51:09] [INFO] Checking activity reminders 
[2026-03-14 23:51:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:51:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:51:15] [INFO] Checking activity reminders 
[2026-03-14 23:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-03-14 23:51:27] [INFO] Checking activity reminders 
[2026-03-14 23:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:51:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-14 23:52:21] [INFO] Checking activity reminders 
[2026-03-14 23:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:52:46] [INFO] Checking activity reminders 
[2026-03-14 23:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:53:13] [INFO] Checking activity reminders 
[2026-03-14 23:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:53:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:54:01] [INFO] Checking activity reminders 
[2026-03-14 23:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:54:23] [INFO] Checking activity reminders 
[2026-03-14 23:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:54:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:54:38] [INFO] Checking activity reminders 
[2026-03-14 23:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:54:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:54:50] [INFO] Checking activity reminders 
[2026-03-14 23:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:55:20] [INFO] Checking activity reminders 
[2026-03-14 23:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:55:20] [INFO] Checking activity reminders 
[2026-03-14 23:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:55:38] [INFO] Checking activity reminders 
[2026-03-14 23:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:55:50] [INFO] Checking activity reminders 
[2026-03-14 23:55:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:55:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:14] [INFO] Checking activity reminders 
[2026-03-14 23:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:14] [INFO] Checking activity reminders 
[2026-03-14 23:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:57:32] [INFO] Checking activity reminders 
[2026-03-14 23:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:40] [INFO] Checking activity reminders 
[2026-03-14 23:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:57:53] [INFO] Checking activity reminders 
[2026-03-14 23:57:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:57:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:57:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:05] [INFO] generateDealTitle result {"contact_id":"15497","person_name":"احمدی","mobile":"9166691662","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166691662"}
[2026-03-14 23:58:10] [INFO] Checking activity reminders 
[2026-03-14 23:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:58:11] [INFO] Checking activity reminders 
[2026-03-14 23:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:58:29] [DEBUG] findByPhone: Found person {"phones":["9166691662"],"found_id":"2872","found_didar_id":"15497","found_name":"احمدی"}
[2026-03-14 23:58:29] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9166691662","found_didar_id":"15497","found_local_id":"2872","found_name":"احمدی"}
[2026-03-14 23:58:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:29] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9166691662","09166691662"]}
[2026-03-14 23:58:29] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9166691662","09166691662"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:58:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:29] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9166691662","existing_contact_id":"15497","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9166691662"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9166691662","09166691662"]}
[2026-03-14 23:58:29] [INFO] Duplicate lead response prepared using local ID {"local_id":"2872","didar_id":"15497"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [INFO] generateDealTitle result {"contact_id":"15497","person_name":"احمدی","mobile":"9166691662","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166691662"}
[2026-03-14 23:58:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9166691662","contact_id":"15497","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:58:32","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9166691662","contact_id":"15497","is_new_deal":true}
[2026-03-14 23:58:32] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9166691662"}
[2026-03-14 23:58:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9166691662"}
[2026-03-14 23:58:32] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9166691662","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:58:32] [INFO] getContactPrimaryPhone called {"contact_id":"15497"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [INFO] getContactPrimaryPhone result {"contact_id":"15497","person_found":true,"primary_phone":"9166691662"}
[2026-03-14 23:58:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9166691662","contact_primary_phone":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison called {"input_phone":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison cleaned {"original":"9166691662","cleaned":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison called {"input_phone":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison cleaned {"original":"9166691662","cleaned":"9166691662"}
[2026-03-14 23:58:32] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9166691662"}
[2026-03-14 23:58:32] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9166691662","normalized_contact_phone":"9166691662","phones_match":true}
[2026-03-14 23:58:32] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9166691662","deal_phone":"9166691662","contact_phone":"9166691662","contact_id":"15497","validation":"PASSED"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [INFO] generateDealTitle result {"contact_id":"15497","person_name":"احمدی","mobile":"9166691662","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166691662"}
[2026-03-14 23:58:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15497","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:58:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15497","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:58:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15497","title":"معامله دوم 9166691662","base_title_used":"معامله دوم 9166691662","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:58:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:58:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15497","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9166691662","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:58:32","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:58:40] [INFO] Checking activity reminders 
[2026-03-14 23:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:58:40] [INFO] Checking activity reminders 
[2026-03-14 23:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:03] [INFO] Checking activity reminders 
[2026-03-14 23:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:59:07] [DEBUG] findByPhone: Found person {"phones":["9300031510"],"found_id":"2144","found_didar_id":"21213","found_name":"اکبری همدان"}
[2026-03-14 23:59:07] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9300031510","found_didar_id":"21213","found_local_id":"2144","found_name":"اکبری همدان"}
[2026-03-14 23:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:08] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9300031510","09300031510"]}
[2026-03-14 23:59:08] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9300031510","09300031510"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:08] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9300031510","existing_contact_id":"21213","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9300031510"],"user_attempting_creation":"7961644d-eebe-4086-8617-3ad855a6c2f4","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9300031510","09300031510"]}
[2026-03-14 23:59:08] [INFO] Duplicate lead response prepared using local ID {"local_id":"2144","didar_id":"21213"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [INFO] generateDealTitle result {"contact_id":"21213","person_name":"اکبری همدان","mobile":"9300031510","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9300031510"}
[2026-03-14 23:59:09] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9300031510","contact_id":"21213","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:59:09","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9300031510","contact_id":"21213","is_new_deal":true}
[2026-03-14 23:59:09] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9300031510"}
[2026-03-14 23:59:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9300031510"}
[2026-03-14 23:59:09] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9300031510","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:59:09] [INFO] getContactPrimaryPhone called {"contact_id":"21213"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [INFO] getContactPrimaryPhone result {"contact_id":"21213","person_found":true,"primary_phone":"9300031510"}
[2026-03-14 23:59:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9300031510","contact_primary_phone":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison called {"input_phone":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison cleaned {"original":"9300031510","cleaned":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison called {"input_phone":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison cleaned {"original":"9300031510","cleaned":"9300031510"}
[2026-03-14 23:59:09] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9300031510"}
[2026-03-14 23:59:09] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9300031510","normalized_contact_phone":"9300031510","phones_match":true}
[2026-03-14 23:59:09] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9300031510","deal_phone":"9300031510","contact_phone":"9300031510","contact_id":"21213","validation":"PASSED"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [INFO] generateDealTitle result {"contact_id":"21213","person_name":"اکبری همدان","mobile":"9300031510","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9300031510"}
[2026-03-14 23:59:09] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21213","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:59:09] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21213","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:59:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21213","title":"معامله دوم 9300031510","base_title_used":"معامله دوم 9300031510","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اکبری همدان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:59:09","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:09] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:59:09] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21213","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9300031510","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:59:09","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:59:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-14 23:59:10] [INFO] Checking activity reminders 
[2026-03-14 23:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-14 23:59:17] [INFO] Checking activity reminders 
[2026-03-14 23:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:59:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:39] [INFO] Checking activity reminders 
[2026-03-14 23:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-14 23:59:39] [DEBUG] findByPhone: Found person {"phones":["9121752419"],"found_id":"12932","found_didar_id":"7495","found_name":"کاظمی نیا"}
[2026-03-14 23:59:39] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9121752419","found_didar_id":"7495","found_local_id":"12932","found_name":"کاظمی نیا"}
[2026-03-14 23:59:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:39] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9121752419","09121752419"]}
[2026-03-14 23:59:39] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9121752419","09121752419"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-14 23:59:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:39] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9121752419","existing_contact_id":"7495","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9121752419"],"user_attempting_creation":"ef266a9a-ff55-4893-8be3-7848badfcdce","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9121752419","09121752419"]}
[2026-03-14 23:59:39] [INFO] Duplicate lead response prepared using local ID {"local_id":"12932","didar_id":"7495"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [INFO] generateDealTitle result {"contact_id":"7495","person_name":"کاظمی نیا","mobile":"9121752419","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121752419"}
[2026-03-14 23:59:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9121752419","contact_id":"7495","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-14 23:59:41","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9121752419","contact_id":"7495","is_new_deal":true}
[2026-03-14 23:59:41] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9121752419"}
[2026-03-14 23:59:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9121752419"}
[2026-03-14 23:59:41] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9121752419","pattern":"معامله_ordinal_phone"}
[2026-03-14 23:59:41] [INFO] getContactPrimaryPhone called {"contact_id":"7495"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [INFO] getContactPrimaryPhone result {"contact_id":"7495","person_found":true,"primary_phone":"9121752419"}
[2026-03-14 23:59:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9121752419","contact_primary_phone":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison called {"input_phone":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison cleaned {"original":"9121752419","cleaned":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison called {"input_phone":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison cleaned {"original":"9121752419","cleaned":"9121752419"}
[2026-03-14 23:59:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9121752419"}
[2026-03-14 23:59:41] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9121752419","normalized_contact_phone":"9121752419","phones_match":true}
[2026-03-14 23:59:41] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9121752419","deal_phone":"9121752419","contact_phone":"9121752419","contact_id":"7495","validation":"PASSED"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [INFO] generateDealTitle result {"contact_id":"7495","person_name":"کاظمی نیا","mobile":"9121752419","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121752419"}
[2026-03-14 23:59:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7495","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-14 23:59:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7495","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-14 23:59:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7495","title":"معامله دوم 9121752419","base_title_used":"معامله دوم 9121752419","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"کاظمی نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-14 23:59:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-14 23:59:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7495","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121752419","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-14 23:59:41","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-14 23:59:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-14 23:59:48] [INFO] Checking activity reminders 
[2026-03-14 23:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-14 23:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:01] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9139324519","09139324519"]}
[2026-03-15 00:00:01] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9139324519","09139324519"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:00:01] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9139324519","full_name":"لید جدید"}
[2026-03-15 00:00:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-15 00:00:01] [INFO] Notification created {"notification_id":"589","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 00:00:09] [INFO] Checking activity reminders 
[2026-03-15 00:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:19] [INFO] generateDealTitle result {"contact_id":"local_694b803a1c5325.08790989","person_name":"حسین عبدی پور","mobile":"9174473221","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9174473221"}
[2026-03-15 00:00:20] [INFO] Checking activity reminders 
[2026-03-15 00:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_694b803a1c5325.08790989","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 00:00:34","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_694b803a1c5325.08790989","is_new_deal":true}
[2026-03-15 00:00:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 00:00:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 00:00:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 00:00:34] [INFO] getContactPrimaryPhone called {"contact_id":"local_694b803a1c5325.08790989"}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:34] [INFO] getContactPrimaryPhone result {"contact_id":"local_694b803a1c5325.08790989","person_found":true,"primary_phone":"9174473221"}
[2026-03-15 00:00:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174473221"}
[2026-03-15 00:00:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174473221","contact_id":"local_694b803a1c5325.08790989","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-15 00:00:34"}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:34] [INFO] generateDealTitle result {"contact_id":"local_694b803a1c5325.08790989","person_name":"حسین عبدی پور","mobile":"9174473221","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9174473221"}
[2026-03-15 00:00:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_694b803a1c5325.08790989","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:00:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_694b803a1c5325.08790989","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:00:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_694b803a1c5325.08790989","title":"معامله سوم 9174473221 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9174473221","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حسین عبدی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:00:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:00:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_694b803a1c5325.08790989","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9174473221 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 00:00:34","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:00:36] [INFO] Checking activity reminders 
[2026-03-15 00:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:45] [INFO] Checking activity reminders 
[2026-03-15 00:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:46] [INFO] Checking activity reminders 
[2026-03-15 00:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:00:54] [INFO] Checking activity reminders 
[2026-03-15 00:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:02] [INFO] Checking activity reminders 
[2026-03-15 00:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:11] [INFO] Checking activity reminders 
[2026-03-15 00:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:12] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9301885440","09301885440"]}
[2026-03-15 00:01:12] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9301885440","09301885440"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:01:12] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9301885440","full_name":"لید جدید"}
[2026-03-15 00:01:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-15 00:01:12] [INFO] Notification created {"notification_id":"590","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 00:01:17] [INFO] Checking activity reminders 
[2026-03-15 00:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:20] [DEBUG] findByPhone: Found person {"phones":["9166691662"],"found_id":"2872","found_didar_id":"15497","found_name":"احمدی"}
[2026-03-15 00:01:20] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9166691662","found_didar_id":"15497","found_local_id":"2872","found_name":"احمدی"}
[2026-03-15 00:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:20] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9166691662","09166691662"]}
[2026-03-15 00:01:20] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9166691662","09166691662"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:20] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9166691662","existing_contact_id":"15497","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9166691662"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9166691662","09166691662"]}
[2026-03-15 00:01:20] [INFO] Duplicate lead response prepared using local ID {"local_id":"2872","didar_id":"15497"}
[2026-03-15 00:01:21] [INFO] Checking activity reminders 
[2026-03-15 00:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [INFO] generateDealTitle result {"contact_id":"15497","person_name":"احمدی","mobile":"9166691662","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9166691662"}
[2026-03-15 00:01:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9166691662","contact_id":"15497","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:01:24","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9166691662","contact_id":"15497","is_new_deal":true}
[2026-03-15 00:01:24] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9166691662"}
[2026-03-15 00:01:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9166691662"}
[2026-03-15 00:01:24] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9166691662","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:01:24] [INFO] getContactPrimaryPhone called {"contact_id":"15497"}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [INFO] getContactPrimaryPhone result {"contact_id":"15497","person_found":true,"primary_phone":"9166691662"}
[2026-03-15 00:01:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9166691662","contact_primary_phone":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison called {"input_phone":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison cleaned {"original":"9166691662","cleaned":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison called {"input_phone":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison cleaned {"original":"9166691662","cleaned":"9166691662"}
[2026-03-15 00:01:24] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9166691662"}
[2026-03-15 00:01:24] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9166691662","normalized_contact_phone":"9166691662","phones_match":true}
[2026-03-15 00:01:24] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9166691662","deal_phone":"9166691662","contact_phone":"9166691662","contact_id":"15497","validation":"PASSED"}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [INFO] generateDealTitle result {"contact_id":"15497","person_name":"احمدی","mobile":"9166691662","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9166691662"}
[2026-03-15 00:01:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15497","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:01:24] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15497","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:01:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15497","title":"معامله سوم 9166691662","base_title_used":"معامله سوم 9166691662","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:01:24","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:01:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15497","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9166691662","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:01:24","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:01:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:39] [DEBUG] findByPhone: Found person {"phones":["9357732520"],"found_id":"8035","found_didar_id":"11917","found_name":"رحیم صدری"}
[2026-03-15 00:01:39] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9357732520","found_didar_id":"11917","found_local_id":"8035","found_name":"رحیم صدری"}
[2026-03-15 00:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:39] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9357732520","09357732520"]}
[2026-03-15 00:01:39] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9357732520","09357732520"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:39] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9357732520","existing_contact_id":"11917","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9357732520"],"user_attempting_creation":"ef266a9a-ff55-4893-8be3-7848badfcdce","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9357732520","09357732520"]}
[2026-03-15 00:01:39] [INFO] Duplicate lead response prepared using local ID {"local_id":"8035","didar_id":"11917"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [INFO] generateDealTitle result {"contact_id":"11917","person_name":"رحیم صدری","mobile":"9357732520","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357732520"}
[2026-03-15 00:01:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9357732520","contact_id":"11917","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:01:41","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9357732520","contact_id":"11917","is_new_deal":true}
[2026-03-15 00:01:41] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9357732520"}
[2026-03-15 00:01:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9357732520"}
[2026-03-15 00:01:41] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9357732520","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:01:41] [INFO] getContactPrimaryPhone called {"contact_id":"11917"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [INFO] getContactPrimaryPhone result {"contact_id":"11917","person_found":true,"primary_phone":"9357732520"}
[2026-03-15 00:01:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9357732520","contact_primary_phone":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison called {"input_phone":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison cleaned {"original":"9357732520","cleaned":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison called {"input_phone":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison cleaned {"original":"9357732520","cleaned":"9357732520"}
[2026-03-15 00:01:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9357732520"}
[2026-03-15 00:01:41] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9357732520","normalized_contact_phone":"9357732520","phones_match":true}
[2026-03-15 00:01:41] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9357732520","deal_phone":"9357732520","contact_phone":"9357732520","contact_id":"11917","validation":"PASSED"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [INFO] generateDealTitle result {"contact_id":"11917","person_name":"رحیم صدری","mobile":"9357732520","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357732520"}
[2026-03-15 00:01:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11917","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:01:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11917","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:01:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11917","title":"معامله دوم 9357732520","base_title_used":"معامله دوم 9357732520","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رحیم صدری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:01:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:01:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11917","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9357732520","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:01:41","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 00:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 00:01:49] [INFO] Checking activity reminders 
[2026-03-15 00:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:16] [INFO] Checking activity reminders 
[2026-03-15 00:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:02:17] [INFO] Checking activity reminders 
[2026-03-15 00:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:02:30] [DEBUG] findByPhone: Found person {"phones":["9133179085"],"found_id":"16930","found_didar_id":"16320","found_name":"9133179085"}
[2026-03-15 00:02:30] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9133179085","found_didar_id":"16320","found_local_id":"16930","found_name":"9133179085"}
[2026-03-15 00:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:30] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9133179085","09133179085"]}
[2026-03-15 00:02:30] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9133179085","09133179085"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:30] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9133179085","existing_contact_id":"16320","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9133179085"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9133179085","09133179085"]}
[2026-03-15 00:02:30] [INFO] Duplicate lead response prepared using local ID {"local_id":"16930","didar_id":"16320"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [INFO] generateDealTitle result {"contact_id":"16320","person_name":"9133179085","mobile":"9133179085","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133179085"}
[2026-03-15 00:02:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9133179085","contact_id":"16320","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:02:32","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9133179085","contact_id":"16320","is_new_deal":true}
[2026-03-15 00:02:32] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9133179085"}
[2026-03-15 00:02:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9133179085"}
[2026-03-15 00:02:32] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9133179085","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:02:32] [INFO] getContactPrimaryPhone called {"contact_id":"16320"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [INFO] getContactPrimaryPhone result {"contact_id":"16320","person_found":true,"primary_phone":"9133179085"}
[2026-03-15 00:02:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9133179085","contact_primary_phone":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison called {"input_phone":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison cleaned {"original":"9133179085","cleaned":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison called {"input_phone":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison cleaned {"original":"9133179085","cleaned":"9133179085"}
[2026-03-15 00:02:32] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9133179085"}
[2026-03-15 00:02:32] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9133179085","normalized_contact_phone":"9133179085","phones_match":true}
[2026-03-15 00:02:32] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9133179085","deal_phone":"9133179085","contact_phone":"9133179085","contact_id":"16320","validation":"PASSED"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [INFO] generateDealTitle result {"contact_id":"16320","person_name":"9133179085","mobile":"9133179085","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133179085"}
[2026-03-15 00:02:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16320","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:02:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16320","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:02:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16320","title":"معامله دوم 9133179085","base_title_used":"معامله دوم 9133179085","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"9133179085","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:02:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:02:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16320","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9133179085","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:02:32","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 00:02:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:02:41] [INFO] Checking activity reminders 
[2026-03-15 00:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:02:47] [INFO] Checking activity reminders 
[2026-03-15 00:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:02:59] [INFO] Checking activity reminders 
[2026-03-15 00:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:02:59] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9918777472","09918777472"]}
[2026-03-15 00:02:59] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9918777472","09918777472"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:02:59] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9918777472","full_name":"لید جدید"}
[2026-03-15 00:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-15 00:02:59] [INFO] Notification created {"notification_id":"591","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 00:03:06] [INFO] Checking activity reminders 
[2026-03-15 00:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:03:09] [INFO] Checking activity reminders 
[2026-03-15 00:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:16] [INFO] Checking activity reminders 
[2026-03-15 00:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:03:24] [DEBUG] findByPhone: Found person {"phones":["9120934689"],"found_id":"12626","found_didar_id":"938","found_name":"9120934689"}
[2026-03-15 00:03:24] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9120934689","found_didar_id":"938","found_local_id":"12626","found_name":"9120934689"}
[2026-03-15 00:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:24] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9120934689","09120934689"]}
[2026-03-15 00:03:24] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9120934689","09120934689"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:24] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9120934689","existing_contact_id":"938","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9120934689"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9120934689","09120934689"]}
[2026-03-15 00:03:24] [INFO] Duplicate lead response prepared using local ID {"local_id":"12626","didar_id":"938"}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [INFO] generateDealTitle result {"contact_id":"938","person_name":"9120934689","mobile":"9120934689","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120934689"}
[2026-03-15 00:03:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9120934689","contact_id":"938","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:03:25","session_id":"hklpnolki0826i4nllnapc1965"}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9120934689","contact_id":"938","is_new_deal":true}
[2026-03-15 00:03:25] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9120934689"}
[2026-03-15 00:03:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9120934689"}
[2026-03-15 00:03:25] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9120934689","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:03:25] [INFO] getContactPrimaryPhone called {"contact_id":"938"}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [INFO] getContactPrimaryPhone result {"contact_id":"938","person_found":true,"primary_phone":"9120934689"}
[2026-03-15 00:03:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9120934689","contact_primary_phone":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison called {"input_phone":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison cleaned {"original":"9120934689","cleaned":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison called {"input_phone":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison cleaned {"original":"9120934689","cleaned":"9120934689"}
[2026-03-15 00:03:25] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9120934689"}
[2026-03-15 00:03:25] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9120934689","normalized_contact_phone":"9120934689","phones_match":true}
[2026-03-15 00:03:25] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9120934689","deal_phone":"9120934689","contact_phone":"9120934689","contact_id":"938","validation":"PASSED"}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [INFO] generateDealTitle result {"contact_id":"938","person_name":"9120934689","mobile":"9120934689","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120934689"}
[2026-03-15 00:03:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"938","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:03:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"938","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:03:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"938","title":"معامله سوم 9120934689","base_title_used":"معامله سوم 9120934689","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"9120934689","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:03:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-15 00:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:03:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"938","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120934689","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:03:25","ip_address":"5.201.235.60","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 00:03:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:03:27] [INFO] Checking activity reminders 
[2026-03-15 00:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:03:33] [INFO] Checking activity reminders 
[2026-03-15 00:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:03:56] [INFO] Checking activity reminders 
[2026-03-15 00:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:04:10] [INFO] Checking activity reminders 
[2026-03-15 00:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:04:24] [INFO] Checking activity reminders 
[2026-03-15 00:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:04:35] [INFO] Checking activity reminders 
[2026-03-15 00:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:05:05] [INFO] Checking activity reminders 
[2026-03-15 00:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:05:35] [INFO] Checking activity reminders 
[2026-03-15 00:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:05:38] [DEBUG] findByPhone: Found person {"phones":["9121752419"],"found_id":"12932","found_didar_id":"7495","found_name":"کاظمی نیا"}
[2026-03-15 00:05:38] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9121752419","found_didar_id":"7495","found_local_id":"12932","found_name":"کاظمی نیا"}
[2026-03-15 00:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:38] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9121752419","09121752419"]}
[2026-03-15 00:05:38] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9121752419","09121752419"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:38] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9121752419","existing_contact_id":"7495","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9121752419"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9121752419","09121752419"]}
[2026-03-15 00:05:38] [INFO] Duplicate lead response prepared using local ID {"local_id":"12932","didar_id":"7495"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [INFO] generateDealTitle result {"contact_id":"7495","person_name":"کاظمی نیا","mobile":"9121752419","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121752419"}
[2026-03-15 00:05:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9121752419","contact_id":"7495","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:05:42","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9121752419","contact_id":"7495","is_new_deal":true}
[2026-03-15 00:05:42] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9121752419"}
[2026-03-15 00:05:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9121752419"}
[2026-03-15 00:05:42] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9121752419","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:05:42] [INFO] getContactPrimaryPhone called {"contact_id":"7495"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [INFO] getContactPrimaryPhone result {"contact_id":"7495","person_found":true,"primary_phone":"9121752419"}
[2026-03-15 00:05:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9121752419","contact_primary_phone":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison called {"input_phone":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison cleaned {"original":"9121752419","cleaned":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison called {"input_phone":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison cleaned {"original":"9121752419","cleaned":"9121752419"}
[2026-03-15 00:05:42] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9121752419"}
[2026-03-15 00:05:42] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9121752419","normalized_contact_phone":"9121752419","phones_match":true}
[2026-03-15 00:05:42] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9121752419","deal_phone":"9121752419","contact_phone":"9121752419","contact_id":"7495","validation":"PASSED"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [INFO] generateDealTitle result {"contact_id":"7495","person_name":"کاظمی نیا","mobile":"9121752419","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121752419"}
[2026-03-15 00:05:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7495","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:05:42] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7495","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:05:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7495","title":"معامله سوم 9121752419","base_title_used":"معامله سوم 9121752419","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"کاظمی نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:05:42","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:05:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:05:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7495","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9121752419","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:05:42","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:07:09] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 00:07:09] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"check_reminders"}
[2026-03-15 00:07:09] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 00:07:12] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 00:07:19] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 00:07:19] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 00:07:19] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 00:07:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:07:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:07:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:07:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 00:07:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:07:50] [INFO] Checking activity reminders 
[2026-03-15 00:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:07:56] [INFO] Lead update received {"contact_id":"16051","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-15 00:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:07:56] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16051"}
[2026-03-15 00:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:10:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:10:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:10:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:10:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 00:11:00] [INFO] Checking activity reminders 
[2026-03-15 00:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:04] [INFO] Checking activity reminders 
[2026-03-15 00:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:11:15] [INFO] Checking activity reminders 
[2026-03-15 00:11:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:31] [INFO] Checking activity reminders 
[2026-03-15 00:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:45] [INFO] Checking activity reminders 
[2026-03-15 00:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:48] [INFO] Checking activity reminders 
[2026-03-15 00:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:11:54] [DEBUG] findByPhone: Found person {"phones":["9129527939"],"found_id":"20225","found_didar_id":"8796","found_name":"محمد رضا تقوی"}
[2026-03-15 00:11:54] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9129527939","found_didar_id":"8796","found_local_id":"20225","found_name":"محمد رضا تقوی"}
[2026-03-15 00:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:11:54] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9129527939","09129527939"]}
[2026-03-15 00:11:54] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9129527939","09129527939"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:11:54] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9129527939","existing_contact_id":"8796","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9129527939"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9129527939","09129527939"]}
[2026-03-15 00:11:54] [INFO] Duplicate lead response prepared using local ID {"local_id":"20225","didar_id":"8796"}
[2026-03-15 00:12:01] [INFO] Checking activity reminders 
[2026-03-15 00:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [INFO] generateDealTitle result {"contact_id":"8796","person_name":"محمد رضا تقوی","mobile":"9129527939","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9129527939"}
[2026-03-15 00:12:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9129527939","contact_id":"8796","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:12:03","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9129527939","contact_id":"8796","is_new_deal":true}
[2026-03-15 00:12:03] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9129527939"}
[2026-03-15 00:12:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9129527939"}
[2026-03-15 00:12:03] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9129527939","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:12:03] [INFO] getContactPrimaryPhone called {"contact_id":"8796"}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [INFO] getContactPrimaryPhone result {"contact_id":"8796","person_found":true,"primary_phone":"9129527939"}
[2026-03-15 00:12:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9129527939","contact_primary_phone":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison called {"input_phone":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison cleaned {"original":"9129527939","cleaned":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison called {"input_phone":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison cleaned {"original":"9129527939","cleaned":"9129527939"}
[2026-03-15 00:12:03] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9129527939"}
[2026-03-15 00:12:03] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9129527939","normalized_contact_phone":"9129527939","phones_match":true}
[2026-03-15 00:12:03] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9129527939","deal_phone":"9129527939","contact_phone":"9129527939","contact_id":"8796","validation":"PASSED"}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [INFO] generateDealTitle result {"contact_id":"8796","person_name":"محمد رضا تقوی","mobile":"9129527939","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9129527939"}
[2026-03-15 00:12:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8796","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:12:03] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8796","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:12:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8796","title":"معامله سوم 9129527939","base_title_used":"معامله سوم 9129527939","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد رضا تقوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:12:03","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:12:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8796","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9129527939","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:12:03","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:12:31] [INFO] Checking activity reminders 
[2026-03-15 00:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:13:02] [INFO] Checking activity reminders 
[2026-03-15 00:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:13:17] [INFO] Checking activity reminders 
[2026-03-15 00:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:13:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 00:13:32] [INFO] Checking activity reminders 
[2026-03-15 00:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 00:15:11] [INFO] Checking activity reminders 
[2026-03-15 00:15:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:15:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:15:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:15:42] [INFO] Checking activity reminders 
[2026-03-15 00:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:16:09] [INFO] Checking activity reminders 
[2026-03-15 00:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:16:14] [INFO] Checking activity reminders 
[2026-03-15 00:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:16:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:16:33] [INFO] Checking activity reminders 
[2026-03-15 00:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:16:42] [DEBUG] findByPhone: Found person {"phones":["9153870719"],"found_id":"17485","found_didar_id":"20862","found_name":"خانم فرخی"}
[2026-03-15 00:16:42] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9153870719","found_didar_id":"20862","found_local_id":"17485","found_name":"خانم فرخی"}
[2026-03-15 00:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:42] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9153870719","09153870719"]}
[2026-03-15 00:16:42] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9153870719","09153870719"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:42] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9153870719","existing_contact_id":"20862","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9153870719"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9153870719","09153870719"]}
[2026-03-15 00:16:42] [INFO] Duplicate lead response prepared using local ID {"local_id":"17485","didar_id":"20862"}
[2026-03-15 00:16:44] [INFO] Checking activity reminders 
[2026-03-15 00:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [INFO] generateDealTitle result {"contact_id":"20862","person_name":"خانم فرخی","mobile":"9153870719","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153870719"}
[2026-03-15 00:16:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9153870719","contact_id":"20862","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:16:46","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9153870719","contact_id":"20862","is_new_deal":true}
[2026-03-15 00:16:46] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9153870719"}
[2026-03-15 00:16:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9153870719"}
[2026-03-15 00:16:46] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9153870719","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:16:46] [INFO] getContactPrimaryPhone called {"contact_id":"20862"}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [INFO] getContactPrimaryPhone result {"contact_id":"20862","person_found":true,"primary_phone":"9153870719"}
[2026-03-15 00:16:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9153870719","contact_primary_phone":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison called {"input_phone":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison cleaned {"original":"9153870719","cleaned":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison called {"input_phone":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison cleaned {"original":"9153870719","cleaned":"9153870719"}
[2026-03-15 00:16:46] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9153870719"}
[2026-03-15 00:16:46] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9153870719","normalized_contact_phone":"9153870719","phones_match":true}
[2026-03-15 00:16:46] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9153870719","deal_phone":"9153870719","contact_phone":"9153870719","contact_id":"20862","validation":"PASSED"}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [INFO] generateDealTitle result {"contact_id":"20862","person_name":"خانم فرخی","mobile":"9153870719","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153870719"}
[2026-03-15 00:16:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20862","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:16:46] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"20862","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:16:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20862","title":"معامله دوم 9153870719","base_title_used":"معامله دوم 9153870719","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانم فرخی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:16:46","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:16:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20862","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9153870719","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:16:46","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:16:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:16:51] [INFO] generateDealTitle result {"contact_id":"20862","person_name":"خانم فرخی","mobile":"9153870719","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9153870719"}
[2026-03-15 00:17:03] [INFO] Checking activity reminders 
[2026-03-15 00:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:17:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:17:14] [INFO] Checking activity reminders 
[2026-03-15 00:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:17:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:17:37] [INFO] Checking activity reminders 
[2026-03-15 00:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:17:59] [INFO] Checking activity reminders 
[2026-03-15 00:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:18:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:18:29] [INFO] Checking activity reminders 
[2026-03-15 00:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:18:46] [INFO] Checking activity reminders 
[2026-03-15 00:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:19:00] [INFO] Checking activity reminders 
[2026-03-15 00:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:19:17] [DEBUG] findByPhone: Found person {"phones":["9132818328"],"found_id":"16496","found_didar_id":"8326","found_name":"مومنی"}
[2026-03-15 00:19:17] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9132818328","found_didar_id":"8326","found_local_id":"16496","found_name":"مومنی"}
[2026-03-15 00:19:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:17] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9132818328","09132818328"]}
[2026-03-15 00:19:17] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9132818328","09132818328"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:19:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:17] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9132818328","existing_contact_id":"8326","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9132818328"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9132818328","09132818328"]}
[2026-03-15 00:19:17] [INFO] Duplicate lead response prepared using local ID {"local_id":"16496","didar_id":"8326"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [INFO] generateDealTitle result {"contact_id":"8326","person_name":"مومنی","mobile":"9132818328","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132818328"}
[2026-03-15 00:19:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9132818328","contact_id":"8326","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:19:20","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9132818328","contact_id":"8326","is_new_deal":true}
[2026-03-15 00:19:20] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9132818328"}
[2026-03-15 00:19:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9132818328"}
[2026-03-15 00:19:20] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9132818328","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:19:20] [INFO] getContactPrimaryPhone called {"contact_id":"8326"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [INFO] getContactPrimaryPhone result {"contact_id":"8326","person_found":true,"primary_phone":"9132818328"}
[2026-03-15 00:19:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9132818328","contact_primary_phone":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison called {"input_phone":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison cleaned {"original":"9132818328","cleaned":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison called {"input_phone":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison cleaned {"original":"9132818328","cleaned":"9132818328"}
[2026-03-15 00:19:20] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9132818328"}
[2026-03-15 00:19:20] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9132818328","normalized_contact_phone":"9132818328","phones_match":true}
[2026-03-15 00:19:20] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9132818328","deal_phone":"9132818328","contact_phone":"9132818328","contact_id":"8326","validation":"PASSED"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [INFO] generateDealTitle result {"contact_id":"8326","person_name":"مومنی","mobile":"9132818328","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132818328"}
[2026-03-15 00:19:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8326","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:19:20] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8326","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:19:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8326","title":"معامله دوم 9132818328","base_title_used":"معامله دوم 9132818328","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مومنی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:19:20","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:19:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8326","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9132818328","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:19:20","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:19:30] [INFO] Checking activity reminders 
[2026-03-15 00:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:19:35] [INFO] Checking activity reminders 
[2026-03-15 00:19:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:19:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:19:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:20:11] [INFO] Checking activity reminders 
[2026-03-15 00:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:20:31] [INFO] Checking activity reminders 
[2026-03-15 00:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:21:02] [INFO] Checking activity reminders 
[2026-03-15 00:21:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:21:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:21:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:21:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:21:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:21:13] [INFO] Checking activity reminders 
[2026-03-15 00:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:21:16] [DEBUG] findByPhone: Found person {"phones":["9137152941"],"found_id":"16249","found_didar_id":"7009","found_name":"نجاری"}
[2026-03-15 00:21:16] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9137152941","found_didar_id":"7009","found_local_id":"16249","found_name":"نجاری"}
[2026-03-15 00:21:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:16] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9137152941","09137152941"]}
[2026-03-15 00:21:16] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9137152941","09137152941"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:21:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:16] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9137152941","existing_contact_id":"7009","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9137152941"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9137152941","09137152941"]}
[2026-03-15 00:21:16] [INFO] Duplicate lead response prepared using local ID {"local_id":"16249","didar_id":"7009"}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [INFO] generateDealTitle result {"contact_id":"7009","person_name":"نجاری","mobile":"9137152941","existing_deals":0,"ordinal":"اول","title":"معامله اول 9137152941"}
[2026-03-15 00:21:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله اول 9137152941","contact_id":"7009","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:21:22","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله اول 9137152941","contact_id":"7009","is_new_deal":true}
[2026-03-15 00:21:22] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله اول 9137152941"}
[2026-03-15 00:21:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله اول 9137152941"}
[2026-03-15 00:21:22] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9137152941","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:21:22] [INFO] getContactPrimaryPhone called {"contact_id":"7009"}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [INFO] getContactPrimaryPhone result {"contact_id":"7009","person_found":true,"primary_phone":"9137152941"}
[2026-03-15 00:21:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9137152941","contact_primary_phone":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison called {"input_phone":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison cleaned {"original":"9137152941","cleaned":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison called {"input_phone":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison cleaned {"original":"9137152941","cleaned":"9137152941"}
[2026-03-15 00:21:22] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9137152941"}
[2026-03-15 00:21:22] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9137152941","normalized_contact_phone":"9137152941","phones_match":true}
[2026-03-15 00:21:22] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله اول 9137152941","deal_phone":"9137152941","contact_phone":"9137152941","contact_id":"7009","validation":"PASSED"}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [INFO] generateDealTitle result {"contact_id":"7009","person_name":"نجاری","mobile":"9137152941","existing_deals":0,"ordinal":"اول","title":"معامله اول 9137152941"}
[2026-03-15 00:21:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7009","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:21:22] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7009","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:21:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7009","title":"معامله اول 9137152941","base_title_used":"معامله اول 9137152941","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"نجاری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:21:22","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:21:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7009","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله اول 9137152941","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:21:22","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:21:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:21:32] [INFO] Checking activity reminders 
[2026-03-15 00:21:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:21:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:22:16] [INFO] Checking activity reminders 
[2026-03-15 00:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:22:31] [INFO] Checking activity reminders 
[2026-03-15 00:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:22:56] [INFO] Checking activity reminders 
[2026-03-15 00:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:23:20] [INFO] Checking activity reminders 
[2026-03-15 00:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:23:28] [INFO] Checking activity reminders 
[2026-03-15 00:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:23:36] [INFO] Checking activity reminders 
[2026-03-15 00:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:23:38] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9301540040","09301540040"]}
[2026-03-15 00:23:38] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9301540040","09301540040"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:23:38] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9301540040","full_name":"لید جدید"}
[2026-03-15 00:23:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-15 00:23:38] [INFO] Notification created {"notification_id":"592","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-15 00:23:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-15 00:23:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-15 00:24:06] [INFO] Checking activity reminders 
[2026-03-15 00:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:24:16] [INFO] Checking activity reminders 
[2026-03-15 00:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:24:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:24:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:24:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:24:48] [INFO] Checking activity reminders 
[2026-03-15 00:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:24:50] [INFO] Checking activity reminders 
[2026-03-15 00:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:25:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:25:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:25:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:25:19] [INFO] Checking activity reminders 
[2026-03-15 00:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:25:20] [INFO] Checking activity reminders 
[2026-03-15 00:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:25:49] [INFO] Checking activity reminders 
[2026-03-15 00:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:25:50] [INFO] Checking activity reminders 
[2026-03-15 00:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:26:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:26:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:26:20] [INFO] Checking activity reminders 
[2026-03-15 00:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:26:20] [INFO] Checking activity reminders 
[2026-03-15 00:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:26:33] [INFO] Checking activity reminders 
[2026-03-15 00:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:26:44] [INFO] Checking activity reminders 
[2026-03-15 00:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:26:50] [INFO] Checking activity reminders 
[2026-03-15 00:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:04] [INFO] Checking activity reminders 
[2026-03-15 00:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:12] [INFO] Checking activity reminders 
[2026-03-15 00:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:21] [INFO] Checking activity reminders 
[2026-03-15 00:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:21] [INFO] Checking activity reminders 
[2026-03-15 00:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:32] [DEBUG] findByPhone: Found person {"phones":["9337213304"],"found_id":"7779","found_didar_id":"15499","found_name":"9337213304"}
[2026-03-15 00:27:32] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9337213304","found_didar_id":"15499","found_local_id":"7779","found_name":"9337213304"}
[2026-03-15 00:27:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:32] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9337213304","09337213304"]}
[2026-03-15 00:27:32] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9337213304","09337213304"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:27:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:32] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9337213304","existing_contact_id":"15499","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9337213304"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9337213304","09337213304"]}
[2026-03-15 00:27:32] [INFO] Duplicate lead response prepared using local ID {"local_id":"7779","didar_id":"15499"}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [INFO] generateDealTitle result {"contact_id":"15499","person_name":"9337213304","mobile":"9337213304","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9337213304"}
[2026-03-15 00:27:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9337213304","contact_id":"15499","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:27:47","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9337213304","contact_id":"15499","is_new_deal":true}
[2026-03-15 00:27:47] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9337213304"}
[2026-03-15 00:27:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9337213304"}
[2026-03-15 00:27:47] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9337213304","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:27:47] [INFO] getContactPrimaryPhone called {"contact_id":"15499"}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [INFO] getContactPrimaryPhone result {"contact_id":"15499","person_found":true,"primary_phone":"9337213304"}
[2026-03-15 00:27:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9337213304","contact_primary_phone":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison called {"input_phone":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison cleaned {"original":"9337213304","cleaned":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison called {"input_phone":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison cleaned {"original":"9337213304","cleaned":"9337213304"}
[2026-03-15 00:27:47] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9337213304"}
[2026-03-15 00:27:47] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9337213304","normalized_contact_phone":"9337213304","phones_match":true}
[2026-03-15 00:27:47] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9337213304","deal_phone":"9337213304","contact_phone":"9337213304","contact_id":"15499","validation":"PASSED"}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [INFO] generateDealTitle result {"contact_id":"15499","person_name":"9337213304","mobile":"9337213304","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9337213304"}
[2026-03-15 00:27:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15499","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:27:47] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15499","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:27:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15499","title":"معامله دوم 9337213304","base_title_used":"معامله دوم 9337213304","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"9337213304","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:27:47","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:27:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15499","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9337213304","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:27:47","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:27:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:27:51] [INFO] Checking activity reminders 
[2026-03-15 00:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:51] [INFO] Checking activity reminders 
[2026-03-15 00:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:27:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:28:21] [INFO] Checking activity reminders 
[2026-03-15 00:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:28:27] [INFO] Checking activity reminders 
[2026-03-15 00:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:28:52] [INFO] Checking activity reminders 
[2026-03-15 00:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:22] [INFO] Checking activity reminders 
[2026-03-15 00:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:27] [INFO] Checking activity reminders 
[2026-03-15 00:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:34] [INFO] Checking activity reminders 
[2026-03-15 00:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:41] [INFO] Checking activity reminders 
[2026-03-15 00:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:53] [INFO] Checking activity reminders 
[2026-03-15 00:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:29:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:30:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:30:11] [INFO] Checking activity reminders 
[2026-03-15 00:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:30:19] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9360028512","09360028512"]}
[2026-03-15 00:30:19] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9360028512","09360028512"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:30:19] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9360028512","full_name":"لید جدید"}
[2026-03-15 00:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-15 00:30:19] [INFO] Notification created {"notification_id":"593","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 00:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 00:30:23] [INFO] Checking activity reminders 
[2026-03-15 00:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-15 00:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-15 00:30:38] [INFO] Checking activity reminders 
[2026-03-15 00:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:30:53] [INFO] Checking activity reminders 
[2026-03-15 00:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:30:53] [INFO] Checking activity reminders 
[2026-03-15 00:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:31:23] [INFO] Checking activity reminders 
[2026-03-15 00:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:31:29] [INFO] Checking activity reminders 
[2026-03-15 00:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:31:38] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9335808675","09335808675"]}
[2026-03-15 00:31:38] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9335808675","09335808675"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:31:38] [INFO] Didar write disabled; creating local lead only {"owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","mobile":"9335808675","full_name":"لید جدید"}
[2026-03-15 00:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-15 00:31:38] [INFO] Notification created {"notification_id":"594","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"lead_assigned","show_popup":true}
[2026-03-15 00:31:55] [INFO] Checking activity reminders 
[2026-03-15 00:31:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:31:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:32:23] [INFO] Checking activity reminders 
[2026-03-15 00:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:32:31] [INFO] Checking activity reminders 
[2026-03-15 00:32:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:32:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:32:49] [INFO] Checking activity reminders 
[2026-03-15 00:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:33:03] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9194733236","09194733236"]}
[2026-03-15 00:33:03] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9194733236","09194733236"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:33:03] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9194733236","full_name":"لید جدید"}
[2026-03-15 00:33:03] [ERROR] API Error {"action":"create_lead","exception":{"message":"SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/PersonRepository.php","line":405,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/PersonRepository.php(405): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(383): App\\Repositories\\PersonRepository->save()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(402): App\\Services\\LeadService->createLead()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(560): App\\Controllers\\LeadController->create()\n#4 {main}"}}
[2026-03-15 00:33:19] [INFO] Checking activity reminders 
[2026-03-15 00:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:33:23] [INFO] Checking activity reminders 
[2026-03-15 00:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:33:32] [INFO] Checking activity reminders 
[2026-03-15 00:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:33:42] [INFO] Checking activity reminders 
[2026-03-15 00:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:34:03] [INFO] Checking activity reminders 
[2026-03-15 00:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:34:18] [INFO] Checking activity reminders 
[2026-03-15 00:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:34:23] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9194733236","09194733236"]}
[2026-03-15 00:34:23] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9194733236","09194733236"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:34:23] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9194733236","full_name":"لید جدید"}
[2026-03-15 00:34:23] [ERROR] API Error {"action":"create_lead","exception":{"message":"SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/PersonRepository.php","line":405,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/PersonRepository.php(405): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(383): App\\Repositories\\PersonRepository->save()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(402): App\\Services\\LeadService->createLead()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(560): App\\Controllers\\LeadController->create()\n#4 {main}"}}
[2026-03-15 00:35:11] [INFO] Checking activity reminders 
[2026-03-15 00:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:35:27] [INFO] Checking activity reminders 
[2026-03-15 00:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:35:41] [INFO] Checking activity reminders 
[2026-03-15 00:35:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:35:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:35:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:35:57] [INFO] Checking activity reminders 
[2026-03-15 00:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:11] [INFO] Checking activity reminders 
[2026-03-15 00:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:16] [INFO] Checking activity reminders 
[2026-03-15 00:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:24] [INFO] Checking activity reminders 
[2026-03-15 00:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:30] [INFO] Checking activity reminders 
[2026-03-15 00:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:42] [INFO] Checking activity reminders 
[2026-03-15 00:36:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:44] [INFO] Checking activity reminders 
[2026-03-15 00:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:36:51] [DEBUG] findByPhone: Found person {"phones":["9928631766"],"found_id":"6905","found_didar_id":"10187","found_name":"شریفی"}
[2026-03-15 00:36:51] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9928631766","found_didar_id":"10187","found_local_id":"6905","found_name":"شریفی"}
[2026-03-15 00:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:51] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9928631766","09928631766"]}
[2026-03-15 00:36:51] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9928631766","09928631766"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:51] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9928631766","existing_contact_id":"10187","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9928631766"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9928631766","09928631766"]}
[2026-03-15 00:36:51] [INFO] Duplicate lead response prepared using local ID {"local_id":"6905","didar_id":"10187"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [INFO] generateDealTitle result {"contact_id":"10187","person_name":"شریفی","mobile":"9928631766","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9928631766"}
[2026-03-15 00:36:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9928631766","contact_id":"10187","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:36:59","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9928631766","contact_id":"10187","is_new_deal":true}
[2026-03-15 00:36:59] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9928631766"}
[2026-03-15 00:36:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9928631766"}
[2026-03-15 00:36:59] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9928631766","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:36:59] [INFO] getContactPrimaryPhone called {"contact_id":"10187"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [INFO] getContactPrimaryPhone result {"contact_id":"10187","person_found":true,"primary_phone":"9928631766"}
[2026-03-15 00:36:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9928631766","contact_primary_phone":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison called {"input_phone":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison cleaned {"original":"9928631766","cleaned":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison called {"input_phone":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison cleaned {"original":"9928631766","cleaned":"9928631766"}
[2026-03-15 00:36:59] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9928631766"}
[2026-03-15 00:36:59] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9928631766","normalized_contact_phone":"9928631766","phones_match":true}
[2026-03-15 00:36:59] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9928631766","deal_phone":"9928631766","contact_phone":"9928631766","contact_id":"10187","validation":"PASSED"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [INFO] generateDealTitle result {"contact_id":"10187","person_name":"شریفی","mobile":"9928631766","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9928631766"}
[2026-03-15 00:36:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10187","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:36:59] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10187","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:36:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10187","title":"معامله دوم 9928631766","base_title_used":"معامله دوم 9928631766","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شریفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:36:59","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:36:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:36:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10187","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9928631766","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:36:59","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:37:12] [INFO] Checking activity reminders 
[2026-03-15 00:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:37:15] [INFO] Checking activity reminders 
[2026-03-15 00:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:37:19] [INFO] Checking activity reminders 
[2026-03-15 00:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:37:31] [INFO] Checking activity reminders 
[2026-03-15 00:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:37:42] [INFO] Checking activity reminders 
[2026-03-15 00:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:37:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 00:37:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 00:37:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 00:38:02] [INFO] Checking activity reminders 
[2026-03-15 00:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:38:12] [INFO] Checking activity reminders 
[2026-03-15 00:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-15 00:38:18] [INFO] Checking activity reminders 
[2026-03-15 00:38:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:38:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:38:29] [INFO] Checking activity reminders 
[2026-03-15 00:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:38:30] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9138670494","09138670494"]}
[2026-03-15 00:38:30] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9138670494","09138670494"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:38:30] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9138670494","full_name":"لید جدید"}
[2026-03-15 00:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 00:38:30] [INFO] Notification created {"notification_id":"595","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 00:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 00:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 00:38:43] [INFO] Checking activity reminders 
[2026-03-15 00:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:39:04] [INFO] Checking activity reminders 
[2026-03-15 00:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:39:13] [INFO] Checking activity reminders 
[2026-03-15 00:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:39:20] [INFO] Checking activity reminders 
[2026-03-15 00:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:39:42] [INFO] Checking activity reminders 
[2026-03-15 00:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:39:43] [INFO] Checking activity reminders 
[2026-03-15 00:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:40:13] [INFO] Checking activity reminders 
[2026-03-15 00:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:40:37] [INFO] Checking activity reminders 
[2026-03-15 00:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:40:44] [INFO] Checking activity reminders 
[2026-03-15 00:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:40:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-15 00:41:14] [INFO] Checking activity reminders 
[2026-03-15 00:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:41:21] [INFO] Checking activity reminders 
[2026-03-15 00:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:41:42] [INFO] Checking activity reminders 
[2026-03-15 00:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:41:44] [INFO] Checking activity reminders 
[2026-03-15 00:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:41:46] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9194733236","09194733236"]}
[2026-03-15 00:41:46] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9194733236","09194733236"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 00:41:46] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9194733236","full_name":"لید جدید"}
[2026-03-15 00:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-15 00:41:46] [INFO] Notification created {"notification_id":"596","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-15 00:41:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-15 00:42:15] [INFO] Checking activity reminders 
[2026-03-15 00:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:42:45] [INFO] Checking activity reminders 
[2026-03-15 00:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:42:55] [INFO] Checking activity reminders 
[2026-03-15 00:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:43:15] [INFO] Checking activity reminders 
[2026-03-15 00:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:43:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:43:25] [INFO] Checking activity reminders 
[2026-03-15 00:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:43:45] [INFO] Checking activity reminders 
[2026-03-15 00:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:43:56] [INFO] Checking activity reminders 
[2026-03-15 00:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:44:25] [INFO] Checking activity reminders 
[2026-03-15 00:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:44:55] [INFO] Checking activity reminders 
[2026-03-15 00:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:45:25] [DEBUG] findByPhone: Found person {"phones":["9125955098"],"found_id":"18968","found_didar_id":"16051","found_name":"الیاس زاده"}
[2026-03-15 00:45:25] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9125955098","found_didar_id":"16051","found_local_id":"18968","found_name":"الیاس زاده"}
[2026-03-15 00:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:25] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9125955098","09125955098"]}
[2026-03-15 00:45:25] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9125955098","09125955098"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:25] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9125955098","existing_contact_id":"16051","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9125955098"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9125955098","09125955098"]}
[2026-03-15 00:45:25] [INFO] Duplicate lead response prepared using local ID {"local_id":"18968","didar_id":"16051"}
[2026-03-15 00:45:25] [INFO] Checking activity reminders 
[2026-03-15 00:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [INFO] generateDealTitle result {"contact_id":"16051","person_name":"الیاس زاده","mobile":"9125955098","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125955098"}
[2026-03-15 00:45:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9125955098","contact_id":"16051","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:45:30","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9125955098","contact_id":"16051","is_new_deal":true}
[2026-03-15 00:45:30] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9125955098"}
[2026-03-15 00:45:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9125955098"}
[2026-03-15 00:45:30] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9125955098","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:45:30] [INFO] getContactPrimaryPhone called {"contact_id":"16051"}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [INFO] getContactPrimaryPhone result {"contact_id":"16051","person_found":true,"primary_phone":"9125955098"}
[2026-03-15 00:45:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9125955098","contact_primary_phone":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison called {"input_phone":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison cleaned {"original":"9125955098","cleaned":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison called {"input_phone":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison cleaned {"original":"9125955098","cleaned":"9125955098"}
[2026-03-15 00:45:30] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9125955098"}
[2026-03-15 00:45:30] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9125955098","normalized_contact_phone":"9125955098","phones_match":true}
[2026-03-15 00:45:30] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9125955098","deal_phone":"9125955098","contact_phone":"9125955098","contact_id":"16051","validation":"PASSED"}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [INFO] generateDealTitle result {"contact_id":"16051","person_name":"الیاس زاده","mobile":"9125955098","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125955098"}
[2026-03-15 00:45:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16051","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:45:30] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16051","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:45:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16051","title":"معامله دوم 9125955098","base_title_used":"معامله دوم 9125955098","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"الیاس زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:45:30","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:45:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:45:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16051","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9125955098","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:45:30","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:45:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:46:01] [INFO] Checking activity reminders 
[2026-03-15 00:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-15 00:46:07] [INFO] Checking activity reminders 
[2026-03-15 00:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-15 00:47:19] [INFO] Checking activity reminders 
[2026-03-15 00:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:47:49] [INFO] Checking activity reminders 
[2026-03-15 00:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:48:19] [INFO] Checking activity reminders 
[2026-03-15 00:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:48:50] [INFO] Checking activity reminders 
[2026-03-15 00:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:49:00] [INFO] Checking activity reminders 
[2026-03-15 00:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:49:19] [INFO] Checking activity reminders 
[2026-03-15 00:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:49:50] [INFO] Checking activity reminders 
[2026-03-15 00:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:50:15] [INFO] Checking activity reminders 
[2026-03-15 00:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:50:20] [INFO] Checking activity reminders 
[2026-03-15 00:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:50:41] [INFO] Checking activity reminders 
[2026-03-15 00:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:50:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:50:50] [INFO] Checking activity reminders 
[2026-03-15 00:50:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:50:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:51:07] [INFO] Checking activity reminders 
[2026-03-15 00:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:51:15] [INFO] Checking activity reminders 
[2026-03-15 00:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:51:20] [DEBUG] findByPhone: Found person {"phones":["9161129298"],"found_id":"3940","found_didar_id":"21527","found_name":"مسعود امامی"}
[2026-03-15 00:51:20] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9161129298","found_didar_id":"21527","found_local_id":"3940","found_name":"مسعود امامی"}
[2026-03-15 00:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:20] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9161129298","09161129298"]}
[2026-03-15 00:51:20] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9161129298","09161129298"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 00:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:20] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9161129298","existing_contact_id":"21527","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9161129298"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9161129298","09161129298"]}
[2026-03-15 00:51:20] [INFO] Duplicate lead response prepared using local ID {"local_id":"3940","didar_id":"21527"}
[2026-03-15 00:51:20] [INFO] Checking activity reminders 
[2026-03-15 00:51:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:51:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [INFO] generateDealTitle result {"contact_id":"21527","person_name":"مسعود امامی","mobile":"9161129298","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9161129298"}
[2026-03-15 00:51:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9161129298","contact_id":"21527","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 00:51:26","session_id":"2r8g9nct0msf34c1jjmeqqp798"}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9161129298","contact_id":"21527","is_new_deal":true}
[2026-03-15 00:51:26] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9161129298"}
[2026-03-15 00:51:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9161129298"}
[2026-03-15 00:51:26] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9161129298","pattern":"معامله_ordinal_phone"}
[2026-03-15 00:51:26] [INFO] getContactPrimaryPhone called {"contact_id":"21527"}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [INFO] getContactPrimaryPhone result {"contact_id":"21527","person_found":true,"primary_phone":"9161129298"}
[2026-03-15 00:51:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9161129298","contact_primary_phone":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison called {"input_phone":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison cleaned {"original":"9161129298","cleaned":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison called {"input_phone":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison cleaned {"original":"9161129298","cleaned":"9161129298"}
[2026-03-15 00:51:26] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9161129298"}
[2026-03-15 00:51:26] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9161129298","normalized_contact_phone":"9161129298","phones_match":true}
[2026-03-15 00:51:26] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9161129298","deal_phone":"9161129298","contact_phone":"9161129298","contact_id":"21527","validation":"PASSED"}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [INFO] generateDealTitle result {"contact_id":"21527","person_name":"مسعود امامی","mobile":"9161129298","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9161129298"}
[2026-03-15 00:51:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21527","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 00:51:26] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21527","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 00:51:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21527","title":"معامله سوم 9161129298","base_title_used":"معامله سوم 9161129298","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"مسعود امامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 00:51:26","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 00:51:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21527","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9161129298","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 00:51:26","ip_address":"204.18.37.228","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:51:46] [INFO] Checking activity reminders 
[2026-03-15 00:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:51:51] [INFO] Checking activity reminders 
[2026-03-15 00:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:52:09] [INFO] Checking activity reminders 
[2026-03-15 00:52:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:52:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:52:19] [INFO] Checking activity reminders 
[2026-03-15 00:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:52:21] [INFO] Checking activity reminders 
[2026-03-15 00:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:52:50] [INFO] Checking activity reminders 
[2026-03-15 00:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:52:51] [INFO] Checking activity reminders 
[2026-03-15 00:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:53:22] [INFO] Checking activity reminders 
[2026-03-15 00:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:53:52] [INFO] Checking activity reminders 
[2026-03-15 00:53:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:53:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:01] [INFO] Checking activity reminders 
[2026-03-15 00:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:19] [INFO] Checking activity reminders 
[2026-03-15 00:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:22] [INFO] Checking activity reminders 
[2026-03-15 00:54:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:54:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:43] [INFO] Checking activity reminders 
[2026-03-15 00:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 00:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 00:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 00:54:53] [INFO] Checking activity reminders 
[2026-03-15 00:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:54:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-15 00:54:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-15 00:55:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-15 00:55:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 00:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-15 00:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-15 00:55:23] [INFO] Checking activity reminders 
[2026-03-15 00:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-15 00:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-15 00:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 00:55:51] [INFO] Checking activity reminders 
[2026-03-15 00:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:55:54] [INFO] Checking activity reminders 
[2026-03-15 00:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:56:08] [INFO] Checking activity reminders 
[2026-03-15 00:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:56:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:56:24] [INFO] Checking activity reminders 
[2026-03-15 00:56:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:56:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:56:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 00:56:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-15 00:56:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-15 00:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 00:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 00:56:43] [INFO] Checking activity reminders 
[2026-03-15 00:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-15 00:56:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:56:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 00:56:55] [INFO] Checking activity reminders 
[2026-03-15 00:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 00:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 00:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 00:57:12] [INFO] Checking activity reminders 
[2026-03-15 00:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:57:25] [INFO] Checking activity reminders 
[2026-03-15 00:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-15 00:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-15 00:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-15 00:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-15 00:57:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-15 00:57:50] [INFO] Checking activity reminders 
[2026-03-15 00:57:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:57:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:57:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-15 00:57:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-15 00:57:55] [INFO] Checking activity reminders 
[2026-03-15 00:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-15 00:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-15 00:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-15 00:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-15 00:58:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 00:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-15 00:58:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-15 00:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-15 00:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-15 00:58:26] [INFO] Checking activity reminders 
[2026-03-15 00:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:58:56] [INFO] Checking activity reminders 
[2026-03-15 00:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:59:26] [INFO] Checking activity reminders 
[2026-03-15 00:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 00:59:57] [INFO] Checking activity reminders 
[2026-03-15 00:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 00:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:00:27] [INFO] Checking activity reminders 
[2026-03-15 01:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:00:57] [INFO] Checking activity reminders 
[2026-03-15 01:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:01:12] [INFO] Checking activity reminders 
[2026-03-15 01:01:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:01:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 01:01:28] [INFO] Checking activity reminders 
[2026-03-15 01:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:01:58] [INFO] Checking activity reminders 
[2026-03-15 01:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:02:20] [INFO] Checking activity reminders 
[2026-03-15 01:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 01:02:28] [INFO] Checking activity reminders 
[2026-03-15 01:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:02:50] [INFO] Checking activity reminders 
[2026-03-15 01:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:02:55] [INFO] Checking activity reminders 
[2026-03-15 01:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:02:59] [INFO] Checking activity reminders 
[2026-03-15 01:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:03:29] [INFO] Checking activity reminders 
[2026-03-15 01:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:03:54] [INFO] Checking activity reminders 
[2026-03-15 01:03:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:03:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:03:59] [INFO] Checking activity reminders 
[2026-03-15 01:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:04:30] [INFO] Checking activity reminders 
[2026-03-15 01:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:05:00] [INFO] Checking activity reminders 
[2026-03-15 01:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:05:30] [INFO] Checking activity reminders 
[2026-03-15 01:05:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:05:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:06:01] [INFO] Checking activity reminders 
[2026-03-15 01:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:06:31] [INFO] Checking activity reminders 
[2026-03-15 01:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:07:01] [INFO] Checking activity reminders 
[2026-03-15 01:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:07:32] [INFO] Checking activity reminders 
[2026-03-15 01:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:08:02] [INFO] Checking activity reminders 
[2026-03-15 01:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:08:32] [INFO] Checking activity reminders 
[2026-03-15 01:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:09:03] [INFO] Checking activity reminders 
[2026-03-15 01:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:09:33] [INFO] Checking activity reminders 
[2026-03-15 01:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:10:03] [INFO] Checking activity reminders 
[2026-03-15 01:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:10:34] [INFO] Checking activity reminders 
[2026-03-15 01:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:11:04] [INFO] Checking activity reminders 
[2026-03-15 01:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:11:35] [INFO] Checking activity reminders 
[2026-03-15 01:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:12:05] [INFO] Checking activity reminders 
[2026-03-15 01:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:12:36] [INFO] Checking activity reminders 
[2026-03-15 01:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:13:06] [INFO] Checking activity reminders 
[2026-03-15 01:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:13:36] [INFO] Checking activity reminders 
[2026-03-15 01:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:14:07] [INFO] Checking activity reminders 
[2026-03-15 01:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:14:37] [INFO] Checking activity reminders 
[2026-03-15 01:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:15:08] [INFO] Checking activity reminders 
[2026-03-15 01:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:15:38] [INFO] Checking activity reminders 
[2026-03-15 01:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:16:08] [INFO] Checking activity reminders 
[2026-03-15 01:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:16:38] [INFO] Checking activity reminders 
[2026-03-15 01:16:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:16:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:17:09] [INFO] Checking activity reminders 
[2026-03-15 01:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:17:39] [INFO] Checking activity reminders 
[2026-03-15 01:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:18:10] [INFO] Checking activity reminders 
[2026-03-15 01:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:18:40] [INFO] Checking activity reminders 
[2026-03-15 01:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:19:10] [INFO] Checking activity reminders 
[2026-03-15 01:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:19:41] [INFO] Checking activity reminders 
[2026-03-15 01:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:20:11] [INFO] Checking activity reminders 
[2026-03-15 01:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:28:42] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:42] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"check_reminders"}
[2026-03-15 01:28:42] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:42] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:45] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:45] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:47] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:48] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:48] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:55] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 01:28:55] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:28:55] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:00] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:00] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:00] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 01:29:00] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:04] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"hbdlutcnslbsm6pk550vok47q9","session_keys":[],"action":"log_client_event"}
[2026-03-15 01:29:12] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 01:29:12] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 01:29:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 01:29:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 01:29:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 01:29:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 01:29:43] [INFO] Checking activity reminders 
[2026-03-15 01:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 01:29:50] [INFO] Checking activity reminders 
[2026-03-15 01:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 01:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 03:55:15] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:15] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"check_reminders"}
[2026-03-15 03:55:15] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:19] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_kpi_products"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"get_performance_dashboard"}
[2026-03-15 03:55:21] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:55:22] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:56:36] [WARNING] Auth check failed - not authenticated {"session_id":"h5556oat80o5rinvqb9ilrkspq","session_keys":[],"action":"log_client_event"}
[2026-03-15 03:56:36] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 03:56:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 03:57:06] [INFO] Checking activity reminders 
[2026-03-15 03:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 03:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 03:57:36] [INFO] Checking activity reminders 
[2026-03-15 03:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 03:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 03:58:06] [INFO] Checking activity reminders 
[2026-03-15 03:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 03:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:34:36] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:34:36] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 10:34:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 10:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:35:07] [INFO] Checking activity reminders 
[2026-03-15 10:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:35:37] [INFO] Checking activity reminders 
[2026-03-15 10:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:36:25] [INFO] Checking activity reminders 
[2026-03-15 10:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:36:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3042","deal_id":"3020","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 10:36:54","session_id":"gra612dtvv4illl35fpdg46jms"}
[2026-03-15 10:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:36:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3042","is_new_deal":false}
[2026-03-15 10:36:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 10:36:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 10:36:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 10:36:54] [INFO] getContactPrimaryPhone called {"contact_id":"3042"}
[2026-03-15 10:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:36:54] [INFO] getContactPrimaryPhone result {"contact_id":"3042","person_found":true,"primary_phone":"9197754060"}
[2026-03-15 10:36:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197754060"}
[2026-03-15 10:36:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197754060","contact_id":"3042","deal_id":"3020","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 10:36:54"}
[2026-03-15 10:36:54] [INFO] DealController.save existing deal lookup {"deal_id":"3020","contact_id":"3042","existing_deal_found":true,"existing_contact_id":"3042","existing_title":"معامله آرش شجاعی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 10:36:54"}
[2026-03-15 10:36:54] [INFO] DealController.save validated payments {"deal_id":"3020","contact_id":"3042","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-15 10:36:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3042","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 10:36:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"3020","contact_didar_id":"3042","title":"معامله آرش شجاعی | کانال VIP با پشتیبانی","base_title_used":"معامله آرش شجاعی","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آرش شجاعی","existing_deal":"YES","existing_deal_id":"3020","existing_deal_status":"Pending","server_time":"2026-03-15 10:36:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-15 10:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:36:54] [INFO] Deal success processed {"contact_id":"3042","person_name":"آرش شجاعی","products_count":1}
[2026-03-15 10:36:54] [INFO] ensureDealProductsFromText: products synced {"deal_id":"3020","product_ids":[23]}
[2026-03-15 10:36:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"3020","contact_id":"3042","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله آرش شجاعی | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-15 10:36:54","ip_address":"5.211.60.7","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-15 10:36:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-03-15 10:36:55] [INFO] Checking activity reminders 
[2026-03-15 10:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-15 10:37:27] [INFO] Checking activity reminders 
[2026-03-15 10:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:37:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 10:43:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-15 10:43:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:43:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:43:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:44:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 10:44:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 10:44:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 10:44:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 10:44:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 10:44:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 10:45:29] [INFO] Checking activity reminders 
[2026-03-15 10:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:45:59] [INFO] Checking activity reminders 
[2026-03-15 10:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:46:29] [INFO] Checking activity reminders 
[2026-03-15 10:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:46:59] [INFO] Checking activity reminders 
[2026-03-15 10:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:47:29] [INFO] Checking activity reminders 
[2026-03-15 10:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:48:00] [INFO] Checking activity reminders 
[2026-03-15 10:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:48:30] [INFO] Checking activity reminders 
[2026-03-15 10:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:49:00] [INFO] Checking activity reminders 
[2026-03-15 10:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:49:30] [INFO] Checking activity reminders 
[2026-03-15 10:49:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:49:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:50:00] [INFO] Checking activity reminders 
[2026-03-15 10:50:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:50:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:50:30] [INFO] Checking activity reminders 
[2026-03-15 10:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:51:00] [INFO] Checking activity reminders 
[2026-03-15 10:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:51:30] [INFO] Checking activity reminders 
[2026-03-15 10:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:52:00] [INFO] Checking activity reminders 
[2026-03-15 10:52:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:52:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:52:30] [INFO] Checking activity reminders 
[2026-03-15 10:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:53:01] [INFO] Checking activity reminders 
[2026-03-15 10:53:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:53:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:53:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-15 10:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-15 10:53:31] [INFO] Checking activity reminders 
[2026-03-15 10:53:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:53:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:54:01] [INFO] Checking activity reminders 
[2026-03-15 10:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:54:31] [INFO] Checking activity reminders 
[2026-03-15 10:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:55:01] [INFO] Checking activity reminders 
[2026-03-15 10:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:55:31] [INFO] Checking activity reminders 
[2026-03-15 10:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:56:01] [INFO] Checking activity reminders 
[2026-03-15 10:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:56:31] [INFO] Checking activity reminders 
[2026-03-15 10:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:57:01] [INFO] Checking activity reminders 
[2026-03-15 10:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:57:31] [INFO] Checking activity reminders 
[2026-03-15 10:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:58:02] [INFO] Checking activity reminders 
[2026-03-15 10:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:58:37] [INFO] Checking activity reminders 
[2026-03-15 10:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:59:07] [INFO] Checking activity reminders 
[2026-03-15 10:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 10:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-15 10:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:59:33] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 10:59:37] [INFO] Checking activity reminders 
[2026-03-15 10:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 10:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:00:07] [INFO] Checking activity reminders 
[2026-03-15 11:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:00:37] [INFO] Checking activity reminders 
[2026-03-15 11:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:01:08] [INFO] Checking activity reminders 
[2026-03-15 11:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:03:29] [INFO] Checking activity reminders 
[2026-03-15 11:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:04:02] [INFO] Checking activity reminders 
[2026-03-15 11:04:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:04:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:04:32] [INFO] Checking activity reminders 
[2026-03-15 11:04:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:04:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:04:34] [INFO] Checking activity reminders 
[2026-03-15 11:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:05:50] [INFO] Checking activity reminders 
[2026-03-15 11:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:06:20] [INFO] Checking activity reminders 
[2026-03-15 11:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:06:50] [INFO] Checking activity reminders 
[2026-03-15 11:06:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:06:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:07:20] [INFO] Checking activity reminders 
[2026-03-15 11:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:07:50] [INFO] Checking activity reminders 
[2026-03-15 11:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 11:08:20] [INFO] Checking activity reminders 
[2026-03-15 11:08:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 11:08:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:36:42] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-15 12:36:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 12:37:13] [INFO] Checking activity reminders 
[2026-03-15 12:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:37:59] [INFO] Checking activity reminders 
[2026-03-15 12:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:39:36] [INFO] Checking activity reminders 
[2026-03-15 12:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 12:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 12:40:07] [INFO] Checking activity reminders 
[2026-03-15 12:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:40:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 12:40:37] [INFO] Checking activity reminders 
[2026-03-15 12:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:41:07] [INFO] Checking activity reminders 
[2026-03-15 12:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:41:37] [INFO] Checking activity reminders 
[2026-03-15 12:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:42:09] [INFO] Checking activity reminders 
[2026-03-15 12:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:42:40] [INFO] Checking activity reminders 
[2026-03-15 12:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 12:51:51] [INFO] Checking activity reminders 
[2026-03-15 12:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 12:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:21:32] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-15 13:21:32] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:21:32] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:21:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:21:39] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 13:21:39] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 13:21:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 13:21:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 13:21:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 13:21:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 13:22:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 13:22:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 13:22:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 13:22:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 13:22:26] [INFO] Checking activity reminders 
[2026-03-15 13:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:22:56] [INFO] Checking activity reminders 
[2026-03-15 13:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:23:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-15 13:23:16] [INFO] Checking activity reminders 
[2026-03-15 13:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:23:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 13:23:47] [INFO] Checking activity reminders 
[2026-03-15 13:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:25:10] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-15 13:25:10] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:25:10] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:35:41] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:35:41] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-15 13:35:41] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:44:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:44:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"check_reminders"}
[2026-03-15 13:44:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"check_reminders"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_person_profile"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:28] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_person_profile"}
[2026-03-15 13:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_person_profile"}
[2026-03-15 13:45:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:34] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 13:45:58] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-15 13:45:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 13:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 13:46:28] [INFO] Checking activity reminders 
[2026-03-15 13:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:46:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16051","deal_id":"local_69b5cff2993593.37605057","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 13:46:41","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 13:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 13:46:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16051","is_new_deal":false}
[2026-03-15 13:46:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 13:46:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 13:46:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 13:46:41] [INFO] getContactPrimaryPhone called {"contact_id":"16051"}
[2026-03-15 13:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 13:46:41] [INFO] getContactPrimaryPhone result {"contact_id":"16051","person_found":true,"primary_phone":"9125955098"}
[2026-03-15 13:46:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125955098"}
[2026-03-15 13:46:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125955098","contact_id":"16051","deal_id":"local_69b5cff2993593.37605057","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 13:46:41"}
[2026-03-15 13:46:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5cff2993593.37605057","contact_id":"16051","existing_deal_found":true,"existing_contact_id":"16051","existing_title":"معامله دوم 9125955098","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 13:46:41"}
[2026-03-15 13:46:41] [INFO] DealController.save validated payments {"deal_id":"local_69b5cff2993593.37605057","contact_id":"16051","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-15 13:46:41] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16051","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 13:46:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5cff2993593.37605057","contact_didar_id":"16051","title":"معامله دوم 9125955098 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9125955098","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"الیاس زاده","existing_deal":"YES","existing_deal_id":"local_69b5cff2993593.37605057","existing_deal_status":"Pending","server_time":"2026-03-15 13:46:41","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 13:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 13:46:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5cff2993593.37605057","contact_id":"16051","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9125955098 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 13:46:41","ip_address":"5.113.50.15","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 13:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-15 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:46:58] [INFO] Checking activity reminders 
[2026-03-15 13:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:47:32] [INFO] Checking activity reminders 
[2026-03-15 13:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:47:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_694b803a1c5325.08790989","deal_id":"local_69b5c56a051979.85324210","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 13:47:46","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 13:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:47:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_694b803a1c5325.08790989","is_new_deal":false}
[2026-03-15 13:47:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 13:47:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 13:47:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 13:47:46] [INFO] getContactPrimaryPhone called {"contact_id":"local_694b803a1c5325.08790989"}
[2026-03-15 13:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:47:46] [INFO] getContactPrimaryPhone result {"contact_id":"local_694b803a1c5325.08790989","person_found":true,"primary_phone":"9174473221"}
[2026-03-15 13:47:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174473221"}
[2026-03-15 13:47:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174473221","contact_id":"local_694b803a1c5325.08790989","deal_id":"local_69b5c56a051979.85324210","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 13:47:46"}
[2026-03-15 13:47:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c56a051979.85324210","contact_id":"local_694b803a1c5325.08790989","existing_deal_found":true,"existing_contact_id":"local_694b803a1c5325.08790989","existing_title":"معامله سوم 9174473221 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 13:47:46"}
[2026-03-15 13:47:46] [INFO] DealController.save validated payments {"deal_id":"local_69b5c56a051979.85324210","contact_id":"local_694b803a1c5325.08790989","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-15 13:47:46] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_694b803a1c5325.08790989","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 13:47:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c56a051979.85324210","contact_didar_id":"local_694b803a1c5325.08790989","title":"معامله سوم 9174473221 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9174473221","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حسین عبدی پور","existing_deal":"YES","existing_deal_id":"local_69b5c56a051979.85324210","existing_deal_status":"Pending","server_time":"2026-03-15 13:47:46","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 13:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:47:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c56a051979.85324210","contact_id":"local_694b803a1c5325.08790989","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9174473221 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 13:47:46","ip_address":"5.113.50.15","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 13:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:02] [INFO] Checking activity reminders 
[2026-03-15 13:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:48:16] [INFO] Activity save request {"post_data":{"contact_id":"local_694b803a1c5325.08790989","deal_id":"local_69b5c56a051979.85324210","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 13:48:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_694b803a1c5325.08790989","note_was_empty":true}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:16] [INFO] Updating virtual stage {"contact_id":"local_694b803a1c5325.08790989","stage_name":"new","force":false}
[2026-03-15 13:48:16] [INFO] Virtual stage successfully saved {"contact_id":"local_694b803a1c5325.08790989","stage_name":"new"}
[2026-03-15 13:48:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_694b803a1c5325.08790989"}
[2026-03-15 13:48:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c56a051979.85324210","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-15 13:48:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b687680749d1.00047359","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69b687680749d1.00047359"}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:16] [INFO] Updating virtual stage {"contact_id":"local_694b803a1c5325.08790989","stage_name":"deal_registered","force":false}
[2026-03-15 13:48:16] [INFO] Virtual stage successfully saved {"contact_id":"local_694b803a1c5325.08790989","stage_name":"deal_registered"}
[2026-03-15 13:48:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_694b803a1c5325.08790989"}
[2026-03-15 13:48:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-03-15 13:48:19] [INFO] generateDealTitle result {"contact_id":"local_694b803a1c5325.08790989","person_name":"حسین عبدی پور","mobile":"9174473221","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9174473221"}
[2026-03-15 13:48:32] [INFO] Checking activity reminders 
[2026-03-15 13:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:48:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 13:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 13:49:03] [INFO] Checking activity reminders 
[2026-03-15 13:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:49:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:49:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:50:22] [INFO] Checking activity reminders 
[2026-03-15 13:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:50:52] [INFO] Checking activity reminders 
[2026-03-15 13:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:51:23] [INFO] Checking activity reminders 
[2026-03-15 13:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:51:53] [INFO] Checking activity reminders 
[2026-03-15 13:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:52:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:52:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 13:52:23] [INFO] Checking activity reminders 
[2026-03-15 13:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 13:52:53] [INFO] Checking activity reminders 
[2026-03-15 13:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 13:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:22:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 14:22:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-15 14:22:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-15 14:22:47] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 14:22:47] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 14:22:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 14:22:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 14:22:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 14:22:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 14:23:17] [INFO] Checking activity reminders 
[2026-03-15 14:23:17] [INFO] Found due reminders {"count":1,"reminders":[{"id":"20","activity_didar_id":"9b841aa7-4ad0-41e9-97a8-71928fbf222a","reminder_time":"2026-03-15 14:00:00","reminder_sent":"0","reminder_offset_minutes":"120","created_at":"2025-12-17 17:47:13","owner_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","title":"فعالیت","due_date":"2026-03-15 16:00:00","contact_didar_id":"12683"}]}
[2026-03-15 14:23:17] [INFO] Processing reminder {"reminder_id":"20","activity_id":"9b841aa7-4ad0-41e9-97a8-71928fbf222a","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reminder_time":"2026-03-15 14:00:00","due_date":"2026-03-15 16:00:00"}
[2026-03-15 14:23:17] [INFO] Notification created {"notification_id":"597","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"activity_reminder","show_popup":true}
[2026-03-15 14:23:17] [INFO] Reminder processed successfully {"reminder_id":"20","notification_id":"597"}
[2026-03-15 14:23:17] [INFO] Finished checking reminders {"notifications_created":1}
[2026-03-15 14:23:47] [INFO] Checking activity reminders 
[2026-03-15 14:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:24:17] [INFO] Checking activity reminders 
[2026-03-15 14:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:24:48] [INFO] Checking activity reminders 
[2026-03-15 14:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:25:18] [INFO] Checking activity reminders 
[2026-03-15 14:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:25:48] [INFO] Checking activity reminders 
[2026-03-15 14:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:26:18] [INFO] Checking activity reminders 
[2026-03-15 14:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:26:48] [INFO] Checking activity reminders 
[2026-03-15 14:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:27:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:18] [INFO] Checking activity reminders 
[2026-03-15 14:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:27:42] [INFO] Activity save request {"post_data":{"contact_id":"local_699402f02cc7c4.39699440","deal_id":"local_699402f03d214","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بی پاسخ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 14:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 14:27:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","database_didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_email":"hanaficar.HR@gmail.com","user_name":" ","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 14:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_699402f02cc7c4.39699440","note_was_empty":true}
[2026-03-15 14:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:42] [INFO] Updating virtual stage {"contact_id":"local_699402f02cc7c4.39699440","stage_name":"new","force":false}
[2026-03-15 14:27:42] [INFO] Virtual stage successfully saved {"contact_id":"local_699402f02cc7c4.39699440","stage_name":"new"}
[2026-03-15 14:27:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_699402f02cc7c4.39699440"}
[2026-03-15 14:27:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699402f03d214","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-15 14:27:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b690a6e85a90.84102948","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 14:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:42] [INFO] Notification created {"notification_id":"598","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"activity_new","show_popup":true}
[2026-03-15 14:27:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69b690a6e85a90.84102948"}
[2026-03-15 14:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:42] [INFO] Updating virtual stage {"contact_id":"local_699402f02cc7c4.39699440","stage_name":"deal_registered","force":false}
[2026-03-15 14:27:42] [INFO] Virtual stage successfully saved {"contact_id":"local_699402f02cc7c4.39699440","stage_name":"deal_registered"}
[2026-03-15 14:27:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_699402f02cc7c4.39699440"}
[2026-03-15 14:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699402f02cc7c4.39699440","person_id":"21711"}
[2026-03-15 14:27:48] [INFO] Checking activity reminders 
[2026-03-15 14:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:28:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:28:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:28:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:28:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:28:18] [INFO] Checking activity reminders 
[2026-03-15 14:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:28:49] [INFO] Checking activity reminders 
[2026-03-15 14:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:29:19] [INFO] Checking activity reminders 
[2026-03-15 14:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:29:49] [INFO] Checking activity reminders 
[2026-03-15 14:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:30:15] [WARNING] Auth check failed - not authenticated {"session_id":"o8l91adav2728q5ukot0pgadk1","session_keys":[],"action":"log_client_event"}
[2026-03-15 14:30:15] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 14:30:15] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 14:30:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 14:30:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 14:30:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 14:30:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 14:30:19] [INFO] Checking activity reminders 
[2026-03-15 14:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:30:49] [INFO] Checking activity reminders 
[2026-03-15 14:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:31:19] [INFO] Checking activity reminders 
[2026-03-15 14:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:31:49] [INFO] Checking activity reminders 
[2026-03-15 14:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:33:28] [INFO] Checking activity reminders 
[2026-03-15 14:33:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:33:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:33:39] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 14:33:39] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-15 14:33:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 14:33:58] [INFO] Checking activity reminders 
[2026-03-15 14:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:34:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 14:34:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 14:34:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 14:34:10] [INFO] Checking activity reminders 
[2026-03-15 14:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:34:40] [INFO] Activity save request {"post_data":{"contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"کانال پرزنت گفتن پول ندارن فعلا شرایط چهارماهه میخوان","activity_duration":"0","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 14:34:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"13827","note_was_empty":true}
[2026-03-15 14:34:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"13827","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-15 14:34:40] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-15 14:34:40] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-15 14:34:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b52f9a686c29.73319543","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-15 14:34:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b692481d5ca7.85277448","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69b692481d5ca7.85277448"}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-15 14:34:40] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-15 14:34:40] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-15 14:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:40] [INFO] Checking activity reminders 
[2026-03-15 14:34:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:34:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:34:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 14:34:57","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 14:34:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13827","is_new_deal":false}
[2026-03-15 14:34:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 14:34:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:34:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:34:57] [INFO] getContactPrimaryPhone called {"contact_id":"13827"}
[2026-03-15 14:34:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:57] [INFO] getContactPrimaryPhone result {"contact_id":"13827","person_found":true,"primary_phone":"9393427403"}
[2026-03-15 14:34:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393427403"}
[2026-03-15 14:34:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393427403","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:34:57"}
[2026-03-15 14:34:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","existing_deal_found":true,"existing_contact_id":"13827","existing_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:34:57"}
[2026-03-15 14:34:57] [INFO] DealController.save validated payments {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-15 14:34:57] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13827","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 14:34:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b52f9a686c29.73319543","contact_didar_id":"13827","title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9393427403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای حسین زاده","existing_deal":"YES","existing_deal_id":"local_69b52f9a686c29.73319543","existing_deal_status":"Pending","server_time":"2026-03-15 14:34:57","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 14:34:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:34:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 14:34:57","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 14:34:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 14:35:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:11] [INFO] Checking activity reminders 
[2026-03-15 14:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:35:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1743","deal_id":"local_69b0a933825430.23411177","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 14:35:22","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 14:35:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1743","is_new_deal":false}
[2026-03-15 14:35:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 14:35:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:35:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:35:22] [INFO] getContactPrimaryPhone called {"contact_id":"1743"}
[2026-03-15 14:35:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:22] [INFO] getContactPrimaryPhone result {"contact_id":"1743","person_found":true,"primary_phone":"9396157682"}
[2026-03-15 14:35:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396157682"}
[2026-03-15 14:35:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396157682","contact_id":"1743","deal_id":"local_69b0a933825430.23411177","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:35:22"}
[2026-03-15 14:35:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b0a933825430.23411177","contact_id":"1743","existing_deal_found":true,"existing_contact_id":"1743","existing_title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:35:22"}
[2026-03-15 14:35:22] [INFO] DealController.save validated payments {"deal_id":"local_69b0a933825430.23411177","contact_id":"1743","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-15 14:35:22] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1743","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 14:35:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b0a933825430.23411177","contact_didar_id":"1743","title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9396157682","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خدابخش","existing_deal":"YES","existing_deal_id":"local_69b0a933825430.23411177","existing_deal_status":"Pending","server_time":"2026-03-15 14:35:22","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 14:35:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b0a933825430.23411177","contact_id":"1743","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9396157682 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 14:35:22","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 14:35:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:26] [INFO] generateDealTitle result {"contact_id":"1743","person_name":"خدابخش","mobile":"9396157682","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9396157682"}
[2026-03-15 14:35:41] [INFO] Checking activity reminders 
[2026-03-15 14:35:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:35:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:35:57] [INFO] Activity save request {"post_data":{"contact_id":"1743","deal_id":"","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","note":"","result_note":"گفتن برای کانال پول ندارن همش توی بورسه","activity_duration":"0","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 14:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 14:35:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 14:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"1743","note_was_empty":true}
[2026-03-15 14:35:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"1743","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 14:35:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b69295b75982.38404733","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 14:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b69295b75982.38404733"}
[2026-03-15 14:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:35:57] [INFO] Updating virtual stage {"contact_id":"1743","stage_name":"deal_registered","force":false}
[2026-03-15 14:35:57] [INFO] Virtual stage successfully saved {"contact_id":"1743","stage_name":"deal_registered"}
[2026-03-15 14:35:57] [INFO] Virtual stage updated after activity save {"contact_id":"1743"}
[2026-03-15 14:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-03-15 14:36:12] [INFO] Checking activity reminders 
[2026-03-15 14:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:36:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:36:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7998","deal_id":"local_6999b7f4bcf308.29397970","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 14:36:40","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 14:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:36:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7998","is_new_deal":false}
[2026-03-15 14:36:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 14:36:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:36:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 14:36:40] [INFO] getContactPrimaryPhone called {"contact_id":"7998"}
[2026-03-15 14:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:36:40] [INFO] getContactPrimaryPhone result {"contact_id":"7998","person_found":true,"primary_phone":"9914197500"}
[2026-03-15 14:36:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9914197500"}
[2026-03-15 14:36:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9914197500","contact_id":"7998","deal_id":"local_6999b7f4bcf308.29397970","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:36:40"}
[2026-03-15 14:36:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_6999b7f4bcf308.29397970","contact_id":"7998","existing_deal_found":true,"existing_contact_id":"7998","existing_title":"معامله دوم 9914197500","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 14:36:40"}
[2026-03-15 14:36:40] [INFO] DealController.save validated payments {"deal_id":"local_6999b7f4bcf308.29397970","contact_id":"7998","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-15 14:36:40] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7998","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 14:36:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6999b7f4bcf308.29397970","contact_didar_id":"7998","title":"معامله دوم 9914197500 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9914197500","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"فرید پدر نژاد","existing_deal":"YES","existing_deal_id":"local_6999b7f4bcf308.29397970","existing_deal_status":"Pending","server_time":"2026-03-15 14:36:40","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 14:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:36:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6999b7f4bcf308.29397970","contact_id":"7998","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9914197500 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 14:36:41","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 14:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:36:42] [INFO] Checking activity reminders 
[2026-03-15 14:36:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:36:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:37:12] [INFO] Checking activity reminders 
[2026-03-15 14:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:37:26] [INFO] Activity save request {"post_data":{"contact_id":"7998","deal_id":"local_6999b7f4bcf308.29397970","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال پرزنت نمایشگاه اردبیل طلا دلار سکه خودرو پنج سال می‌شناسه با شریکش صحبت کنه خبر میده","activity_duration":"18","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 14:37:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7998","note_was_empty":true}
[2026-03-15 14:37:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"7998","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:26] [INFO] Updating virtual stage {"contact_id":"7998","stage_name":"deal_registered","force":false}
[2026-03-15 14:37:26] [INFO] Virtual stage successfully saved {"contact_id":"7998","stage_name":"deal_registered"}
[2026-03-15 14:37:26] [INFO] Virtual stage updated after activity save {"contact_id":"7998"}
[2026-03-15 14:37:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b7f4bcf308.29397970","stage":"تماس پیگیری","status_change":null}
[2026-03-15 14:37:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b692ee600686.45751383","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69b692ee600686.45751383"}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:26] [INFO] Updating virtual stage {"contact_id":"7998","stage_name":"deal_registered","force":false}
[2026-03-15 14:37:26] [INFO] Virtual stage successfully saved {"contact_id":"7998","stage_name":"deal_registered"}
[2026-03-15 14:37:26] [INFO] Virtual stage updated after activity save {"contact_id":"7998"}
[2026-03-15 14:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7998","person_id":"7773"}
[2026-03-15 14:37:42] [INFO] Checking activity reminders 
[2026-03-15 14:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:00] [INFO] generateDealTitle result {"contact_id":"local_6995dc31cae7b3.59087531","person_name":"لید جدید","mobile":"9058676405","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9058676405"}
[2026-03-15 14:38:13] [INFO] Checking activity reminders 
[2026-03-15 14:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:38:31] [INFO] Activity save request {"post_data":{"contact_id":"local_6995dc31cae7b3.59087531","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک ","activity_duration":"2","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 14:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 14:38:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 14:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_6995dc31cae7b3.59087531","note_was_empty":true}
[2026-03-15 14:38:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6932fae11b8.22189509","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 14:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6932fae11b8.22189509"}
[2026-03-15 14:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:31] [INFO] Updating virtual stage {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered","force":false}
[2026-03-15 14:38:31] [INFO] Virtual stage successfully saved {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered"}
[2026-03-15 14:38:31] [INFO] Virtual stage updated after activity save {"contact_id":"local_6995dc31cae7b3.59087531"}
[2026-03-15 14:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-15 14:38:43] [INFO] Checking activity reminders 
[2026-03-15 14:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:57:27] [INFO] Checking activity reminders 
[2026-03-15 14:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:57:32] [INFO] Checking activity reminders 
[2026-03-15 14:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 14:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 14:57:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 14:57:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 14:57:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 14:57:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 15:01:28] [INFO] Checking activity reminders 
[2026-03-15 15:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:01:49] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:49] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"check_reminders"}
[2026-03-15 15:01:49] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:53] [INFO] Checking activity reminders 
[2026-03-15 15:01:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:01:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:01:53] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:53] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:53] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:01:53] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:01:54] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:02:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"check_reminders"}
[2026-03-15 15:02:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:02:36] [INFO] Checking activity reminders 
[2026-03-15 15:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:03:03] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:03] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"check_reminders"}
[2026-03-15 15:03:03] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:06] [INFO] Checking activity reminders 
[2026-03-15 15:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:23] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7cbbaa90c6.63195868","person_id":"21329"}
[2026-03-15 15:03:25] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_leads"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:26] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:36] [INFO] Checking activity reminders 
[2026-03-15 15:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7cbbaa90c6.63195868","person_id":"21329"}
[2026-03-15 15:03:50] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:51] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:03:52] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:12] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:13] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:15] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:16] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:16] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:16] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:16] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:16] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:17] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:18] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:18] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:18] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:18] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:18] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:20] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:21] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:24] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:24] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:24] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:04:24] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 15:04:27] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_products"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"get_deals"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:04:28] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:05:02] [WARNING] Auth check failed - not authenticated {"session_id":"gra612dtvv4illl35fpdg46jms","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:05:02] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 15:05:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 15:05:33] [INFO] Checking activity reminders 
[2026-03-15 15:05:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:05:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:05:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-15 15:06:03] [INFO] Checking activity reminders 
[2026-03-15 15:06:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:06:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:23:54] [WARNING] Auth check failed - not authenticated {"session_id":"230id46rr5jmb6ulqb169mb94i","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:23:54] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-15 15:23:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 15:23:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 15:23:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 15:23:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 15:24:32] [INFO] Checking activity reminders 
[2026-03-15 15:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:25:00] [INFO] Checking activity reminders 
[2026-03-15 15:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:25:30] [INFO] Checking activity reminders 
[2026-03-15 15:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:26:00] [INFO] Checking activity reminders 
[2026-03-15 15:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:27:11] [INFO] Checking activity reminders 
[2026-03-15 15:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:43:13] [WARNING] Auth check failed - not authenticated {"session_id":"mqjntt2me43ept936hb5qc4np6","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:43:14] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-15 15:43:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 15:43:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 15:43:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 15:43:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 15:43:33] [INFO] Checking activity reminders 
[2026-03-15 15:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 15:43:58] [INFO] Checking activity reminders 
[2026-03-15 15:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:44:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 15:44:24] [INFO] Checking activity reminders 
[2026-03-15 15:44:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:44:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 15:44:45] [INFO] Checking activity reminders 
[2026-03-15 15:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-15 15:44:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-15 15:45:15] [INFO] Checking activity reminders 
[2026-03-15 15:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:54:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 15:54:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 15:54:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 15:54:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 15:56:41] [WARNING] Auth check failed - not authenticated {"session_id":"f1s794l9j86vg4majea30pmlol","session_keys":[],"action":"log_client_event"}
[2026-03-15 15:56:41] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-15 15:56:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 15:56:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 15:56:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 15:56:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 15:57:14] [INFO] Checking activity reminders 
[2026-03-15 15:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:57:30] [INFO] Checking activity reminders 
[2026-03-15 15:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:57:52] [INFO] Checking activity reminders 
[2026-03-15 15:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:58:01] [INFO] Checking activity reminders 
[2026-03-15 15:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:58:27] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9929960057","09929960057"]}
[2026-03-15 15:58:27] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9929960057","09929960057"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 15:58:27] [INFO] Didar write disabled; creating local lead only {"owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","mobile":"9929960057","full_name":"لید جدید"}
[2026-03-15 15:58:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 15:58:27] [INFO] Notification created {"notification_id":"599","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"lead_assigned","show_popup":true}
[2026-03-15 15:58:31] [INFO] Checking activity reminders 
[2026-03-15 15:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 15:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 15:58:58] [INFO] Checking activity reminders 
[2026-03-15 15:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-15 15:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-15 15:59:28] [INFO] Checking activity reminders 
[2026-03-15 15:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 15:59:57] [INFO] Checking activity reminders 
[2026-03-15 15:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 15:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:00:45] [INFO] Checking activity reminders 
[2026-03-15 16:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:02:37] [INFO] Checking activity reminders 
[2026-03-15 16:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:02:51] [INFO] Checking activity reminders 
[2026-03-15 16:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:03:13] [INFO] Checking activity reminders 
[2026-03-15 16:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:03:43] [INFO] Checking activity reminders 
[2026-03-15 16:03:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:03:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:04:14] [INFO] Checking activity reminders 
[2026-03-15 16:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:04:44] [INFO] Checking activity reminders 
[2026-03-15 16:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:04:50] [INFO] Checking activity reminders 
[2026-03-15 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:05:20] [INFO] Checking activity reminders 
[2026-03-15 16:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:05:31] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9153901879","09153901879"]}
[2026-03-15 16:05:31] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9153901879","09153901879"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 16:05:31] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9153901879","full_name":"لید جدید"}
[2026-03-15 16:05:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-15 16:05:31] [INFO] Notification created {"notification_id":"600","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-15 16:17:42] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:17:42] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"check_reminders"}
[2026-03-15 16:17:42] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:17:49] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:17:49] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:17:49] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:17:49] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_person_profile"}
[2026-03-15 16:17:49] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:00] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_products"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_deals"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"get_deals"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:04] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:26] [WARNING] Auth check failed - not authenticated {"session_id":"o5o2r5kbb49e31r8fh57fhvh2o","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:18:27] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":false}
[2026-03-15 16:18:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 16:19:09] [INFO] Checking activity reminders 
[2026-03-15 16:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:19:39] [INFO] Checking activity reminders 
[2026-03-15 16:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:19:49] [INFO] Checking activity reminders 
[2026-03-15 16:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:19:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:04] [INFO] generateDealTitle result {"contact_id":"8044","person_name":"بخشی","mobile":"9013511535","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013511535"}
[2026-03-15 16:20:19] [INFO] Checking activity reminders 
[2026-03-15 16:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:20:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8044","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:20:43","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8044","is_new_deal":true}
[2026-03-15 16:20:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 16:20:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 16:20:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 16:20:43] [INFO] getContactPrimaryPhone called {"contact_id":"8044"}
[2026-03-15 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:43] [INFO] getContactPrimaryPhone result {"contact_id":"8044","person_found":true,"primary_phone":"9013511535"}
[2026-03-15 16:20:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013511535"}
[2026-03-15 16:20:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013511535","contact_id":"8044","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 16:20:43"}
[2026-03-15 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:43] [INFO] generateDealTitle result {"contact_id":"8044","person_name":"بخشی","mobile":"9013511535","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013511535"}
[2026-03-15 16:20:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8044","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-15 16:20:43] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"8044","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:20:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8044","title":"معامله دوم 9013511535 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9013511535","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"بخشی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:20:43","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:20:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8044","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9013511535 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 16:20:43","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 16:20:49] [INFO] Checking activity reminders 
[2026-03-15 16:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:21:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:25:35] [INFO] Checking activity reminders 
[2026-03-15 16:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:26:05] [INFO] Checking activity reminders 
[2026-03-15 16:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:26:35] [INFO] Checking activity reminders 
[2026-03-15 16:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:26:47] [INFO] Activity save request {"post_data":{"contact_id":"21213","deal_id":"local_69b5c515268eb3.74316875","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"گردن نمی‌گرفت سیار اومده قیمت بگیره الآنم گفت شما فکر کن برای کانال گذاشتم باز قیمت گرف رف گفت خیلی بالاست عددتون","activity_duration":"8","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:26:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"21213","note_was_empty":true}
[2026-03-15 16:26:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"21213","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Updating virtual stage {"contact_id":"21213","stage_name":"deal_registered","force":false}
[2026-03-15 16:26:47] [INFO] Virtual stage successfully saved {"contact_id":"21213","stage_name":"deal_registered"}
[2026-03-15 16:26:47] [INFO] Virtual stage updated after activity save {"contact_id":"21213"}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c515268eb3.74316875","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-15 16:26:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6ac8fcbac55.12353400","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6ac8fcbac55.12353400"}
[2026-03-15 16:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:26:47] [INFO] Updating virtual stage {"contact_id":"21213","stage_name":"deal_registered","force":false}
[2026-03-15 16:26:47] [INFO] Virtual stage successfully saved {"contact_id":"21213","stage_name":"deal_registered"}
[2026-03-15 16:26:47] [INFO] Virtual stage updated after activity save {"contact_id":"21213"}
[2026-03-15 16:26:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21213","person_id":"2144"}
[2026-03-15 16:27:05] [INFO] Checking activity reminders 
[2026-03-15 16:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:27:35] [INFO] Checking activity reminders 
[2026-03-15 16:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:27:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:28:51] [WARNING] Auth check failed - not authenticated {"session_id":"9c9es82mkhv1k1sj3lvi43h653","session_keys":[],"action":"log_client_event"}
[2026-03-15 16:28:52] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-15 16:28:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 16:28:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 16:28:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 16:28:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 16:29:13] [INFO] Checking activity reminders 
[2026-03-15 16:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:29:42] [INFO] Activity save request {"post_data":{"contact_id":"20862","deal_id":"local_69b5c936d57e04.57248332","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:29:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:29:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:29:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"20862","note_was_empty":true}
[2026-03-15 16:29:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"20862","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 16:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:43] [INFO] Updating virtual stage {"contact_id":"20862","stage_name":"deal_registered","force":false}
[2026-03-15 16:29:43] [INFO] Virtual stage successfully saved {"contact_id":"20862","stage_name":"deal_registered"}
[2026-03-15 16:29:43] [INFO] Virtual stage updated after activity save {"contact_id":"20862"}
[2026-03-15 16:29:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c936d57e04.57248332","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-15 16:29:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6ad3f006c28.78892122","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6ad3f006c28.78892122"}
[2026-03-15 16:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:43] [INFO] Updating virtual stage {"contact_id":"20862","stage_name":"deal_registered","force":false}
[2026-03-15 16:29:43] [INFO] Virtual stage successfully saved {"contact_id":"20862","stage_name":"deal_registered"}
[2026-03-15 16:29:43] [INFO] Virtual stage updated after activity save {"contact_id":"20862"}
[2026-03-15 16:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:29:43] [INFO] Checking activity reminders 
[2026-03-15 16:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:29:44] [INFO] Checking activity reminders 
[2026-03-15 16:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:30:13] [INFO] Checking activity reminders 
[2026-03-15 16:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:30:14] [INFO] Checking activity reminders 
[2026-03-15 16:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:30:21] [INFO] Checking activity reminders 
[2026-03-15 16:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:30:43] [INFO] Checking activity reminders 
[2026-03-15 16:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:30:51] [INFO] Checking activity reminders 
[2026-03-15 16:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:31:08] [INFO] Checking activity reminders 
[2026-03-15 16:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:31:38] [INFO] Checking activity reminders 
[2026-03-15 16:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:32:01] [INFO] Checking activity reminders 
[2026-03-15 16:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:32:24] [INFO] Checking activity reminders 
[2026-03-15 16:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:32:49] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9221905658","09221905658"]}
[2026-03-15 16:32:49] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9221905658","09221905658"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-15 16:32:49] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9221905658","full_name":"لید جدید"}
[2026-03-15 16:32:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 16:32:49] [INFO] Notification created {"notification_id":"601","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-15 16:32:54] [INFO] Checking activity reminders 
[2026-03-15 16:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:33:11] [INFO] Checking activity reminders 
[2026-03-15 16:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:33:41] [INFO] Checking activity reminders 
[2026-03-15 16:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:34:10] [INFO] Checking activity reminders 
[2026-03-15 16:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:34:21] [INFO] Checking activity reminders 
[2026-03-15 16:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:34:23] [DEBUG] findByPhone: Found person {"phones":["9122477870"],"found_id":"11991","found_didar_id":"21222","found_name":"اقای قندهاری"}
[2026-03-15 16:34:23] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9122477870","found_didar_id":"21222","found_local_id":"11991","found_name":"اقای قندهاری"}
[2026-03-15 16:34:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:23] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9122477870","09122477870"]}
[2026-03-15 16:34:23] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9122477870","09122477870"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-15 16:34:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:23] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9122477870","existing_contact_id":"21222","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9122477870"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9122477870","09122477870"]}
[2026-03-15 16:34:23] [INFO] Duplicate lead response prepared using local ID {"local_id":"11991","didar_id":"21222"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [INFO] generateDealTitle result {"contact_id":"21222","person_name":"اقای قندهاری","mobile":"9122477870","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122477870"}
[2026-03-15 16:34:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9122477870","contact_id":"21222","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-15 16:34:29","session_id":"9c9es82mkhv1k1sj3lvi43h653"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9122477870","contact_id":"21222","is_new_deal":true}
[2026-03-15 16:34:29] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9122477870"}
[2026-03-15 16:34:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9122477870"}
[2026-03-15 16:34:29] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9122477870","pattern":"معامله_ordinal_phone"}
[2026-03-15 16:34:29] [INFO] getContactPrimaryPhone called {"contact_id":"21222"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [INFO] getContactPrimaryPhone result {"contact_id":"21222","person_found":true,"primary_phone":"9122477870"}
[2026-03-15 16:34:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9122477870","contact_primary_phone":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison called {"input_phone":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison cleaned {"original":"9122477870","cleaned":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison called {"input_phone":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison cleaned {"original":"9122477870","cleaned":"9122477870"}
[2026-03-15 16:34:29] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9122477870"}
[2026-03-15 16:34:29] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9122477870","normalized_contact_phone":"9122477870","phones_match":true}
[2026-03-15 16:34:29] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9122477870","deal_phone":"9122477870","contact_phone":"9122477870","contact_id":"21222","validation":"PASSED"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [INFO] generateDealTitle result {"contact_id":"21222","person_name":"اقای قندهاری","mobile":"9122477870","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122477870"}
[2026-03-15 16:34:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21222","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-15 16:34:29] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21222","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-15 16:34:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21222","title":"معامله دوم 9122477870","base_title_used":"معامله دوم 9122477870","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای قندهاری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:34:29","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:34:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21222","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9122477870","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-15 16:34:29","ip_address":"5.115.97.195","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 16:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:34:47] [INFO] Checking activity reminders 
[2026-03-15 16:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-15 16:35:07] [INFO] Checking activity reminders 
[2026-03-15 16:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:35:17] [INFO] Checking activity reminders 
[2026-03-15 16:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:35:25] [INFO] Checking activity reminders 
[2026-03-15 16:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:35:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:35:37] [INFO] Checking activity reminders 
[2026-03-15 16:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:35:44] [INFO] Checking activity reminders 
[2026-03-15 16:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:35:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:36:07] [INFO] Checking activity reminders 
[2026-03-15 16:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:36:13] [INFO] Activity save request {"post_data":{"contact_id":"7610","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"بله کار نمی‌کرد کانال پرزنت گفت خبر میدم منتظرم ماشینم بفروش برسه ","activity_duration":"15","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:36:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:36:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:36:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7610","note_was_empty":true}
[2026-03-15 16:36:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"7610","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 16:36:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6aec57e3bb0.09384511","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:36:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6aec57e3bb0.09384511"}
[2026-03-15 16:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:36:13] [INFO] Updating virtual stage {"contact_id":"7610","stage_name":"deal_registered","force":false}
[2026-03-15 16:36:13] [INFO] Virtual stage successfully saved {"contact_id":"7610","stage_name":"deal_registered"}
[2026-03-15 16:36:13] [INFO] Virtual stage updated after activity save {"contact_id":"7610"}
[2026-03-15 16:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-15 16:36:14] [INFO] Checking activity reminders 
[2026-03-15 16:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:36:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 16:36:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 16:36:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:36:38] [INFO] Checking activity reminders 
[2026-03-15 16:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:36:54] [INFO] Checking activity reminders 
[2026-03-15 16:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-15 16:37:08] [INFO] Activity save request {"post_data":{"contact_id":"6266","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"احوال پرسی خیلی حرف میزنههه، چنتا راهکار میخواست صحبت کردیم ","activity_duration":"25","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:37:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:37:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:37:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"6266","note_was_empty":true}
[2026-03-15 16:37:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"6266","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 16:37:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6aefc473d38.07934119","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:37:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6aefc473d38.07934119"}
[2026-03-15 16:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:37:08] [INFO] Updating virtual stage {"contact_id":"6266","stage_name":"deal_registered","force":false}
[2026-03-15 16:37:08] [INFO] Virtual stage successfully saved {"contact_id":"6266","stage_name":"deal_registered"}
[2026-03-15 16:37:08] [INFO] Virtual stage updated after activity save {"contact_id":"6266"}
[2026-03-15 16:37:08] [INFO] Checking activity reminders 
[2026-03-15 16:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-03-15 16:37:39] [INFO] Checking activity reminders 
[2026-03-15 16:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:38:29] [INFO] Checking activity reminders 
[2026-03-15 16:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:38:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-15 16:41:13] [INFO] Checking activity reminders 
[2026-03-15 16:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:41:23] [INFO] Checking activity reminders 
[2026-03-15 16:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:41:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:41:53] [INFO] Checking activity reminders 
[2026-03-15 16:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:41:59] [INFO] Checking activity reminders 
[2026-03-15 16:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:42:21] [INFO] Checking activity reminders 
[2026-03-15 16:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:42:24] [INFO] Checking activity reminders 
[2026-03-15 16:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:42:40] [INFO] Checking activity reminders 
[2026-03-15 16:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:42:54] [INFO] Checking activity reminders 
[2026-03-15 16:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:44:42] [INFO] Checking activity reminders 
[2026-03-15 16:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:44:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-15 16:45:09] [INFO] Checking activity reminders 
[2026-03-15 16:45:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:45:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:45:30] [INFO] Checking activity reminders 
[2026-03-15 16:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-15 16:46:17] [INFO] Checking activity reminders 
[2026-03-15 16:46:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:46:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:46:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-15 16:47:18] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 16:47:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 16:47:33] [INFO] Checking activity reminders 
[2026-03-15 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:47:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-15 16:47:52] [INFO] Checking activity reminders 
[2026-03-15 16:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:47:59] [INFO] Checking activity reminders 
[2026-03-15 16:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:48:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:48:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:48:12] [INFO] generateDealTitle result {"contact_id":"6729","person_name":"نعمت زاده","mobile":"9365098797","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9365098797"}
[2026-03-15 16:48:13] [INFO] Checking activity reminders 
[2026-03-15 16:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-15 16:48:30] [INFO] Checking activity reminders 
[2026-03-15 16:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:48:43] [INFO] Checking activity reminders 
[2026-03-15 16:48:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:48:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:00] [INFO] Checking activity reminders 
[2026-03-15 16:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:07] [INFO] Checking activity reminders 
[2026-03-15 16:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:49:25] [INFO] generateDealTitle result {"contact_id":"873","person_name":"ناصر براتی","mobile":"9934194403","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9934194403"}
[2026-03-15 16:49:25] [INFO] Checking activity reminders 
[2026-03-15 16:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:37] [INFO] Checking activity reminders 
[2026-03-15 16:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-15 16:49:46] [INFO] Checking activity reminders 
[2026-03-15 16:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:49:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"6729","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:49:50","session_id":"ajdl0s4p0danvlgtnlm60ccbot"}
[2026-03-15 16:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:49:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"6729","is_new_deal":true}
[2026-03-15 16:49:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:49:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:49:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:49:50] [INFO] getContactPrimaryPhone called {"contact_id":"6729"}
[2026-03-15 16:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:49:50] [INFO] getContactPrimaryPhone result {"contact_id":"6729","person_found":true,"primary_phone":"9365098797"}
[2026-03-15 16:49:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365098797"}
[2026-03-15 16:49:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365098797","contact_id":"6729","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 16:49:50"}
[2026-03-15 16:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:49:50] [INFO] generateDealTitle result {"contact_id":"6729","person_name":"نعمت زاده","mobile":"9365098797","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9365098797"}
[2026-03-15 16:49:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6729","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 16:49:50] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6729","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:49:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6729","title":"معامله سوم 9365098797 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9365098797","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نعمت زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:49:50","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 16:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:49:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:49:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6729","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9365098797 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":25000000,"server_time":"2026-03-15 16:49:50","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 16:49:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-15 16:49:55] [INFO] Checking activity reminders 
[2026-03-15 16:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"873","deal_id":"","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:50:07","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 16:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:50:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"873","is_new_deal":true}
[2026-03-15 16:50:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 16:50:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 16:50:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 16:50:07] [INFO] getContactPrimaryPhone called {"contact_id":"873"}
[2026-03-15 16:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:50:07] [INFO] getContactPrimaryPhone result {"contact_id":"873","person_found":true,"primary_phone":"9934194403"}
[2026-03-15 16:50:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9934194403"}
[2026-03-15 16:50:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9934194403","contact_id":"873","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 16:50:07"}
[2026-03-15 16:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:50:07] [INFO] generateDealTitle result {"contact_id":"873","person_name":"ناصر براتی","mobile":"9934194403","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9934194403"}
[2026-03-15 16:50:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"873","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-15 16:50:07] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"873","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:50:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"873","title":"معامله سوم 9934194403 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9934194403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"ناصر براتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:50:07","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 16:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:50:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:50:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"873","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سوم 9934194403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 16:50:07","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 16:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-03-15 16:50:08] [INFO] Checking activity reminders 
[2026-03-15 16:50:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:50:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:19] [INFO] Checking activity reminders 
[2026-03-15 16:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:25] [INFO] Checking activity reminders 
[2026-03-15 16:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:50:32] [INFO] Checking activity reminders 
[2026-03-15 16:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:50:38] [INFO] Checking activity reminders 
[2026-03-15 16:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:50:43] [INFO] generateDealTitle result {"contact_id":"14808","person_name":"شیرزادی","mobile":"9038262630","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9038262630"}
[2026-03-15 16:51:02] [INFO] Checking activity reminders 
[2026-03-15 16:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:51:08] [INFO] Checking activity reminders 
[2026-03-15 16:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:51:33] [INFO] Activity save request {"post_data":{"contact_id":"20862","deal_id":"local_69b5c936d57e04.57248332","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت سرمایه سوال داشتن راهنمایی شدن بابت ثبت نام نبود","activity_duration":"15","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:51:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"20862","note_was_empty":true}
[2026-03-15 16:51:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"20862","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:33] [INFO] Updating virtual stage {"contact_id":"20862","stage_name":"deal_registered","force":false}
[2026-03-15 16:51:33] [INFO] Virtual stage successfully saved {"contact_id":"20862","stage_name":"deal_registered"}
[2026-03-15 16:51:33] [INFO] Virtual stage updated after activity save {"contact_id":"20862"}
[2026-03-15 16:51:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c936d57e04.57248332","stage":"پشتیبانی","status_change":null}
[2026-03-15 16:51:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6b25d2435c5.44936442","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6b25d2435c5.44936442"}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:33] [INFO] Updating virtual stage {"contact_id":"20862","stage_name":"deal_registered","force":false}
[2026-03-15 16:51:33] [INFO] Virtual stage successfully saved {"contact_id":"20862","stage_name":"deal_registered"}
[2026-03-15 16:51:33] [INFO] Virtual stage updated after activity save {"contact_id":"20862"}
[2026-03-15 16:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-03-15 16:51:34] [INFO] Checking activity reminders 
[2026-03-15 16:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:51:39] [INFO] Checking activity reminders 
[2026-03-15 16:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:51:51] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"14808","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:51:51","session_id":"ajdl0s4p0danvlgtnlm60ccbot"}
[2026-03-15 16:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:51:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"14808","is_new_deal":true}
[2026-03-15 16:51:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:51:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:51:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 16:51:51] [INFO] getContactPrimaryPhone called {"contact_id":"14808"}
[2026-03-15 16:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:51:51] [INFO] getContactPrimaryPhone result {"contact_id":"14808","person_found":true,"primary_phone":"9038262630"}
[2026-03-15 16:51:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9038262630"}
[2026-03-15 16:51:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9038262630","contact_id":"14808","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 16:51:51"}
[2026-03-15 16:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:51:51] [INFO] generateDealTitle result {"contact_id":"14808","person_name":"شیرزادی","mobile":"9038262630","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9038262630"}
[2026-03-15 16:51:51] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14808","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 16:51:51] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14808","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:51:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14808","title":"معامله دوم 9038262630 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9038262630","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شیرزادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:51:51","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 16:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:51:51] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:51:51] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14808","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9038262630 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":30000000,"server_time":"2026-03-15 16:51:51","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 16:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-15 16:51:56] [INFO] Checking activity reminders 
[2026-03-15 16:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:52:25] [INFO] Checking activity reminders 
[2026-03-15 16:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 16:52:55] [INFO] Checking activity reminders 
[2026-03-15 16:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:53:26] [INFO] Checking activity reminders 
[2026-03-15 16:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:53:32] [INFO] Checking activity reminders 
[2026-03-15 16:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:53:37] [INFO] Checking activity reminders 
[2026-03-15 16:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:53:42] [INFO] Checking activity reminders 
[2026-03-15 16:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:53:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:54:03] [INFO] Checking activity reminders 
[2026-03-15 16:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:54:07] [INFO] Checking activity reminders 
[2026-03-15 16:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:54:15] [INFO] Checking activity reminders 
[2026-03-15 16:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:54:22] [INFO] Checking activity reminders 
[2026-03-15 16:54:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:54:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:54:33] [INFO] Checking activity reminders 
[2026-03-15 16:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:55:03] [INFO] Checking activity reminders 
[2026-03-15 16:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:55:12] [INFO] Checking activity reminders 
[2026-03-15 16:55:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:55:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:55:33] [INFO] Checking activity reminders 
[2026-03-15 16:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 16:55:43] [INFO] Checking activity reminders 
[2026-03-15 16:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:55:44] [INFO] Lead update received {"contact_id":"local_699c947020ec48.45521689","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-15 16:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:55:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_699c947020ec48.45521689"}
[2026-03-15 16:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:55:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:55:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:55:50] [INFO] generateDealTitle result {"contact_id":"local_699c947020ec48.45521689","person_name":"فتحی فتحی","mobile":"9372282006","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9372282006"}
[2026-03-15 16:55:51] [INFO] Checking activity reminders 
[2026-03-15 16:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:56:13] [INFO] Checking activity reminders 
[2026-03-15 16:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:56:43] [INFO] Checking activity reminders 
[2026-03-15 16:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:57:13] [INFO] Checking activity reminders 
[2026-03-15 16:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:57:22] [INFO] Checking activity reminders 
[2026-03-15 16:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:57:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:57:42","session_id":"ajdl0s4p0danvlgtnlm60ccbot"}
[2026-03-15 16:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","is_new_deal":true}
[2026-03-15 16:57:42] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-03-15 16:57:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-03-15 16:57:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-03-15 16:57:42] [INFO] getContactPrimaryPhone called {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-15 16:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:42] [INFO] getContactPrimaryPhone result {"contact_id":"local_699c947020ec48.45521689","person_found":true,"primary_phone":"9372282006"}
[2026-03-15 16:57:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9372282006"}
[2026-03-15 16:57:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9372282006","contact_id":"local_699c947020ec48.45521689","deal_id":"","is_new_deal":true,"incoming_title":"هوش خودرو","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 16:57:42"}
[2026-03-15 16:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:42] [INFO] generateDealTitle result {"contact_id":"local_699c947020ec48.45521689","person_name":"فتحی فتحی","mobile":"9372282006","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9372282006"}
[2026-03-15 16:57:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_699c947020ec48.45521689","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-15 16:57:42] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_699c947020ec48.45521689","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:57:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_699c947020ec48.45521689","title":"معامله دوم 9372282006 | هوش خودرو","base_title_used":"معامله دوم 9372282006","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":7900000,"payment_amount":5000000,"payments_present":true,"requested_services":["هوش خودرو"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فتحی فتحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:57:42","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 16:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:57:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_699c947020ec48.45521689","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9372282006 | هوش خودرو","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":7900000,"payment_amount":5000000,"server_time":"2026-03-15 16:57:42","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 16:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:57:45] [INFO] generateDealTitle result {"contact_id":"local_699c947020ec48.45521689","person_name":"فتحی فتحی","mobile":"9372282006","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9372282006"}
[2026-03-15 16:57:52] [INFO] Checking activity reminders 
[2026-03-15 16:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:58:22] [INFO] Checking activity reminders 
[2026-03-15 16:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:58:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کارشناسی حضوری","contact_id":"local_699c947020ec48.45521689","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 16:58:47","session_id":"ajdl0s4p0danvlgtnlm60ccbot"}
[2026-03-15 16:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:58:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کارشناسی حضوری","contact_id":"local_699c947020ec48.45521689","is_new_deal":true}
[2026-03-15 16:58:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کارشناسی حضوری"}
[2026-03-15 16:58:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کارشناسی حضوری"}
[2026-03-15 16:58:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کارشناسی حضوری"}
[2026-03-15 16:58:47] [INFO] getContactPrimaryPhone called {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-15 16:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:58:47] [INFO] getContactPrimaryPhone result {"contact_id":"local_699c947020ec48.45521689","person_found":true,"primary_phone":"9372282006"}
[2026-03-15 16:58:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9372282006"}
[2026-03-15 16:58:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9372282006","contact_id":"local_699c947020ec48.45521689","deal_id":"","is_new_deal":true,"incoming_title":"کارشناسی حضوری","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 16:58:47"}
[2026-03-15 16:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:58:47] [INFO] generateDealTitle result {"contact_id":"local_699c947020ec48.45521689","person_name":"فتحی فتحی","mobile":"9372282006","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9372282006"}
[2026-03-15 16:58:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_699c947020ec48.45521689","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-15 16:58:47] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_699c947020ec48.45521689","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 16:58:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_699c947020ec48.45521689","title":"معامله سوم 9372282006 | کارشناسی حضوری","base_title_used":"معامله سوم 9372282006","services_text":"کارشناسی حضوری","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":10000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کارشناسی حضوری"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فتحی فتحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 16:58:47","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 16:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:58:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 16:58:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_699c947020ec48.45521689","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9372282006 | کارشناسی حضوری","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":10000000,"payment_amount":10000000,"server_time":"2026-03-15 16:58:47","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 16:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:58:52] [INFO] Checking activity reminders 
[2026-03-15 16:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:59:22] [INFO] Checking activity reminders 
[2026-03-15 16:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:59:53] [INFO] Checking activity reminders 
[2026-03-15 16:59:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 16:59:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 16:59:54] [INFO] Activity save request {"post_data":{"contact_id":"local_699c947020ec48.45521689","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمایشگاه دار ایرانی، تازه اول جنگ زده، قبلا ساخت و ساز داشته، گچساران، هوش کارشناسی باام ثبت تام کارشانسی بعد سال میاد ضعف تو قیمت گذاری","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 16:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:59:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 16:59:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 16:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:59:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699c947020ec48.45521689","note_was_empty":true}
[2026-03-15 16:59:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6b4523528c3.28568211","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 16:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:59:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6b4523528c3.28568211"}
[2026-03-15 16:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 16:59:54] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-03-15 16:59:54] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-03-15 16:59:54] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-03-15 16:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-15 17:02:42] [INFO] Checking activity reminders 
[2026-03-15 17:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:03:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21222","deal_id":"local_69b6ae5d33bb07.09849725","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 17:03:07","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 17:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 17:03:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21222","is_new_deal":false}
[2026-03-15 17:03:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 17:03:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:03:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:03:07] [INFO] getContactPrimaryPhone called {"contact_id":"21222"}
[2026-03-15 17:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 17:03:07] [INFO] getContactPrimaryPhone result {"contact_id":"21222","person_found":true,"primary_phone":"9122477870"}
[2026-03-15 17:03:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122477870"}
[2026-03-15 17:03:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122477870","contact_id":"21222","deal_id":"local_69b6ae5d33bb07.09849725","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:03:07"}
[2026-03-15 17:03:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6ae5d33bb07.09849725","contact_id":"21222","existing_deal_found":true,"existing_contact_id":"21222","existing_title":"معامله دوم 9122477870","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:03:07"}
[2026-03-15 17:03:07] [INFO] DealController.save validated payments {"deal_id":"local_69b6ae5d33bb07.09849725","contact_id":"21222","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-15 17:03:07] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21222","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 17:03:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6ae5d33bb07.09849725","contact_didar_id":"21222","title":"معامله دوم 9122477870 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122477870","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای قندهاری","existing_deal":"YES","existing_deal_id":"local_69b6ae5d33bb07.09849725","existing_deal_status":"Pending","server_time":"2026-03-15 17:03:07","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 17:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 17:03:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6ae5d33bb07.09849725","contact_id":"21222","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9122477870 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 17:03:07","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 17:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21222","person_id":"11991"}
[2026-03-15 17:04:54] [INFO] Checking activity reminders 
[2026-03-15 17:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:04:56] [INFO] Checking activity reminders 
[2026-03-15 17:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:05:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:05:24] [INFO] Checking activity reminders 
[2026-03-15 17:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:05:26] [INFO] Checking activity reminders 
[2026-03-15 17:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:05:38] [INFO] Checking activity reminders 
[2026-03-15 17:05:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:05:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:06:15] [INFO] Checking activity reminders 
[2026-03-15 17:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:06:45] [INFO] Checking activity reminders 
[2026-03-15 17:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:06:51] [INFO] Checking activity reminders 
[2026-03-15 17:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:13:24] [INFO] Checking activity reminders 
[2026-03-15 17:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:13:54] [INFO] Checking activity reminders 
[2026-03-15 17:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:14:25] [INFO] Checking activity reminders 
[2026-03-15 17:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:14:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-15 17:14:55] [INFO] Checking activity reminders 
[2026-03-15 17:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:15:25] [INFO] Checking activity reminders 
[2026-03-15 17:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:15:43] [INFO] Checking activity reminders 
[2026-03-15 17:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:16:13] [INFO] Checking activity reminders 
[2026-03-15 17:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:16:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13708","deal_id":"18893","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 17:16:15","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 17:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-15 17:16:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13708","is_new_deal":false}
[2026-03-15 17:16:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 17:16:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:16:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:16:15] [INFO] getContactPrimaryPhone called {"contact_id":"13708"}
[2026-03-15 17:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-15 17:16:15] [INFO] getContactPrimaryPhone result {"contact_id":"13708","person_found":true,"primary_phone":"9303935310"}
[2026-03-15 17:16:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9303935310"}
[2026-03-15 17:16:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9303935310","contact_id":"13708","deal_id":"18893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:16:15"}
[2026-03-15 17:16:15] [INFO] DealController.save existing deal lookup {"deal_id":"18893","contact_id":"13708","existing_deal_found":true,"existing_contact_id":"13708","existing_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:16:15"}
[2026-03-15 17:16:15] [INFO] DealController.save validated payments {"deal_id":"18893","contact_id":"13708","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 17:16:15] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13708","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 17:16:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18893","contact_didar_id":"13708","title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","base_title_used":"معامله سمیه آهنگریان","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":70000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"سمیه آهنگریان","existing_deal":"YES","existing_deal_id":"18893","existing_deal_status":"Pending","server_time":"2026-03-15 17:16:15","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 17:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-15 17:16:15] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18893","product_ids":[23]}
[2026-03-15 17:16:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18893","contact_id":"13708","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله سمیه آهنگریان | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":70000000,"server_time":"2026-03-15 17:16:15","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 17:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-03-15 17:16:44] [INFO] Checking activity reminders 
[2026-03-15 17:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 17:17:14] [INFO] Checking activity reminders 
[2026-03-15 17:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:17:44] [INFO] Checking activity reminders 
[2026-03-15 17:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:18:06] [INFO] Checking activity reminders 
[2026-03-15 17:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:18:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8044","deal_id":"local_69b6ab233dc237.07267917","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 17:18:23","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 17:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 17:18:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8044","is_new_deal":false}
[2026-03-15 17:18:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 17:18:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:18:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:18:23] [INFO] getContactPrimaryPhone called {"contact_id":"8044"}
[2026-03-15 17:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 17:18:23] [INFO] getContactPrimaryPhone result {"contact_id":"8044","person_found":true,"primary_phone":"9013511535"}
[2026-03-15 17:18:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013511535"}
[2026-03-15 17:18:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013511535","contact_id":"8044","deal_id":"local_69b6ab233dc237.07267917","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:18:23"}
[2026-03-15 17:18:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6ab233dc237.07267917","contact_id":"8044","existing_deal_found":true,"existing_contact_id":"8044","existing_title":"معامله دوم 9013511535 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:18:23"}
[2026-03-15 17:18:23] [INFO] DealController.save validated payments {"deal_id":"local_69b6ab233dc237.07267917","contact_id":"8044","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 17:18:23] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"8044","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 17:18:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6ab233dc237.07267917","contact_didar_id":"8044","title":"معامله دوم 9013511535 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9013511535","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"بخشی","existing_deal":"YES","existing_deal_id":"local_69b6ab233dc237.07267917","existing_deal_status":"Pending","server_time":"2026-03-15 17:18:23","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 17:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 17:18:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6ab233dc237.07267917","contact_id":"8044","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9013511535 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-03-15 17:18:23","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 17:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-15 17:18:36] [INFO] Checking activity reminders 
[2026-03-15 17:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:20:51] [INFO] Checking activity reminders 
[2026-03-15 17:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:22:04] [INFO] Checking activity reminders 
[2026-03-15 17:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:22:36] [INFO] Checking activity reminders 
[2026-03-15 17:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:22:41] [INFO] Checking activity reminders 
[2026-03-15 17:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:22:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:22:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:23:06] [INFO] Checking activity reminders 
[2026-03-15 17:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:23:17] [INFO] Activity save request {"post_data":{"contact_id":"10187","deal_id":"local_69b5cdf3895a57.84007977","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"زمین هنوز دارن ،۱۴۰ گرم طلا ، ماشین ملک مصرف دارن, خودش خانه دار همسرش مکانیک \r\n۷۹ت کانال تا یاعت ۲۱ صحبت لاهمسرش ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 17:23:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"10187","note_was_empty":true}
[2026-03-15 17:23:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"10187","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:17] [INFO] Updating virtual stage {"contact_id":"10187","stage_name":"deal_registered","force":false}
[2026-03-15 17:23:17] [INFO] Virtual stage successfully saved {"contact_id":"10187","stage_name":"deal_registered"}
[2026-03-15 17:23:17] [INFO] Virtual stage updated after activity save {"contact_id":"10187"}
[2026-03-15 17:23:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5cdf3895a57.84007977","stage":"تماس پیگیری","status_change":null}
[2026-03-15 17:23:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6b9cd6bdcd1.01176209","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6b9cd6bdcd1.01176209"}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:17] [INFO] Updating virtual stage {"contact_id":"10187","stage_name":"deal_registered","force":false}
[2026-03-15 17:23:17] [INFO] Virtual stage successfully saved {"contact_id":"10187","stage_name":"deal_registered"}
[2026-03-15 17:23:17] [INFO] Virtual stage updated after activity save {"contact_id":"10187"}
[2026-03-15 17:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10187","person_id":"6905"}
[2026-03-15 17:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:23:36] [INFO] Checking activity reminders 
[2026-03-15 17:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:24:13] [INFO] Checking activity reminders 
[2026-03-15 17:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:24:44] [INFO] Checking activity reminders 
[2026-03-15 17:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:25:14] [INFO] Checking activity reminders 
[2026-03-15 17:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:25:44] [INFO] Checking activity reminders 
[2026-03-15 17:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:26:14] [INFO] Checking activity reminders 
[2026-03-15 17:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:26:44] [INFO] Checking activity reminders 
[2026-03-15 17:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:28:33] [INFO] Checking activity reminders 
[2026-03-15 17:28:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:28:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:29:04] [INFO] Checking activity reminders 
[2026-03-15 17:29:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:29:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:29:07] [INFO] Checking activity reminders 
[2026-03-15 17:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:29:22] [INFO] Activity save request {"post_data":{"contact_id":"local_69b6a5ebc94507.93462813","deal_id":"local_69b6a5ebd3384","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دوبار گرفتم جواب ندادن ارسال پیامک ","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 17:29:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"local_69b6a5ebc94507.93462813","note_was_empty":true}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:22] [INFO] Updating virtual stage {"contact_id":"local_69b6a5ebc94507.93462813","stage_name":"new","force":false}
[2026-03-15 17:29:22] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6a5ebc94507.93462813","stage_name":"new"}
[2026-03-15 17:29:22] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6a5ebc94507.93462813"}
[2026-03-15 17:29:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6a5ebd3384","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-15 17:29:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6bb3aaa4678.14018177","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6bb3aaa4678.14018177"}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:22] [INFO] Updating virtual stage {"contact_id":"local_69b6a5ebc94507.93462813","stage_name":"deal_registered","force":false}
[2026-03-15 17:29:22] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6a5ebc94507.93462813","stage_name":"deal_registered"}
[2026-03-15 17:29:22] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6a5ebc94507.93462813"}
[2026-03-15 17:29:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-03-15 17:29:34] [INFO] Checking activity reminders 
[2026-03-15 17:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:29:37] [INFO] Checking activity reminders 
[2026-03-15 17:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:30:04] [INFO] Checking activity reminders 
[2026-03-15 17:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:30:07] [INFO] Checking activity reminders 
[2026-03-15 17:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:30:20] [INFO] Activity save request {"post_data":{"contact_id":"8796","deal_id":"local_69b5c81b68b117.46186352","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پروووو اون همه زنگ میزدم جواب نمیداد، میگه خواستم سر سال بیام با داداش مشورت کردیم باشیم ۷۹ت نیشابور هستن، خودش مشهد رفته جنس بگیره تا شب یا نهایتا فردا صبح اطلاع واریز فعلا ش کارت ارسال نشد","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 17:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 17:30:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 17:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8796","note_was_empty":true}
[2026-03-15 17:30:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"8796","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 17:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:20] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-15 17:30:20] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-15 17:30:20] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-15 17:30:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c81b68b117.46186352","stage":"تماس پیگیری","status_change":null}
[2026-03-15 17:30:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6bb747556b9.32441417","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 17:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6bb747556b9.32441417"}
[2026-03-15 17:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:20] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-15 17:30:20] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-15 17:30:20] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-15 17:30:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-15 17:30:34] [INFO] Checking activity reminders 
[2026-03-15 17:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 17:30:37] [INFO] Checking activity reminders 
[2026-03-15 17:30:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:30:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:30:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:31:05] [INFO] Checking activity reminders 
[2026-03-15 17:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:31:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 17:31:26","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 17:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:31:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13827","is_new_deal":false}
[2026-03-15 17:31:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 17:31:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:31:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 17:31:26] [INFO] getContactPrimaryPhone called {"contact_id":"13827"}
[2026-03-15 17:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:31:26] [INFO] getContactPrimaryPhone result {"contact_id":"13827","person_found":true,"primary_phone":"9393427403"}
[2026-03-15 17:31:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393427403"}
[2026-03-15 17:31:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393427403","contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:31:26"}
[2026-03-15 17:31:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","existing_deal_found":true,"existing_contact_id":"13827","existing_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 17:31:26"}
[2026-03-15 17:31:26] [INFO] DealController.save validated payments {"deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-15 17:31:26] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13827","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 17:31:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b52f9a686c29.73319543","contact_didar_id":"13827","title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9393427403","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای حسین زاده","existing_deal":"YES","existing_deal_id":"local_69b52f9a686c29.73319543","existing_deal_status":"Pending","server_time":"2026-03-15 17:31:26","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 17:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:31:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b52f9a686c29.73319543","contact_id":"13827","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9393427403 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 17:31:26","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 17:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:31:35] [INFO] Checking activity reminders 
[2026-03-15 17:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:32:00] [INFO] Activity save request {"post_data":{"contact_id":"13827","deal_id":"local_69b52f9a686c29.73319543","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال تا برج سه ارسال شبا","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 17:32:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"13827","note_was_empty":true}
[2026-03-15 17:32:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"13827","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:00] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-15 17:32:00] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-15 17:32:00] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-15 17:32:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b52f9a686c29.73319543","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-15 17:32:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6bbd8424ff6.63018458","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6bbd8424ff6.63018458"}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:00] [INFO] Updating virtual stage {"contact_id":"13827","stage_name":"deal_registered","force":false}
[2026-03-15 17:32:00] [INFO] Virtual stage successfully saved {"contact_id":"13827","stage_name":"deal_registered"}
[2026-03-15 17:32:00] [INFO] Virtual stage updated after activity save {"contact_id":"13827"}
[2026-03-15 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:32:05] [INFO] Checking activity reminders 
[2026-03-15 17:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:32:35] [INFO] Checking activity reminders 
[2026-03-15 17:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:33:06] [INFO] Checking activity reminders 
[2026-03-15 17:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:33:36] [INFO] Checking activity reminders 
[2026-03-15 17:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:34:06] [INFO] Checking activity reminders 
[2026-03-15 17:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:34:36] [INFO] Checking activity reminders 
[2026-03-15 17:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:34:53] [WARNING] Auth check failed - not authenticated {"session_id":"587u54qvcm1t76cp9s3i7kk1vp","session_keys":[],"action":"log_client_event"}
[2026-03-15 17:34:53] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 17:34:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 17:35:27] [INFO] Checking activity reminders 
[2026-03-15 17:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:35:33] [INFO] Checking activity reminders 
[2026-03-15 17:35:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:35:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-15 17:36:00] [INFO] Checking activity reminders 
[2026-03-15 17:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:36:30] [INFO] Checking activity reminders 
[2026-03-15 17:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:37:01] [INFO] Checking activity reminders 
[2026-03-15 17:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:38:13] [INFO] Checking activity reminders 
[2026-03-15 17:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:38:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11432","deal_id":"local_694a95b0d9b6c6.05208584","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 17:38:33","session_id":"587u54qvcm1t76cp9s3i7kk1vp"}
[2026-03-15 17:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-15 17:38:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11432","is_new_deal":false}
[2026-03-15 17:38:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-15 17:38:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 17:38:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-15 17:38:33] [INFO] getContactPrimaryPhone called {"contact_id":"11432"}
[2026-03-15 17:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-15 17:38:33] [INFO] getContactPrimaryPhone result {"contact_id":"11432","person_found":true,"primary_phone":"9131592584"}
[2026-03-15 17:38:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131592584"}
[2026-03-15 17:38:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131592584","contact_id":"11432","deal_id":"local_694a95b0d9b6c6.05208584","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 17:38:33"}
[2026-03-15 17:38:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a95b0d9b6c6.05208584","contact_id":"11432","existing_deal_found":true,"existing_contact_id":"11432","existing_title":"معامله اول 9131592584 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 17:38:33"}
[2026-03-15 17:38:33] [INFO] DealController.save validated payments {"deal_id":"local_694a95b0d9b6c6.05208584","contact_id":"11432","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 17:38:33] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11432","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 17:38:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a95b0d9b6c6.05208584","contact_didar_id":"11432","title":"معامله اول 9131592584 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9131592584","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"پورجعفری","existing_deal":"YES","existing_deal_id":"local_694a95b0d9b6c6.05208584","existing_deal_status":"Pending","server_time":"2026-03-15 17:38:33","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 17:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-15 17:38:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a95b0d9b6c6.05208584","contact_id":"11432","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9131592584 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":30000000,"server_time":"2026-03-15 17:38:33","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 17:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-15 17:40:40] [INFO] Checking activity reminders 
[2026-03-15 17:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:40:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:40:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:40:43] [INFO] generateDealTitle result {"contact_id":"13827","person_name":"اقای حسین زاده","mobile":"9393427403","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9393427403"}
[2026-03-15 17:40:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:40:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-03-15 17:40:48] [INFO] generateDealTitle result {"contact_id":"13827","person_name":"اقای حسین زاده","mobile":"9393427403","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9393427403"}
[2026-03-15 17:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 17:55:26] [WARNING] Auth check failed - not authenticated {"session_id":"1ji06m4tu6006qe6phi7q407eh","session_keys":[],"action":"log_client_event"}
[2026-03-15 17:55:27] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 17:55:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 17:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 17:55:57] [INFO] Checking activity reminders 
[2026-03-15 17:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:57:03] [INFO] Checking activity reminders 
[2026-03-15 17:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:57:33] [INFO] Checking activity reminders 
[2026-03-15 17:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:58:03] [INFO] Checking activity reminders 
[2026-03-15 17:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:58:33] [WARNING] Auth check failed - not authenticated {"session_id":"jqrdvp5ojmhv7pr13q1e88aa0a","session_keys":[],"action":"log_client_event"}
[2026-03-15 17:58:33] [INFO] Checking activity reminders 
[2026-03-15 17:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:58:33] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 17:58:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 17:59:04] [INFO] Checking activity reminders 
[2026-03-15 17:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:59:10] [INFO] Checking activity reminders 
[2026-03-15 17:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 17:59:34] [INFO] Checking activity reminders 
[2026-03-15 17:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 17:59:41] [INFO] Checking activity reminders 
[2026-03-15 17:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 17:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:00:04] [INFO] Checking activity reminders 
[2026-03-15 18:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:00:10] [INFO] Checking activity reminders 
[2026-03-15 18:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:00:19] [INFO] Checking activity reminders 
[2026-03-15 18:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:00:41] [INFO] Checking activity reminders 
[2026-03-15 18:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:00:49] [INFO] Checking activity reminders 
[2026-03-15 18:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:01:11] [INFO] Checking activity reminders 
[2026-03-15 18:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:01:24] [INFO] Checking activity reminders 
[2026-03-15 18:01:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:01:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:01:27] [INFO] Activity save request {"post_data":{"contact_id":"21527","deal_id":"local_69b5d1565d7011.96760103","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مشاوره دادم بابت کاراش و احوال پرسی ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:01:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"21527","note_was_empty":true}
[2026-03-15 18:01:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"21527","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:27] [INFO] Updating virtual stage {"contact_id":"21527","stage_name":"deal_registered","force":false}
[2026-03-15 18:01:27] [INFO] Virtual stage successfully saved {"contact_id":"21527","stage_name":"deal_registered"}
[2026-03-15 18:01:27] [INFO] Virtual stage updated after activity save {"contact_id":"21527"}
[2026-03-15 18:01:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5d1565d7011.96760103","stage":"پشتیبانی","status_change":null}
[2026-03-15 18:01:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6c2bf72b6c1.57431316","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6c2bf72b6c1.57431316"}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:27] [INFO] Updating virtual stage {"contact_id":"21527","stage_name":"deal_registered","force":false}
[2026-03-15 18:01:27] [INFO] Virtual stage successfully saved {"contact_id":"21527","stage_name":"deal_registered"}
[2026-03-15 18:01:27] [INFO] Virtual stage updated after activity save {"contact_id":"21527"}
[2026-03-15 18:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-15 18:01:35] [INFO] Checking activity reminders 
[2026-03-15 18:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:01:51] [INFO] Checking activity reminders 
[2026-03-15 18:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:02:21] [INFO] Checking activity reminders 
[2026-03-15 18:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:02:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3739","deal_id":"local_69b1abf574d4e3.11797176","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 18:02:28","session_id":"jqrdvp5ojmhv7pr13q1e88aa0a"}
[2026-03-15 18:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 18:02:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3739","is_new_deal":false}
[2026-03-15 18:02:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 18:02:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 18:02:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 18:02:28] [INFO] getContactPrimaryPhone called {"contact_id":"3739"}
[2026-03-15 18:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 18:02:28] [INFO] getContactPrimaryPhone result {"contact_id":"3739","person_found":true,"primary_phone":"9120978699"}
[2026-03-15 18:02:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120978699"}
[2026-03-15 18:02:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120978699","contact_id":"3739","deal_id":"local_69b1abf574d4e3.11797176","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 18:02:28"}
[2026-03-15 18:02:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","existing_deal_found":true,"existing_contact_id":"3739","existing_title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 18:02:28"}
[2026-03-15 18:02:28] [INFO] DealController.save validated payments {"deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-15 18:02:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3739","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 18:02:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1abf574d4e3.11797176","contact_didar_id":"3739","title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120978699","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا شیخ","existing_deal":"YES","existing_deal_id":"local_69b1abf574d4e3.11797176","existing_deal_status":"Pending","server_time":"2026-03-15 18:02:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-15 18:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 18:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 18:02:28] [INFO] Deal success processed {"contact_id":"3739","person_name":"رضا شیخ","products_count":1}
[2026-03-15 18:02:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1abf574d4e3.11797176","contact_id":"3739","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120978699 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-15 18:02:28","ip_address":"89.198.204.114","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-15 18:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-15 18:02:54] [INFO] Checking activity reminders 
[2026-03-15 18:02:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:02:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:03:24] [INFO] Checking activity reminders 
[2026-03-15 18:03:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:03:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:03:55] [INFO] Checking activity reminders 
[2026-03-15 18:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:04:25] [INFO] Checking activity reminders 
[2026-03-15 18:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:04:47] [INFO] Checking activity reminders 
[2026-03-15 18:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:04:54] [INFO] Checking activity reminders 
[2026-03-15 18:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:04:55] [INFO] Checking activity reminders 
[2026-03-15 18:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:05:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:26] [INFO] Checking activity reminders 
[2026-03-15 18:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:05:26] [INFO] Checking activity reminders 
[2026-03-15 18:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:05:48] [INFO] Activity save request {"post_data":{"contact_id":"955","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"گفت من اد نکردن سرچ کرد آورد ","activity_duration":"4","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:05:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"955","note_was_empty":true}
[2026-03-15 18:05:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"955","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 18:05:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6c3c4f033c0.28679080","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6c3c4f033c0.28679080"}
[2026-03-15 18:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:48] [INFO] Updating virtual stage {"contact_id":"955","stage_name":"deal_registered","force":false}
[2026-03-15 18:05:48] [INFO] Virtual stage successfully saved {"contact_id":"955","stage_name":"deal_registered"}
[2026-03-15 18:05:48] [INFO] Virtual stage updated after activity save {"contact_id":"955"}
[2026-03-15 18:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-03-15 18:05:56] [INFO] Checking activity reminders 
[2026-03-15 18:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:05:57] [INFO] Checking activity reminders 
[2026-03-15 18:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:06:27] [INFO] Checking activity reminders 
[2026-03-15 18:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:06:56] [INFO] Activity save request {"post_data":{"contact_id":"11917","deal_id":"local_69b5c5ad9090e7.10981036","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۴۰۰ نقد ۶۰۰ صندوق عیار کهربا دنبال سیگنال مفت رایگان میگه ۲ ت بدین \r\nخیلی شفاف گفت نمیخوام \r\nشرایط هم گذاشتم \r\nگفتم تصمیم قطعی داشتی شماره بزار","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:06:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11917","note_was_empty":true}
[2026-03-15 18:06:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"11917","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Updating virtual stage {"contact_id":"11917","stage_name":"deal_registered","force":false}
[2026-03-15 18:06:56] [INFO] Virtual stage successfully saved {"contact_id":"11917","stage_name":"deal_registered"}
[2026-03-15 18:06:56] [INFO] Virtual stage updated after activity save {"contact_id":"11917"}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c5ad9090e7.10981036","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-15 18:06:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6c4088ae025.70169740","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6c4088ae025.70169740"}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:56] [INFO] Updating virtual stage {"contact_id":"11917","stage_name":"deal_registered","force":false}
[2026-03-15 18:06:56] [INFO] Virtual stage successfully saved {"contact_id":"11917","stage_name":"deal_registered"}
[2026-03-15 18:06:56] [INFO] Virtual stage updated after activity save {"contact_id":"11917"}
[2026-03-15 18:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11917","person_id":"8035"}
[2026-03-15 18:06:57] [INFO] Checking activity reminders 
[2026-03-15 18:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:07:02] [INFO] Checking activity reminders 
[2026-03-15 18:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:07:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 18:07:20] [INFO] Checking activity reminders 
[2026-03-15 18:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:12:31] [INFO] Checking activity reminders 
[2026-03-15 18:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:13:02] [INFO] Checking activity reminders 
[2026-03-15 18:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:13:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7009","deal_id":"local_69b5ca4aec85e1.81118110","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 18:13:09","session_id":"o5o2r5kbb49e31r8fh57fhvh2o"}
[2026-03-15 18:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7009","is_new_deal":false}
[2026-03-15 18:13:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 18:13:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 18:13:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 18:13:09] [INFO] getContactPrimaryPhone called {"contact_id":"7009"}
[2026-03-15 18:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:09] [INFO] getContactPrimaryPhone result {"contact_id":"7009","person_found":true,"primary_phone":"9137152941"}
[2026-03-15 18:13:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9137152941"}
[2026-03-15 18:13:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9137152941","contact_id":"7009","deal_id":"local_69b5ca4aec85e1.81118110","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 18:13:09"}
[2026-03-15 18:13:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5ca4aec85e1.81118110","contact_id":"7009","existing_deal_found":true,"existing_contact_id":"7009","existing_title":"معامله اول 9137152941","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-03-15 18:13:09"}
[2026-03-15 18:13:09] [INFO] DealController.save validated payments {"deal_id":"local_69b5ca4aec85e1.81118110","contact_id":"7009","payments_count":0,"status":"pending","pipeline_stage":"پشتیبانی"}
[2026-03-15 18:13:09] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7009","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 18:13:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5ca4aec85e1.81118110","contact_didar_id":"7009","title":"معامله اول 9137152941 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9137152941","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پشتیبانی","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"نجاری","existing_deal":"YES","existing_deal_id":"local_69b5ca4aec85e1.81118110","existing_deal_status":"Pending","server_time":"2026-03-15 18:13:09","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-03-15 18:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5ca4aec85e1.81118110","contact_id":"7009","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله اول 9137152941 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پشتیبانی","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 18:13:09","ip_address":"89.198.176.223","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-15 18:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:32] [INFO] Checking activity reminders 
[2026-03-15 18:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:13:46] [INFO] Activity save request {"post_data":{"contact_id":"7009","deal_id":"local_69b5ca4aec85e1.81118110","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"یزد، طلا و دلار ملک دارن کانال پرزنت خبر میدن","activity_duration":"15","direction":"outgoing","current_stage":"پشتیبانی","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:13:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","database_didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_email":"hanaficars9@gmail.com","user_name":"خانم شایسته","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته","contact_id":"7009","note_was_empty":true}
[2026-03-15 18:13:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"7009","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f"}
[2026-03-15 18:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:46] [INFO] Updating virtual stage {"contact_id":"7009","stage_name":"deal_registered","force":false}
[2026-03-15 18:13:46] [INFO] Virtual stage successfully saved {"contact_id":"7009","stage_name":"deal_registered"}
[2026-03-15 18:13:46] [INFO] Virtual stage updated after activity save {"contact_id":"7009"}
[2026-03-15 18:13:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5ca4aec85e1.81118110","stage":"پشتیبانی","status_change":null}
[2026-03-15 18:13:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6c5a2d69b23.40147590","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6c5a2d69b23.40147590"}
[2026-03-15 18:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:13:46] [INFO] Updating virtual stage {"contact_id":"7009","stage_name":"deal_registered","force":false}
[2026-03-15 18:13:46] [INFO] Virtual stage successfully saved {"contact_id":"7009","stage_name":"deal_registered"}
[2026-03-15 18:13:46] [INFO] Virtual stage updated after activity save {"contact_id":"7009"}
[2026-03-15 18:13:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7009","person_id":"16249"}
[2026-03-15 18:14:02] [INFO] Checking activity reminders 
[2026-03-15 18:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:16:39] [INFO] Checking activity reminders 
[2026-03-15 18:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:32:23] [INFO] Checking activity reminders 
[2026-03-15 18:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:32:53] [INFO] Checking activity reminders 
[2026-03-15 18:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:33:23] [INFO] Checking activity reminders 
[2026-03-15 18:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:33:43] [INFO] Activity save request {"post_data":{"contact_id":"local_69b6adf91f49f9.11759904","deal_id":"local_69b6adf921eaf","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کارنند رادیولوژیست بیمارستان، رشت نامزد، ملک ۹۰ متری ارزش ۵ میلیارد بفروشه چیکا. کنه هدف حونه مصرف ازدواج کنه ۴ سال فالو\r\nارسال ش کارت \r\nتا چهارشنبه واریز نقد بشه الان نقد نداره","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:33:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b6adf91f49f9.11759904","note_was_empty":true}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:43] [INFO] Updating virtual stage {"contact_id":"local_69b6adf91f49f9.11759904","stage_name":"new","force":false}
[2026-03-15 18:33:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6adf91f49f9.11759904","stage_name":"new"}
[2026-03-15 18:33:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6adf91f49f9.11759904"}
[2026-03-15 18:33:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6adf921eaf","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:33:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6ca4f1a84e5.44009920","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6ca4f1a84e5.44009920"}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:43] [INFO] Updating virtual stage {"contact_id":"local_69b6adf91f49f9.11759904","stage_name":"deal_registered","force":false}
[2026-03-15 18:33:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6adf91f49f9.11759904","stage_name":"deal_registered"}
[2026-03-15 18:33:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6adf91f49f9.11759904"}
[2026-03-15 18:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:33:53] [INFO] Checking activity reminders 
[2026-03-15 18:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:34:14] [INFO] Lead update received {"contact_id":"local_69b6adf91f49f9.11759904","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-15 18:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:34:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b6adf91f49f9.11759904"}
[2026-03-15 18:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-15 18:34:24] [INFO] Checking activity reminders 
[2026-03-15 18:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:42] [INFO] Checking activity reminders 
[2026-03-15 18:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:37:59] [INFO] Activity save request {"post_data":{"contact_id":"7495","deal_id":"local_69b5c5355e1138.48813206","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ر زه بکد رفت نماز ۸ تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:37:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7495","note_was_empty":true}
[2026-03-15 18:37:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"7495","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:59] [INFO] Updating virtual stage {"contact_id":"7495","stage_name":"deal_registered","force":false}
[2026-03-15 18:37:59] [INFO] Virtual stage successfully saved {"contact_id":"7495","stage_name":"deal_registered"}
[2026-03-15 18:37:59] [INFO] Virtual stage updated after activity save {"contact_id":"7495"}
[2026-03-15 18:37:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c5355e1138.48813206","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:37:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6cb4fcae944.82004810","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6cb4fcae944.82004810"}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:37:59] [INFO] Updating virtual stage {"contact_id":"7495","stage_name":"deal_registered","force":false}
[2026-03-15 18:37:59] [INFO] Virtual stage successfully saved {"contact_id":"7495","stage_name":"deal_registered"}
[2026-03-15 18:37:59] [INFO] Virtual stage updated after activity save {"contact_id":"7495"}
[2026-03-15 18:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 18:38:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:38:12] [INFO] Checking activity reminders 
[2026-03-15 18:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:39:46] [INFO] Checking activity reminders 
[2026-03-15 18:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:41:03] [INFO] Checking activity reminders 
[2026-03-15 18:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:41:19] [INFO] Activity save request {"post_data":{"contact_id":"15497","deal_id":"local_69b5c4f0676861.47881458","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۲۰ دقیقه دیگه تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:41:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15497","note_was_empty":true}
[2026-03-15 18:41:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"15497","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:19] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-03-15 18:41:19] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-03-15 18:41:19] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-03-15 18:41:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c4f0676861.47881458","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:41:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6cc178b46a0.47963727","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6cc178b46a0.47963727"}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:19] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-03-15 18:41:19] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-03-15 18:41:19] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-03-15 18:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 18:41:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:41:33] [INFO] Checking activity reminders 
[2026-03-15 18:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:42:03] [INFO] Checking activity reminders 
[2026-03-15 18:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:42:23] [INFO] Checking activity reminders 
[2026-03-15 18:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:44:06] [INFO] Checking activity reminders 
[2026-03-15 18:44:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:44:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:44:36] [INFO] Checking activity reminders 
[2026-03-15 18:44:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:44:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:44:38] [INFO] Activity save request {"post_data":{"contact_id":"11224","deal_id":"local_69b5bf9de5c773.06780749","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دامپزشک، عدم پاسخ ارسال پیامک چه ساعتی شرایط صحبت داره","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:44:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:44:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:44:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11224","note_was_empty":true}
[2026-03-15 18:44:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"11224","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:44:38] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-15 18:44:38] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-15 18:44:38] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-15 18:44:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bf9de5c773.06780749","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:44:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6ccdef1d8f6.12808330","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:44:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6ccdef1d8f6.12808330"}
[2026-03-15 18:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:44:38] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-15 18:44:38] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-15 18:44:38] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-15 18:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-15 18:45:06] [INFO] Checking activity reminders 
[2026-03-15 18:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Activity save request {"post_data":{"contact_id":"8460","deal_id":"local_694a56c78673a5.04218584","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:45:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8460","note_was_empty":true}
[2026-03-15 18:45:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"8460","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Updating virtual stage {"contact_id":"8460","stage_name":"deal_registered","force":false}
[2026-03-15 18:45:34] [INFO] Virtual stage successfully saved {"contact_id":"8460","stage_name":"deal_registered"}
[2026-03-15 18:45:34] [INFO] Virtual stage updated after activity save {"contact_id":"8460"}
[2026-03-15 18:45:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a56c78673a5.04218584","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:45:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6cd161597b5.08645062","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6cd161597b5.08645062"}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:34] [INFO] Updating virtual stage {"contact_id":"8460","stage_name":"deal_registered","force":false}
[2026-03-15 18:45:34] [INFO] Virtual stage successfully saved {"contact_id":"8460","stage_name":"deal_registered"}
[2026-03-15 18:45:34] [INFO] Virtual stage updated after activity save {"contact_id":"8460"}
[2026-03-15 18:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-03-15 18:45:36] [INFO] Checking activity reminders 
[2026-03-15 18:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Activity save request {"post_data":{"contact_id":"8163","deal_id":"local_694ff62c376047.87841350","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:46:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8163","note_was_empty":true}
[2026-03-15 18:46:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"8163","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Updating virtual stage {"contact_id":"8163","stage_name":"deal_registered","force":false}
[2026-03-15 18:46:07] [INFO] Virtual stage successfully saved {"contact_id":"8163","stage_name":"deal_registered"}
[2026-03-15 18:46:07] [INFO] Virtual stage updated after activity save {"contact_id":"8163"}
[2026-03-15 18:46:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694ff62c376047.87841350","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:46:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6cd37234b77.14010668","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6cd37234b77.14010668"}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:07] [INFO] Updating virtual stage {"contact_id":"8163","stage_name":"deal_registered","force":false}
[2026-03-15 18:46:07] [INFO] Virtual stage successfully saved {"contact_id":"8163","stage_name":"deal_registered"}
[2026-03-15 18:46:07] [INFO] Virtual stage updated after activity save {"contact_id":"8163"}
[2026-03-15 18:46:07] [INFO] Checking activity reminders 
[2026-03-15 18:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8163","person_id":"1917"}
[2026-03-15 18:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Activity save request {"post_data":{"contact_id":"15951","deal_id":"local_695cc5b6961767.94534853","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 18:46:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15951","note_was_empty":true}
[2026-03-15 18:46:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"15951","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Updating virtual stage {"contact_id":"15951","stage_name":"deal_registered","force":false}
[2026-03-15 18:46:36] [INFO] Virtual stage successfully saved {"contact_id":"15951","stage_name":"deal_registered"}
[2026-03-15 18:46:36] [INFO] Virtual stage updated after activity save {"contact_id":"15951"}
[2026-03-15 18:46:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cc5b6961767.94534853","stage":"تماس پیگیری","status_change":null}
[2026-03-15 18:46:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6cd544fa430.43219081","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6cd544fa430.43219081"}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:36] [INFO] Updating virtual stage {"contact_id":"15951","stage_name":"deal_registered","force":false}
[2026-03-15 18:46:36] [INFO] Virtual stage successfully saved {"contact_id":"15951","stage_name":"deal_registered"}
[2026-03-15 18:46:36] [INFO] Virtual stage updated after activity save {"contact_id":"15951"}
[2026-03-15 18:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:46:37] [INFO] Checking activity reminders 
[2026-03-15 18:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15951","person_id":"16515"}
[2026-03-15 18:47:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 18:47:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 18:47:07] [INFO] Checking activity reminders 
[2026-03-15 18:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:59:11] [INFO] Checking activity reminders 
[2026-03-15 18:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:59:41] [INFO] Checking activity reminders 
[2026-03-15 18:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 18:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 18:59:44] [INFO] Lead update received {"contact_id":"local_69b5ce4ec42221.38944867","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-15 18:59:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 18:59:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 18:59:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5ce4ec42221.38944867"}
[2026-03-15 18:59:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 18:59:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:12] [INFO] Checking activity reminders 
[2026-03-15 19:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:00:48] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5ce4ec42221.38944867","deal_id":"local_69b5ce4ec5f17","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۸۰ گرم طلا، متاهل ، ۲ سال فالو، خونه ماشین مصرف داره ، هدف تبدیل طلا به خودرو ، ۷۹ ت و ۵۴ ت کانال تا فردا ساعت ۱۱ اطلاع میگه گرونه جای دیگه ۸ ت هست دید دادم بهش","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 19:00:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5ce4ec42221.38944867","note_was_empty":true}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:48] [INFO] Updating virtual stage {"contact_id":"local_69b5ce4ec42221.38944867","stage_name":"new","force":false}
[2026-03-15 19:00:48] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5ce4ec42221.38944867","stage_name":"new"}
[2026-03-15 19:00:48] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5ce4ec42221.38944867"}
[2026-03-15 19:00:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5ce4ec5f17","stage":"تماس پیگیری","status_change":null}
[2026-03-15 19:00:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6d0a824c877.35110060","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6d0a824c877.35110060"}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:00:48] [INFO] Updating virtual stage {"contact_id":"local_69b5ce4ec42221.38944867","stage_name":"deal_registered","force":false}
[2026-03-15 19:00:48] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5ce4ec42221.38944867","stage_name":"deal_registered"}
[2026-03-15 19:00:48] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5ce4ec42221.38944867"}
[2026-03-15 19:00:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ce4ec42221.38944867","person_id":"21863"}
[2026-03-15 19:02:14] [WARNING] Auth check failed - not authenticated {"session_id":"snr93f88v55rd93gdtv8pnorjl","session_keys":[],"action":"log_client_event"}
[2026-03-15 19:02:14] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 19:02:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 19:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:03:09] [INFO] Checking activity reminders 
[2026-03-15 19:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:03:39] [INFO] Checking activity reminders 
[2026-03-15 19:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:04:10] [INFO] Checking activity reminders 
[2026-03-15 19:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:04:40] [INFO] Checking activity reminders 
[2026-03-15 19:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:05:10] [INFO] Checking activity reminders 
[2026-03-15 19:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:05:40] [INFO] Checking activity reminders 
[2026-03-15 19:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:06:10] [INFO] Checking activity reminders 
[2026-03-15 19:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:06:40] [INFO] Checking activity reminders 
[2026-03-15 19:06:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:06:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:07:11] [INFO] Checking activity reminders 
[2026-03-15 19:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:07:41] [INFO] Checking activity reminders 
[2026-03-15 19:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:09:38] [INFO] Checking activity reminders 
[2026-03-15 19:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:10:08] [INFO] Checking activity reminders 
[2026-03-15 19:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:10:38] [INFO] Checking activity reminders 
[2026-03-15 19:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 19:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 19:10:41] [INFO] Activity save request {"post_data":{"contact_id":"15497","deal_id":"local_69b5c4f0676861.47881458","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۶میلیازد نقد ، ۷ میلیارد طلا، واحد فردخته قبل جنگ پول اونه، خونه و ناشین مصرف داره\r\nارسال ش کارت واریز الان ۷۹ت","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:10:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 19:10:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:10:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15497","note_was_empty":true}
[2026-03-15 19:10:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"15497","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:10:41] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-03-15 19:10:41] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-03-15 19:10:41] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-03-15 19:10:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c4f0676861.47881458","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-15 19:10:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6d2f9858ad2.75584596","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:10:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6d2f9858ad2.75584596"}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 19:10:41] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-03-15 19:10:41] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-03-15 19:10:41] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-03-15 19:10:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-03-15 20:18:22] [WARNING] Auth check failed - not authenticated {"session_id":"astnue76d7ad3mug38i0s5dad8","session_keys":[],"action":"log_client_event"}
[2026-03-15 20:18:22] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 20:18:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 20:18:53] [INFO] Checking activity reminders 
[2026-03-15 20:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 20:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 20:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:19:23] [INFO] Checking activity reminders 
[2026-03-15 20:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 20:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 20:19:26] [INFO] Lead update received {"contact_id":"7495","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-15 20:19:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:19:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:19:26] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7495"}
[2026-03-15 20:19:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:19:53] [INFO] Checking activity reminders 
[2026-03-15 20:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 20:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 20:20:23] [INFO] Checking activity reminders 
[2026-03-15 20:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 20:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 20:20:40] [INFO] Activity save request {"post_data":{"contact_id":"7495","deal_id":"local_69b5c5355e1138.48813206","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۱۵۰۰ اگاه ۲۵۰ فیروزه ۱۵۰ نقد ، بازنشسته صدا و سیما، خنوه دوم تهران سازمان برنامه ، قم ۳ واحد یکی خودش یکی پسرش یکی اجاره ، کانال ۵۴ و ۷۹فردا تا ۱۲ اطلاع","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:20:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-15 20:20:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:20:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7495","note_was_empty":true}
[2026-03-15 20:20:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"7495","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:20:40] [INFO] Updating virtual stage {"contact_id":"7495","stage_name":"deal_registered","force":false}
[2026-03-15 20:20:40] [INFO] Virtual stage successfully saved {"contact_id":"7495","stage_name":"deal_registered"}
[2026-03-15 20:20:40] [INFO] Virtual stage updated after activity save {"contact_id":"7495"}
[2026-03-15 20:20:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c5355e1138.48813206","stage":"تماس پیگیری","status_change":null}
[2026-03-15 20:20:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b6e3608dff90.06764151","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:20:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69b6e3608dff90.06764151"}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 20:20:40] [INFO] Updating virtual stage {"contact_id":"7495","stage_name":"deal_registered","force":false}
[2026-03-15 20:20:40] [INFO] Virtual stage successfully saved {"contact_id":"7495","stage_name":"deal_registered"}
[2026-03-15 20:20:40] [INFO] Virtual stage updated after activity save {"contact_id":"7495"}
[2026-03-15 20:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7495","person_id":"12932"}
[2026-03-15 21:14:42] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 21:14:43] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 21:14:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 21:15:12] [INFO] Checking activity reminders 
[2026-03-15 21:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:15:43] [INFO] Checking activity reminders 
[2026-03-15 21:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:15:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:15:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:15:43] [INFO] generateDealTitle result {"contact_id":"1979","person_name":"ملکی","mobile":"9385649391","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9385649391"}
[2026-03-15 21:16:10] [INFO] Checking activity reminders 
[2026-03-15 21:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:22] [INFO] generateDealTitle result {"contact_id":"1979","person_name":"ملکی","mobile":"9385649391","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9385649391"}
[2026-03-15 21:16:41] [INFO] Checking activity reminders 
[2026-03-15 21:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:16:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1979","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 21:16:48","session_id":"0eoqpo2d7a9d9to3qq3iq6n19l"}
[2026-03-15 21:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1979","is_new_deal":true}
[2026-03-15 21:16:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 21:16:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 21:16:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 21:16:48] [INFO] getContactPrimaryPhone called {"contact_id":"1979"}
[2026-03-15 21:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:48] [INFO] getContactPrimaryPhone result {"contact_id":"1979","person_found":true,"primary_phone":"9385649391"}
[2026-03-15 21:16:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385649391"}
[2026-03-15 21:16:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385649391","contact_id":"1979","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 21:16:48"}
[2026-03-15 21:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:48] [INFO] generateDealTitle result {"contact_id":"1979","person_name":"ملکی","mobile":"9385649391","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9385649391"}
[2026-03-15 21:16:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1979","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 21:16:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1979","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 21:16:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1979","title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9385649391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ملکی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-15 21:16:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-15 21:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:16:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-15 21:16:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1979","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-15 21:16:48","ip_address":"89.198.204.114","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-15 21:16:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:19:18] [INFO] Checking activity reminders 
[2026-03-15 21:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:19:43] [INFO] Checking activity reminders 
[2026-03-15 21:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:20:08] [INFO] Checking activity reminders 
[2026-03-15 21:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:22:30] [INFO] Checking activity reminders 
[2026-03-15 21:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:22:58] [INFO] Checking activity reminders 
[2026-03-15 21:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:23:28] [INFO] Checking activity reminders 
[2026-03-15 21:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:23:54] [INFO] Checking activity reminders 
[2026-03-15 21:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:24:24] [INFO] Checking activity reminders 
[2026-03-15 21:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:24:46] [INFO] Checking activity reminders 
[2026-03-15 21:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:25:17] [INFO] Checking activity reminders 
[2026-03-15 21:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:25:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 21:25:32","session_id":"0eoqpo2d7a9d9to3qq3iq6n19l"}
[2026-03-15 21:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:25:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1979","is_new_deal":false}
[2026-03-15 21:25:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 21:25:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 21:25:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 21:25:32] [INFO] getContactPrimaryPhone called {"contact_id":"1979"}
[2026-03-15 21:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:25:32] [INFO] getContactPrimaryPhone result {"contact_id":"1979","person_found":true,"primary_phone":"9385649391"}
[2026-03-15 21:25:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385649391"}
[2026-03-15 21:25:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385649391","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 21:25:32"}
[2026-03-15 21:25:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","existing_deal_found":true,"existing_contact_id":"1979","existing_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-15 21:25:32"}
[2026-03-15 21:25:32] [INFO] DealController.save validated payments {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 21:25:32] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1979","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 21:25:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6f088abce41.09336821","contact_didar_id":"1979","title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9385649391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":35000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ملکی","existing_deal":"YES","existing_deal_id":"local_69b6f088abce41.09336821","existing_deal_status":"Pending","server_time":"2026-03-15 21:25:32","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-15 21:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:25:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":35000000,"server_time":"2026-03-15 21:25:32","ip_address":"89.198.204.114","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-15 21:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:25:48] [INFO] Checking activity reminders 
[2026-03-15 21:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 21:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-15 21:26:18] [INFO] generateDealTitle result {"contact_id":"1979","person_name":"ملکی","mobile":"9385649391","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9385649391"}
[2026-03-15 21:26:21] [INFO] Checking activity reminders 
[2026-03-15 21:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 21:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:44:35] [WARNING] Auth check failed - not authenticated {"session_id":"op4gb0fjnari82d931n1jsr109","session_keys":[],"action":"log_client_event"}
[2026-03-15 22:44:36] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-15 22:44:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 22:44:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 22:44:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 22:44:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 22:45:07] [INFO] Checking activity reminders 
[2026-03-15 22:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-15 22:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-03-15 22:45:37] [INFO] Checking activity reminders 
[2026-03-15 22:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:46:07] [INFO] Checking activity reminders 
[2026-03-15 22:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:46:09] [INFO] Checking activity reminders 
[2026-03-15 22:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:46:39] [INFO] Checking activity reminders 
[2026-03-15 22:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:46:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 22:46:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 22:46:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 22:46:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 22:47:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 22:47:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 22:47:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 22:47:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 22:51:59] [WARNING] Auth check failed - not authenticated {"session_id":"gmroqld2hoi4qnklpkiecrmqna","session_keys":[],"action":"log_client_event"}
[2026-03-15 22:51:59] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-15 22:52:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 22:52:12] [INFO] Checking activity reminders 
[2026-03-15 22:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:52:17] [INFO] Checking activity reminders 
[2026-03-15 22:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:52:24] [INFO] Checking activity reminders 
[2026-03-15 22:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:52:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:52:54] [INFO] Checking activity reminders 
[2026-03-15 22:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:53:24] [INFO] Checking activity reminders 
[2026-03-15 22:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 22:53:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-15 22:53:42","session_id":"gmroqld2hoi4qnklpkiecrmqna"}
[2026-03-15 22:53:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:53:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20546","is_new_deal":false}
[2026-03-15 22:53:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-15 22:53:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 22:53:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-15 22:53:42] [INFO] getContactPrimaryPhone called {"contact_id":"20546"}
[2026-03-15 22:53:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:53:42] [INFO] getContactPrimaryPhone result {"contact_id":"20546","person_found":true,"primary_phone":"9122718955"}
[2026-03-15 22:53:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122718955"}
[2026-03-15 22:53:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122718955","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 22:53:42"}
[2026-03-15 22:53:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","existing_deal_found":true,"existing_contact_id":"20546","existing_title":"معامله اول 9122718955 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-15 22:53:42"}
[2026-03-15 22:53:42] [INFO] DealController.save validated payments {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-15 22:53:42] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20546","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-15 22:53:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a9bf3a9a3b0.14870802","contact_didar_id":"20546","title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9122718955","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آزاد","existing_deal":"YES","existing_deal_id":"local_694a9bf3a9a3b0.14870802","existing_deal_status":"Pending","server_time":"2026-03-15 22:53:42","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-15 22:53:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:53:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-15 22:53:42","ip_address":"5.52.58.133","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-15 22:53:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-15 22:53:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 22:54:01] [INFO] Checking activity reminders 
[2026-03-15 22:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 22:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 23:54:08] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:08] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"check_reminders"}
[2026-03-15 23:54:08] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:15] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:15] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:15] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_person_profile"}
[2026-03-15 23:54:15] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:18] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:19] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:20] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:21] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:29] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:31] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:33] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:33] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:33] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-15 23:54:33] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:35] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_products"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_leads"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:38] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:39] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:39] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:39] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_person_profile"}
[2026-03-15 23:54:39] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:54:41] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:55:01] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:55:01] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-15 23:55:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 23:55:32] [INFO] Checking activity reminders 
[2026-03-15 23:55:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 23:55:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 23:56:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-15 23:56:02] [INFO] Checking activity reminders 
[2026-03-15 23:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 23:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-15 23:58:13] [WARNING] Auth check failed - not authenticated {"session_id":"7gf1dfggjq3q42va6eb26b5dj6","session_keys":[],"action":"log_client_event"}
[2026-03-15 23:58:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-15 23:58:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-15 23:58:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 23:58:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 23:58:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 23:58:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 23:58:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-15 23:58:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-15 23:58:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-15 23:58:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-15 23:59:05] [INFO] Checking activity reminders 
[2026-03-15 23:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-15 23:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:01:08] [INFO] Checking activity reminders 
[2026-03-16 00:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:01:38] [INFO] Checking activity reminders 
[2026-03-16 00:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:01:47] [INFO] Checking activity reminders 
[2026-03-16 00:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:02:00] [INFO] Checking activity reminders 
[2026-03-16 00:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:02:07] [INFO] Checking activity reminders 
[2026-03-16 00:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:02:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 00:02:38] [INFO] Checking activity reminders 
[2026-03-16 00:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:03:08] [INFO] Checking activity reminders 
[2026-03-16 00:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:03:38] [INFO] Checking activity reminders 
[2026-03-16 00:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:04:07] [INFO] Checking activity reminders 
[2026-03-16 00:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:05:12] [INFO] Checking activity reminders 
[2026-03-16 00:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:09:01] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-16 00:09:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 00:09:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 00:09:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 00:09:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 00:09:28] [INFO] Checking activity reminders 
[2026-03-16 00:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:09:50] [INFO] Checking activity reminders 
[2026-03-16 00:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:10:21] [INFO] Checking activity reminders 
[2026-03-16 00:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:10:44] [INFO] Checking activity reminders 
[2026-03-16 00:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:11:05] [INFO] Checking activity reminders 
[2026-03-16 00:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:11:28] [INFO] Checking activity reminders 
[2026-03-16 00:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6adf91f49f9.11759904","person_id":"21867"}
[2026-03-16 00:11:58] [INFO] Checking activity reminders 
[2026-03-16 00:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:12:38] [INFO] Checking activity reminders 
[2026-03-16 00:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:13:08] [INFO] Checking activity reminders 
[2026-03-16 00:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:13:17] [INFO] Checking activity reminders 
[2026-03-16 00:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:13:24] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9122515390","09122515390"]}
[2026-03-16 00:13:24] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9122515390","09122515390"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-16 00:13:24] [INFO] Didar write disabled; creating local lead only {"owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","mobile":"9122515390","full_name":"لید جدید"}
[2026-03-16 00:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-16 00:13:24] [INFO] Notification created {"notification_id":"602","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"lead_assigned","show_popup":true}
[2026-03-16 00:13:43] [INFO] Checking activity reminders 
[2026-03-16 00:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:14:13] [INFO] Checking activity reminders 
[2026-03-16 00:14:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:14:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:14:32] [INFO] Checking activity reminders 
[2026-03-16 00:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:14:35] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9962595159","09962595159"]}
[2026-03-16 00:14:35] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9962595159","09962595159"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-16 00:14:35] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9962595159","full_name":"لید جدید"}
[2026-03-16 00:14:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-16 00:14:35] [INFO] Notification created {"notification_id":"603","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-16 00:14:53] [INFO] Checking activity reminders 
[2026-03-16 00:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:15:12] [INFO] Checking activity reminders 
[2026-03-16 00:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:15:20] [INFO] Checking activity reminders 
[2026-03-16 00:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:15:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-16 00:15:50] [INFO] Checking activity reminders 
[2026-03-16 00:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:15:55] [INFO] Checking activity reminders 
[2026-03-16 00:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:17:55] [INFO] Checking activity reminders 
[2026-03-16 00:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:18:11] [INFO] Checking activity reminders 
[2026-03-16 00:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:18:49] [INFO] Checking activity reminders 
[2026-03-16 00:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:19:13] [INFO] Checking activity reminders 
[2026-03-16 00:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:19:33] [INFO] Checking activity reminders 
[2026-03-16 00:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:19:56] [INFO] Checking activity reminders 
[2026-03-16 00:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:20:45] [INFO] Checking activity reminders 
[2026-03-16 00:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:20:52] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9386279267","09386279267"]}
[2026-03-16 00:20:52] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9386279267","09386279267"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-16 00:20:52] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9386279267","full_name":"لید جدید"}
[2026-03-16 00:20:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-16 00:20:52] [INFO] Notification created {"notification_id":"604","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-16 00:29:28] [WARNING] Auth check failed - not authenticated {"session_id":"5jlp5dv92e8916fned56d19ugp","session_keys":[],"action":"log_client_event"}
[2026-03-16 00:29:29] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-16 00:29:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 00:29:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 00:29:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 00:29:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 00:29:37] [INFO] Checking activity reminders 
[2026-03-16 00:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:30:20] [INFO] Checking activity reminders 
[2026-03-16 00:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-16 00:30:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-16 00:30:50] [INFO] Checking activity reminders 
[2026-03-16 00:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:31:21] [INFO] Checking activity reminders 
[2026-03-16 00:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:31:51] [INFO] Checking activity reminders 
[2026-03-16 00:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:32:10] [INFO] Checking activity reminders 
[2026-03-16 00:32:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:32:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:32:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 00:32:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 00:32:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 00:32:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 00:36:00] [INFO] Checking activity reminders 
[2026-03-16 00:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:36:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 00:36:30] [INFO] Checking activity reminders 
[2026-03-16 00:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:37:01] [INFO] Checking activity reminders 
[2026-03-16 00:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:37:17] [INFO] Checking activity reminders 
[2026-03-16 00:37:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:37:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:37:25] [INFO] Checking activity reminders 
[2026-03-16 00:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:37:55] [INFO] Checking activity reminders 
[2026-03-16 00:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:39:20] [INFO] Checking activity reminders 
[2026-03-16 00:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:40:15] [INFO] Checking activity reminders 
[2026-03-16 00:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:40:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:40:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:40:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:40:30] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:40:46] [INFO] Checking activity reminders 
[2026-03-16 00:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:41:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9905","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:41:15","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9905","is_new_deal":true}
[2026-03-16 00:41:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:15] [INFO] getContactPrimaryPhone called {"contact_id":"9905"}
[2026-03-16 00:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:15] [INFO] getContactPrimaryPhone result {"contact_id":"9905","person_found":true,"primary_phone":"9012997004"}
[2026-03-16 00:41:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9012997004"}
[2026-03-16 00:41:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9012997004","contact_id":"9905","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:41:15"}
[2026-03-16 00:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:15] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:41:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9905","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:41:15] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9905","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:41:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9905","title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9012997004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:41:15","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:15] [ERROR] Failed to save deal {"deal_id":"","contact_id":"9905","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","exception":{"message":"SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php","line":244,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php(244): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/DealService.php(139): App\\Repositories\\DealRepository->save()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/DealController.php(1454): App\\Services\\DealService->saveDeal()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(682): App\\Controllers\\DealController->save()\n#4 {main}"}}
[2026-03-16 00:41:16] [INFO] Checking activity reminders 
[2026-03-16 00:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:41:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9905","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:41:23","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:41:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9905","is_new_deal":true}
[2026-03-16 00:41:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:23] [INFO] getContactPrimaryPhone called {"contact_id":"9905"}
[2026-03-16 00:41:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:23] [INFO] getContactPrimaryPhone result {"contact_id":"9905","person_found":true,"primary_phone":"9012997004"}
[2026-03-16 00:41:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9012997004"}
[2026-03-16 00:41:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9012997004","contact_id":"9905","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:41:23"}
[2026-03-16 00:41:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:23] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:41:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9905","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:41:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9905","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:41:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9905","title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9012997004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:41:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:41:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:23] [ERROR] Failed to save deal {"deal_id":"","contact_id":"9905","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","exception":{"message":"SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php","line":244,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php(244): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/DealService.php(139): App\\Repositories\\DealRepository->save()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/DealController.php(1454): App\\Services\\DealService->saveDeal()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(682): App\\Controllers\\DealController->save()\n#4 {main}"}}
[2026-03-16 00:41:47] [INFO] Checking activity reminders 
[2026-03-16 00:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:41:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9905","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:41:55","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:41:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9905","is_new_deal":true}
[2026-03-16 00:41:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:41:55] [INFO] getContactPrimaryPhone called {"contact_id":"9905"}
[2026-03-16 00:41:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:55] [INFO] getContactPrimaryPhone result {"contact_id":"9905","person_found":true,"primary_phone":"9012997004"}
[2026-03-16 00:41:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9012997004"}
[2026-03-16 00:41:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9012997004","contact_id":"9905","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:41:55"}
[2026-03-16 00:41:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:55] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:41:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9905","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:41:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9905","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:41:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9905","title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9012997004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:41:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:41:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:41:55] [ERROR] Failed to save deal {"deal_id":"","contact_id":"9905","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","exception":{"message":"SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php","line":244,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/DealRepository.php(244): PDOStatement->execute()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/DealService.php(139): App\\Repositories\\DealRepository->save()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/DealController.php(1454): App\\Services\\DealService->saveDeal()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(682): App\\Controllers\\DealController->save()\n#4 {main}"}}
[2026-03-16 00:42:17] [INFO] Checking activity reminders 
[2026-03-16 00:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:42:47] [INFO] Checking activity reminders 
[2026-03-16 00:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:43:18] [INFO] Checking activity reminders 
[2026-03-16 00:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:43:48] [INFO] Checking activity reminders 
[2026-03-16 00:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:44:18] [INFO] Checking activity reminders 
[2026-03-16 00:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:44:49] [INFO] Checking activity reminders 
[2026-03-16 00:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:44:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 00:44:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 00:44:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 00:44:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 00:45:09] [INFO] Checking activity reminders 
[2026-03-16 00:45:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:45:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-03-16 00:45:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-03-16 00:45:43] [INFO] Checking activity reminders 
[2026-03-16 00:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:45:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:45:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:45:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:45:55] [INFO] generateDealTitle result {"contact_id":"12838","person_name":"شکور زاده","mobile":"9015323979","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9015323979"}
[2026-03-16 00:46:13] [INFO] Checking activity reminders 
[2026-03-16 00:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:46:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12838","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:46:21","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:46:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12838","is_new_deal":true}
[2026-03-16 00:46:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:46:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:46:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:46:21] [INFO] getContactPrimaryPhone called {"contact_id":"12838"}
[2026-03-16 00:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:46:21] [INFO] getContactPrimaryPhone result {"contact_id":"12838","person_found":true,"primary_phone":"9015323979"}
[2026-03-16 00:46:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9015323979"}
[2026-03-16 00:46:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9015323979","contact_id":"12838","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:46:21"}
[2026-03-16 00:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:46:21] [INFO] generateDealTitle result {"contact_id":"12838","person_name":"شکور زاده","mobile":"9015323979","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9015323979"}
[2026-03-16 00:46:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12838","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:46:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12838","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:46:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12838","title":"معامله سوم 9015323979 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9015323979","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شکور زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:46:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:46:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:46:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12838","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9015323979 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:46:21","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:46:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 00:46:34] [INFO] Checking activity reminders 
[2026-03-16 00:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:46:55] [INFO] Checking activity reminders 
[2026-03-16 00:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:47:25] [INFO] Checking activity reminders 
[2026-03-16 00:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:47:36] [INFO] generateDealTitle result {"contact_id":"21042","person_name":"هدایتی","mobile":"9017371619","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9017371619"}
[2026-03-16 00:47:56] [INFO] Checking activity reminders 
[2026-03-16 00:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:48:04] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21042","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:48:04","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21042","is_new_deal":true}
[2026-03-16 00:48:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:48:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:48:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:48:04] [INFO] getContactPrimaryPhone called {"contact_id":"21042"}
[2026-03-16 00:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:04] [INFO] getContactPrimaryPhone result {"contact_id":"21042","person_found":true,"primary_phone":"9017371619"}
[2026-03-16 00:48:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9017371619"}
[2026-03-16 00:48:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9017371619","contact_id":"21042","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:48:04"}
[2026-03-16 00:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:04] [INFO] generateDealTitle result {"contact_id":"21042","person_name":"هدایتی","mobile":"9017371619","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9017371619"}
[2026-03-16 00:48:04] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21042","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:48:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21042","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:48:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21042","title":"معامله دوم 9017371619 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9017371619","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هدایتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:48:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:48:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21042","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9017371619 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:48:04","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:26] [INFO] Checking activity reminders 
[2026-03-16 00:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 00:48:52] [INFO] Checking activity reminders 
[2026-03-16 00:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:49:03] [INFO] Checking activity reminders 
[2026-03-16 00:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10832","person_id":"15267"}
[2026-03-16 00:49:43] [INFO] Checking activity reminders 
[2026-03-16 00:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:49:50] [INFO] generateDealTitle result {"contact_id":"2916","person_name":"علیرضا نوایی","mobile":"9036002890","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9036002890"}
[2026-03-16 00:50:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2916","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:50:11","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:50:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2916","is_new_deal":true}
[2026-03-16 00:50:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:11] [INFO] getContactPrimaryPhone called {"contact_id":"2916"}
[2026-03-16 00:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:50:11] [INFO] getContactPrimaryPhone result {"contact_id":"2916","person_found":true,"primary_phone":"9036002890"}
[2026-03-16 00:50:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9036002890"}
[2026-03-16 00:50:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9036002890","contact_id":"2916","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:50:11"}
[2026-03-16 00:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:50:11] [INFO] generateDealTitle result {"contact_id":"2916","person_name":"علیرضا نوایی","mobile":"9036002890","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9036002890"}
[2026-03-16 00:50:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2916","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:50:11] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2916","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:50:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2916","title":"معامله دوم 9036002890 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9036002890","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا نوایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:50:11","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:50:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:50:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2916","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9036002890 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:50:11","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 00:50:20] [INFO] Checking activity reminders 
[2026-03-16 00:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:50:35] [INFO] Checking activity reminders 
[2026-03-16 00:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:50:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:41] [INFO] generateDealTitle result {"contact_id":"20886","person_name":"نیما ملکی","mobile":"9046189227","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9046189227"}
[2026-03-16 00:50:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20886","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:50:56","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20886","is_new_deal":true}
[2026-03-16 00:50:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:50:56] [INFO] getContactPrimaryPhone called {"contact_id":"20886"}
[2026-03-16 00:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:56] [INFO] getContactPrimaryPhone result {"contact_id":"20886","person_found":true,"primary_phone":"9046189227"}
[2026-03-16 00:50:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9046189227"}
[2026-03-16 00:50:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9046189227","contact_id":"20886","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:50:56"}
[2026-03-16 00:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:56] [INFO] generateDealTitle result {"contact_id":"20886","person_name":"نیما ملکی","mobile":"9046189227","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9046189227"}
[2026-03-16 00:50:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20886","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:50:56] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20886","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:50:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20886","title":"معامله دوم 9046189227 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9046189227","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نیما ملکی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:50:56","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:50:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:50:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20886","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9046189227 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:50:56","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 00:51:18] [INFO] Checking activity reminders 
[2026-03-16 00:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-03-16 00:51:50] [INFO] Checking activity reminders 
[2026-03-16 00:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:51:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:51:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:51:56] [INFO] generateDealTitle result {"contact_id":"21140","person_name":"خسروجردی","mobile":"9102821143","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9102821143"}
[2026-03-16 00:52:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21140","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:52:13","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:52:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21140","is_new_deal":true}
[2026-03-16 00:52:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:52:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:52:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:52:13] [INFO] getContactPrimaryPhone called {"contact_id":"21140"}
[2026-03-16 00:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:52:13] [INFO] getContactPrimaryPhone result {"contact_id":"21140","person_found":true,"primary_phone":"9102821143"}
[2026-03-16 00:52:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102821143"}
[2026-03-16 00:52:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102821143","contact_id":"21140","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:52:13"}
[2026-03-16 00:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:52:13] [INFO] generateDealTitle result {"contact_id":"21140","person_name":"خسروجردی","mobile":"9102821143","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9102821143"}
[2026-03-16 00:52:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21140","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:52:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21140","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:52:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21140","title":"معامله دوم 9102821143 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9102821143","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خسروجردی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:52:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:52:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:52:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21140","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9102821143 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:52:13","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 00:52:30] [INFO] Checking activity reminders 
[2026-03-16 00:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-03-16 00:52:52] [INFO] Checking activity reminders 
[2026-03-16 00:52:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:52:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:03] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:53:23] [INFO] Checking activity reminders 
[2026-03-16 00:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:53:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9905","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:53:23","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9905","is_new_deal":true}
[2026-03-16 00:53:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:53:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:53:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:53:23] [INFO] getContactPrimaryPhone called {"contact_id":"9905"}
[2026-03-16 00:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:23] [INFO] getContactPrimaryPhone result {"contact_id":"9905","person_found":true,"primary_phone":"9012997004"}
[2026-03-16 00:53:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9012997004"}
[2026-03-16 00:53:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9012997004","contact_id":"9905","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:53:23"}
[2026-03-16 00:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:23] [INFO] generateDealTitle result {"contact_id":"9905","person_name":"طبیب زاده","mobile":"9012997004","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9012997004"}
[2026-03-16 00:53:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9905","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:53:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9905","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:53:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9905","title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9012997004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:53:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:53:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9905","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:53:23","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:53:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 00:53:42] [INFO] Checking activity reminders 
[2026-03-16 00:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:53:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:53:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:53:51] [INFO] generateDealTitle result {"contact_id":"20962","person_name":"امیر رستمی","mobile":"9109507083","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9109507083"}
[2026-03-16 00:54:08] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20962","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:54:08","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:54:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:54:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20962","is_new_deal":true}
[2026-03-16 00:54:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:08] [INFO] getContactPrimaryPhone called {"contact_id":"20962"}
[2026-03-16 00:54:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:54:08] [INFO] getContactPrimaryPhone result {"contact_id":"20962","person_found":true,"primary_phone":"9109507083"}
[2026-03-16 00:54:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9109507083"}
[2026-03-16 00:54:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9109507083","contact_id":"20962","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:54:08"}
[2026-03-16 00:54:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:54:08] [INFO] generateDealTitle result {"contact_id":"20962","person_name":"امیر رستمی","mobile":"9109507083","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9109507083"}
[2026-03-16 00:54:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20962","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:54:08] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20962","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:54:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20962","title":"معامله سوم 9109507083 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9109507083","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر رستمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:54:08","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:54:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:54:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:54:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20962","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9109507083 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:54:08","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:54:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 00:54:18] [INFO] Checking activity reminders 
[2026-03-16 00:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:54:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:26] [INFO] generateDealTitle result {"contact_id":"7236","person_name":"مریم ثالث","mobile":"9111001903","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111001903"}
[2026-03-16 00:54:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7236","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:54:46","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7236","is_new_deal":true}
[2026-03-16 00:54:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:54:46] [INFO] getContactPrimaryPhone called {"contact_id":"7236"}
[2026-03-16 00:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:46] [INFO] getContactPrimaryPhone result {"contact_id":"7236","person_found":true,"primary_phone":"9111001903"}
[2026-03-16 00:54:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111001903"}
[2026-03-16 00:54:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111001903","contact_id":"7236","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:54:46"}
[2026-03-16 00:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:46] [INFO] generateDealTitle result {"contact_id":"7236","person_name":"مریم ثالث","mobile":"9111001903","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111001903"}
[2026-03-16 00:54:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7236","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:54:46] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7236","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:54:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7236","title":"معامله دوم 9111001903 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9111001903","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مریم ثالث","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:54:46","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:54:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7236","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9111001903 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:54:46","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 00:54:49] [INFO] Checking activity reminders 
[2026-03-16 00:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:54:56] [INFO] Checking activity reminders 
[2026-03-16 00:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-03-16 00:55:20] [INFO] Checking activity reminders 
[2026-03-16 00:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:55:30] [INFO] Checking activity reminders 
[2026-03-16 00:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:55:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2760","person_id":"13880"}
[2026-03-16 00:56:10] [INFO] Checking activity reminders 
[2026-03-16 00:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:56:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:30] [INFO] generateDealTitle result {"contact_id":"12676","person_name":"جعفری","mobile":"9113760549","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9113760549"}
[2026-03-16 00:56:41] [INFO] Checking activity reminders 
[2026-03-16 00:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:56:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12676","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:56:46","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:56:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12676","is_new_deal":true}
[2026-03-16 00:56:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:56:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:56:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:56:46] [INFO] getContactPrimaryPhone called {"contact_id":"12676"}
[2026-03-16 00:56:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:46] [INFO] getContactPrimaryPhone result {"contact_id":"12676","person_found":true,"primary_phone":"9113760549"}
[2026-03-16 00:56:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760549"}
[2026-03-16 00:56:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760549","contact_id":"12676","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:56:46"}
[2026-03-16 00:56:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:46] [INFO] generateDealTitle result {"contact_id":"12676","person_name":"جعفری","mobile":"9113760549","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9113760549"}
[2026-03-16 00:56:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12676","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:56:46] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12676","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:56:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12676","title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9113760549","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جعفری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:56:46","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:56:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:56:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:56:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12676","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:56:46","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 00:57:16] [INFO] Checking activity reminders 
[2026-03-16 00:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:57:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:25] [INFO] generateDealTitle result {"contact_id":"3616","person_name":"مبینا امینیان","mobile":"9117582517","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9117582517"}
[2026-03-16 00:57:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3616","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:57:42","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3616","is_new_deal":true}
[2026-03-16 00:57:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:57:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:57:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:57:42] [INFO] getContactPrimaryPhone called {"contact_id":"3616"}
[2026-03-16 00:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:42] [INFO] getContactPrimaryPhone result {"contact_id":"3616","person_found":true,"primary_phone":"9117582517"}
[2026-03-16 00:57:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9117582517"}
[2026-03-16 00:57:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9117582517","contact_id":"3616","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:57:42"}
[2026-03-16 00:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:42] [INFO] generateDealTitle result {"contact_id":"3616","person_name":"مبینا امینیان","mobile":"9117582517","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9117582517"}
[2026-03-16 00:57:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3616","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:57:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3616","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:57:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3616","title":"معامله سوم 9117582517 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9117582517","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مبینا امینیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:57:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:57:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3616","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9117582517 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:57:42","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 00:57:46] [INFO] Checking activity reminders 
[2026-03-16 00:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:57:58] [INFO] Checking activity reminders 
[2026-03-16 00:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:58:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:03] [INFO] generateDealTitle result {"contact_id":"12752","person_name":"رادش","mobile":"9117964006","existing_deals":0,"ordinal":"اول","title":"معامله اول 9117964006"}
[2026-03-16 00:58:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12752","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:58:17","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12752","is_new_deal":true}
[2026-03-16 00:58:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:58:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:58:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:58:17] [INFO] getContactPrimaryPhone called {"contact_id":"12752"}
[2026-03-16 00:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:17] [INFO] getContactPrimaryPhone result {"contact_id":"12752","person_found":true,"primary_phone":"9117964006"}
[2026-03-16 00:58:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9117964006"}
[2026-03-16 00:58:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9117964006","contact_id":"12752","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:58:17"}
[2026-03-16 00:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:17] [INFO] generateDealTitle result {"contact_id":"12752","person_name":"رادش","mobile":"9117964006","existing_deals":0,"ordinal":"اول","title":"معامله اول 9117964006"}
[2026-03-16 00:58:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12752","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:58:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12752","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:58:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12752","title":"معامله اول 9117964006 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9117964006","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رادش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:58:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:58:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12752","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9117964006 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:58:17","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 00:58:29] [INFO] Checking activity reminders 
[2026-03-16 00:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:58:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-03-16 00:58:55] [INFO] Checking activity reminders 
[2026-03-16 00:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:58:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:07] [INFO] generateDealTitle result {"contact_id":"2689","person_name":"کر","mobile":"9119717884","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9119717884"}
[2026-03-16 00:59:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2689","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 00:59:24","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 00:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2689","is_new_deal":true}
[2026-03-16 00:59:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 00:59:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:59:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 00:59:24] [INFO] getContactPrimaryPhone called {"contact_id":"2689"}
[2026-03-16 00:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:24] [INFO] getContactPrimaryPhone result {"contact_id":"2689","person_found":true,"primary_phone":"9119717884"}
[2026-03-16 00:59:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9119717884"}
[2026-03-16 00:59:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9119717884","contact_id":"2689","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 00:59:24"}
[2026-03-16 00:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:24] [INFO] generateDealTitle result {"contact_id":"2689","person_name":"کر","mobile":"9119717884","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9119717884"}
[2026-03-16 00:59:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2689","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 00:59:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2689","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 00:59:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2689","title":"معامله دوم 9119717884 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9119717884","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 00:59:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 00:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 00:59:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2689","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9119717884 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 00:59:24","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 00:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 00:59:26] [INFO] Checking activity reminders 
[2026-03-16 00:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 00:59:57] [INFO] Checking activity reminders 
[2026-03-16 00:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 00:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:00:27] [INFO] Checking activity reminders 
[2026-03-16 01:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:00:57] [INFO] Checking activity reminders 
[2026-03-16 01:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:01:27] [INFO] Checking activity reminders 
[2026-03-16 01:01:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:01:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:01:58] [INFO] Checking activity reminders 
[2026-03-16 01:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:02:28] [INFO] Checking activity reminders 
[2026-03-16 01:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:02:58] [INFO] Checking activity reminders 
[2026-03-16 01:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:03:28] [INFO] Checking activity reminders 
[2026-03-16 01:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:03:58] [INFO] Checking activity reminders 
[2026-03-16 01:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:04:29] [INFO] Checking activity reminders 
[2026-03-16 01:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:04:59] [INFO] Checking activity reminders 
[2026-03-16 01:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:05:29] [INFO] Checking activity reminders 
[2026-03-16 01:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:05:59] [INFO] Checking activity reminders 
[2026-03-16 01:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:06:29] [INFO] Checking activity reminders 
[2026-03-16 01:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:07:00] [INFO] Checking activity reminders 
[2026-03-16 01:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:07:30] [INFO] Checking activity reminders 
[2026-03-16 01:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:08:00] [INFO] Checking activity reminders 
[2026-03-16 01:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:08:30] [INFO] Checking activity reminders 
[2026-03-16 01:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:09:01] [INFO] Checking activity reminders 
[2026-03-16 01:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:09:31] [INFO] Checking activity reminders 
[2026-03-16 01:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:10:01] [INFO] Checking activity reminders 
[2026-03-16 01:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:10:32] [INFO] Checking activity reminders 
[2026-03-16 01:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:11:02] [INFO] Checking activity reminders 
[2026-03-16 01:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:11:32] [INFO] Checking activity reminders 
[2026-03-16 01:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:12:02] [INFO] Checking activity reminders 
[2026-03-16 01:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:12:32] [INFO] Checking activity reminders 
[2026-03-16 01:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:13:03] [INFO] Checking activity reminders 
[2026-03-16 01:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:13:33] [INFO] Checking activity reminders 
[2026-03-16 01:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:14:03] [INFO] Checking activity reminders 
[2026-03-16 01:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:14:33] [INFO] Checking activity reminders 
[2026-03-16 01:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:15:03] [INFO] Checking activity reminders 
[2026-03-16 01:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:15:34] [INFO] Checking activity reminders 
[2026-03-16 01:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:16:04] [INFO] Checking activity reminders 
[2026-03-16 01:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:16:34] [INFO] Checking activity reminders 
[2026-03-16 01:16:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:16:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:17:05] [INFO] Checking activity reminders 
[2026-03-16 01:17:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:17:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:17:35] [INFO] Checking activity reminders 
[2026-03-16 01:17:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:17:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:18:05] [INFO] Checking activity reminders 
[2026-03-16 01:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:18:35] [INFO] Checking activity reminders 
[2026-03-16 01:18:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:18:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:19:06] [INFO] Checking activity reminders 
[2026-03-16 01:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:19:36] [INFO] Checking activity reminders 
[2026-03-16 01:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:20:06] [INFO] Checking activity reminders 
[2026-03-16 01:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:20:37] [INFO] Checking activity reminders 
[2026-03-16 01:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:21:07] [INFO] Checking activity reminders 
[2026-03-16 01:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:21:37] [INFO] Checking activity reminders 
[2026-03-16 01:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:22:07] [INFO] Checking activity reminders 
[2026-03-16 01:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:22:38] [INFO] Checking activity reminders 
[2026-03-16 01:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:23:08] [INFO] Checking activity reminders 
[2026-03-16 01:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:23:38] [INFO] Checking activity reminders 
[2026-03-16 01:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:24:08] [INFO] Checking activity reminders 
[2026-03-16 01:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:24:38] [INFO] Checking activity reminders 
[2026-03-16 01:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:25:09] [INFO] Checking activity reminders 
[2026-03-16 01:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:25:39] [INFO] Checking activity reminders 
[2026-03-16 01:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:26:09] [INFO] Checking activity reminders 
[2026-03-16 01:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:26:39] [INFO] Checking activity reminders 
[2026-03-16 01:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:27:09] [INFO] Checking activity reminders 
[2026-03-16 01:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:27:40] [INFO] Checking activity reminders 
[2026-03-16 01:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:28:10] [INFO] Checking activity reminders 
[2026-03-16 01:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:28:40] [INFO] Checking activity reminders 
[2026-03-16 01:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:29:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 01:29:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 01:29:11] [INFO] Checking activity reminders 
[2026-03-16 01:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:29:20] [INFO] Checking activity reminders 
[2026-03-16 01:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:29:36] [INFO] Checking activity reminders 
[2026-03-16 01:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:29:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:29:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:29:51] [INFO] generateDealTitle result {"contact_id":"13665","person_name":"کلانتری کلانتری","mobile":"9119910327","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9119910327"}
[2026-03-16 01:30:06] [INFO] Checking activity reminders 
[2026-03-16 01:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:30:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13665","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:30:14","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:30:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13665","is_new_deal":true}
[2026-03-16 01:30:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:30:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:30:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:30:14] [INFO] getContactPrimaryPhone called {"contact_id":"13665"}
[2026-03-16 01:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:30:14] [INFO] getContactPrimaryPhone result {"contact_id":"13665","person_found":true,"primary_phone":"9119910327"}
[2026-03-16 01:30:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9119910327"}
[2026-03-16 01:30:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9119910327","contact_id":"13665","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:30:14"}
[2026-03-16 01:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:30:14] [INFO] generateDealTitle result {"contact_id":"13665","person_name":"کلانتری کلانتری","mobile":"9119910327","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9119910327"}
[2026-03-16 01:30:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13665","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:30:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13665","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:30:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13665","title":"معامله دوم 9119910327 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9119910327","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کلانتری کلانتری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:30:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:30:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:30:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13665","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9119910327 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:30:14","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 01:30:26] [INFO] Checking activity reminders 
[2026-03-16 01:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21058","person_id":"10917"}
[2026-03-16 01:30:40] [INFO] Checking activity reminders 
[2026-03-16 01:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:30:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:30:47] [INFO] generateDealTitle result {"contact_id":"1025","person_name":"کیانی","mobile":"9120445350","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9120445350"}
[2026-03-16 01:31:02] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1025","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:31:02","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:31:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1025","is_new_deal":true}
[2026-03-16 01:31:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:31:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:31:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:31:02] [INFO] getContactPrimaryPhone called {"contact_id":"1025"}
[2026-03-16 01:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:31:02] [INFO] getContactPrimaryPhone result {"contact_id":"1025","person_found":true,"primary_phone":"9120445350"}
[2026-03-16 01:31:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120445350"}
[2026-03-16 01:31:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120445350","contact_id":"1025","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:31:02"}
[2026-03-16 01:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:31:02] [INFO] generateDealTitle result {"contact_id":"1025","person_name":"کیانی","mobile":"9120445350","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9120445350"}
[2026-03-16 01:31:02] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1025","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:31:02] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1025","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:31:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1025","title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9120445350","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کیانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:31:02","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:31:02] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:31:02] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1025","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:31:02","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 01:31:17] [INFO] Checking activity reminders 
[2026-03-16 01:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:31:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1000","person_id":"10842"}
[2026-03-16 01:31:33] [INFO] Checking activity reminders 
[2026-03-16 01:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-03-16 01:31:49] [INFO] Checking activity reminders 
[2026-03-16 01:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:31:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:31:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:31:58] [INFO] generateDealTitle result {"contact_id":"2895","person_name":"عماد آذر","mobile":"9121187661","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121187661"}
[2026-03-16 01:32:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2895","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:32:15","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:32:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2895","is_new_deal":true}
[2026-03-16 01:32:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:32:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:32:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:32:15] [INFO] getContactPrimaryPhone called {"contact_id":"2895"}
[2026-03-16 01:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:32:15] [INFO] getContactPrimaryPhone result {"contact_id":"2895","person_found":true,"primary_phone":"9121187661"}
[2026-03-16 01:32:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121187661"}
[2026-03-16 01:32:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121187661","contact_id":"2895","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:32:15"}
[2026-03-16 01:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:32:15] [INFO] generateDealTitle result {"contact_id":"2895","person_name":"عماد آذر","mobile":"9121187661","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121187661"}
[2026-03-16 01:32:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2895","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:32:15] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2895","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:32:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2895","title":"معامله سوم 9121187661 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121187661","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عماد آذر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:32:15","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:32:15] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:32:15] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2895","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9121187661 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:32:15","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 01:32:19] [INFO] Checking activity reminders 
[2026-03-16 01:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:32:33] [INFO] Checking activity reminders 
[2026-03-16 01:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:32:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"892","person_id":"12437"}
[2026-03-16 01:32:52] [INFO] Checking activity reminders 
[2026-03-16 01:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:32:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:32:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:01] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_99","person_name":"ادیب","mobile":"9126126528","existing_deals":0,"ordinal":"اول","title":"معامله اول 9126126528"}
[2026-03-16 01:33:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_99","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:33:16","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_99","is_new_deal":true}
[2026-03-16 01:33:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:33:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:33:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:33:16] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_99"}
[2026-03-16 01:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:16] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_99","person_found":true,"primary_phone":"9126126528"}
[2026-03-16 01:33:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126126528"}
[2026-03-16 01:33:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126126528","contact_id":"local_1403_09_26_99","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:33:16"}
[2026-03-16 01:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:16] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_99","person_name":"ادیب","mobile":"9126126528","existing_deals":0,"ordinal":"اول","title":"معامله اول 9126126528"}
[2026-03-16 01:33:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_99","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:33:16] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_99","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:33:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_99","title":"معامله اول 9126126528 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9126126528","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ادیب","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:33:16","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:33:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_99","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9126126528 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:33:17","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:33:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 01:33:23] [INFO] Checking activity reminders 
[2026-03-16 01:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:33:52] [INFO] Checking activity reminders 
[2026-03-16 01:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-03-16 01:34:10] [INFO] Checking activity reminders 
[2026-03-16 01:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1759","person_id":"12728"}
[2026-03-16 01:34:58] [INFO] Checking activity reminders 
[2026-03-16 01:34:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:34:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:42:15] [INFO] Checking activity reminders 
[2026-03-16 01:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:42:57] [INFO] Checking activity reminders 
[2026-03-16 01:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-03-16 01:43:27] [INFO] Checking activity reminders 
[2026-03-16 01:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:43:50] [INFO] Checking activity reminders 
[2026-03-16 01:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:43:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4667","person_id":"13922"}
[2026-03-16 01:44:03] [INFO] Checking activity reminders 
[2026-03-16 01:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:09] [INFO] generateDealTitle result {"contact_id":"21113","person_name":"خانم محمدی","mobile":"9036029749","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9036029749"}
[2026-03-16 01:44:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21113","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:44:29","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21113","is_new_deal":true}
[2026-03-16 01:44:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:44:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:44:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:44:29] [INFO] getContactPrimaryPhone called {"contact_id":"21113"}
[2026-03-16 01:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:29] [INFO] getContactPrimaryPhone result {"contact_id":"21113","person_found":true,"primary_phone":"9036029749"}
[2026-03-16 01:44:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9036029749"}
[2026-03-16 01:44:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9036029749","contact_id":"21113","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:44:29"}
[2026-03-16 01:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:29] [INFO] generateDealTitle result {"contact_id":"21113","person_name":"خانم محمدی","mobile":"9036029749","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9036029749"}
[2026-03-16 01:44:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21113","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:44:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21113","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:44:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21113","title":"معامله دوم 9036029749 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9036029749","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانم محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:44:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:44:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21113","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9036029749 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:44:29","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21113","person_id":"15311"}
[2026-03-16 01:44:33] [INFO] Checking activity reminders 
[2026-03-16 01:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:44:57] [INFO] Checking activity reminders 
[2026-03-16 01:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2764","person_id":"15115"}
[2026-03-16 01:45:27] [INFO] Checking activity reminders 
[2026-03-16 01:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:45:35] [INFO] Checking activity reminders 
[2026-03-16 01:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:45:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:45:43] [INFO] generateDealTitle result {"contact_id":"1584","person_name":"رحیم آقا زاده","mobile":"9102429707","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9102429707"}
[2026-03-16 01:46:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1584","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:46:00","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:46:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1584","is_new_deal":true}
[2026-03-16 01:46:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:00] [INFO] getContactPrimaryPhone called {"contact_id":"1584"}
[2026-03-16 01:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:46:00] [INFO] getContactPrimaryPhone result {"contact_id":"1584","person_found":true,"primary_phone":"9102429707"}
[2026-03-16 01:46:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102429707"}
[2026-03-16 01:46:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102429707","contact_id":"1584","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:46:00"}
[2026-03-16 01:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:46:00] [INFO] generateDealTitle result {"contact_id":"1584","person_name":"رحیم آقا زاده","mobile":"9102429707","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9102429707"}
[2026-03-16 01:46:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1584","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:46:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1584","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:46:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1584","title":"معامله سوم 9102429707 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9102429707","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رحیم آقا زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:46:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:46:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:46:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1584","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9102429707 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:46:00","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:46:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-16 01:46:12] [INFO] Checking activity reminders 
[2026-03-16 01:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:19] [INFO] generateDealTitle result {"contact_id":"7610","person_name":"نیک نام","mobile":"9103111803","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103111803"}
[2026-03-16 01:46:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7610","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:46:38","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7610","is_new_deal":true}
[2026-03-16 01:46:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:46:38] [INFO] getContactPrimaryPhone called {"contact_id":"7610"}
[2026-03-16 01:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:38] [INFO] getContactPrimaryPhone result {"contact_id":"7610","person_found":true,"primary_phone":"9103111803"}
[2026-03-16 01:46:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103111803"}
[2026-03-16 01:46:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103111803","contact_id":"7610","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:46:38"}
[2026-03-16 01:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:38] [INFO] generateDealTitle result {"contact_id":"7610","person_name":"نیک نام","mobile":"9103111803","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103111803"}
[2026-03-16 01:46:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7610","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:46:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7610","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:46:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7610","title":"معامله دوم 9103111803 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9103111803","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"نیک نام","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:46:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:46:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:46:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7610","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9103111803 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:46:38","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7610","person_id":"14411"}
[2026-03-16 01:50:10] [INFO] Checking activity reminders 
[2026-03-16 01:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:50:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17338","person_id":"11602"}
[2026-03-16 01:50:31] [INFO] Checking activity reminders 
[2026-03-16 01:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:51:16] [INFO] Checking activity reminders 
[2026-03-16 01:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:51:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2753","person_id":"14365"}
[2026-03-16 01:51:33] [INFO] Checking activity reminders 
[2026-03-16 01:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:51:42] [INFO] Checking activity reminders 
[2026-03-16 01:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:51:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:51:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:51:52] [INFO] generateDealTitle result {"contact_id":"10016","person_name":"قاسمی","mobile":"9011765116","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9011765116"}
[2026-03-16 01:52:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10016","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:52:12","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:52:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10016","is_new_deal":true}
[2026-03-16 01:52:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:52:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:52:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:52:12] [INFO] getContactPrimaryPhone called {"contact_id":"10016"}
[2026-03-16 01:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:52:12] [INFO] getContactPrimaryPhone result {"contact_id":"10016","person_found":true,"primary_phone":"9011765116"}
[2026-03-16 01:52:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9011765116"}
[2026-03-16 01:52:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9011765116","contact_id":"10016","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:52:12"}
[2026-03-16 01:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:52:12] [INFO] generateDealTitle result {"contact_id":"10016","person_name":"قاسمی","mobile":"9011765116","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9011765116"}
[2026-03-16 01:52:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10016","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:52:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"10016","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:52:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10016","title":"معامله دوم 9011765116 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9011765116","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"قاسمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:52:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:52:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:52:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10016","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9011765116 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:52:12","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-03-16 01:52:13] [INFO] Checking activity reminders 
[2026-03-16 01:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:52:31] [INFO] Checking activity reminders 
[2026-03-16 01:52:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:52:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:52:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5379","person_id":"13139"}
[2026-03-16 01:53:48] [INFO] Checking activity reminders 
[2026-03-16 01:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:06] [INFO] generateDealTitle result {"contact_id":"9541","person_name":"فرهاد داریوش","mobile":"9021021100","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9021021100"}
[2026-03-16 01:54:19] [INFO] Checking activity reminders 
[2026-03-16 01:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:54:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9541","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:54:30","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9541","is_new_deal":true}
[2026-03-16 01:54:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:54:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:54:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:54:30] [INFO] getContactPrimaryPhone called {"contact_id":"9541"}
[2026-03-16 01:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:30] [INFO] getContactPrimaryPhone result {"contact_id":"9541","person_found":true,"primary_phone":"9021021100"}
[2026-03-16 01:54:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9021021100"}
[2026-03-16 01:54:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9021021100","contact_id":"9541","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:54:30"}
[2026-03-16 01:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:30] [INFO] generateDealTitle result {"contact_id":"9541","person_name":"فرهاد داریوش","mobile":"9021021100","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9021021100"}
[2026-03-16 01:54:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9541","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:54:30] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9541","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:54:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9541","title":"معامله دوم 9021021100 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9021021100","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"فرهاد داریوش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:54:30","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:54:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9541","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9021021100 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:54:30","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 01:54:55] [INFO] Checking activity reminders 
[2026-03-16 01:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:03] [INFO] generateDealTitle result {"contact_id":"799","person_name":"حسین زبیدی","mobile":"9028775420","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9028775420"}
[2026-03-16 01:55:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"799","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:55:19","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"799","is_new_deal":true}
[2026-03-16 01:55:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:19] [INFO] getContactPrimaryPhone called {"contact_id":"799"}
[2026-03-16 01:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:19] [INFO] getContactPrimaryPhone result {"contact_id":"799","person_found":true,"primary_phone":"9028775420"}
[2026-03-16 01:55:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9028775420"}
[2026-03-16 01:55:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9028775420","contact_id":"799","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:55:19"}
[2026-03-16 01:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:19] [INFO] generateDealTitle result {"contact_id":"799","person_name":"حسین زبیدی","mobile":"9028775420","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9028775420"}
[2026-03-16 01:55:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"799","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:55:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"799","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:55:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"799","title":"معامله دوم 9028775420 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9028775420","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حسین زبیدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:55:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:55:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"799","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9028775420 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:55:19","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"799","person_id":"13436"}
[2026-03-16 01:55:31] [INFO] Checking activity reminders 
[2026-03-16 01:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:55:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:40] [INFO] generateDealTitle result {"contact_id":"801","person_name":"سینا مرادی","mobile":"9031310160","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031310160"}
[2026-03-16 01:55:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"801","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 01:55:59","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 01:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"801","is_new_deal":true}
[2026-03-16 01:55:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 01:55:59] [INFO] getContactPrimaryPhone called {"contact_id":"801"}
[2026-03-16 01:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:59] [INFO] getContactPrimaryPhone result {"contact_id":"801","person_found":true,"primary_phone":"9031310160"}
[2026-03-16 01:55:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9031310160"}
[2026-03-16 01:55:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9031310160","contact_id":"801","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 01:55:59"}
[2026-03-16 01:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:59] [INFO] generateDealTitle result {"contact_id":"801","person_name":"سینا مرادی","mobile":"9031310160","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031310160"}
[2026-03-16 01:55:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"801","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 01:55:59] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"801","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 01:55:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"801","title":"معامله دوم 9031310160 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9031310160","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"سینا مرادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 01:55:59","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 01:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:55:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 01:55:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"801","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9031310160 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 01:55:59","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 01:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"801","person_id":"13521"}
[2026-03-16 01:56:02] [INFO] Checking activity reminders 
[2026-03-16 01:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:56:38] [INFO] Checking activity reminders 
[2026-03-16 01:56:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:56:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:56:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-16 01:56:52] [INFO] Checking activity reminders 
[2026-03-16 01:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:57:23] [INFO] Checking activity reminders 
[2026-03-16 01:57:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:57:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:57:53] [INFO] Checking activity reminders 
[2026-03-16 01:57:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:57:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:58:23] [INFO] Checking activity reminders 
[2026-03-16 01:58:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:58:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:58:53] [INFO] Checking activity reminders 
[2026-03-16 01:58:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:58:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:59:24] [INFO] Checking activity reminders 
[2026-03-16 01:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 01:59:54] [INFO] Checking activity reminders 
[2026-03-16 01:59:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 01:59:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:10] [INFO] generateDealTitle result {"contact_id":"16402","person_name":"خانوم ایزانلو","mobile":"9103338058","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9103338058"}
[2026-03-16 02:00:24] [INFO] Checking activity reminders 
[2026-03-16 02:00:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:00:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:00:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16402","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:00:43","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16402","is_new_deal":true}
[2026-03-16 02:00:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:00:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:00:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:00:43] [INFO] getContactPrimaryPhone called {"contact_id":"16402"}
[2026-03-16 02:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:43] [INFO] getContactPrimaryPhone result {"contact_id":"16402","person_found":true,"primary_phone":"9103338058"}
[2026-03-16 02:00:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103338058"}
[2026-03-16 02:00:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103338058","contact_id":"16402","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:00:43"}
[2026-03-16 02:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:43] [INFO] generateDealTitle result {"contact_id":"16402","person_name":"خانوم ایزانلو","mobile":"9103338058","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9103338058"}
[2026-03-16 02:00:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16402","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:00:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16402","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:00:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16402","title":"معامله چهارم 9103338058 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9103338058","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانوم ایزانلو","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:00:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:00:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:00:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16402","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9103338058 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:00:43","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-16 02:01:03] [INFO] Checking activity reminders 
[2026-03-16 02:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:10] [INFO] generateDealTitle result {"contact_id":"2022","person_name":"امیرحسین وفا","mobile":"9100642942","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9100642942"}
[2026-03-16 02:01:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2022","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:01:33","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2022","is_new_deal":true}
[2026-03-16 02:01:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:01:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:01:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:01:33] [INFO] getContactPrimaryPhone called {"contact_id":"2022"}
[2026-03-16 02:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:33] [INFO] getContactPrimaryPhone result {"contact_id":"2022","person_found":true,"primary_phone":"9100642942"}
[2026-03-16 02:01:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9100642942"}
[2026-03-16 02:01:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9100642942","contact_id":"2022","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:01:33"}
[2026-03-16 02:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:33] [INFO] generateDealTitle result {"contact_id":"2022","person_name":"امیرحسین وفا","mobile":"9100642942","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9100642942"}
[2026-03-16 02:01:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2022","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:01:33] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"2022","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:01:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2022","title":"معامله دوم 9100642942 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9100642942","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"امیرحسین وفا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:01:33","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:01:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2022","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9100642942 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:01:33","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:01:33] [INFO] Checking activity reminders 
[2026-03-16 02:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:01:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-03-16 02:02:12] [INFO] Checking activity reminders 
[2026-03-16 02:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:02:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13392","person_id":"13935"}
[2026-03-16 02:02:32] [INFO] Checking activity reminders 
[2026-03-16 02:02:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:02:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:02:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:02:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:02:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:02:44] [INFO] generateDealTitle result {"contact_id":"17360","person_name":"عرفان قنبری","mobile":"9108724194","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9108724194"}
[2026-03-16 02:03:02] [INFO] Checking activity reminders 
[2026-03-16 02:03:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:03:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:03:33] [INFO] Checking activity reminders 
[2026-03-16 02:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:04:03] [INFO] Checking activity reminders 
[2026-03-16 02:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:04:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17360","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:04:10","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:04:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17360","is_new_deal":true}
[2026-03-16 02:04:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:10] [INFO] getContactPrimaryPhone called {"contact_id":"17360"}
[2026-03-16 02:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:04:10] [INFO] getContactPrimaryPhone result {"contact_id":"17360","person_found":true,"primary_phone":"9108724194"}
[2026-03-16 02:04:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9108724194"}
[2026-03-16 02:04:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9108724194","contact_id":"17360","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:04:10"}
[2026-03-16 02:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:04:10] [INFO] generateDealTitle result {"contact_id":"17360","person_name":"عرفان قنبری","mobile":"9108724194","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9108724194"}
[2026-03-16 02:04:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17360","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:04:10] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"17360","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:04:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17360","title":"معامله دوم 9108724194 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9108724194","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"عرفان قنبری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:04:10","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:04:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:04:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17360","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9108724194 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:04:10","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17360","person_id":"14744"}
[2026-03-16 02:04:23] [INFO] Checking activity reminders 
[2026-03-16 02:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:04:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:32] [INFO] generateDealTitle result {"contact_id":"17461","person_name":"اقای زاهدی","mobile":"9111711719","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111711719"}
[2026-03-16 02:04:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17461","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:04:49","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:04:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17461","is_new_deal":true}
[2026-03-16 02:04:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:04:49] [INFO] getContactPrimaryPhone called {"contact_id":"17461"}
[2026-03-16 02:04:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:49] [INFO] getContactPrimaryPhone result {"contact_id":"17461","person_found":true,"primary_phone":"9111711719"}
[2026-03-16 02:04:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111711719"}
[2026-03-16 02:04:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111711719","contact_id":"17461","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:04:49"}
[2026-03-16 02:04:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:49] [INFO] generateDealTitle result {"contact_id":"17461","person_name":"اقای زاهدی","mobile":"9111711719","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111711719"}
[2026-03-16 02:04:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17461","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:04:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"17461","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:04:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17461","title":"معامله دوم 9111711719 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9111711719","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای زاهدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:04:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:04:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:04:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17461","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9111711719 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:04:49","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17461","person_id":"11338"}
[2026-03-16 02:04:54] [INFO] Checking activity reminders 
[2026-03-16 02:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:05:08] [INFO] Checking activity reminders 
[2026-03-16 02:05:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:05:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:05:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:13] [INFO] generateDealTitle result {"contact_id":"9476","person_name":"دانیال مینی دوره","mobile":"9112760769","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112760769"}
[2026-03-16 02:05:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9476","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:05:29","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9476","is_new_deal":true}
[2026-03-16 02:05:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:05:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:05:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:05:29] [INFO] getContactPrimaryPhone called {"contact_id":"9476"}
[2026-03-16 02:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:29] [INFO] getContactPrimaryPhone result {"contact_id":"9476","person_found":true,"primary_phone":"9112760769"}
[2026-03-16 02:05:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112760769"}
[2026-03-16 02:05:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112760769","contact_id":"9476","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:05:29"}
[2026-03-16 02:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:29] [INFO] generateDealTitle result {"contact_id":"9476","person_name":"دانیال مینی دوره","mobile":"9112760769","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112760769"}
[2026-03-16 02:05:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9476","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:05:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"9476","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:05:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9476","title":"معامله دوم 9112760769 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9112760769","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"دانیال مینی دوره","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:05:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:05:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9476","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9112760769 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:05:29","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9476","person_id":"11238"}
[2026-03-16 02:05:39] [INFO] Checking activity reminders 
[2026-03-16 02:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:05:48] [INFO] generateDealTitle result {"contact_id":"21063","person_name":"اقای زرودی","mobile":"9113911862","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9113911862"}
[2026-03-16 02:06:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21063","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:06:03","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:06:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21063","is_new_deal":true}
[2026-03-16 02:06:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:03] [INFO] getContactPrimaryPhone called {"contact_id":"21063"}
[2026-03-16 02:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:06:03] [INFO] getContactPrimaryPhone result {"contact_id":"21063","person_found":true,"primary_phone":"9113911862"}
[2026-03-16 02:06:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113911862"}
[2026-03-16 02:06:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113911862","contact_id":"21063","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:06:03"}
[2026-03-16 02:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:06:03] [INFO] generateDealTitle result {"contact_id":"21063","person_name":"اقای زرودی","mobile":"9113911862","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9113911862"}
[2026-03-16 02:06:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21063","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:06:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21063","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:06:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21063","title":"معامله دوم 9113911862 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9113911862","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای زرودی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:06:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:06:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:06:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21063","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9113911862 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:06:03","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21063","person_id":"11667"}
[2026-03-16 02:06:14] [INFO] Checking activity reminders 
[2026-03-16 02:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:21] [INFO] generateDealTitle result {"contact_id":"647","person_name":"رضا قربانی","mobile":"9114234003","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9114234003"}
[2026-03-16 02:06:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"647","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:06:37","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:06:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"647","is_new_deal":true}
[2026-03-16 02:06:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:06:37] [INFO] getContactPrimaryPhone called {"contact_id":"647"}
[2026-03-16 02:06:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:37] [INFO] getContactPrimaryPhone result {"contact_id":"647","person_found":true,"primary_phone":"9114234003"}
[2026-03-16 02:06:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114234003"}
[2026-03-16 02:06:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114234003","contact_id":"647","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:06:37"}
[2026-03-16 02:06:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:37] [INFO] generateDealTitle result {"contact_id":"647","person_name":"رضا قربانی","mobile":"9114234003","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9114234003"}
[2026-03-16 02:06:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"647","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:06:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"647","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:06:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"647","title":"معامله دوم 9114234003 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9114234003","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رضا قربانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:06:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:06:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:06:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"647","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9114234003 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:06:37","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:06:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-03-16 02:06:55] [INFO] Checking activity reminders 
[2026-03-16 02:06:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:06:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:07:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_79","person_id":"21156"}
[2026-03-16 02:07:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_79","person_id":"21156"}
[2026-03-16 02:07:12] [INFO] Checking activity reminders 
[2026-03-16 02:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9004","person_id":"10605"}
[2026-03-16 02:07:25] [INFO] Checking activity reminders 
[2026-03-16 02:07:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:07:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:07:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:33] [INFO] generateDealTitle result {"contact_id":"16949","person_name":"حاتم","mobile":"9120223362","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120223362"}
[2026-03-16 02:07:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16949","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:07:53","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:07:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16949","is_new_deal":true}
[2026-03-16 02:07:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:07:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:07:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:07:53] [INFO] getContactPrimaryPhone called {"contact_id":"16949"}
[2026-03-16 02:07:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:53] [INFO] getContactPrimaryPhone result {"contact_id":"16949","person_found":true,"primary_phone":"9120223362"}
[2026-03-16 02:07:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120223362"}
[2026-03-16 02:07:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120223362","contact_id":"16949","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:07:53"}
[2026-03-16 02:07:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:53] [INFO] generateDealTitle result {"contact_id":"16949","person_name":"حاتم","mobile":"9120223362","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120223362"}
[2026-03-16 02:07:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16949","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:07:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16949","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:07:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16949","title":"معامله دوم 9120223362 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120223362","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حاتم","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:07:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:07:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:07:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:07:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16949","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120223362 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:07:54","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16949","person_id":"10533"}
[2026-03-16 02:08:10] [INFO] Checking activity reminders 
[2026-03-16 02:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:08:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:18] [INFO] generateDealTitle result {"contact_id":"5056","person_name":"پاک خصال","mobile":"9120728275","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120728275"}
[2026-03-16 02:08:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5056","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:08:38","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5056","is_new_deal":true}
[2026-03-16 02:08:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:08:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:08:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:08:38] [INFO] getContactPrimaryPhone called {"contact_id":"5056"}
[2026-03-16 02:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:38] [INFO] getContactPrimaryPhone result {"contact_id":"5056","person_found":true,"primary_phone":"9120728275"}
[2026-03-16 02:08:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120728275"}
[2026-03-16 02:08:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120728275","contact_id":"5056","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:08:38"}
[2026-03-16 02:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:38] [INFO] generateDealTitle result {"contact_id":"5056","person_name":"پاک خصال","mobile":"9120728275","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120728275"}
[2026-03-16 02:08:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5056","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:08:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5056","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:08:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5056","title":"معامله دوم 9120728275 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120728275","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"پاک خصال","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:08:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:08:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5056","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120728275 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:08:38","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-03-16 02:08:50] [INFO] Checking activity reminders 
[2026-03-16 02:08:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:08:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:08:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:02] [INFO] generateDealTitle result {"contact_id":"21324","person_name":"محمد ترحمی","mobile":"9121000970","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121000970"}
[2026-03-16 02:09:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21324","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:09:18","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21324","is_new_deal":true}
[2026-03-16 02:09:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:09:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:09:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:09:18] [INFO] getContactPrimaryPhone called {"contact_id":"21324"}
[2026-03-16 02:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:18] [INFO] getContactPrimaryPhone result {"contact_id":"21324","person_found":true,"primary_phone":"9121000970"}
[2026-03-16 02:09:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121000970"}
[2026-03-16 02:09:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121000970","contact_id":"21324","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:09:18"}
[2026-03-16 02:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:18] [INFO] generateDealTitle result {"contact_id":"21324","person_name":"محمد ترحمی","mobile":"9121000970","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121000970"}
[2026-03-16 02:09:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21324","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:09:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21324","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:09:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21324","title":"معامله سوم 9121000970 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121000970","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"محمد ترحمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:09:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:09:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21324","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9121000970 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:09:18","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-16 02:09:20] [INFO] Checking activity reminders 
[2026-03-16 02:09:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:09:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:09:34] [INFO] Checking activity reminders 
[2026-03-16 02:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:09:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9555","person_id":"12456"}
[2026-03-16 02:09:47] [INFO] Checking activity reminders 
[2026-03-16 02:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:09:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15989","person_id":"13016"}
[2026-03-16 02:10:00] [INFO] Checking activity reminders 
[2026-03-16 02:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:10:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:08] [INFO] generateDealTitle result {"contact_id":"15831","person_name":"اقای سکوتی","mobile":"9122157602","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122157602"}
[2026-03-16 02:10:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15831","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:10:24","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:10:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15831","is_new_deal":true}
[2026-03-16 02:10:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:10:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:10:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:10:24] [INFO] getContactPrimaryPhone called {"contact_id":"15831"}
[2026-03-16 02:10:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:24] [INFO] getContactPrimaryPhone result {"contact_id":"15831","person_found":true,"primary_phone":"9122157602"}
[2026-03-16 02:10:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122157602"}
[2026-03-16 02:10:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122157602","contact_id":"15831","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:10:24"}
[2026-03-16 02:10:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:24] [INFO] generateDealTitle result {"contact_id":"15831","person_name":"اقای سکوتی","mobile":"9122157602","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122157602"}
[2026-03-16 02:10:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15831","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:10:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"15831","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:10:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15831","title":"معامله دوم 9122157602 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122157602","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای سکوتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:10:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:10:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:10:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15831","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9122157602 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:10:24","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:10:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15831","person_id":"12878"}
[2026-03-16 02:10:42] [INFO] Checking activity reminders 
[2026-03-16 02:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:10:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:10:49] [INFO] generateDealTitle result {"contact_id":"5923","person_name":"رضا جهانیان","mobile":"9122283071","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122283071"}
[2026-03-16 02:11:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5923","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:11:06","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:11:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5923","is_new_deal":true}
[2026-03-16 02:11:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:11:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:11:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:11:06] [INFO] getContactPrimaryPhone called {"contact_id":"5923"}
[2026-03-16 02:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:11:06] [INFO] getContactPrimaryPhone result {"contact_id":"5923","person_found":true,"primary_phone":"9122283071"}
[2026-03-16 02:11:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122283071"}
[2026-03-16 02:11:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122283071","contact_id":"5923","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:11:06"}
[2026-03-16 02:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:11:06] [INFO] generateDealTitle result {"contact_id":"5923","person_name":"رضا جهانیان","mobile":"9122283071","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122283071"}
[2026-03-16 02:11:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5923","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:11:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5923","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:11:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5923","title":"معامله دوم 9122283071 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122283071","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رضا جهانیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:11:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:11:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:11:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5923","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9122283071 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:11:06","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5923","person_id":"11985"}
[2026-03-16 02:11:37] [INFO] Checking activity reminders 
[2026-03-16 02:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:25:53] [INFO] Checking activity reminders 
[2026-03-16 02:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:25:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-03-16 02:26:15] [INFO] Checking activity reminders 
[2026-03-16 02:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:26:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-03-16 02:26:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 02:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 02:26:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 02:26:41] [INFO] Checking activity reminders 
[2026-03-16 02:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:26:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5736","person_id":"13598"}
[2026-03-16 02:27:05] [INFO] Checking activity reminders 
[2026-03-16 02:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:27:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:17] [INFO] generateDealTitle result {"contact_id":"21226","person_name":"پوررونقی","mobile":"9030547321","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9030547321"}
[2026-03-16 02:27:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21226","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:27:35","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21226","is_new_deal":true}
[2026-03-16 02:27:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:27:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:27:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:27:35] [INFO] getContactPrimaryPhone called {"contact_id":"21226"}
[2026-03-16 02:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:35] [INFO] getContactPrimaryPhone result {"contact_id":"21226","person_found":true,"primary_phone":"9030547321"}
[2026-03-16 02:27:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9030547321"}
[2026-03-16 02:27:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9030547321","contact_id":"21226","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:27:35"}
[2026-03-16 02:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:35] [INFO] generateDealTitle result {"contact_id":"21226","person_name":"پوررونقی","mobile":"9030547321","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9030547321"}
[2026-03-16 02:27:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21226","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:27:35] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21226","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:27:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21226","title":"معامله دوم 9030547321 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9030547321","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"پوررونقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:27:35","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:27:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21226","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9030547321 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:27:35","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 02:27:37] [INFO] Checking activity reminders 
[2026-03-16 02:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:27:52] [INFO] Checking activity reminders 
[2026-03-16 02:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-03-16 02:28:04] [INFO] Checking activity reminders 
[2026-03-16 02:28:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:28:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:14] [INFO] generateDealTitle result {"contact_id":"13330","person_name":"صادقی","mobile":"9107249015","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9107249015"}
[2026-03-16 02:28:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13330","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:28:28","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13330","is_new_deal":true}
[2026-03-16 02:28:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:28:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:28:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:28:28] [INFO] getContactPrimaryPhone called {"contact_id":"13330"}
[2026-03-16 02:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:28] [INFO] getContactPrimaryPhone result {"contact_id":"13330","person_found":true,"primary_phone":"9107249015"}
[2026-03-16 02:28:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9107249015"}
[2026-03-16 02:28:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9107249015","contact_id":"13330","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:28:28"}
[2026-03-16 02:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:28] [INFO] generateDealTitle result {"contact_id":"13330","person_name":"صادقی","mobile":"9107249015","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9107249015"}
[2026-03-16 02:28:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13330","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:28:28] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"13330","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:28:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13330","title":"معامله سوم 9107249015 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9107249015","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"صادقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:28:28","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:28:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13330","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9107249015 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:28:28","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 02:28:43] [INFO] Checking activity reminders 
[2026-03-16 02:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:28:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6639","person_id":"14843"}
[2026-03-16 02:28:57] [INFO] Checking activity reminders 
[2026-03-16 02:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:04] [INFO] generateDealTitle result {"contact_id":"21498","person_name":"سوری","mobile":"9120583468","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120583468"}
[2026-03-16 02:29:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21498","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:29:23","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21498","is_new_deal":true}
[2026-03-16 02:29:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:29:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:29:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:29:23] [INFO] getContactPrimaryPhone called {"contact_id":"21498"}
[2026-03-16 02:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:23] [INFO] getContactPrimaryPhone result {"contact_id":"21498","person_found":true,"primary_phone":"9120583468"}
[2026-03-16 02:29:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120583468"}
[2026-03-16 02:29:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120583468","contact_id":"21498","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:29:23"}
[2026-03-16 02:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:23] [INFO] generateDealTitle result {"contact_id":"21498","person_name":"سوری","mobile":"9120583468","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120583468"}
[2026-03-16 02:29:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21498","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:29:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21498","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:29:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21498","title":"معامله دوم 9120583468 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120583468","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:29:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:29:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21498","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120583468 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:29:23","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 02:29:41] [INFO] Checking activity reminders 
[2026-03-16 02:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:30:11] [INFO] Checking activity reminders 
[2026-03-16 02:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:30:41] [INFO] Checking activity reminders 
[2026-03-16 02:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:31:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 02:31:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 02:31:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 02:31:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 02:31:15] [INFO] Checking activity reminders 
[2026-03-16 02:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:22] [INFO] generateDealTitle result {"contact_id":"21443","person_name":"مجیدویش","mobile":"9120912677","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120912677"}
[2026-03-16 02:31:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21443","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:31:36","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21443","is_new_deal":true}
[2026-03-16 02:31:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:31:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:31:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:31:36] [INFO] getContactPrimaryPhone called {"contact_id":"21443"}
[2026-03-16 02:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:36] [INFO] getContactPrimaryPhone result {"contact_id":"21443","person_found":true,"primary_phone":"9120912677"}
[2026-03-16 02:31:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120912677"}
[2026-03-16 02:31:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120912677","contact_id":"21443","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:31:36"}
[2026-03-16 02:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:36] [INFO] generateDealTitle result {"contact_id":"21443","person_name":"مجیدویش","mobile":"9120912677","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120912677"}
[2026-03-16 02:31:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21443","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:31:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21443","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:31:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21443","title":"معامله دوم 9120912677 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120912677","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مجیدویش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:31:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:31:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21443","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120912677 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:31:36","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 02:31:45] [INFO] Checking activity reminders 
[2026-03-16 02:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:31:57] [INFO] Checking activity reminders 
[2026-03-16 02:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:31:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4627","person_id":"13022"}
[2026-03-16 02:32:08] [INFO] Checking activity reminders 
[2026-03-16 02:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:32:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:14] [INFO] generateDealTitle result {"contact_id":"6559","person_name":"مهدی جعفری","mobile":"9122131081","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122131081"}
[2026-03-16 02:32:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6559","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:32:32","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6559","is_new_deal":true}
[2026-03-16 02:32:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:32:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:32:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:32:32] [INFO] getContactPrimaryPhone called {"contact_id":"6559"}
[2026-03-16 02:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:32] [INFO] getContactPrimaryPhone result {"contact_id":"6559","person_found":true,"primary_phone":"9122131081"}
[2026-03-16 02:32:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122131081"}
[2026-03-16 02:32:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122131081","contact_id":"6559","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:32:32"}
[2026-03-16 02:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:32] [INFO] generateDealTitle result {"contact_id":"6559","person_name":"مهدی جعفری","mobile":"9122131081","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122131081"}
[2026-03-16 02:32:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6559","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:32:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6559","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:32:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6559","title":"معامله دوم 9122131081 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122131081","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی جعفری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:32:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:32:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6559","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9122131081 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:32:32","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:32:38] [INFO] Checking activity reminders 
[2026-03-16 02:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:33:08] [INFO] Checking activity reminders 
[2026-03-16 02:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:33:38] [INFO] Checking activity reminders 
[2026-03-16 02:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:34:08] [INFO] Checking activity reminders 
[2026-03-16 02:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:34:39] [INFO] Checking activity reminders 
[2026-03-16 02:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:35:09] [INFO] Checking activity reminders 
[2026-03-16 02:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:35:39] [INFO] Checking activity reminders 
[2026-03-16 02:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:36:09] [INFO] Checking activity reminders 
[2026-03-16 02:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 02:36:47] [INFO] Checking activity reminders 
[2026-03-16 02:36:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:36:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-16 02:37:00] [INFO] Checking activity reminders 
[2026-03-16 02:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:37:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16317","person_id":"12337"}
[2026-03-16 02:37:15] [INFO] Checking activity reminders 
[2026-03-16 02:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:24] [INFO] generateDealTitle result {"contact_id":"20528","person_name":"خانوم کرمی","mobile":"9123250305","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123250305"}
[2026-03-16 02:37:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20528","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:37:40","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20528","is_new_deal":true}
[2026-03-16 02:37:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:37:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:37:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:37:40] [INFO] getContactPrimaryPhone called {"contact_id":"20528"}
[2026-03-16 02:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:40] [INFO] getContactPrimaryPhone result {"contact_id":"20528","person_found":true,"primary_phone":"9123250305"}
[2026-03-16 02:37:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123250305"}
[2026-03-16 02:37:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123250305","contact_id":"20528","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:37:40"}
[2026-03-16 02:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:40] [INFO] generateDealTitle result {"contact_id":"20528","person_name":"خانوم کرمی","mobile":"9123250305","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123250305"}
[2026-03-16 02:37:40] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20528","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:37:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20528","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:37:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20528","title":"معامله دوم 9123250305 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123250305","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خانوم کرمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:37:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:40] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:37:40] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20528","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123250305 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:37:40","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:37:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 02:37:57] [INFO] Checking activity reminders 
[2026-03-16 02:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:38:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:04] [INFO] generateDealTitle result {"contact_id":"21638","person_name":"رستگاری","mobile":"9123334180","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123334180"}
[2026-03-16 02:38:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21638","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:38:19","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21638","is_new_deal":true}
[2026-03-16 02:38:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:38:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:38:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:38:19] [INFO] getContactPrimaryPhone called {"contact_id":"21638"}
[2026-03-16 02:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:19] [INFO] getContactPrimaryPhone result {"contact_id":"21638","person_found":true,"primary_phone":"9123334180"}
[2026-03-16 02:38:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123334180"}
[2026-03-16 02:38:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123334180","contact_id":"21638","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:38:19"}
[2026-03-16 02:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:19] [INFO] generateDealTitle result {"contact_id":"21638","person_name":"رستگاری","mobile":"9123334180","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123334180"}
[2026-03-16 02:38:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21638","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:38:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21638","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:38:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21638","title":"معامله دوم 9123334180 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123334180","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رستگاری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:38:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:38:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21638","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123334180 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:38:19","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 02:38:33] [INFO] Checking activity reminders 
[2026-03-16 02:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:38:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9556","person_id":"19302"}
[2026-03-16 02:38:46] [INFO] Checking activity reminders 
[2026-03-16 02:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:38:54] [INFO] generateDealTitle result {"contact_id":"1390","person_name":"فاضل فروغیان","mobile":"9123933195","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123933195"}
[2026-03-16 02:39:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1390","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:39:07","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:39:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1390","is_new_deal":true}
[2026-03-16 02:39:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:39:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:39:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:39:07] [INFO] getContactPrimaryPhone called {"contact_id":"1390"}
[2026-03-16 02:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:39:07] [INFO] getContactPrimaryPhone result {"contact_id":"1390","person_found":true,"primary_phone":"9123933195"}
[2026-03-16 02:39:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123933195"}
[2026-03-16 02:39:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123933195","contact_id":"1390","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:39:07"}
[2026-03-16 02:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:39:07] [INFO] generateDealTitle result {"contact_id":"1390","person_name":"فاضل فروغیان","mobile":"9123933195","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123933195"}
[2026-03-16 02:39:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1390","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:39:07] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1390","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:39:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1390","title":"معامله دوم 9123933195 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123933195","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فاضل فروغیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:39:07","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:39:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:39:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1390","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123933195 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:39:07","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 02:40:14] [INFO] Checking activity reminders 
[2026-03-16 02:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:40:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-16 02:40:29] [INFO] Checking activity reminders 
[2026-03-16 02:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:40:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:40:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:40:42] [INFO] generateDealTitle result {"contact_id":"1415","person_name":"محمد دهقانی شهرابی کانال","mobile":"9127338494","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127338494"}
[2026-03-16 02:41:00] [INFO] Checking activity reminders 
[2026-03-16 02:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:41:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1415","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:41:10","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:41:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1415","is_new_deal":true}
[2026-03-16 02:41:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:41:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:41:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:41:10] [INFO] getContactPrimaryPhone called {"contact_id":"1415"}
[2026-03-16 02:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:41:10] [INFO] getContactPrimaryPhone result {"contact_id":"1415","person_found":true,"primary_phone":"9127338494"}
[2026-03-16 02:41:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127338494"}
[2026-03-16 02:41:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127338494","contact_id":"1415","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:41:10"}
[2026-03-16 02:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:41:10] [INFO] generateDealTitle result {"contact_id":"1415","person_name":"محمد دهقانی شهرابی کانال","mobile":"9127338494","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127338494"}
[2026-03-16 02:41:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1415","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:41:10] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1415","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:41:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1415","title":"معامله دوم 9127338494 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127338494","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد دهقانی شهرابی کانال","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:41:10","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:41:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:41:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1415","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127338494 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:41:10","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:41:30] [INFO] Checking activity reminders 
[2026-03-16 02:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:42:03] [INFO] Checking activity reminders 
[2026-03-16 02:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:42:33] [INFO] Checking activity reminders 
[2026-03-16 02:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:43:03] [INFO] Checking activity reminders 
[2026-03-16 02:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:43:33] [INFO] Checking activity reminders 
[2026-03-16 02:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:44:03] [INFO] Checking activity reminders 
[2026-03-16 02:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:44:34] [INFO] Checking activity reminders 
[2026-03-16 02:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:45:04] [INFO] Checking activity reminders 
[2026-03-16 02:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:45:34] [INFO] Checking activity reminders 
[2026-03-16 02:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:45:43] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:43] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"check_reminders"}
[2026-03-16 02:45:43] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:51] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:51] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:51] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 02:45:51] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:53] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_products"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_leads"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:45:55] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:00] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:04] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:04] [INFO] Checking activity reminders 
[2026-03-16 02:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:46:04] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:06] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:07] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:07] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:07] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"get_leads"}
[2026-03-16 02:46:07] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:07] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:14] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:16] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:22] [WARNING] Auth check failed - not authenticated {"session_id":"0eoqpo2d7a9d9to3qq3iq6n19l","session_keys":[],"action":"log_client_event"}
[2026-03-16 02:46:22] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-16 02:46:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 02:46:34] [INFO] Checking activity reminders 
[2026-03-16 02:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:46:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 02:47:04] [INFO] Checking activity reminders 
[2026-03-16 02:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:47:35] [INFO] Checking activity reminders 
[2026-03-16 02:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:48:05] [INFO] Checking activity reminders 
[2026-03-16 02:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:48:35] [INFO] Checking activity reminders 
[2026-03-16 02:48:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:48:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:49:05] [INFO] Checking activity reminders 
[2026-03-16 02:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:49:35] [INFO] Checking activity reminders 
[2026-03-16 02:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:50:05] [INFO] Checking activity reminders 
[2026-03-16 02:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:50:36] [INFO] Checking activity reminders 
[2026-03-16 02:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:51:06] [INFO] Checking activity reminders 
[2026-03-16 02:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:51:36] [INFO] Checking activity reminders 
[2026-03-16 02:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 02:52:12] [INFO] Checking activity reminders 
[2026-03-16 02:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:20] [INFO] generateDealTitle result {"contact_id":"17275","person_name":"یاورنژاد","mobile":"9127979628","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127979628"}
[2026-03-16 02:52:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17275","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:52:41","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17275","is_new_deal":true}
[2026-03-16 02:52:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:52:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:52:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:52:41] [INFO] getContactPrimaryPhone called {"contact_id":"17275"}
[2026-03-16 02:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:41] [INFO] getContactPrimaryPhone result {"contact_id":"17275","person_found":true,"primary_phone":"9127979628"}
[2026-03-16 02:52:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127979628"}
[2026-03-16 02:52:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127979628","contact_id":"17275","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:52:41"}
[2026-03-16 02:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:41] [INFO] generateDealTitle result {"contact_id":"17275","person_name":"یاورنژاد","mobile":"9127979628","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127979628"}
[2026-03-16 02:52:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17275","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:52:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"17275","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:52:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17275","title":"معامله دوم 9127979628 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127979628","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"یاورنژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:52:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:52:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17275","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127979628 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:52:41","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 02:52:43] [INFO] Checking activity reminders 
[2026-03-16 02:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:53:08] [INFO] Checking activity reminders 
[2026-03-16 02:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:53:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:53:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:53:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:53:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:53:14] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_87","person_name":"صرافان","mobile":"9131118945","existing_deals":0,"ordinal":"اول","title":"معامله اول 9131118945"}
[2026-03-16 02:53:38] [INFO] Checking activity reminders 
[2026-03-16 02:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:54:09] [INFO] Checking activity reminders 
[2026-03-16 02:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:54:39] [INFO] Checking activity reminders 
[2026-03-16 02:54:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:54:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:55:10] [INFO] Checking activity reminders 
[2026-03-16 02:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:55:41] [INFO] Checking activity reminders 
[2026-03-16 02:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:56:12] [INFO] Checking activity reminders 
[2026-03-16 02:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:56:42] [INFO] Checking activity reminders 
[2026-03-16 02:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:57:15] [INFO] Checking activity reminders 
[2026-03-16 02:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:57:45] [INFO] Checking activity reminders 
[2026-03-16 02:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:58:16] [INFO] Checking activity reminders 
[2026-03-16 02:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:58:46] [INFO] Checking activity reminders 
[2026-03-16 02:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:59:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_87","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 02:59:14","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 02:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_87","is_new_deal":true}
[2026-03-16 02:59:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 02:59:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:59:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 02:59:14] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_87"}
[2026-03-16 02:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:14] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_87","person_found":true,"primary_phone":"9131118945"}
[2026-03-16 02:59:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131118945"}
[2026-03-16 02:59:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131118945","contact_id":"local_1403_09_26_87","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 02:59:14"}
[2026-03-16 02:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:14] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_87","person_name":"صرافان","mobile":"9131118945","existing_deals":0,"ordinal":"اول","title":"معامله اول 9131118945"}
[2026-03-16 02:59:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_87","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 02:59:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_1403_09_26_87","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 02:59:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_87","title":"معامله اول 9131118945 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9131118945","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"صرافان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 02:59:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 02:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 02:59:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_87","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9131118945 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 02:59:14","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 02:59:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 02:59:17] [INFO] Checking activity reminders 
[2026-03-16 02:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:59:35] [INFO] Checking activity reminders 
[2026-03-16 02:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:59:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-03-16 02:59:51] [INFO] Checking activity reminders 
[2026-03-16 02:59:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 02:59:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 02:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 02:59:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 02:59:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 02:59:57] [INFO] generateDealTitle result {"contact_id":"14373","person_name":"مددی","mobile":"9132968425","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132968425"}
[2026-03-16 03:00:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14373","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:00:12","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14373","is_new_deal":true}
[2026-03-16 03:00:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:00:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:00:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:00:12] [INFO] getContactPrimaryPhone called {"contact_id":"14373"}
[2026-03-16 03:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:12] [INFO] getContactPrimaryPhone result {"contact_id":"14373","person_found":true,"primary_phone":"9132968425"}
[2026-03-16 03:00:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132968425"}
[2026-03-16 03:00:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132968425","contact_id":"14373","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:00:12"}
[2026-03-16 03:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:12] [INFO] generateDealTitle result {"contact_id":"14373","person_name":"مددی","mobile":"9132968425","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132968425"}
[2026-03-16 03:00:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14373","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:00:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14373","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:00:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14373","title":"معامله دوم 9132968425 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132968425","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مددی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:00:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:00:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14373","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9132968425 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:00:12","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:22] [INFO] Checking activity reminders 
[2026-03-16 03:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 03:00:48] [INFO] Checking activity reminders 
[2026-03-16 03:00:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:00:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15264","person_id":"15916"}
[2026-03-16 03:01:00] [INFO] Checking activity reminders 
[2026-03-16 03:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:01:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:08] [INFO] generateDealTitle result {"contact_id":"20204","person_name":"بهرامی","mobile":"9138557784","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138557784"}
[2026-03-16 03:01:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20204","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:01:23","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20204","is_new_deal":true}
[2026-03-16 03:01:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:01:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:01:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:01:23] [INFO] getContactPrimaryPhone called {"contact_id":"20204"}
[2026-03-16 03:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:23] [INFO] getContactPrimaryPhone result {"contact_id":"20204","person_found":true,"primary_phone":"9138557784"}
[2026-03-16 03:01:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138557784"}
[2026-03-16 03:01:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138557784","contact_id":"20204","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:01:23"}
[2026-03-16 03:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:23] [INFO] generateDealTitle result {"contact_id":"20204","person_name":"بهرامی","mobile":"9138557784","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138557784"}
[2026-03-16 03:01:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20204","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:01:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20204","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:01:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20204","title":"معامله دوم 9138557784 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138557784","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"بهرامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:01:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:01:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20204","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9138557784 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:01:23","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 03:01:36] [INFO] Checking activity reminders 
[2026-03-16 03:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:01:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20503","person_id":"17843"}
[2026-03-16 03:01:50] [INFO] Checking activity reminders 
[2026-03-16 03:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:01:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:01:58] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_28","person_name":"آذرمی","mobile":"9144774709","existing_deals":0,"ordinal":"اول","title":"معامله اول 9144774709"}
[2026-03-16 03:02:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_28","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:02:13","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:02:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:02:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_28","is_new_deal":true}
[2026-03-16 03:02:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:02:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:02:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:02:13] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_28"}
[2026-03-16 03:02:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:02:13] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_28","person_found":true,"primary_phone":"9144774709"}
[2026-03-16 03:02:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144774709"}
[2026-03-16 03:02:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144774709","contact_id":"local_1403_09_26_28","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:02:13"}
[2026-03-16 03:02:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:02:13] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_28","person_name":"آذرمی","mobile":"9144774709","existing_deals":0,"ordinal":"اول","title":"معامله اول 9144774709"}
[2026-03-16 03:02:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_28","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:02:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_1403_09_26_28","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:02:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_28","title":"معامله اول 9144774709 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9144774709","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آذرمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:02:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:02:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:02:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:02:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_28","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9144774709 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:02:13","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-16 03:02:41] [INFO] Checking activity reminders 
[2026-03-16 03:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:02:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:02:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:02:47] [INFO] generateDealTitle result {"contact_id":"14209","person_name":"نادر حسین نژاد","mobile":"9147598300","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9147598300"}
[2026-03-16 03:03:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14209","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:03:06","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:03:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14209","is_new_deal":true}
[2026-03-16 03:03:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:06] [INFO] getContactPrimaryPhone called {"contact_id":"14209"}
[2026-03-16 03:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:03:06] [INFO] getContactPrimaryPhone result {"contact_id":"14209","person_found":true,"primary_phone":"9147598300"}
[2026-03-16 03:03:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147598300"}
[2026-03-16 03:03:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147598300","contact_id":"14209","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:03:06"}
[2026-03-16 03:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:03:06] [INFO] generateDealTitle result {"contact_id":"14209","person_name":"نادر حسین نژاد","mobile":"9147598300","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9147598300"}
[2026-03-16 03:03:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14209","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:03:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14209","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:03:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14209","title":"معامله سوم 9147598300 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9147598300","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نادر حسین نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:03:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:03:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:03:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14209","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9147598300 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:03:06","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-16 03:03:19] [INFO] Checking activity reminders 
[2026-03-16 03:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:27] [INFO] generateDealTitle result {"contact_id":"6032","person_name":"بایرامی","mobile":"9147707203","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9147707203"}
[2026-03-16 03:03:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6032","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:03:44","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:03:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6032","is_new_deal":true}
[2026-03-16 03:03:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:03:44] [INFO] getContactPrimaryPhone called {"contact_id":"6032"}
[2026-03-16 03:03:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:44] [INFO] getContactPrimaryPhone result {"contact_id":"6032","person_found":true,"primary_phone":"9147707203"}
[2026-03-16 03:03:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147707203"}
[2026-03-16 03:03:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147707203","contact_id":"6032","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:03:44"}
[2026-03-16 03:03:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:44] [INFO] generateDealTitle result {"contact_id":"6032","person_name":"بایرامی","mobile":"9147707203","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9147707203"}
[2026-03-16 03:03:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6032","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:03:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6032","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:03:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6032","title":"معامله سوم 9147707203 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9147707203","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"بایرامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:03:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:03:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:03:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6032","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9147707203 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:03:44","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:03:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-16 03:03:59] [INFO] Checking activity reminders 
[2026-03-16 03:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:06] [INFO] generateDealTitle result {"contact_id":"20915","person_name":"رامین صادقی","mobile":"9149320075","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9149320075"}
[2026-03-16 03:04:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20915","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:04:22","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:04:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20915","is_new_deal":true}
[2026-03-16 03:04:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:04:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:04:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:04:22] [INFO] getContactPrimaryPhone called {"contact_id":"20915"}
[2026-03-16 03:04:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:22] [INFO] getContactPrimaryPhone result {"contact_id":"20915","person_found":true,"primary_phone":"9149320075"}
[2026-03-16 03:04:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9149320075"}
[2026-03-16 03:04:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9149320075","contact_id":"20915","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:04:22"}
[2026-03-16 03:04:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:22] [INFO] generateDealTitle result {"contact_id":"20915","person_name":"رامین صادقی","mobile":"9149320075","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9149320075"}
[2026-03-16 03:04:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20915","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:04:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20915","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:04:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20915","title":"معامله دوم 9149320075 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9149320075","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رامین صادقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:04:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:04:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:04:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20915","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9149320075 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:04:22","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:04:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-16 03:04:41] [INFO] Checking activity reminders 
[2026-03-16 03:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:04:48] [INFO] generateDealTitle result {"contact_id":"21235","person_name":"علیرضا خسروی","mobile":"9152116984","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152116984"}
[2026-03-16 03:05:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21235","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:05:05","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:05:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:05:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21235","is_new_deal":true}
[2026-03-16 03:05:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:05] [INFO] getContactPrimaryPhone called {"contact_id":"21235"}
[2026-03-16 03:05:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:05:05] [INFO] getContactPrimaryPhone result {"contact_id":"21235","person_found":true,"primary_phone":"9152116984"}
[2026-03-16 03:05:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152116984"}
[2026-03-16 03:05:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152116984","contact_id":"21235","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:05:05"}
[2026-03-16 03:05:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:05:05] [INFO] generateDealTitle result {"contact_id":"21235","person_name":"علیرضا خسروی","mobile":"9152116984","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152116984"}
[2026-03-16 03:05:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21235","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:05:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21235","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:05:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21235","title":"معامله دوم 9152116984 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152116984","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علیرضا خسروی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:05:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:05:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:05:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:05:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21235","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9152116984 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:05:05","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:05:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-16 03:05:23] [INFO] Checking activity reminders 
[2026-03-16 03:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:05:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:30] [INFO] generateDealTitle result {"contact_id":"15061","person_name":"خانوم صفار","mobile":"9153318439","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153318439"}
[2026-03-16 03:05:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15061","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:05:44","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15061","is_new_deal":true}
[2026-03-16 03:05:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:05:44] [INFO] getContactPrimaryPhone called {"contact_id":"15061"}
[2026-03-16 03:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:44] [INFO] getContactPrimaryPhone result {"contact_id":"15061","person_found":true,"primary_phone":"9153318439"}
[2026-03-16 03:05:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153318439"}
[2026-03-16 03:05:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153318439","contact_id":"15061","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:05:44"}
[2026-03-16 03:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:44] [INFO] generateDealTitle result {"contact_id":"15061","person_name":"خانوم صفار","mobile":"9153318439","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153318439"}
[2026-03-16 03:05:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15061","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:05:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15061","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:05:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15061","title":"معامله دوم 9153318439 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153318439","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خانوم صفار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:05:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:05:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:05:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15061","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9153318439 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:05:44","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-16 03:06:43] [INFO] Checking activity reminders 
[2026-03-16 03:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:07:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:04] [INFO] generateDealTitle result {"contact_id":"10545","person_name":"یوسفی","mobile":"9155719244","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155719244"}
[2026-03-16 03:07:14] [INFO] Checking activity reminders 
[2026-03-16 03:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:07:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10545","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 03:07:21","session_id":"7gf1dfggjq3q42va6eb26b5dj6"}
[2026-03-16 03:07:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10545","is_new_deal":true}
[2026-03-16 03:07:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 03:07:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:07:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 03:07:21] [INFO] getContactPrimaryPhone called {"contact_id":"10545"}
[2026-03-16 03:07:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:21] [INFO] getContactPrimaryPhone result {"contact_id":"10545","person_found":true,"primary_phone":"9155719244"}
[2026-03-16 03:07:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155719244"}
[2026-03-16 03:07:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155719244","contact_id":"10545","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-16 03:07:21"}
[2026-03-16 03:07:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:21] [INFO] generateDealTitle result {"contact_id":"10545","person_name":"یوسفی","mobile":"9155719244","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155719244"}
[2026-03-16 03:07:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10545","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-16 03:07:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10545","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 03:07:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10545","title":"معامله دوم 9155719244 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155719244","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"یوسفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 03:07:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-16 03:07:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 03:07:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10545","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9155719244 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 03:07:21","ip_address":"46.41.237.111","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 03:07:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:07:50] [INFO] Checking activity reminders 
[2026-03-16 03:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:11:45] [INFO] Checking activity reminders 
[2026-03-16 03:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:11:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-16 03:13:56] [INFO] Checking activity reminders 
[2026-03-16 03:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:14:27] [INFO] Checking activity reminders 
[2026-03-16 03:14:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:14:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:14:57] [INFO] Checking activity reminders 
[2026-03-16 03:14:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:14:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:15:27] [INFO] Checking activity reminders 
[2026-03-16 03:15:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:15:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:15:57] [INFO] Checking activity reminders 
[2026-03-16 03:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:16:28] [INFO] Checking activity reminders 
[2026-03-16 03:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:16:58] [INFO] Checking activity reminders 
[2026-03-16 03:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 03:17:28] [INFO] Checking activity reminders 
[2026-03-16 03:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 03:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 10:45:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 10:45:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-16 10:45:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 10:46:21] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 10:46:21] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-16 10:46:21] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-16 10:46:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 10:46:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 10:46:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 10:46:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 10:46:52] [INFO] Checking activity reminders 
[2026-03-16 10:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 10:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 10:47:22] [INFO] Checking activity reminders 
[2026-03-16 10:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 10:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:00:53] [INFO] Checking activity reminders 
[2026-03-16 11:00:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:00:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:01:23] [INFO] Checking activity reminders 
[2026-03-16 11:01:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:01:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:01:35] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-16 11:01:35] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-16 11:01:35] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-16 11:07:29] [INFO] Checking activity reminders 
[2026-03-16 11:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:07:35] [INFO] Checking activity reminders 
[2026-03-16 11:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:12:47] [WARNING] Auth check failed - not authenticated {"session_id":"a570mu18g6rar86sfrhgabhmn0","session_keys":[],"action":"log_client_event"}
[2026-03-16 11:12:47] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-16 11:12:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 11:12:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 11:16:29] [INFO] Checking activity reminders 
[2026-03-16 11:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:16:29] [INFO] Checking activity reminders 
[2026-03-16 11:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:18:05] [INFO] Checking activity reminders 
[2026-03-16 11:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:18:07] [INFO] Checking activity reminders 
[2026-03-16 11:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:18:37] [INFO] Checking activity reminders 
[2026-03-16 11:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:18:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:19:07] [INFO] Checking activity reminders 
[2026-03-16 11:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:19:37] [INFO] Checking activity reminders 
[2026-03-16 11:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:20:07] [INFO] Checking activity reminders 
[2026-03-16 11:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:20:33] [WARNING] Auth check failed - not authenticated {"session_id":"imsflqovcvola3k664iievna7a","session_keys":[],"action":"log_client_event"}
[2026-03-16 11:20:33] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-16 11:20:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 11:20:37] [INFO] Checking activity reminders 
[2026-03-16 11:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:20:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7771","deal_id":"local_699ef445977808.08443386","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 11:20:54","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 11:20:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:20:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7771","is_new_deal":false}
[2026-03-16 11:20:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 11:20:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 11:20:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 11:20:54] [INFO] getContactPrimaryPhone called {"contact_id":"7771"}
[2026-03-16 11:20:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:20:54] [INFO] getContactPrimaryPhone result {"contact_id":"7771","person_found":true,"primary_phone":"9151689075"}
[2026-03-16 11:20:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151689075"}
[2026-03-16 11:20:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151689075","contact_id":"7771","deal_id":"local_699ef445977808.08443386","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 11:20:54"}
[2026-03-16 11:20:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","existing_deal_found":true,"existing_contact_id":"7771","existing_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 11:20:54"}
[2026-03-16 11:20:54] [INFO] DealController.save validated payments {"deal_id":"local_699ef445977808.08443386","contact_id":"7771","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-16 11:20:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7771","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 11:20:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ef445977808.08443386","contact_didar_id":"7771","title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151689075","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد حیدری نیا","existing_deal":"YES","existing_deal_id":"local_699ef445977808.08443386","existing_deal_status":"Pending","server_time":"2026-03-16 11:20:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 11:20:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:20:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:20:54] [INFO] Deal success processed {"contact_id":"7771","person_name":"محمد حیدری نیا","products_count":1}
[2026-03-16 11:20:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ef445977808.08443386","contact_id":"7771","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151689075 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-16 11:20:54","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 11:20:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-03-16 11:21:07] [INFO] Checking activity reminders 
[2026-03-16 11:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:21:32] [INFO] Checking activity reminders 
[2026-03-16 11:21:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:21:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:21:37] [INFO] Checking activity reminders 
[2026-03-16 11:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:22:02] [INFO] Checking activity reminders 
[2026-03-16 11:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:22:07] [INFO] Checking activity reminders 
[2026-03-16 11:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:22:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:22:32] [INFO] Checking activity reminders 
[2026-03-16 11:22:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:22:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:22:38] [INFO] Checking activity reminders 
[2026-03-16 11:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:23:08] [INFO] Checking activity reminders 
[2026-03-16 11:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:23:38] [INFO] Checking activity reminders 
[2026-03-16 11:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:24:08] [INFO] Checking activity reminders 
[2026-03-16 11:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:24:38] [INFO] Checking activity reminders 
[2026-03-16 11:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:25:08] [INFO] Checking activity reminders 
[2026-03-16 11:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:25:38] [INFO] Checking activity reminders 
[2026-03-16 11:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:25:46] [INFO] Checking activity reminders 
[2026-03-16 11:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:26:08] [INFO] Checking activity reminders 
[2026-03-16 11:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:26:10] [INFO] Activity save request {"post_data":{"contact_id":"11224","deal_id":"local_69b5bf9de5c773.06780749","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بچش رو برده دکتد ۲ ساعت دیگه تماس","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 11:26:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 11:26:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 11:26:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11224","note_was_empty":true}
[2026-03-16 11:26:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"11224","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 11:26:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:10] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-16 11:26:11] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-16 11:26:11] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-16 11:26:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bf9de5c773.06780749","stage":"تماس پیگیری","status_change":null}
[2026-03-16 11:26:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7b79aee6bd7.00407761","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 11:26:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7b79aee6bd7.00407761"}
[2026-03-16 11:26:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:11] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-16 11:26:11] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-16 11:26:11] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-16 11:26:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-16 11:26:16] [INFO] Checking activity reminders 
[2026-03-16 11:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:26:22] [INFO] Checking activity reminders 
[2026-03-16 11:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:26:29] [INFO] Checking activity reminders 
[2026-03-16 11:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:26:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:26:38] [INFO] Checking activity reminders 
[2026-03-16 11:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:00] [INFO] Checking activity reminders 
[2026-03-16 11:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:08] [INFO] Checking activity reminders 
[2026-03-16 11:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:12] [INFO] Checking activity reminders 
[2026-03-16 11:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:23] [INFO] Checking activity reminders 
[2026-03-16 11:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 11:27:30] [INFO] Lead update received {"contact_id":"8796","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:31] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"8796"}
[2026-03-16 11:27:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:54] [INFO] Checking activity reminders 
[2026-03-16 11:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:27:55] [INFO] Activity save request {"post_data":{"contact_id":"8796","deal_id":"local_69b5c81b68b117.46186352","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تماس پیگیری مسیج داد خودشش تماس میگیره","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 11:27:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8796","note_was_empty":true}
[2026-03-16 11:27:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"8796","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:55] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-16 11:27:55] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-16 11:27:55] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-16 11:27:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c81b68b117.46186352","stage":"تماس پیگیری","status_change":null}
[2026-03-16 11:27:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7b803b8b872.75680993","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7b803b8b872.75680993"}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:55] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-16 11:27:55] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-16 11:27:55] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-16 11:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 11:27:57] [INFO] Checking activity reminders 
[2026-03-16 11:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:28:27] [INFO] Checking activity reminders 
[2026-03-16 11:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:28:35] [INFO] Checking activity reminders 
[2026-03-16 11:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:28:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-16 11:28:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-16 11:28:57] [INFO] Checking activity reminders 
[2026-03-16 11:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:29:05] [INFO] Checking activity reminders 
[2026-03-16 11:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:29:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-03-16 11:29:27] [INFO] Checking activity reminders 
[2026-03-16 11:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:29:33] [INFO] Checking activity reminders 
[2026-03-16 11:29:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:29:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:29:34] [INFO] Checking activity reminders 
[2026-03-16 11:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:29:35] [INFO] Checking activity reminders 
[2026-03-16 11:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:30:04] [INFO] Checking activity reminders 
[2026-03-16 11:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:30:05] [INFO] Checking activity reminders 
[2026-03-16 11:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:30:35] [INFO] Checking activity reminders 
[2026-03-16 11:30:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:30:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:30:36] [INFO] Checking activity reminders 
[2026-03-16 11:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:31:05] [INFO] Checking activity reminders 
[2026-03-16 11:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:31:06] [INFO] Checking activity reminders 
[2026-03-16 11:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:31:35] [INFO] Checking activity reminders 
[2026-03-16 11:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:31:36] [INFO] Checking activity reminders 
[2026-03-16 11:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:32:05] [INFO] Checking activity reminders 
[2026-03-16 11:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:32:06] [INFO] Checking activity reminders 
[2026-03-16 11:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:32:35] [INFO] Checking activity reminders 
[2026-03-16 11:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:32:36] [INFO] Checking activity reminders 
[2026-03-16 11:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:33:05] [INFO] Checking activity reminders 
[2026-03-16 11:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:33:06] [INFO] Checking activity reminders 
[2026-03-16 11:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:33:35] [INFO] Checking activity reminders 
[2026-03-16 11:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:33:36] [INFO] Checking activity reminders 
[2026-03-16 11:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:34:05] [INFO] Checking activity reminders 
[2026-03-16 11:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:34:06] [INFO] Checking activity reminders 
[2026-03-16 11:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:34:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:34:35] [INFO] Checking activity reminders 
[2026-03-16 11:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:34:36] [INFO] Checking activity reminders 
[2026-03-16 11:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:35:05] [INFO] Checking activity reminders 
[2026-03-16 11:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:35:06] [INFO] Checking activity reminders 
[2026-03-16 11:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:35:35] [INFO] Checking activity reminders 
[2026-03-16 11:35:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:35:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:35:37] [INFO] Checking activity reminders 
[2026-03-16 11:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:36:07] [INFO] Checking activity reminders 
[2026-03-16 11:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:36:37] [INFO] Checking activity reminders 
[2026-03-16 11:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:37:03] [INFO] Checking activity reminders 
[2026-03-16 11:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:37:07] [INFO] Checking activity reminders 
[2026-03-16 11:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:37:33] [INFO] Checking activity reminders 
[2026-03-16 11:37:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:37:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:37:37] [INFO] Checking activity reminders 
[2026-03-16 11:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:38:03] [INFO] Checking activity reminders 
[2026-03-16 11:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:38:07] [INFO] Checking activity reminders 
[2026-03-16 11:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:38:33] [INFO] Checking activity reminders 
[2026-03-16 11:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:38:38] [INFO] Checking activity reminders 
[2026-03-16 11:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:39:03] [INFO] Checking activity reminders 
[2026-03-16 11:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:39:08] [INFO] Checking activity reminders 
[2026-03-16 11:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:39:24] [INFO] Checking activity reminders 
[2026-03-16 11:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:39:33] [INFO] Checking activity reminders 
[2026-03-16 11:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:40:03] [INFO] Checking activity reminders 
[2026-03-16 11:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:40:33] [INFO] Checking activity reminders 
[2026-03-16 11:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:41:03] [INFO] Checking activity reminders 
[2026-03-16 11:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:41:34] [INFO] Checking activity reminders 
[2026-03-16 11:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:42:04] [INFO] Checking activity reminders 
[2026-03-16 11:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:42:34] [INFO] Checking activity reminders 
[2026-03-16 11:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:43:04] [INFO] Checking activity reminders 
[2026-03-16 11:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:43:34] [INFO] Checking activity reminders 
[2026-03-16 11:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:44:04] [INFO] Checking activity reminders 
[2026-03-16 11:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:44:31] [INFO] Activity save request {"post_data":{"contact_id":"9781","deal_id":"local_69b53008d871f7.15014893","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 \r\nد رخودرو و طلای فیزیکی سرمایه \r\nارسال شبا فاطمه عباسی ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 11:44:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9781","note_was_empty":true}
[2026-03-16 11:44:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"9781","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:31] [INFO] Updating virtual stage {"contact_id":"9781","stage_name":"deal_registered","force":false}
[2026-03-16 11:44:31] [INFO] Virtual stage successfully saved {"contact_id":"9781","stage_name":"deal_registered"}
[2026-03-16 11:44:31] [INFO] Virtual stage updated after activity save {"contact_id":"9781"}
[2026-03-16 11:44:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53008d871f7.15014893","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 11:44:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7bbe7488590.32620053","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7bbe7488590.32620053"}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:31] [INFO] Updating virtual stage {"contact_id":"9781","stage_name":"deal_registered","force":false}
[2026-03-16 11:44:31] [INFO] Virtual stage successfully saved {"contact_id":"9781","stage_name":"deal_registered"}
[2026-03-16 11:44:31] [INFO] Virtual stage updated after activity save {"contact_id":"9781"}
[2026-03-16 11:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:34] [INFO] Checking activity reminders 
[2026-03-16 11:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:44:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9781","deal_id":"local_69b53008d871f7.15014893","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 11:44:50","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 11:44:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9781","is_new_deal":false}
[2026-03-16 11:44:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 11:44:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 11:44:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 11:44:50] [INFO] getContactPrimaryPhone called {"contact_id":"9781"}
[2026-03-16 11:44:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:50] [INFO] getContactPrimaryPhone result {"contact_id":"9781","person_found":true,"primary_phone":"9124211217"}
[2026-03-16 11:44:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124211217"}
[2026-03-16 11:44:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124211217","contact_id":"9781","deal_id":"local_69b53008d871f7.15014893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 11:44:50"}
[2026-03-16 11:44:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","existing_deal_found":true,"existing_contact_id":"9781","existing_title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 11:44:50"}
[2026-03-16 11:44:50] [INFO] DealController.save validated payments {"deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-16 11:44:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9781","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 11:44:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53008d871f7.15014893","contact_didar_id":"9781","title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9124211217","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرف فرقانی","existing_deal":"YES","existing_deal_id":"local_69b53008d871f7.15014893","existing_deal_status":"Pending","server_time":"2026-03-16 11:44:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 11:44:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:44:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 11:44:50","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 11:44:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 11:45:04] [INFO] Checking activity reminders 
[2026-03-16 11:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:45:34] [INFO] Checking activity reminders 
[2026-03-16 11:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:46:05] [INFO] Checking activity reminders 
[2026-03-16 11:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:46:35] [INFO] Checking activity reminders 
[2026-03-16 11:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:47:05] [INFO] Checking activity reminders 
[2026-03-16 11:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 11:47:35] [INFO] Checking activity reminders 
[2026-03-16 11:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:48:05] [INFO] Checking activity reminders 
[2026-03-16 11:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:48:35] [INFO] Checking activity reminders 
[2026-03-16 11:48:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:48:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:49:05] [INFO] Checking activity reminders 
[2026-03-16 11:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:49:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 11:49:35] [INFO] Checking activity reminders 
[2026-03-16 11:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:50:05] [INFO] Checking activity reminders 
[2026-03-16 11:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:50:35] [INFO] Checking activity reminders 
[2026-03-16 11:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:51:05] [INFO] Checking activity reminders 
[2026-03-16 11:51:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:51:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:51:35] [INFO] Checking activity reminders 
[2026-03-16 11:51:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:51:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:52:05] [INFO] Checking activity reminders 
[2026-03-16 11:52:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:52:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:52:36] [INFO] Checking activity reminders 
[2026-03-16 11:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:06] [INFO] Checking activity reminders 
[2026-03-16 11:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:36] [INFO] Checking activity reminders 
[2026-03-16 11:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:38] [INFO] Checking activity reminders 
[2026-03-16 11:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:45] [INFO] Checking activity reminders 
[2026-03-16 11:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:51] [INFO] Checking activity reminders 
[2026-03-16 11:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:53:58] [INFO] Checking activity reminders 
[2026-03-16 11:53:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:53:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:54:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:06] [INFO] Checking activity reminders 
[2026-03-16 11:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:54:28] [INFO] Checking activity reminders 
[2026-03-16 11:54:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:54:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:54:36] [INFO] Checking activity reminders 
[2026-03-16 11:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:54:51] [INFO] Activity save request {"post_data":{"contact_id":"14915","deal_id":"local_6950f3d76a1065.49920374","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال ش کارت واریز تا یک ساعت دیگه با داداش مشورت ۵۴ یا ۷۹، سرمایه ۶۰۰ ت خودش","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 11:54:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14915","note_was_empty":true}
[2026-03-16 11:54:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"14915","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:51] [INFO] Updating virtual stage {"contact_id":"14915","stage_name":"deal_registered","force":false}
[2026-03-16 11:54:51] [INFO] Virtual stage successfully saved {"contact_id":"14915","stage_name":"deal_registered"}
[2026-03-16 11:54:51] [INFO] Virtual stage updated after activity save {"contact_id":"14915"}
[2026-03-16 11:54:51] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6950f3d76a1065.49920374","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 11:54:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7be5332b699.07130956","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:51] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7be5332b699.07130956"}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:54:51] [INFO] Updating virtual stage {"contact_id":"14915","stage_name":"deal_registered","force":false}
[2026-03-16 11:54:51] [INFO] Virtual stage successfully saved {"contact_id":"14915","stage_name":"deal_registered"}
[2026-03-16 11:54:51] [INFO] Virtual stage updated after activity save {"contact_id":"14915"}
[2026-03-16 11:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 11:55:06] [INFO] Checking activity reminders 
[2026-03-16 11:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:55:36] [INFO] Checking activity reminders 
[2026-03-16 11:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:56:06] [INFO] Checking activity reminders 
[2026-03-16 11:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:56:37] [INFO] Checking activity reminders 
[2026-03-16 11:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:57:07] [INFO] Checking activity reminders 
[2026-03-16 11:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:57:37] [INFO] Checking activity reminders 
[2026-03-16 11:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:58:07] [INFO] Checking activity reminders 
[2026-03-16 11:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:58:37] [INFO] Checking activity reminders 
[2026-03-16 11:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:59:07] [INFO] Checking activity reminders 
[2026-03-16 11:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 11:59:37] [INFO] Checking activity reminders 
[2026-03-16 11:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 11:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:00:03] [INFO] Checking activity reminders 
[2026-03-16 12:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:00:33] [INFO] Checking activity reminders 
[2026-03-16 12:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:01:03] [INFO] Checking activity reminders 
[2026-03-16 12:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:01:33] [INFO] Checking activity reminders 
[2026-03-16 12:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:02:04] [INFO] Checking activity reminders 
[2026-03-16 12:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:02:34] [INFO] Checking activity reminders 
[2026-03-16 12:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:03:04] [INFO] Checking activity reminders 
[2026-03-16 12:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:03:34] [INFO] Checking activity reminders 
[2026-03-16 12:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:03:35] [INFO] Activity save request {"post_data":{"contact_id":"2916","deal_id":"local_69b7228b3b6b78.41972191","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی شرایط کاسبی و نقدینگی بهم خورده \r\nدسته چک هنوز نگرفته \r\nنقد میزنه بیعانه \r\nفروردین مجدد واریز \r\nچک ارسال میکنه \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"1","due_date":"2026-03-16 12:00:00","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:03:35] [INFO] Formatted due date for Didar {"original":"2026-03-16 12:00:00","formatted":"2026-03-16T08:30:00.000Z"}
[2026-03-16 12:03:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2916","note_was_empty":true}
[2026-03-16 12:03:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"2916","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 12:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:35] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-03-16 12:03:35] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-03-16 12:03:35] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-03-16 12:03:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7228b3b6b78.41972191","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 12:03:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7c05fd8f303.13870857","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7c05fd8f303.13870857"}
[2026-03-16 12:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:35] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-03-16 12:03:35] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-03-16 12:03:35] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-03-16 12:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:03:52] [INFO] Checking activity reminders 
[2026-03-16 12:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-16 12:04:22] [INFO] Checking activity reminders 
[2026-03-16 12:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:04:52] [INFO] Checking activity reminders 
[2026-03-16 12:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:05:22] [INFO] Checking activity reminders 
[2026-03-16 12:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:05:32] [INFO] Checking activity reminders 
[2026-03-16 12:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:05:46] [INFO] Checking activity reminders 
[2026-03-16 12:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:16] [INFO] Checking activity reminders 
[2026-03-16 12:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:33] [INFO] Checking activity reminders 
[2026-03-16 12:06:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:06:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:35] [INFO] Checking activity reminders 
[2026-03-16 12:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:44] [INFO] Checking activity reminders 
[2026-03-16 12:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:51] [INFO] Checking activity reminders 
[2026-03-16 12:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 12:07:05] [INFO] Checking activity reminders 
[2026-03-16 12:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:07:21] [INFO] Checking activity reminders 
[2026-03-16 12:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:07:35] [INFO] Checking activity reminders 
[2026-03-16 12:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:07:50] [INFO] Checking activity reminders 
[2026-03-16 12:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:07:51] [INFO] Checking activity reminders 
[2026-03-16 12:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:07:53] [INFO] Checking activity reminders 
[2026-03-16 12:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:08:23] [INFO] Checking activity reminders 
[2026-03-16 12:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:08:27] [INFO] Checking activity reminders 
[2026-03-16 12:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:08:53] [INFO] Checking activity reminders 
[2026-03-16 12:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:08:57] [INFO] Checking activity reminders 
[2026-03-16 12:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:09:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"14373","deal_id":"local_69b74104bfd1a1.18934610","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 12:09:01","session_id":"imsflqovcvola3k664iievna7a"}
[2026-03-16 12:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 12:09:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"14373","is_new_deal":false}
[2026-03-16 12:09:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-16 12:09:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 12:09:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 12:09:01] [INFO] getContactPrimaryPhone called {"contact_id":"14373"}
[2026-03-16 12:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 12:09:01] [INFO] getContactPrimaryPhone result {"contact_id":"14373","person_found":true,"primary_phone":"9132968425"}
[2026-03-16 12:09:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132968425"}
[2026-03-16 12:09:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132968425","contact_id":"14373","deal_id":"local_69b74104bfd1a1.18934610","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 12:09:01"}
[2026-03-16 12:09:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b74104bfd1a1.18934610","contact_id":"14373","existing_deal_found":true,"existing_contact_id":"14373","existing_title":"معامله دوم 9132968425 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 12:09:01"}
[2026-03-16 12:09:01] [INFO] DealController.save validated payments {"deal_id":"local_69b74104bfd1a1.18934610","contact_id":"14373","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 12:09:01] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14373","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 12:09:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b74104bfd1a1.18934610","contact_didar_id":"14373","title":"معامله دوم 9132968425 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9132968425","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مددی","existing_deal":"YES","existing_deal_id":"local_69b74104bfd1a1.18934610","existing_deal_status":"Pending","server_time":"2026-03-16 12:09:01","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-16 12:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 12:09:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b74104bfd1a1.18934610","contact_id":"14373","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9132968425 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":20000000,"server_time":"2026-03-16 12:09:01","ip_address":"5.211.7.119","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 12:09:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-03-16 12:09:07] [INFO] Checking activity reminders 
[2026-03-16 12:09:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:09:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:09:37] [INFO] Checking activity reminders 
[2026-03-16 12:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:09:58] [INFO] Checking activity reminders 
[2026-03-16 12:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:10:07] [INFO] Checking activity reminders 
[2026-03-16 12:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:10:29] [INFO] Checking activity reminders 
[2026-03-16 12:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:10:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:10:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:10:33] [INFO] generateDealTitle result {"contact_id":"2916","person_name":"علیرضا نوایی","mobile":"9036002890","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9036002890"}
[2026-03-16 12:10:59] [INFO] Checking activity reminders 
[2026-03-16 12:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:11:29] [INFO] Checking activity reminders 
[2026-03-16 12:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:11:59] [INFO] Checking activity reminders 
[2026-03-16 12:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:12:29] [INFO] Checking activity reminders 
[2026-03-16 12:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:12:59] [INFO] Checking activity reminders 
[2026-03-16 12:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:13:29] [INFO] Checking activity reminders 
[2026-03-16 12:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:13:59] [INFO] Checking activity reminders 
[2026-03-16 12:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:14:30] [INFO] Checking activity reminders 
[2026-03-16 12:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:14:33] [INFO] Checking activity reminders 
[2026-03-16 12:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:15:03] [INFO] Checking activity reminders 
[2026-03-16 12:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:15:27] [INFO] Checking activity reminders 
[2026-03-16 12:15:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:15:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:15:57] [INFO] Checking activity reminders 
[2026-03-16 12:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:16:27] [INFO] Checking activity reminders 
[2026-03-16 12:16:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:16:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:16:57] [INFO] Checking activity reminders 
[2026-03-16 12:16:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:16:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:17:10] [INFO] Checking activity reminders 
[2026-03-16 12:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:17:15] [INFO] Checking activity reminders 
[2026-03-16 12:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:17:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 12:17:17","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 12:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-16 12:17:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1979","is_new_deal":false}
[2026-03-16 12:17:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 12:17:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 12:17:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 12:17:17] [INFO] getContactPrimaryPhone called {"contact_id":"1979"}
[2026-03-16 12:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-16 12:17:17] [INFO] getContactPrimaryPhone result {"contact_id":"1979","person_found":true,"primary_phone":"9385649391"}
[2026-03-16 12:17:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385649391"}
[2026-03-16 12:17:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385649391","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 12:17:17"}
[2026-03-16 12:17:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","existing_deal_found":true,"existing_contact_id":"1979","existing_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 12:17:17"}
[2026-03-16 12:17:17] [INFO] DealController.save validated payments {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 12:17:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1979","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 12:17:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6f088abce41.09336821","contact_didar_id":"1979","title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9385649391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ملکی","existing_deal":"YES","existing_deal_id":"local_69b6f088abce41.09336821","existing_deal_status":"Pending","server_time":"2026-03-16 12:17:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 12:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-16 12:17:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-16 12:17:17","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 12:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-03-16 12:17:21] [INFO] Checking activity reminders 
[2026-03-16 12:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:17:51] [INFO] Checking activity reminders 
[2026-03-16 12:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:05] [INFO] Checking activity reminders 
[2026-03-16 12:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:06] [INFO] Checking activity reminders 
[2026-03-16 12:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 12:18:24] [INFO] Checking activity reminders 
[2026-03-16 12:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:28] [INFO] Checking activity reminders 
[2026-03-16 12:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:18:53] [INFO] Checking activity reminders 
[2026-03-16 12:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:18:58] [INFO] Checking activity reminders 
[2026-03-16 12:18:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:18:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-16 12:19:23] [INFO] Checking activity reminders 
[2026-03-16 12:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:19:28] [INFO] Checking activity reminders 
[2026-03-16 12:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:19:53] [INFO] Checking activity reminders 
[2026-03-16 12:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:19:58] [INFO] Checking activity reminders 
[2026-03-16 12:19:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:19:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:20:36] [INFO] Checking activity reminders 
[2026-03-16 12:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:20:50] [INFO] Checking activity reminders 
[2026-03-16 12:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:22:07] [INFO] Checking activity reminders 
[2026-03-16 12:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:22:37] [INFO] Checking activity reminders 
[2026-03-16 12:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:22:42] [INFO] Checking activity reminders 
[2026-03-16 12:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:22:43] [INFO] Checking activity reminders 
[2026-03-16 12:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:22:56] [INFO] Checking activity reminders 
[2026-03-16 12:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:23:26] [INFO] Checking activity reminders 
[2026-03-16 12:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:23:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2916","deal_id":"local_69b7228b3b6b78.41972191","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 12:23:31","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 12:23:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:23:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2916","is_new_deal":false}
[2026-03-16 12:23:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 12:23:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 12:23:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 12:23:31] [INFO] getContactPrimaryPhone called {"contact_id":"2916"}
[2026-03-16 12:23:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:23:31] [INFO] getContactPrimaryPhone result {"contact_id":"2916","person_found":true,"primary_phone":"9036002890"}
[2026-03-16 12:23:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9036002890"}
[2026-03-16 12:23:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9036002890","contact_id":"2916","deal_id":"local_69b7228b3b6b78.41972191","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 12:23:31"}
[2026-03-16 12:23:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7228b3b6b78.41972191","contact_id":"2916","existing_deal_found":true,"existing_contact_id":"2916","existing_title":"معامله دوم 9036002890 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 12:23:31"}
[2026-03-16 12:23:31] [INFO] DealController.save validated payments {"deal_id":"local_69b7228b3b6b78.41972191","contact_id":"2916","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 12:23:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2916","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 12:23:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7228b3b6b78.41972191","contact_didar_id":"2916","title":"معامله دوم 9036002890 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9036002890","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":14000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا نوایی","existing_deal":"YES","existing_deal_id":"local_69b7228b3b6b78.41972191","existing_deal_status":"Pending","server_time":"2026-03-16 12:23:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 12:23:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:23:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7228b3b6b78.41972191","contact_id":"2916","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9036002890 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":14000000,"server_time":"2026-03-16 12:23:31","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 12:23:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-03-16 12:23:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:23:56] [INFO] Checking activity reminders 
[2026-03-16 12:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:24:26] [INFO] Checking activity reminders 
[2026-03-16 12:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:24:56] [INFO] Checking activity reminders 
[2026-03-16 12:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:25:26] [INFO] Checking activity reminders 
[2026-03-16 12:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:25:56] [INFO] Checking activity reminders 
[2026-03-16 12:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:26:26] [INFO] Checking activity reminders 
[2026-03-16 12:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:26:56] [INFO] Checking activity reminders 
[2026-03-16 12:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:27:26] [INFO] Checking activity reminders 
[2026-03-16 12:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:27:56] [INFO] Checking activity reminders 
[2026-03-16 12:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:28:27] [INFO] Checking activity reminders 
[2026-03-16 12:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:28:57] [INFO] Checking activity reminders 
[2026-03-16 12:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:07] [INFO] Checking activity reminders 
[2026-03-16 12:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:14] [INFO] Checking activity reminders 
[2026-03-16 12:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 12:29:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 12:29:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 12:29:23] [INFO] Checking activity reminders 
[2026-03-16 12:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:27] [INFO] Checking activity reminders 
[2026-03-16 12:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21674","person_id":"15019"}
[2026-03-16 12:29:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20775","person_id":"1783"}
[2026-03-16 12:29:44] [INFO] Checking activity reminders 
[2026-03-16 12:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:57] [INFO] Checking activity reminders 
[2026-03-16 12:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:29:57] [INFO] Checking activity reminders 
[2026-03-16 12:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:30:27] [INFO] Checking activity reminders 
[2026-03-16 12:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:30:57] [INFO] Checking activity reminders 
[2026-03-16 12:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:31:27] [INFO] Checking activity reminders 
[2026-03-16 12:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:31:58] [INFO] Checking activity reminders 
[2026-03-16 12:31:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:31:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:32:28] [INFO] Checking activity reminders 
[2026-03-16 12:32:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:32:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:32:58] [INFO] Checking activity reminders 
[2026-03-16 12:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:33:28] [INFO] Checking activity reminders 
[2026-03-16 12:33:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:33:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:33:36] [INFO] Activity save request {"post_data":{"contact_id":"2689","deal_id":"local_69b724b4222536.03516675","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:33:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2689","note_was_empty":true}
[2026-03-16 12:33:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"2689","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:36] [INFO] Updating virtual stage {"contact_id":"2689","stage_name":"deal_registered","force":false}
[2026-03-16 12:33:36] [INFO] Virtual stage successfully saved {"contact_id":"2689","stage_name":"deal_registered"}
[2026-03-16 12:33:36] [INFO] Virtual stage updated after activity save {"contact_id":"2689"}
[2026-03-16 12:33:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b724b4222536.03516675","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 12:33:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7c768982889.33377975","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7c768982889.33377975"}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:36] [INFO] Updating virtual stage {"contact_id":"2689","stage_name":"deal_registered","force":false}
[2026-03-16 12:33:36] [INFO] Virtual stage successfully saved {"contact_id":"2689","stage_name":"deal_registered"}
[2026-03-16 12:33:36] [INFO] Virtual stage updated after activity save {"contact_id":"2689"}
[2026-03-16 12:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-03-16 12:33:58] [INFO] Checking activity reminders 
[2026-03-16 12:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:34:28] [INFO] Checking activity reminders 
[2026-03-16 12:34:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:34:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:34:58] [INFO] Checking activity reminders 
[2026-03-16 12:34:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:34:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:35:28] [INFO] Checking activity reminders 
[2026-03-16 12:35:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:35:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:35:58] [INFO] Checking activity reminders 
[2026-03-16 12:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:36:28] [INFO] Checking activity reminders 
[2026-03-16 12:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:36:58] [INFO] Checking activity reminders 
[2026-03-16 12:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:37:28] [INFO] Checking activity reminders 
[2026-03-16 12:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:37:58] [INFO] Checking activity reminders 
[2026-03-16 12:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:38:29] [INFO] Checking activity reminders 
[2026-03-16 12:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:38:59] [INFO] Checking activity reminders 
[2026-03-16 12:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:39:29] [INFO] Checking activity reminders 
[2026-03-16 12:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:39:37] [INFO] Activity save request {"post_data":{"contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:39:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2895","note_was_empty":true}
[2026-03-16 12:39:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"2895","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:37] [INFO] Updating virtual stage {"contact_id":"2895","stage_name":"deal_registered","force":false}
[2026-03-16 12:39:37] [INFO] Virtual stage successfully saved {"contact_id":"2895","stage_name":"deal_registered"}
[2026-03-16 12:39:37] [INFO] Virtual stage updated after activity save {"contact_id":"2895"}
[2026-03-16 12:39:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72c67258d30.73196954","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 12:39:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7c8d1689ec2.54228092","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7c8d1689ec2.54228092"}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:37] [INFO] Updating virtual stage {"contact_id":"2895","stage_name":"deal_registered","force":false}
[2026-03-16 12:39:37] [INFO] Virtual stage successfully saved {"contact_id":"2895","stage_name":"deal_registered"}
[2026-03-16 12:39:37] [INFO] Virtual stage updated after activity save {"contact_id":"2895"}
[2026-03-16 12:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 12:39:59] [INFO] Checking activity reminders 
[2026-03-16 12:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:40:29] [INFO] Checking activity reminders 
[2026-03-16 12:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:40:59] [INFO] Checking activity reminders 
[2026-03-16 12:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:41:29] [INFO] Checking activity reminders 
[2026-03-16 12:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:41:59] [INFO] Checking activity reminders 
[2026-03-16 12:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:42:29] [INFO] Checking activity reminders 
[2026-03-16 12:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:42:59] [INFO] Checking activity reminders 
[2026-03-16 12:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:43:29] [INFO] Checking activity reminders 
[2026-03-16 12:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:43:59] [INFO] Checking activity reminders 
[2026-03-16 12:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:44:25] [INFO] Activity save request {"post_data":{"contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","note":"","result_note":"پیامک رسال \r\nبه دلیل شرایط کاری فقط از طریق پیامک و پیام در ارتباط ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-16 12:44:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21140","note_was_empty":true}
[2026-03-16 12:44:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"21140","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 12:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:25] [INFO] Updating virtual stage {"contact_id":"21140","stage_name":"deal_registered","force":false}
[2026-03-16 12:44:25] [INFO] Virtual stage successfully saved {"contact_id":"21140","stage_name":"deal_registered"}
[2026-03-16 12:44:25] [INFO] Virtual stage updated after activity save {"contact_id":"21140"}
[2026-03-16 12:44:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b723050d8bb1.51027279","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 12:44:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7c9f1e2fc33.05012057","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7c9f1e2fc33.05012057"}
[2026-03-16 12:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:25] [INFO] Updating virtual stage {"contact_id":"21140","stage_name":"deal_registered","force":false}
[2026-03-16 12:44:25] [INFO] Virtual stage successfully saved {"contact_id":"21140","stage_name":"deal_registered"}
[2026-03-16 12:44:25] [INFO] Virtual stage updated after activity save {"contact_id":"21140"}
[2026-03-16 12:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-03-16 12:44:30] [INFO] Checking activity reminders 
[2026-03-16 12:44:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:44:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:44:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 12:45:00] [INFO] Checking activity reminders 
[2026-03-16 12:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:45:30] [INFO] Checking activity reminders 
[2026-03-16 12:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:46:00] [INFO] Checking activity reminders 
[2026-03-16 12:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:46:30] [INFO] Checking activity reminders 
[2026-03-16 12:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:47:00] [INFO] Checking activity reminders 
[2026-03-16 12:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:47:30] [INFO] Checking activity reminders 
[2026-03-16 12:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:47:37] [INFO] Checking activity reminders 
[2026-03-16 12:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:48:00] [INFO] Checking activity reminders 
[2026-03-16 12:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:48:08] [INFO] Checking activity reminders 
[2026-03-16 12:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:48:30] [INFO] Checking activity reminders 
[2026-03-16 12:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:48:35] [INFO] Activity save request {"post_data":{"contact_id":"21226","deal_id":"local_69b7395f0d16c8.38965430","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"صندوق نقد کرده داده یکی مغازه پرکتینی مشهد بزنن سپه بوده به مشکل خورده \r\nفعلا شرایط نداره احتمالا اواسط سال بیاد ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:48:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21226","note_was_empty":true}
[2026-03-16 12:48:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"21226","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:35] [INFO] Updating virtual stage {"contact_id":"21226","stage_name":"deal_registered","force":false}
[2026-03-16 12:48:35] [INFO] Virtual stage successfully saved {"contact_id":"21226","stage_name":"deal_registered"}
[2026-03-16 12:48:35] [INFO] Virtual stage updated after activity save {"contact_id":"21226"}
[2026-03-16 12:48:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7395f0d16c8.38965430","stage":"تماس پیگیری","status_change":null}
[2026-03-16 12:48:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7caeb4baf21.42717340","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7caeb4baf21.42717340"}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:35] [INFO] Updating virtual stage {"contact_id":"21226","stage_name":"deal_registered","force":false}
[2026-03-16 12:48:35] [INFO] Virtual stage successfully saved {"contact_id":"21226","stage_name":"deal_registered"}
[2026-03-16 12:48:35] [INFO] Virtual stage updated after activity save {"contact_id":"21226"}
[2026-03-16 12:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21226","person_id":"13421"}
[2026-03-16 12:48:38] [INFO] Checking activity reminders 
[2026-03-16 12:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:48:57] [INFO] Checking activity reminders 
[2026-03-16 12:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:49:05] [INFO] Checking activity reminders 
[2026-03-16 12:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:49:10] [INFO] Checking activity reminders 
[2026-03-16 12:49:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:49:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:49:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:49:40] [INFO] Checking activity reminders 
[2026-03-16 12:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:50:11] [INFO] Checking activity reminders 
[2026-03-16 12:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:50:11] [INFO] Activity save request {"post_data":{"contact_id":"8796","deal_id":"local_69b5c81b68b117.46186352","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بازم چرت گفت الکی شماره میزاره میگه فکر کردین مثل پارسال ۱۸ ت، دید دادم قیمت شکستم میگه شرایط نداریم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:50:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8796","note_was_empty":true}
[2026-03-16 12:50:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"8796","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:11] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-16 12:50:11] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-16 12:50:11] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-16 12:50:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c81b68b117.46186352","stage":"تماس پیگیری","status_change":null}
[2026-03-16 12:50:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7cb4b9ec009.78837183","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7cb4b9ec009.78837183"}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:11] [INFO] Updating virtual stage {"contact_id":"8796","stage_name":"deal_registered","force":false}
[2026-03-16 12:50:11] [INFO] Virtual stage successfully saved {"contact_id":"8796","stage_name":"deal_registered"}
[2026-03-16 12:50:11] [INFO] Virtual stage updated after activity save {"contact_id":"8796"}
[2026-03-16 12:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 12:50:23] [INFO] Checking activity reminders 
[2026-03-16 12:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:50:29] [INFO] Checking activity reminders 
[2026-03-16 12:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:50:35] [INFO] Checking activity reminders 
[2026-03-16 12:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:50:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:51:36] [INFO] Checking activity reminders 
[2026-03-16 12:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:51:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-03-16 12:52:06] [INFO] Checking activity reminders 
[2026-03-16 12:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:52:07] [INFO] Checking activity reminders 
[2026-03-16 12:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:52:32] [INFO] Activity save request {"post_data":{"contact_id":"13330","deal_id":"local_69b73994266a14.80224376","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:52:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13330","note_was_empty":true}
[2026-03-16 12:52:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"13330","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 12:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:32] [INFO] Updating virtual stage {"contact_id":"13330","stage_name":"deal_registered","force":false}
[2026-03-16 12:52:32] [INFO] Virtual stage successfully saved {"contact_id":"13330","stage_name":"deal_registered"}
[2026-03-16 12:52:32] [INFO] Virtual stage updated after activity save {"contact_id":"13330"}
[2026-03-16 12:52:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73994266a14.80224376","stage":"تماس پیگیری","status_change":null}
[2026-03-16 12:52:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7cbd8d37534.34577157","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7cbd8d37534.34577157"}
[2026-03-16 12:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:32] [INFO] Updating virtual stage {"contact_id":"13330","stage_name":"deal_registered","force":false}
[2026-03-16 12:52:32] [INFO] Virtual stage successfully saved {"contact_id":"13330","stage_name":"deal_registered"}
[2026-03-16 12:52:32] [INFO] Virtual stage updated after activity save {"contact_id":"13330"}
[2026-03-16 12:52:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13330","person_id":"14994"}
[2026-03-16 12:52:36] [INFO] Checking activity reminders 
[2026-03-16 12:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:52:37] [INFO] Checking activity reminders 
[2026-03-16 12:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:53:02] [INFO] Checking activity reminders 
[2026-03-16 12:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:53:07] [INFO] Checking activity reminders 
[2026-03-16 12:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:53:07] [INFO] Checking activity reminders 
[2026-03-16 12:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:53:14] [INFO] Checking activity reminders 
[2026-03-16 12:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:53:37] [INFO] Checking activity reminders 
[2026-03-16 12:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:54:07] [INFO] Checking activity reminders 
[2026-03-16 12:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:54:37] [INFO] Checking activity reminders 
[2026-03-16 12:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:55:07] [INFO] Checking activity reminders 
[2026-03-16 12:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:55:36] [INFO] Checking activity reminders 
[2026-03-16 12:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:56:06] [INFO] Checking activity reminders 
[2026-03-16 12:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:56:36] [INFO] Checking activity reminders 
[2026-03-16 12:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:57:06] [INFO] Checking activity reminders 
[2026-03-16 12:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:57:36] [INFO] Checking activity reminders 
[2026-03-16 12:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:57:45] [INFO] Checking activity reminders 
[2026-03-16 12:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:57:46] [INFO] Checking activity reminders 
[2026-03-16 12:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:57:55] [INFO] Checking activity reminders 
[2026-03-16 12:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:06] [INFO] Checking activity reminders 
[2026-03-16 12:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7737","person_id":"13998"}
[2026-03-16 12:58:11] [INFO] Activity save request {"post_data":{"contact_id":"21498","deal_id":"local_69b739cb892ed5.50392436","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک چه ساعتی تماس ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 12:58:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21498","note_was_empty":true}
[2026-03-16 12:58:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"21498","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:11] [INFO] Updating virtual stage {"contact_id":"21498","stage_name":"deal_registered","force":false}
[2026-03-16 12:58:11] [INFO] Virtual stage successfully saved {"contact_id":"21498","stage_name":"deal_registered"}
[2026-03-16 12:58:11] [INFO] Virtual stage updated after activity save {"contact_id":"21498"}
[2026-03-16 12:58:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b739cb892ed5.50392436","stage":"تماس پیگیری","status_change":null}
[2026-03-16 12:58:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7cd2bdf96e2.95230029","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7cd2bdf96e2.95230029"}
[2026-03-16 12:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:11] [INFO] Updating virtual stage {"contact_id":"21498","stage_name":"deal_registered","force":false}
[2026-03-16 12:58:11] [INFO] Virtual stage successfully saved {"contact_id":"21498","stage_name":"deal_registered"}
[2026-03-16 12:58:11] [INFO] Virtual stage updated after activity save {"contact_id":"21498"}
[2026-03-16 12:58:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21498","person_id":"11022"}
[2026-03-16 12:58:16] [INFO] Checking activity reminders 
[2026-03-16 12:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:24] [INFO] Checking activity reminders 
[2026-03-16 12:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:25] [INFO] Checking activity reminders 
[2026-03-16 12:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:29] [INFO] Checking activity reminders 
[2026-03-16 12:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:29] [INFO] Checking activity reminders 
[2026-03-16 12:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:36] [INFO] Checking activity reminders 
[2026-03-16 12:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:36] [INFO] Checking activity reminders 
[2026-03-16 12:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6574","person_id":"10803"}
[2026-03-16 12:58:44] [INFO] Checking activity reminders 
[2026-03-16 12:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 12:58:59] [INFO] Checking activity reminders 
[2026-03-16 12:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:59:06] [INFO] Checking activity reminders 
[2026-03-16 12:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:59:29] [INFO] Checking activity reminders 
[2026-03-16 12:59:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:59:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 12:59:36] [INFO] Checking activity reminders 
[2026-03-16 12:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 12:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:00] [INFO] Checking activity reminders 
[2026-03-16 13:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:00] [INFO] Checking activity reminders 
[2026-03-16 13:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:06] [INFO] Checking activity reminders 
[2026-03-16 13:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:26] [INFO] Activity save request {"post_data":{"contact_id":"21443","deal_id":"local_69b73a50df6cd4.64953457","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ریجکت کرد ارسال پیامک چه ساعتی شرایط صحبت داره","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:00:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21443","note_was_empty":true}
[2026-03-16 13:00:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"21443","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:26] [INFO] Updating virtual stage {"contact_id":"21443","stage_name":"deal_registered","force":false}
[2026-03-16 13:00:26] [INFO] Virtual stage successfully saved {"contact_id":"21443","stage_name":"deal_registered"}
[2026-03-16 13:00:26] [INFO] Virtual stage updated after activity save {"contact_id":"21443"}
[2026-03-16 13:00:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73a50df6cd4.64953457","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:00:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7cdb26704d1.28427628","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7cdb26704d1.28427628"}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:26] [INFO] Updating virtual stage {"contact_id":"21443","stage_name":"deal_registered","force":false}
[2026-03-16 13:00:26] [INFO] Virtual stage successfully saved {"contact_id":"21443","stage_name":"deal_registered"}
[2026-03-16 13:00:26] [INFO] Virtual stage updated after activity save {"contact_id":"21443"}
[2026-03-16 13:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21443","person_id":"12617"}
[2026-03-16 13:00:30] [INFO] Checking activity reminders 
[2026-03-16 13:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:30] [INFO] Checking activity reminders 
[2026-03-16 13:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:47] [INFO] Checking activity reminders 
[2026-03-16 13:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:53] [INFO] Checking activity reminders 
[2026-03-16 13:00:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:00:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:01:00] [INFO] Checking activity reminders 
[2026-03-16 13:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:01:23] [INFO] Checking activity reminders 
[2026-03-16 13:01:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:01:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:01:39] [INFO] Checking activity reminders 
[2026-03-16 13:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:01:58] [INFO] Checking activity reminders 
[2026-03-16 13:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:02:09] [INFO] Checking activity reminders 
[2026-03-16 13:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:02:29] [INFO] Checking activity reminders 
[2026-03-16 13:02:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:02:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:02:39] [INFO] Checking activity reminders 
[2026-03-16 13:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:02:59] [INFO] Checking activity reminders 
[2026-03-16 13:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:03:09] [INFO] Checking activity reminders 
[2026-03-16 13:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:03:25] [INFO] Activity save request {"post_data":{"contact_id":"6559","deal_id":"local_69b73a881831e1.95581222","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اصلا عضویت نگرفت بیعانه زده بود اون زمان عودت دادیم ، رضایت نداشت میگفت چرا اقای حنفی میگه تسویه کن چرا دسترسی همینطوری نمیده، امروز تماس عدم پاسخ ارسال پیامک فکر تمیکنم باشه ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:03:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6559","note_was_empty":true}
[2026-03-16 13:03:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"6559","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:25] [INFO] Updating virtual stage {"contact_id":"6559","stage_name":"deal_registered","force":false}
[2026-03-16 13:03:25] [INFO] Virtual stage successfully saved {"contact_id":"6559","stage_name":"deal_registered"}
[2026-03-16 13:03:25] [INFO] Virtual stage updated after activity save {"contact_id":"6559"}
[2026-03-16 13:03:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73a881831e1.95581222","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:03:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7ce65065794.87329599","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7ce65065794.87329599"}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:25] [INFO] Updating virtual stage {"contact_id":"6559","stage_name":"deal_registered","force":false}
[2026-03-16 13:03:25] [INFO] Virtual stage successfully saved {"contact_id":"6559","stage_name":"deal_registered"}
[2026-03-16 13:03:25] [INFO] Virtual stage updated after activity save {"contact_id":"6559"}
[2026-03-16 13:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6559","person_id":"12892"}
[2026-03-16 13:03:39] [INFO] Checking activity reminders 
[2026-03-16 13:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:04:09] [INFO] Checking activity reminders 
[2026-03-16 13:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:04:18] [INFO] Checking activity reminders 
[2026-03-16 13:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:04:39] [INFO] Checking activity reminders 
[2026-03-16 13:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:05:09] [INFO] Checking activity reminders 
[2026-03-16 13:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:05:39] [INFO] Checking activity reminders 
[2026-03-16 13:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:05:53] [INFO] Activity save request {"post_data":{"contact_id":"12838","deal_id":"local_69b721a5993a91.95624195","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \/ بیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:05:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12838","note_was_empty":true}
[2026-03-16 13:05:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"12838","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:53] [INFO] Updating virtual stage {"contact_id":"12838","stage_name":"deal_registered","force":false}
[2026-03-16 13:05:53] [INFO] Virtual stage successfully saved {"contact_id":"12838","stage_name":"deal_registered"}
[2026-03-16 13:05:53] [INFO] Virtual stage updated after activity save {"contact_id":"12838"}
[2026-03-16 13:05:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b721a5993a91.95624195","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 13:05:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7cef9065405.18296748","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7cef9065405.18296748"}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:53] [INFO] Updating virtual stage {"contact_id":"12838","stage_name":"deal_registered","force":false}
[2026-03-16 13:05:53] [INFO] Virtual stage successfully saved {"contact_id":"12838","stage_name":"deal_registered"}
[2026-03-16 13:05:53] [INFO] Virtual stage updated after activity save {"contact_id":"12838"}
[2026-03-16 13:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-03-16 13:05:54] [INFO] Checking activity reminders 
[2026-03-16 13:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:06:01] [INFO] Checking activity reminders 
[2026-03-16 13:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:06:08] [INFO] Checking activity reminders 
[2026-03-16 13:06:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:06:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:06:10] [INFO] Checking activity reminders 
[2026-03-16 13:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:06:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:06:29] [INFO] Checking activity reminders 
[2026-03-16 13:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:06:59] [INFO] Checking activity reminders 
[2026-03-16 13:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:07:29] [INFO] Checking activity reminders 
[2026-03-16 13:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:07:59] [INFO] Checking activity reminders 
[2026-03-16 13:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:08:29] [INFO] Checking activity reminders 
[2026-03-16 13:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:08:59] [INFO] Checking activity reminders 
[2026-03-16 13:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:09:29] [INFO] Checking activity reminders 
[2026-03-16 13:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:09:59] [INFO] Checking activity reminders 
[2026-03-16 13:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:10:11] [INFO] Checking activity reminders 
[2026-03-16 13:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:10:29] [INFO] Checking activity reminders 
[2026-03-16 13:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:10:41] [INFO] Checking activity reminders 
[2026-03-16 13:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:11:00] [INFO] Checking activity reminders 
[2026-03-16 13:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:11:11] [INFO] Checking activity reminders 
[2026-03-16 13:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:11:15] [INFO] Activity save request {"post_data":{"contact_id":"20528","deal_id":"local_69b73bbc748942.96112438","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دو روز پیش سر معامله زمین تنکابن پشتیبانی شد از استاد ویس گرفتم براش، میگه نیازی نمیبینم کانال باشم کانال به دردم نمیخوره مشاوره به دردم میخوره هر زمان خواستم بهتون اطلاع میدم دید دادم بابت مبلغ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:11:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20528","note_was_empty":true}
[2026-03-16 13:11:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"20528","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:15] [INFO] Updating virtual stage {"contact_id":"20528","stage_name":"deal_registered","force":false}
[2026-03-16 13:11:15] [INFO] Virtual stage successfully saved {"contact_id":"20528","stage_name":"deal_registered"}
[2026-03-16 13:11:15] [INFO] Virtual stage updated after activity save {"contact_id":"20528"}
[2026-03-16 13:11:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73bbc748942.96112438","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:11:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d03b383bc7.71679759","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d03b383bc7.71679759"}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:15] [INFO] Updating virtual stage {"contact_id":"20528","stage_name":"deal_registered","force":false}
[2026-03-16 13:11:15] [INFO] Virtual stage successfully saved {"contact_id":"20528","stage_name":"deal_registered"}
[2026-03-16 13:11:15] [INFO] Virtual stage updated after activity save {"contact_id":"20528"}
[2026-03-16 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20528","person_id":"12096"}
[2026-03-16 13:11:30] [INFO] Checking activity reminders 
[2026-03-16 13:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:12:00] [INFO] Checking activity reminders 
[2026-03-16 13:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:12:30] [INFO] Checking activity reminders 
[2026-03-16 13:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:13:00] [INFO] Checking activity reminders 
[2026-03-16 13:13:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:13:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:13:30] [INFO] Checking activity reminders 
[2026-03-16 13:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:14:00] [INFO] Checking activity reminders 
[2026-03-16 13:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:14:30] [INFO] Checking activity reminders 
[2026-03-16 13:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:15:00] [INFO] Checking activity reminders 
[2026-03-16 13:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:15:30] [INFO] Checking activity reminders 
[2026-03-16 13:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:16:00] [INFO] Checking activity reminders 
[2026-03-16 13:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:16:30] [INFO] Checking activity reminders 
[2026-03-16 13:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:17:01] [INFO] Checking activity reminders 
[2026-03-16 13:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:17:31] [INFO] Checking activity reminders 
[2026-03-16 13:17:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:17:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:18:01] [INFO] Checking activity reminders 
[2026-03-16 13:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:18:31] [INFO] Checking activity reminders 
[2026-03-16 13:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:19:01] [INFO] Checking activity reminders 
[2026-03-16 13:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:19:31] [INFO] Checking activity reminders 
[2026-03-16 13:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:20:01] [INFO] Checking activity reminders 
[2026-03-16 13:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:20:31] [INFO] Checking activity reminders 
[2026-03-16 13:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:21:01] [INFO] Checking activity reminders 
[2026-03-16 13:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:21:12] [INFO] Activity save request {"post_data":{"contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 \r\nخانه اش موشک خورده \r\nاز صندوق ها خروج زده تا عصر میشینه به حساب \r\nارسال لینک پرداخت \r\nفقط طلای فیزیکی و صندوق سرمایه \/ خودرو فقط 1 زیر پا نگه داشته \r\nدر 2 مرحله واریز \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:21:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1025","note_was_empty":true}
[2026-03-16 13:21:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"1025","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:12] [INFO] Updating virtual stage {"contact_id":"1025","stage_name":"deal_registered","force":false}
[2026-03-16 13:21:12] [INFO] Virtual stage successfully saved {"contact_id":"1025","stage_name":"deal_registered"}
[2026-03-16 13:21:12] [INFO] Virtual stage updated after activity save {"contact_id":"1025"}
[2026-03-16 13:21:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72c1e6192e4.67895249","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 13:21:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d290094274.47580977","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d290094274.47580977"}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:12] [INFO] Updating virtual stage {"contact_id":"1025","stage_name":"deal_registered","force":false}
[2026-03-16 13:21:12] [INFO] Virtual stage successfully saved {"contact_id":"1025","stage_name":"deal_registered"}
[2026-03-16 13:21:12] [INFO] Virtual stage updated after activity save {"contact_id":"1025"}
[2026-03-16 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-16 13:21:31] [INFO] Checking activity reminders 
[2026-03-16 13:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:21:47] [INFO] Checking activity reminders 
[2026-03-16 13:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:21:52] [INFO] Checking activity reminders 
[2026-03-16 13:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:22:17] [INFO] Checking activity reminders 
[2026-03-16 13:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:22:23] [INFO] Checking activity reminders 
[2026-03-16 13:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:22:47] [INFO] Checking activity reminders 
[2026-03-16 13:22:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:22:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:22:53] [INFO] Checking activity reminders 
[2026-03-16 13:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:23:08] [INFO] Activity save request {"post_data":{"contact_id":"21638","deal_id":"local_69b73be32e0585.78940642","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال ش کارت ۵۴ ت هست ۲۰ الان بزنه تسویه اوایل اردیبهشت","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:23:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21638","note_was_empty":true}
[2026-03-16 13:23:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"21638","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:08] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-03-16 13:23:08] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-03-16 13:23:08] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-03-16 13:23:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73be32e0585.78940642","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 13:23:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d30457aeb4.73502025","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d30457aeb4.73502025"}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:08] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-03-16 13:23:08] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-03-16 13:23:08] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-03-16 13:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-03-16 13:23:17] [INFO] Checking activity reminders 
[2026-03-16 13:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:23:47] [INFO] Checking activity reminders 
[2026-03-16 13:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:24:14] [INFO] Checking activity reminders 
[2026-03-16 13:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:24:17] [INFO] Checking activity reminders 
[2026-03-16 13:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:24:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:24:45] [INFO] Checking activity reminders 
[2026-03-16 13:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:24:47] [INFO] Checking activity reminders 
[2026-03-16 13:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:24:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:24:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:24:57] [INFO] generateDealTitle result {"contact_id":"15230","person_name":"مهدی جهانگیری","mobile":"9128818859","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128818859"}
[2026-03-16 13:25:11] [INFO] Checking activity reminders 
[2026-03-16 13:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:15] [INFO] Checking activity reminders 
[2026-03-16 13:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:19] [INFO] Checking activity reminders 
[2026-03-16 13:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 13:25:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 13:25:27] [INFO] Checking activity reminders 
[2026-03-16 13:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:38] [INFO] Checking activity reminders 
[2026-03-16 13:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-16 13:25:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:44] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:44] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:44] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:45] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:45] [INFO] Checking activity reminders 
[2026-03-16 13:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:45] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_leads"}
[2026-03-16 13:25:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:49] [INFO] Checking activity reminders 
[2026-03-16 13:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:52] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:52] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:52] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:53] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:55] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:55] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:57] [INFO] Checking activity reminders 
[2026-03-16 13:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:25:58] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_leads"}
[2026-03-16 13:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:26:06] [INFO] Checking activity reminders 
[2026-03-16 13:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:26:08] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 13:26:08] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-16 13:26:08] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-16 13:26:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 13:26:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 13:26:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 13:26:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 13:26:12] [INFO] Checking activity reminders 
[2026-03-16 13:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 13:26:26] [INFO] Checking activity reminders 
[2026-03-16 13:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:26:36] [INFO] Checking activity reminders 
[2026-03-16 13:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:26:39] [INFO] Checking activity reminders 
[2026-03-16 13:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:26:50] [INFO] Checking activity reminders 
[2026-03-16 13:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:04] [INFO] Checking activity reminders 
[2026-03-16 13:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:06] [INFO] Checking activity reminders 
[2026-03-16 13:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:09] [INFO] Checking activity reminders 
[2026-03-16 13:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:34] [INFO] Checking activity reminders 
[2026-03-16 13:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 13:27:36] [INFO] Checking activity reminders 
[2026-03-16 13:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:39] [INFO] Checking activity reminders 
[2026-03-16 13:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:28:06] [INFO] Checking activity reminders 
[2026-03-16 13:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:28:11] [INFO] Checking activity reminders 
[2026-03-16 13:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:28:36] [INFO] Checking activity reminders 
[2026-03-16 13:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:28:41] [INFO] Checking activity reminders 
[2026-03-16 13:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:28:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15230","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 13:28:46","session_id":"imsflqovcvola3k664iievna7a"}
[2026-03-16 13:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:28:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15230","is_new_deal":true}
[2026-03-16 13:28:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 13:28:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:28:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:28:46] [INFO] getContactPrimaryPhone called {"contact_id":"15230"}
[2026-03-16 13:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:28:46] [INFO] getContactPrimaryPhone result {"contact_id":"15230","person_found":true,"primary_phone":"9128818859"}
[2026-03-16 13:28:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128818859"}
[2026-03-16 13:28:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128818859","contact_id":"15230","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 13:28:46"}
[2026-03-16 13:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:28:46] [INFO] generateDealTitle result {"contact_id":"15230","person_name":"مهدی جهانگیری","mobile":"9128818859","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128818859"}
[2026-03-16 13:28:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15230","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-16 13:28:46] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15230","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 13:28:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15230","title":"معامله سوم 9128818859 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9128818859","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی جهانگیری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 13:28:46","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-16 13:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:28:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 13:28:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15230","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9128818859 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-16 13:28:46","ip_address":"5.211.7.119","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 13:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-03-16 13:28:57] [INFO] Checking activity reminders 
[2026-03-16 13:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:29:06] [INFO] Checking activity reminders 
[2026-03-16 13:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:29:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9781","deal_id":"local_69b53008d871f7.15014893","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 13:29:21","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 13:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:29:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9781","is_new_deal":false}
[2026-03-16 13:29:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 13:29:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:29:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:29:21] [INFO] getContactPrimaryPhone called {"contact_id":"9781"}
[2026-03-16 13:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:29:21] [INFO] getContactPrimaryPhone result {"contact_id":"9781","person_found":true,"primary_phone":"9124211217"}
[2026-03-16 13:29:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124211217"}
[2026-03-16 13:29:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124211217","contact_id":"9781","deal_id":"local_69b53008d871f7.15014893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 13:29:21"}
[2026-03-16 13:29:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","existing_deal_found":true,"existing_contact_id":"9781","existing_title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 13:29:21"}
[2026-03-16 13:29:21] [INFO] DealController.save validated payments {"deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-16 13:29:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9781","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 13:29:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53008d871f7.15014893","contact_didar_id":"9781","title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9124211217","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرف فرقانی","existing_deal":"YES","existing_deal_id":"local_69b53008d871f7.15014893","existing_deal_status":"Pending","server_time":"2026-03-16 13:29:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 13:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:29:21] [INFO] Deal success processed {"contact_id":"9781","person_name":"عرف فرقانی","products_count":1}
[2026-03-16 13:29:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53008d871f7.15014893","contact_id":"9781","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9124211217 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-16 13:29:21","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 13:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-03-16 13:29:23] [INFO] Checking activity reminders 
[2026-03-16 13:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:29:41] [INFO] Checking activity reminders 
[2026-03-16 13:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:29:53] [INFO] Checking activity reminders 
[2026-03-16 13:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:30:12] [INFO] Checking activity reminders 
[2026-03-16 13:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:30:24] [INFO] Checking activity reminders 
[2026-03-16 13:30:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:30:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 13:30:42] [INFO] Checking activity reminders 
[2026-03-16 13:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:30:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 13:30:54] [INFO] Checking activity reminders 
[2026-03-16 13:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:12] [INFO] Checking activity reminders 
[2026-03-16 13:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:24] [INFO] Checking activity reminders 
[2026-03-16 13:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:28] [INFO] Checking activity reminders 
[2026-03-16 13:31:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:29] [INFO] Checking activity reminders 
[2026-03-16 13:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:35] [INFO] Checking activity reminders 
[2026-03-16 13:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:40] [INFO] Checking activity reminders 
[2026-03-16 13:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:46] [INFO] Checking activity reminders 
[2026-03-16 13:31:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-03-16 13:31:54] [INFO] Checking activity reminders 
[2026-03-16 13:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:31:59] [INFO] Checking activity reminders 
[2026-03-16 13:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:32:24] [INFO] Checking activity reminders 
[2026-03-16 13:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:32:36] [INFO] Checking activity reminders 
[2026-03-16 13:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:32:54] [INFO] Checking activity reminders 
[2026-03-16 13:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 13:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 13:33:07] [INFO] Checking activity reminders 
[2026-03-16 13:33:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:33:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:33:24] [INFO] Checking activity reminders 
[2026-03-16 13:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:33:37] [INFO] Checking activity reminders 
[2026-03-16 13:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:33:42] [INFO] Checking activity reminders 
[2026-03-16 13:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:33:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:34:07] [INFO] Checking activity reminders 
[2026-03-16 13:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:34:12] [INFO] Checking activity reminders 
[2026-03-16 13:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:34:42] [INFO] Checking activity reminders 
[2026-03-16 13:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:35:01] [INFO] Checking activity reminders 
[2026-03-16 13:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:35:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-03-16 13:35:12] [INFO] Checking activity reminders 
[2026-03-16 13:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:35:42] [INFO] Checking activity reminders 
[2026-03-16 13:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:35:54] [INFO] generateDealTitle result {"contact_id":"10011","person_name":"عرفان ارفعی","mobile":"9122764868","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122764868"}
[2026-03-16 13:36:12] [INFO] Checking activity reminders 
[2026-03-16 13:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:36:41] [INFO] Activity save request {"post_data":{"contact_id":"10011","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامکد ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:36:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:36:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:36:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10011","note_was_empty":true}
[2026-03-16 13:36:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"10011","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 13:36:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d6315d2f20.24296686","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:36:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d6315d2f20.24296686"}
[2026-03-16 13:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:36:41] [INFO] Updating virtual stage {"contact_id":"10011","stage_name":"deal_registered","force":false}
[2026-03-16 13:36:41] [INFO] Virtual stage successfully saved {"contact_id":"10011","stage_name":"deal_registered"}
[2026-03-16 13:36:41] [INFO] Virtual stage updated after activity save {"contact_id":"10011"}
[2026-03-16 13:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-03-16 13:36:43] [INFO] Checking activity reminders 
[2026-03-16 13:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:37:13] [INFO] Checking activity reminders 
[2026-03-16 13:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:37:43] [INFO] Checking activity reminders 
[2026-03-16 13:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:38:08] [INFO] Checking activity reminders 
[2026-03-16 13:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:38:13] [INFO] Checking activity reminders 
[2026-03-16 13:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:38:38] [INFO] Checking activity reminders 
[2026-03-16 13:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:38:43] [INFO] Checking activity reminders 
[2026-03-16 13:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:39:08] [INFO] Checking activity reminders 
[2026-03-16 13:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:39:13] [INFO] Checking activity reminders 
[2026-03-16 13:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:39:20] [INFO] Activity save request {"post_data":{"contact_id":"1390","deal_id":"local_69b73c136950d8.21935620","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بهمن هم تمتس گرفتم پاسخ نداد پیام ارسال شد ماسخ نداد امروز مجدد تمتس عدم پاسخ ارسال پیامک میحواد باشه کانال ۴۰۵","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:39:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1390","note_was_empty":true}
[2026-03-16 13:39:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"1390","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:20] [INFO] Updating virtual stage {"contact_id":"1390","stage_name":"deal_registered","force":false}
[2026-03-16 13:39:20] [INFO] Virtual stage successfully saved {"contact_id":"1390","stage_name":"deal_registered"}
[2026-03-16 13:39:20] [INFO] Virtual stage updated after activity save {"contact_id":"1390"}
[2026-03-16 13:39:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73c136950d8.21935620","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:39:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d6d0edd260.43745761","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d6d0edd260.43745761"}
[2026-03-16 13:39:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:20] [INFO] Updating virtual stage {"contact_id":"1390","stage_name":"deal_registered","force":false}
[2026-03-16 13:39:20] [INFO] Virtual stage successfully saved {"contact_id":"1390","stage_name":"deal_registered"}
[2026-03-16 13:39:20] [INFO] Virtual stage updated after activity save {"contact_id":"1390"}
[2026-03-16 13:39:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-03-16 13:39:44] [INFO] Checking activity reminders 
[2026-03-16 13:39:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:39:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:40:10] [INFO] Activity save request {"post_data":{"contact_id":"20962","deal_id":"local_69b723781078e2.06508888","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:40:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20962","note_was_empty":true}
[2026-03-16 13:40:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"20962","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:10] [INFO] Updating virtual stage {"contact_id":"20962","stage_name":"deal_registered","force":false}
[2026-03-16 13:40:10] [INFO] Virtual stage successfully saved {"contact_id":"20962","stage_name":"deal_registered"}
[2026-03-16 13:40:10] [INFO] Virtual stage updated after activity save {"contact_id":"20962"}
[2026-03-16 13:40:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b723781078e2.06508888","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 13:40:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d70270b9e6.46250526","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d70270b9e6.46250526"}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:10] [INFO] Updating virtual stage {"contact_id":"20962","stage_name":"deal_registered","force":false}
[2026-03-16 13:40:10] [INFO] Virtual stage successfully saved {"contact_id":"20962","stage_name":"deal_registered"}
[2026-03-16 13:40:10] [INFO] Virtual stage updated after activity save {"contact_id":"20962"}
[2026-03-16 13:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20962","person_id":"13911"}
[2026-03-16 13:40:14] [INFO] Checking activity reminders 
[2026-03-16 13:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:40:44] [INFO] Checking activity reminders 
[2026-03-16 13:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:41:14] [INFO] Checking activity reminders 
[2026-03-16 13:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 13:41:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 13:41:44] [INFO] Checking activity reminders 
[2026-03-16 13:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 13:42:14] [INFO] Checking activity reminders 
[2026-03-16 13:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:42:44] [INFO] Checking activity reminders 
[2026-03-16 13:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:42:49] [INFO] Checking activity reminders 
[2026-03-16 13:42:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:42:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:43:19] [INFO] Checking activity reminders 
[2026-03-16 13:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:43:49] [INFO] Checking activity reminders 
[2026-03-16 13:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:44:19] [INFO] Checking activity reminders 
[2026-03-16 13:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:44:35] [INFO] Checking activity reminders 
[2026-03-16 13:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:44:47] [INFO] Checking activity reminders 
[2026-03-16 13:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:44:49] [INFO] Checking activity reminders 
[2026-03-16 13:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:44:54] [INFO] Checking activity reminders 
[2026-03-16 13:44:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:44:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:45:19] [INFO] Checking activity reminders 
[2026-03-16 13:45:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:45:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:45:39] [INFO] Checking activity reminders 
[2026-03-16 13:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:45:40] [INFO] Checking activity reminders 
[2026-03-16 13:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:45:43] [INFO] Checking activity reminders 
[2026-03-16 13:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:10] [INFO] Checking activity reminders 
[2026-03-16 13:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:46:13] [INFO] Checking activity reminders 
[2026-03-16 13:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:46:40] [INFO] Checking activity reminders 
[2026-03-16 13:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:46:43] [INFO] Checking activity reminders 
[2026-03-16 13:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:46:53] [INFO] Activity save request {"post_data":{"contact_id":"1415","deal_id":"local_69b73c8e95cec8.80976029","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چند باری بهمن و اسفند تماس عدم پاسخ ارسال پیامک پیگیری هست کانال ۴۰۵","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:46:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1415","note_was_empty":true}
[2026-03-16 13:46:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"1415","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:53] [INFO] Updating virtual stage {"contact_id":"1415","stage_name":"deal_registered","force":false}
[2026-03-16 13:46:53] [INFO] Virtual stage successfully saved {"contact_id":"1415","stage_name":"deal_registered"}
[2026-03-16 13:46:53] [INFO] Virtual stage updated after activity save {"contact_id":"1415"}
[2026-03-16 13:46:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73c8e95cec8.80976029","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:46:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d895c02684.70058652","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d895c02684.70058652"}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:46:53] [INFO] Updating virtual stage {"contact_id":"1415","stage_name":"deal_registered","force":false}
[2026-03-16 13:46:53] [INFO] Virtual stage successfully saved {"contact_id":"1415","stage_name":"deal_registered"}
[2026-03-16 13:46:53] [INFO] Virtual stage updated after activity save {"contact_id":"1415"}
[2026-03-16 13:46:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1415","person_id":"20424"}
[2026-03-16 13:49:33] [INFO] Checking activity reminders 
[2026-03-16 13:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:49:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:50:49] [INFO] Checking activity reminders 
[2026-03-16 13:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:50:49] [INFO] Checking activity reminders 
[2026-03-16 13:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:51:11] [INFO] Activity save request {"post_data":{"contact_id":"17275","deal_id":"local_69b73f4139ea65.15857498","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری هست کانال ۴۰۵","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:51:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17275","note_was_empty":true}
[2026-03-16 13:51:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"17275","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:11] [INFO] Updating virtual stage {"contact_id":"17275","stage_name":"deal_registered","force":false}
[2026-03-16 13:51:11] [INFO] Virtual stage successfully saved {"contact_id":"17275","stage_name":"deal_registered"}
[2026-03-16 13:51:11] [INFO] Virtual stage updated after activity save {"contact_id":"17275"}
[2026-03-16 13:51:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73f4139ea65.15857498","stage":"تماس پیگیری","status_change":null}
[2026-03-16 13:51:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7d997580262.19296685","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7d997580262.19296685"}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:11] [INFO] Updating virtual stage {"contact_id":"17275","stage_name":"deal_registered","force":false}
[2026-03-16 13:51:11] [INFO] Virtual stage successfully saved {"contact_id":"17275","stage_name":"deal_registered"}
[2026-03-16 13:51:11] [INFO] Virtual stage updated after activity save {"contact_id":"17275"}
[2026-03-16 13:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17275","person_id":"20710"}
[2026-03-16 13:51:19] [INFO] Checking activity reminders 
[2026-03-16 13:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:51:27] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9120539575","09120539575"]}
[2026-03-16 13:51:27] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9120539575","09120539575"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-16 13:51:27] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9120539575","full_name":"لید جدید"}
[2026-03-16 13:51:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:51:27] [INFO] Notification created {"notification_id":"605","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-16 13:51:37] [INFO] Checking activity reminders 
[2026-03-16 13:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:07] [INFO] Checking activity reminders 
[2026-03-16 13:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:52:25] [INFO] Lead update received {"contact_id":"local_69b7d9a7ab9697.18146949","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 13:52:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-03-16 13:52:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:37] [INFO] Checking activity reminders 
[2026-03-16 13:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:52:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 13:52:48","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 13:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","is_new_deal":false}
[2026-03-16 13:52:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 13:52:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:52:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 13:52:48] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-03-16 13:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:48] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b7d9a7ab9697.18146949","person_found":true,"primary_phone":"9120539575"}
[2026-03-16 13:52:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120539575"}
[2026-03-16 13:52:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120539575","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 13:52:48"}
[2026-03-16 13:52:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","existing_deal_found":true,"existing_contact_id":"local_69b7d9a7ab9697.18146949","existing_title":"معامله اول 9120539575","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 13:52:48"}
[2026-03-16 13:52:48] [INFO] DealController.save validated payments {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-16 13:52:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b7d9a7ab9697.18146949","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 13:52:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7d9a7b670a","contact_didar_id":"local_69b7d9a7ab9697.18146949","title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9120539575","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا حسینی","existing_deal":"YES","existing_deal_id":"local_69b7d9a7b670a","existing_deal_status":"Pending","server_time":"2026-03-16 13:52:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 13:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 13:52:48","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 13:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:53:07] [INFO] Checking activity reminders 
[2026-03-16 13:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:53:37] [INFO] Checking activity reminders 
[2026-03-16 13:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:54:08] [INFO] Checking activity reminders 
[2026-03-16 13:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:54:38] [INFO] Checking activity reminders 
[2026-03-16 13:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:54:57] [INFO] Activity save request {"post_data":{"contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در بورس و صندوق و طلای فیزیکی سرمایه گذاری \r\nپرزنت 405 \r\nخانمش میخواد عضو کانال بشه \r\nارسال شبا \r\nتا اخر فروردین تسویه \r\n","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:54:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:54:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:54:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b7d9a7ab9697.18146949","note_was_empty":true}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:54:57] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"new","force":false}
[2026-03-16 13:54:57] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"new"}
[2026-03-16 13:54:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-03-16 13:54:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7d9a7b670a","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 13:54:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7da793af297.26866543","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:54:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7da793af297.26866543"}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:54:57] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered","force":false}
[2026-03-16 13:54:57] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered"}
[2026-03-16 13:54:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-03-16 13:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-16 13:55:08] [INFO] Checking activity reminders 
[2026-03-16 13:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:55:38] [INFO] Checking activity reminders 
[2026-03-16 13:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 13:56:08] [INFO] Checking activity reminders 
[2026-03-16 13:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:56:38] [INFO] Checking activity reminders 
[2026-03-16 13:56:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:56:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:56:54] [INFO] Checking activity reminders 
[2026-03-16 13:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:08] [INFO] Checking activity reminders 
[2026-03-16 13:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:57:24] [INFO] Checking activity reminders 
[2026-03-16 13:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:57:33] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال ش کارت تا عصر ۳۰ ت واریز تسویه هفته اخر فروردین ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 13:57:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_87","note_was_empty":true}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:33] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"new","force":false}
[2026-03-16 13:57:33] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"new"}
[2026-03-16 13:57:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-03-16 13:57:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b740cad7a941.81793437","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 13:57:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7db15bbb181.07539442","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7db15bbb181.07539442"}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:33] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-03-16 13:57:33] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-03-16 13:57:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-03-16 13:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 13:57:38] [INFO] Checking activity reminders 
[2026-03-16 13:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:58:08] [INFO] Checking activity reminders 
[2026-03-16 13:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:58:38] [INFO] Checking activity reminders 
[2026-03-16 13:58:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:58:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:59:08] [INFO] Checking activity reminders 
[2026-03-16 13:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 13:59:39] [INFO] Checking activity reminders 
[2026-03-16 13:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 13:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:00:09] [INFO] Checking activity reminders 
[2026-03-16 14:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:00:38] [INFO] Checking activity reminders 
[2026-03-16 14:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:00:39] [INFO] Checking activity reminders 
[2026-03-16 14:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 14:01:08] [INFO] Checking activity reminders 
[2026-03-16 14:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:01:09] [INFO] Checking activity reminders 
[2026-03-16 14:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:01:21] [INFO] Activity save request {"post_data":{"contact_id":"15382","deal_id":"local_69b53fc49280b6.28843444","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت \r\nمجدد تماس \r\nپیامک ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 14:01:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15382","note_was_empty":true}
[2026-03-16 14:01:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"15382","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:21] [INFO] Updating virtual stage {"contact_id":"15382","stage_name":"deal_registered","force":false}
[2026-03-16 14:01:21] [INFO] Virtual stage successfully saved {"contact_id":"15382","stage_name":"deal_registered"}
[2026-03-16 14:01:21] [INFO] Virtual stage updated after activity save {"contact_id":"15382"}
[2026-03-16 14:01:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53fc49280b6.28843444","stage":"تماس پیگیری","status_change":null}
[2026-03-16 14:01:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7dbf9170f43.97682027","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7dbf9170f43.97682027"}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:21] [INFO] Updating virtual stage {"contact_id":"15382","stage_name":"deal_registered","force":false}
[2026-03-16 14:01:21] [INFO] Virtual stage successfully saved {"contact_id":"15382","stage_name":"deal_registered"}
[2026-03-16 14:01:21] [INFO] Virtual stage updated after activity save {"contact_id":"15382"}
[2026-03-16 14:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15382","person_id":"9011"}
[2026-03-16 14:01:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 14:01:39] [INFO] Checking activity reminders 
[2026-03-16 14:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:01:50] [INFO] Checking activity reminders 
[2026-03-16 14:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:02:09] [INFO] Checking activity reminders 
[2026-03-16 14:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:02:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"14915","deal_id":"local_6950f3d76a1065.49920374","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 14:02:20","session_id":"imsflqovcvola3k664iievna7a"}
[2026-03-16 14:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 14:02:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"14915","is_new_deal":false}
[2026-03-16 14:02:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-03-16 14:02:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-16 14:02:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-16 14:02:20] [INFO] getContactPrimaryPhone called {"contact_id":"14915"}
[2026-03-16 14:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 14:02:20] [INFO] getContactPrimaryPhone result {"contact_id":"14915","person_found":true,"primary_phone":"9013744004"}
[2026-03-16 14:02:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013744004"}
[2026-03-16 14:02:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013744004","contact_id":"14915","deal_id":"local_6950f3d76a1065.49920374","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 14:02:20"}
[2026-03-16 14:02:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950f3d76a1065.49920374","contact_id":"14915","existing_deal_found":true,"existing_contact_id":"14915","existing_title":"معامله اول 9013744004 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 14:02:20"}
[2026-03-16 14:02:20] [INFO] DealController.save validated payments {"deal_id":"local_6950f3d76a1065.49920374","contact_id":"14915","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 14:02:20] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14915","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 14:02:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950f3d76a1065.49920374","contact_didar_id":"14915","title":"معامله اول 9013744004 | کانال VIP بدون پشتیبانی","base_title_used":"معامله اول 9013744004","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رامرودی","existing_deal":"YES","existing_deal_id":"local_6950f3d76a1065.49920374","existing_deal_status":"Pending","server_time":"2026-03-16 14:02:20","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-16 14:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 14:02:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950f3d76a1065.49920374","contact_id":"14915","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9013744004 | کانال VIP بدون پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":20000000,"server_time":"2026-03-16 14:02:20","ip_address":"5.215.56.240","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 14:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-03-16 14:02:20] [INFO] Checking activity reminders 
[2026-03-16 14:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:02:39] [INFO] Checking activity reminders 
[2026-03-16 14:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:02:58] [INFO] Checking activity reminders 
[2026-03-16 14:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:03:09] [INFO] Checking activity reminders 
[2026-03-16 14:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:03:39] [INFO] Checking activity reminders 
[2026-03-16 14:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:04:09] [INFO] Checking activity reminders 
[2026-03-16 14:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:04:39] [INFO] Checking activity reminders 
[2026-03-16 14:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:05:09] [INFO] Checking activity reminders 
[2026-03-16 14:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:05:35] [INFO] Checking activity reminders 
[2026-03-16 14:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:05:52] [INFO] Checking activity reminders 
[2026-03-16 14:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:06:05] [INFO] Checking activity reminders 
[2026-03-16 14:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:06:16] [INFO] Activity save request {"post_data":{"contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 14:06:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2895","note_was_empty":true}
[2026-03-16 14:06:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"2895","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:16] [INFO] Updating virtual stage {"contact_id":"2895","stage_name":"deal_registered","force":false}
[2026-03-16 14:06:16] [INFO] Virtual stage successfully saved {"contact_id":"2895","stage_name":"deal_registered"}
[2026-03-16 14:06:16] [INFO] Virtual stage updated after activity save {"contact_id":"2895"}
[2026-03-16 14:06:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72c67258d30.73196954","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 14:06:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7dd20aff360.42887678","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7dd20aff360.42887678"}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:16] [INFO] Updating virtual stage {"contact_id":"2895","stage_name":"deal_registered","force":false}
[2026-03-16 14:06:16] [INFO] Virtual stage successfully saved {"contact_id":"2895","stage_name":"deal_registered"}
[2026-03-16 14:06:16] [INFO] Virtual stage updated after activity save {"contact_id":"2895"}
[2026-03-16 14:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-03-16 14:06:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 14:06:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 14:06:35] [INFO] Checking activity reminders 
[2026-03-16 14:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:06:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:07:05] [INFO] Checking activity reminders 
[2026-03-16 14:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:07:35] [INFO] Checking activity reminders 
[2026-03-16 14:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:08:05] [INFO] Checking activity reminders 
[2026-03-16 14:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:08:11] [INFO] Checking activity reminders 
[2026-03-16 14:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:08:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:08:35] [INFO] Checking activity reminders 
[2026-03-16 14:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:08:41] [INFO] Checking activity reminders 
[2026-03-16 14:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:09:06] [INFO] Checking activity reminders 
[2026-03-16 14:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:09:09] [INFO] Checking activity reminders 
[2026-03-16 14:09:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:09:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:09:11] [INFO] Checking activity reminders 
[2026-03-16 14:09:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:09:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:09:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-16 14:09:36] [INFO] Checking activity reminders 
[2026-03-16 14:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:09:39] [INFO] Checking activity reminders 
[2026-03-16 14:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:10:06] [INFO] Checking activity reminders 
[2026-03-16 14:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:10:10] [INFO] Checking activity reminders 
[2026-03-16 14:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:10:36] [INFO] Checking activity reminders 
[2026-03-16 14:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:10:51] [INFO] Checking activity reminders 
[2026-03-16 14:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:11:06] [INFO] Checking activity reminders 
[2026-03-16 14:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:11:21] [INFO] Checking activity reminders 
[2026-03-16 14:11:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:11:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:11:36] [INFO] Checking activity reminders 
[2026-03-16 14:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:11:51] [INFO] Checking activity reminders 
[2026-03-16 14:11:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:11:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:07] [INFO] Checking activity reminders 
[2026-03-16 14:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:08] [INFO] Checking activity reminders 
[2026-03-16 14:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12544","person_id":"9860"}
[2026-03-16 14:12:21] [INFO] Checking activity reminders 
[2026-03-16 14:12:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:24] [INFO] Checking activity reminders 
[2026-03-16 14:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:38] [INFO] Checking activity reminders 
[2026-03-16 14:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:51] [INFO] Checking activity reminders 
[2026-03-16 14:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:12:57] [INFO] Checking activity reminders 
[2026-03-16 14:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:08] [INFO] Checking activity reminders 
[2026-03-16 14:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:13:21] [INFO] Checking activity reminders 
[2026-03-16 14:13:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:28] [INFO] Checking activity reminders 
[2026-03-16 14:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:39] [INFO] Checking activity reminders 
[2026-03-16 14:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:52] [INFO] Checking activity reminders 
[2026-03-16 14:13:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:13:58] [INFO] Checking activity reminders 
[2026-03-16 14:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:14:09] [INFO] Checking activity reminders 
[2026-03-16 14:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-16 14:14:22] [INFO] Checking activity reminders 
[2026-03-16 14:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:14:39] [INFO] Checking activity reminders 
[2026-03-16 14:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:14:52] [INFO] Checking activity reminders 
[2026-03-16 14:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:09] [INFO] Checking activity reminders 
[2026-03-16 14:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:12] [INFO] Checking activity reminders 
[2026-03-16 14:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:21] [INFO] Checking activity reminders 
[2026-03-16 14:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:22] [INFO] Checking activity reminders 
[2026-03-16 14:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:27] [INFO] Checking activity reminders 
[2026-03-16 14:15:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:32] [INFO] Checking activity reminders 
[2026-03-16 14:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:39] [INFO] Checking activity reminders 
[2026-03-16 14:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:15:47] [INFO] Lead update received {"contact_id":"1008","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 14:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:47] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1008"}
[2026-03-16 14:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-03-16 14:15:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-16 14:15:52] [INFO] Checking activity reminders 
[2026-03-16 14:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:16:02] [INFO] Checking activity reminders 
[2026-03-16 14:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:16:09] [INFO] Checking activity reminders 
[2026-03-16 14:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:16:32] [INFO] Checking activity reminders 
[2026-03-16 14:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:16:39] [INFO] Checking activity reminders 
[2026-03-16 14:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:17:00] [INFO] Checking activity reminders 
[2026-03-16 14:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:17:09] [INFO] Checking activity reminders 
[2026-03-16 14:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:17:39] [INFO] Checking activity reminders 
[2026-03-16 14:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:18:09] [INFO] Checking activity reminders 
[2026-03-16 14:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:18:40] [INFO] Checking activity reminders 
[2026-03-16 14:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:19:14] [INFO] Checking activity reminders 
[2026-03-16 14:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:19:44] [INFO] Checking activity reminders 
[2026-03-16 14:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:20:14] [INFO] Checking activity reminders 
[2026-03-16 14:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:20:44] [INFO] Checking activity reminders 
[2026-03-16 14:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:21:14] [INFO] Checking activity reminders 
[2026-03-16 14:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:21:45] [INFO] Checking activity reminders 
[2026-03-16 14:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:22:15] [INFO] Checking activity reminders 
[2026-03-16 14:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:22:45] [INFO] Checking activity reminders 
[2026-03-16 14:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:23:15] [INFO] Checking activity reminders 
[2026-03-16 14:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:23:45] [INFO] Checking activity reminders 
[2026-03-16 14:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:24:25] [INFO] Checking activity reminders 
[2026-03-16 14:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:24:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 14:24:55] [INFO] Checking activity reminders 
[2026-03-16 14:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:25:25] [INFO] Checking activity reminders 
[2026-03-16 14:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:25:55] [INFO] Checking activity reminders 
[2026-03-16 14:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:26:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2972","deal_id":"local_6996dac21a9c63.55426335","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 14:26:04","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 14:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 14:26:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2972","is_new_deal":false}
[2026-03-16 14:26:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 14:26:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 14:26:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 14:26:04] [INFO] getContactPrimaryPhone called {"contact_id":"2972"}
[2026-03-16 14:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 14:26:04] [INFO] getContactPrimaryPhone result {"contact_id":"2972","person_found":true,"primary_phone":"9337323132"}
[2026-03-16 14:26:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9337323132"}
[2026-03-16 14:26:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9337323132","contact_id":"2972","deal_id":"local_6996dac21a9c63.55426335","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 14:26:04"}
[2026-03-16 14:26:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","existing_deal_found":true,"existing_contact_id":"2972","existing_title":"معامله سوم 9337323132 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 14:26:04"}
[2026-03-16 14:26:04] [INFO] DealController.save validated payments {"deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 14:26:04] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2972","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 14:26:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6996dac21a9c63.55426335","contact_didar_id":"2972","title":"معامله سوم 9337323132 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9337323132","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارمین قهرمانی","existing_deal":"YES","existing_deal_id":"local_6996dac21a9c63.55426335","existing_deal_status":"Pending","server_time":"2026-03-16 14:26:04","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 14:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 14:26:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9337323132 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":29000000,"server_time":"2026-03-16 14:26:04","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 14:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 14:26:25] [INFO] Checking activity reminders 
[2026-03-16 14:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:26:32] [INFO] Checking activity reminders 
[2026-03-16 14:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:26:35] [INFO] Checking activity reminders 
[2026-03-16 14:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:27:05] [INFO] Checking activity reminders 
[2026-03-16 14:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:27:33] [INFO] Activity save request {"post_data":{"contact_id":"4544","deal_id":"local_69b5bff94ba660.16399719","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 14:27:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4544","note_was_empty":true}
[2026-03-16 14:27:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"4544","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:33] [INFO] Updating virtual stage {"contact_id":"4544","stage_name":"deal_registered","force":false}
[2026-03-16 14:27:33] [INFO] Virtual stage successfully saved {"contact_id":"4544","stage_name":"deal_registered"}
[2026-03-16 14:27:33] [INFO] Virtual stage updated after activity save {"contact_id":"4544"}
[2026-03-16 14:27:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bff94ba660.16399719","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 14:27:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7e21d1660e1.42379728","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7e21d1660e1.42379728"}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:33] [INFO] Updating virtual stage {"contact_id":"4544","stage_name":"deal_registered","force":false}
[2026-03-16 14:27:33] [INFO] Virtual stage successfully saved {"contact_id":"4544","stage_name":"deal_registered"}
[2026-03-16 14:27:33] [INFO] Virtual stage updated after activity save {"contact_id":"4544"}
[2026-03-16 14:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4544","person_id":"18212"}
[2026-03-16 14:27:35] [INFO] Checking activity reminders 
[2026-03-16 14:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:28:06] [INFO] Checking activity reminders 
[2026-03-16 14:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:28:36] [INFO] Checking activity reminders 
[2026-03-16 14:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:28:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 14:29:06] [INFO] Checking activity reminders 
[2026-03-16 14:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:29:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:29:36] [INFO] Checking activity reminders 
[2026-03-16 14:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:30:06] [INFO] Checking activity reminders 
[2026-03-16 14:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:30:36] [INFO] Checking activity reminders 
[2026-03-16 14:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:31:06] [INFO] Checking activity reminders 
[2026-03-16 14:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:31:36] [INFO] Checking activity reminders 
[2026-03-16 14:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:32:06] [INFO] Checking activity reminders 
[2026-03-16 14:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:32:36] [INFO] Checking activity reminders 
[2026-03-16 14:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:32:38] [INFO] Activity save request {"post_data":{"contact_id":"12752","deal_id":"local_69b72471ccce07.54227037","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:32:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 14:32:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:32:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12752","note_was_empty":true}
[2026-03-16 14:32:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"12752","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:32:38] [INFO] Updating virtual stage {"contact_id":"12752","stage_name":"deal_registered","force":false}
[2026-03-16 14:32:38] [INFO] Virtual stage successfully saved {"contact_id":"12752","stage_name":"deal_registered"}
[2026-03-16 14:32:38] [INFO] Virtual stage updated after activity save {"contact_id":"12752"}
[2026-03-16 14:32:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72471ccce07.54227037","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 14:32:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7e34e4716a7.46247391","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:32:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7e34e4716a7.46247391"}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:32:38] [INFO] Updating virtual stage {"contact_id":"12752","stage_name":"deal_registered","force":false}
[2026-03-16 14:32:38] [INFO] Virtual stage successfully saved {"contact_id":"12752","stage_name":"deal_registered"}
[2026-03-16 14:32:38] [INFO] Virtual stage updated after activity save {"contact_id":"12752"}
[2026-03-16 14:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 14:33:06] [INFO] Checking activity reminders 
[2026-03-16 14:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:33:36] [INFO] Checking activity reminders 
[2026-03-16 14:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:34:06] [INFO] Checking activity reminders 
[2026-03-16 14:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:34:37] [INFO] Checking activity reminders 
[2026-03-16 14:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:35:07] [INFO] Checking activity reminders 
[2026-03-16 14:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:35:37] [INFO] Checking activity reminders 
[2026-03-16 14:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:36:07] [INFO] Checking activity reminders 
[2026-03-16 14:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:36:37] [INFO] Checking activity reminders 
[2026-03-16 14:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:37:07] [INFO] Checking activity reminders 
[2026-03-16 14:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:37:37] [INFO] Checking activity reminders 
[2026-03-16 14:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:02] [INFO] Checking activity reminders 
[2026-03-16 14:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:07] [INFO] Checking activity reminders 
[2026-03-16 14:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:13] [INFO] Checking activity reminders 
[2026-03-16 14:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:19] [INFO] Checking activity reminders 
[2026-03-16 14:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:24] [INFO] Checking activity reminders 
[2026-03-16 14:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:38:37] [INFO] Checking activity reminders 
[2026-03-16 14:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:38:54] [INFO] Checking activity reminders 
[2026-03-16 14:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:39:07] [INFO] Checking activity reminders 
[2026-03-16 14:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:39:16] [INFO] Activity save request {"post_data":{"contact_id":"5973","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال ش کارت واریز تا فردا پیش مرداخت تسویه اخر فروردین","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 14:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:39:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 14:39:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 14:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:39:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5973","note_was_empty":true}
[2026-03-16 14:39:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"5973","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-16 14:39:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7e4dcef8157.76050628","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 14:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:39:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7e4dcef8157.76050628"}
[2026-03-16 14:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:39:16] [INFO] Updating virtual stage {"contact_id":"5973","stage_name":"deal_registered","force":false}
[2026-03-16 14:39:16] [INFO] Virtual stage successfully saved {"contact_id":"5973","stage_name":"deal_registered"}
[2026-03-16 14:39:16] [INFO] Virtual stage updated after activity save {"contact_id":"5973"}
[2026-03-16 14:39:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5973","person_id":"19740"}
[2026-03-16 14:39:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 14:39:37] [INFO] Checking activity reminders 
[2026-03-16 14:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:40:08] [INFO] Checking activity reminders 
[2026-03-16 14:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:40:38] [INFO] Checking activity reminders 
[2026-03-16 14:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:40:42] [INFO] Checking activity reminders 
[2026-03-16 14:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:40:45] [INFO] Checking activity reminders 
[2026-03-16 14:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 14:41:15] [INFO] Checking activity reminders 
[2026-03-16 14:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:41:45] [INFO] Checking activity reminders 
[2026-03-16 14:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:42:15] [INFO] Checking activity reminders 
[2026-03-16 14:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:42:45] [INFO] Checking activity reminders 
[2026-03-16 14:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 14:43:15] [INFO] Checking activity reminders 
[2026-03-16 14:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:43:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 14:43:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 14:43:31] [INFO] generateDealTitle result {"contact_id":"7569","person_name":"فتوحی","mobile":"9199858508","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9199858508"}
[2026-03-16 14:43:45] [INFO] Checking activity reminders 
[2026-03-16 14:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:44:16] [INFO] Checking activity reminders 
[2026-03-16 14:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:44:46] [INFO] Checking activity reminders 
[2026-03-16 14:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:45:16] [INFO] Checking activity reminders 
[2026-03-16 14:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:45:46] [INFO] Checking activity reminders 
[2026-03-16 14:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:46:16] [INFO] Checking activity reminders 
[2026-03-16 14:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:46:46] [INFO] Checking activity reminders 
[2026-03-16 14:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:47:16] [INFO] Checking activity reminders 
[2026-03-16 14:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:47:46] [INFO] Checking activity reminders 
[2026-03-16 14:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:48:17] [INFO] Checking activity reminders 
[2026-03-16 14:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:48:47] [INFO] Checking activity reminders 
[2026-03-16 14:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:49:17] [INFO] Checking activity reminders 
[2026-03-16 14:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:49:41] [INFO] Checking activity reminders 
[2026-03-16 14:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:49:48] [INFO] Checking activity reminders 
[2026-03-16 14:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:50:19] [INFO] Checking activity reminders 
[2026-03-16 14:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:50:49] [INFO] Checking activity reminders 
[2026-03-16 14:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:51:19] [INFO] Checking activity reminders 
[2026-03-16 14:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:51:49] [INFO] Checking activity reminders 
[2026-03-16 14:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:51:51] [INFO] Checking activity reminders 
[2026-03-16 14:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:51:56] [INFO] Checking activity reminders 
[2026-03-16 14:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:52:26] [INFO] Checking activity reminders 
[2026-03-16 14:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:52:56] [INFO] Checking activity reminders 
[2026-03-16 14:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:53:26] [INFO] Checking activity reminders 
[2026-03-16 14:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:53:56] [INFO] Checking activity reminders 
[2026-03-16 14:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:54:26] [INFO] Checking activity reminders 
[2026-03-16 14:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:54:57] [INFO] Checking activity reminders 
[2026-03-16 14:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:55:27] [INFO] Checking activity reminders 
[2026-03-16 14:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:55:57] [INFO] Checking activity reminders 
[2026-03-16 14:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:56:27] [INFO] Checking activity reminders 
[2026-03-16 14:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:56:57] [INFO] Checking activity reminders 
[2026-03-16 14:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:57:27] [INFO] Checking activity reminders 
[2026-03-16 14:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:57:57] [INFO] Checking activity reminders 
[2026-03-16 14:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 14:59:30] [INFO] Checking activity reminders 
[2026-03-16 14:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 14:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:00:00] [INFO] Checking activity reminders 
[2026-03-16 15:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:00:30] [INFO] Checking activity reminders 
[2026-03-16 15:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:01:00] [INFO] Checking activity reminders 
[2026-03-16 15:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:01:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7236","deal_id":"local_69b7239e890011.42362900","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 15:01:01","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:01:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7236","is_new_deal":false}
[2026-03-16 15:01:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-16 15:01:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 15:01:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 15:01:01] [INFO] getContactPrimaryPhone called {"contact_id":"7236"}
[2026-03-16 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:01:01] [INFO] getContactPrimaryPhone result {"contact_id":"7236","person_found":true,"primary_phone":"9111001903"}
[2026-03-16 15:01:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111001903"}
[2026-03-16 15:01:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111001903","contact_id":"7236","deal_id":"local_69b7239e890011.42362900","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 15:01:01"}
[2026-03-16 15:01:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7239e890011.42362900","contact_id":"7236","existing_deal_found":true,"existing_contact_id":"7236","existing_title":"معامله دوم 9111001903 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 15:01:01"}
[2026-03-16 15:01:01] [INFO] DealController.save validated payments {"deal_id":"local_69b7239e890011.42362900","contact_id":"7236","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-16 15:01:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7236","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 15:01:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7239e890011.42362900","contact_didar_id":"7236","title":"معامله دوم 9111001903 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9111001903","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مریم ثالث","existing_deal":"YES","existing_deal_id":"local_69b7239e890011.42362900","existing_deal_status":"Pending","server_time":"2026-03-16 15:01:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:01:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7239e890011.42362900","contact_id":"7236","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9111001903 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-16 15:01:01","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:01:30] [INFO] Checking activity reminders 
[2026-03-16 15:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:02:00] [INFO] Checking activity reminders 
[2026-03-16 15:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:02:30] [INFO] Checking activity reminders 
[2026-03-16 15:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:03:00] [INFO] Checking activity reminders 
[2026-03-16 15:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:03:30] [INFO] Checking activity reminders 
[2026-03-16 15:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:04:00] [INFO] Checking activity reminders 
[2026-03-16 15:04:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:04:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:04:31] [INFO] Checking activity reminders 
[2026-03-16 15:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:05:01] [INFO] Checking activity reminders 
[2026-03-16 15:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:05:31] [INFO] Checking activity reminders 
[2026-03-16 15:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:05:33] [INFO] Activity save request {"post_data":{"contact_id":"7236","deal_id":"local_69b7239e890011.42362900","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"منتظر فروش عیار \r\nخیلی تو ضرر \r\nنتونسته انلاین کار کنه \/ شکلات فروشی انلاین داره \r\nخونه ارثی هنوز فروش نرفته \r\nمیگه هواموداشته باش میخوام باشم فقط فرصت بده ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 15:05:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7236","note_was_empty":true}
[2026-03-16 15:05:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"7236","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:33] [INFO] Updating virtual stage {"contact_id":"7236","stage_name":"deal_registered","force":false}
[2026-03-16 15:05:33] [INFO] Virtual stage successfully saved {"contact_id":"7236","stage_name":"deal_registered"}
[2026-03-16 15:05:33] [INFO] Virtual stage updated after activity save {"contact_id":"7236"}
[2026-03-16 15:05:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7239e890011.42362900","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 15:05:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7eb0569b802.44562878","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7eb0569b802.44562878"}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:33] [INFO] Updating virtual stage {"contact_id":"7236","stage_name":"deal_registered","force":false}
[2026-03-16 15:05:33] [INFO] Virtual stage successfully saved {"contact_id":"7236","stage_name":"deal_registered"}
[2026-03-16 15:05:33] [INFO] Virtual stage updated after activity save {"contact_id":"7236"}
[2026-03-16 15:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7236","person_id":"11305"}
[2026-03-16 15:05:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:06:01] [INFO] Checking activity reminders 
[2026-03-16 15:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:06:31] [INFO] Checking activity reminders 
[2026-03-16 15:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:07:01] [INFO] Checking activity reminders 
[2026-03-16 15:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:07:31] [INFO] Checking activity reminders 
[2026-03-16 15:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:08:01] [INFO] Checking activity reminders 
[2026-03-16 15:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:08:32] [INFO] Checking activity reminders 
[2026-03-16 15:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:09:02] [INFO] Checking activity reminders 
[2026-03-16 15:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:09:32] [INFO] Checking activity reminders 
[2026-03-16 15:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:10:02] [INFO] Checking activity reminders 
[2026-03-16 15:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:10:32] [INFO] Checking activity reminders 
[2026-03-16 15:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:11:02] [INFO] Checking activity reminders 
[2026-03-16 15:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:11:32] [INFO] Checking activity reminders 
[2026-03-16 15:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:12:02] [INFO] Checking activity reminders 
[2026-03-16 15:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:12:09] [INFO] Activity save request {"post_data":{"contact_id":"3616","deal_id":"local_69b7244eae9c05.84570593","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت خودش تماس میگیره ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 15:12:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3616","note_was_empty":true}
[2026-03-16 15:12:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"3616","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:09] [INFO] Updating virtual stage {"contact_id":"3616","stage_name":"deal_registered","force":false}
[2026-03-16 15:12:09] [INFO] Virtual stage successfully saved {"contact_id":"3616","stage_name":"deal_registered"}
[2026-03-16 15:12:09] [INFO] Virtual stage updated after activity save {"contact_id":"3616"}
[2026-03-16 15:12:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7244eae9c05.84570593","stage":"تماس پیگیری","status_change":null}
[2026-03-16 15:12:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7ec916359c6.45773275","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7ec916359c6.45773275"}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:09] [INFO] Updating virtual stage {"contact_id":"3616","stage_name":"deal_registered","force":false}
[2026-03-16 15:12:09] [INFO] Virtual stage successfully saved {"contact_id":"3616","stage_name":"deal_registered"}
[2026-03-16 15:12:09] [INFO] Virtual stage updated after activity save {"contact_id":"3616"}
[2026-03-16 15:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 15:12:15] [INFO] Checking activity reminders 
[2026-03-16 15:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:12:18] [INFO] Checking activity reminders 
[2026-03-16 15:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:12:21] [INFO] Checking activity reminders 
[2026-03-16 15:12:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:12:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:12:51] [INFO] Checking activity reminders 
[2026-03-16 15:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:13:22] [INFO] Checking activity reminders 
[2026-03-16 15:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:13:52] [INFO] Checking activity reminders 
[2026-03-16 15:13:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:13:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:14:22] [INFO] Checking activity reminders 
[2026-03-16 15:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:14:52] [INFO] Checking activity reminders 
[2026-03-16 15:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:15:22] [INFO] Checking activity reminders 
[2026-03-16 15:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:15:52] [INFO] Checking activity reminders 
[2026-03-16 15:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:16:22] [INFO] Checking activity reminders 
[2026-03-16 15:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:16:52] [INFO] Checking activity reminders 
[2026-03-16 15:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:17:22] [INFO] Checking activity reminders 
[2026-03-16 15:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:17:52] [INFO] Checking activity reminders 
[2026-03-16 15:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:18:23] [INFO] Checking activity reminders 
[2026-03-16 15:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:18:53] [INFO] Checking activity reminders 
[2026-03-16 15:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:19:23] [INFO] Checking activity reminders 
[2026-03-16 15:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:19:53] [INFO] Checking activity reminders 
[2026-03-16 15:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:20:23] [INFO] Checking activity reminders 
[2026-03-16 15:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:20:53] [INFO] Checking activity reminders 
[2026-03-16 15:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:26:32] [INFO] Checking activity reminders 
[2026-03-16 15:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:26:40] [INFO] Checking activity reminders 
[2026-03-16 15:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:27:36] [INFO] Checking activity reminders 
[2026-03-16 15:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:27:43] [INFO] Checking activity reminders 
[2026-03-16 15:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:27:47] [INFO] Checking activity reminders 
[2026-03-16 15:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:27:50] [INFO] Checking activity reminders 
[2026-03-16 15:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:28:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 15:28:05","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:28:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12676","is_new_deal":false}
[2026-03-16 15:28:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 15:28:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 15:28:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 15:28:05] [INFO] getContactPrimaryPhone called {"contact_id":"12676"}
[2026-03-16 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:28:05] [INFO] getContactPrimaryPhone result {"contact_id":"12676","person_found":true,"primary_phone":"9113760549"}
[2026-03-16 15:28:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760549"}
[2026-03-16 15:28:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760549","contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 15:28:05"}
[2026-03-16 15:28:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","existing_deal_found":true,"existing_contact_id":"12676","existing_title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 15:28:05"}
[2026-03-16 15:28:05] [INFO] DealController.save validated payments {"deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-16 15:28:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12676","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 15:28:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72416ecc7d1.09562998","contact_didar_id":"12676","title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9113760549","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جعفری","existing_deal":"YES","existing_deal_id":"local_69b72416ecc7d1.09562998","existing_deal_status":"Pending","server_time":"2026-03-16 15:28:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:28:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 15:28:05","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:28:20] [INFO] Checking activity reminders 
[2026-03-16 15:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:28:50] [INFO] Checking activity reminders 
[2026-03-16 15:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:29:20] [INFO] Checking activity reminders 
[2026-03-16 15:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:29:50] [INFO] Checking activity reminders 
[2026-03-16 15:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:30:20] [INFO] Checking activity reminders 
[2026-03-16 15:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:30:50] [INFO] Checking activity reminders 
[2026-03-16 15:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:31:20] [INFO] Checking activity reminders 
[2026-03-16 15:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:31:33] [INFO] Activity save request {"post_data":{"contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"درگیر کار کشاورزی بود\r\nدر خرید طلا 22 خیلی متضرر شده \r\nبرای 405 بیعانه واریز تا اخر فروردین تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 15:31:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12676","note_was_empty":true}
[2026-03-16 15:31:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"12676","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:33] [INFO] Updating virtual stage {"contact_id":"12676","stage_name":"deal_registered","force":false}
[2026-03-16 15:31:33] [INFO] Virtual stage successfully saved {"contact_id":"12676","stage_name":"deal_registered"}
[2026-03-16 15:31:33] [INFO] Virtual stage updated after activity save {"contact_id":"12676"}
[2026-03-16 15:31:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72416ecc7d1.09562998","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 15:31:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7f11d037599.12143898","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7f11d037599.12143898"}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:33] [INFO] Updating virtual stage {"contact_id":"12676","stage_name":"deal_registered","force":false}
[2026-03-16 15:31:33] [INFO] Virtual stage successfully saved {"contact_id":"12676","stage_name":"deal_registered"}
[2026-03-16 15:31:33] [INFO] Virtual stage updated after activity save {"contact_id":"12676"}
[2026-03-16 15:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:37] [INFO] Checking activity reminders 
[2026-03-16 15:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:31:39] [INFO] Checking activity reminders 
[2026-03-16 15:31:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:31:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:31:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 15:31:51] [INFO] Checking activity reminders 
[2026-03-16 15:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:31:53] [INFO] Checking activity reminders 
[2026-03-16 15:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:32:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:32:23] [INFO] Checking activity reminders 
[2026-03-16 15:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:32:53] [INFO] Checking activity reminders 
[2026-03-16 15:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:33:23] [INFO] Checking activity reminders 
[2026-03-16 15:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:33:53] [INFO] Checking activity reminders 
[2026-03-16 15:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:34:24] [INFO] Checking activity reminders 
[2026-03-16 15:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:34:54] [INFO] Checking activity reminders 
[2026-03-16 15:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:35:24] [INFO] Checking activity reminders 
[2026-03-16 15:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:35:53] [INFO] Checking activity reminders 
[2026-03-16 15:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:36:23] [INFO] Checking activity reminders 
[2026-03-16 15:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:36:53] [INFO] Checking activity reminders 
[2026-03-16 15:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:37:23] [INFO] Checking activity reminders 
[2026-03-16 15:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:37:53] [INFO] Checking activity reminders 
[2026-03-16 15:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:38:23] [INFO] Checking activity reminders 
[2026-03-16 15:38:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:38:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:38:53] [INFO] Checking activity reminders 
[2026-03-16 15:38:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:38:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:39:23] [INFO] Checking activity reminders 
[2026-03-16 15:39:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:39:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:39:40] [INFO] Activity save request {"post_data":{"contact_id":"20921","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"برای کانال بله به چالش خورده \r\nنمیتونه ببینه \r\nبرای405 پرزنت شد \r\nمجدد لینک ارسال شد ","activity_duration":"0","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 15:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:39:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 15:39:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 15:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:39:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20921","note_was_empty":true}
[2026-03-16 15:39:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"20921","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 15:39:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7f304c5d8b2.76573971","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 15:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:39:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7f304c5d8b2.76573971"}
[2026-03-16 15:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:39:40] [INFO] Updating virtual stage {"contact_id":"20921","stage_name":"deal_registered","force":false}
[2026-03-16 15:39:40] [INFO] Virtual stage successfully saved {"contact_id":"20921","stage_name":"deal_registered"}
[2026-03-16 15:39:40] [INFO] Virtual stage updated after activity save {"contact_id":"20921"}
[2026-03-16 15:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-03-16 15:39:53] [INFO] Checking activity reminders 
[2026-03-16 15:39:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:39:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:40:23] [INFO] Checking activity reminders 
[2026-03-16 15:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:40:53] [INFO] Checking activity reminders 
[2026-03-16 15:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15598","person_id":"12547"}
[2026-03-16 15:41:23] [INFO] Checking activity reminders 
[2026-03-16 15:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:41:54] [INFO] Checking activity reminders 
[2026-03-16 15:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:42:24] [INFO] Checking activity reminders 
[2026-03-16 15:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:42:54] [INFO] Checking activity reminders 
[2026-03-16 15:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:43:24] [INFO] Checking activity reminders 
[2026-03-16 15:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5561","person_id":"3761"}
[2026-03-16 15:43:54] [INFO] Checking activity reminders 
[2026-03-16 15:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:44:14] [INFO] Checking activity reminders 
[2026-03-16 15:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:44:17] [INFO] Checking activity reminders 
[2026-03-16 15:44:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:44:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:44:20] [INFO] Checking activity reminders 
[2026-03-16 15:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:44:23] [INFO] Checking activity reminders 
[2026-03-16 15:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:44:53] [INFO] Checking activity reminders 
[2026-03-16 15:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:45:24] [INFO] Checking activity reminders 
[2026-03-16 15:45:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:45:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:45:54] [INFO] Checking activity reminders 
[2026-03-16 15:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:45:54] [INFO] Activity save request {"post_data":{"contact_id":"938","deal_id":"local_69b5c615f21547.56483640","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:45:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 15:45:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:45:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"938","note_was_empty":true}
[2026-03-16 15:45:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"938","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:45:54] [INFO] Updating virtual stage {"contact_id":"938","stage_name":"deal_registered","force":false}
[2026-03-16 15:45:54] [INFO] Virtual stage successfully saved {"contact_id":"938","stage_name":"deal_registered"}
[2026-03-16 15:45:54] [INFO] Virtual stage updated after activity save {"contact_id":"938"}
[2026-03-16 15:45:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c615f21547.56483640","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 15:45:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7f47a9e9055.15231249","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:45:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7f47a9e9055.15231249"}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:45:54] [INFO] Updating virtual stage {"contact_id":"938","stage_name":"deal_registered","force":false}
[2026-03-16 15:45:54] [INFO] Virtual stage successfully saved {"contact_id":"938","stage_name":"deal_registered"}
[2026-03-16 15:45:54] [INFO] Virtual stage updated after activity save {"contact_id":"938"}
[2026-03-16 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:20] [INFO] Lead update received {"contact_id":"938","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 15:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"938"}
[2026-03-16 15:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:24] [INFO] Checking activity reminders 
[2026-03-16 15:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:46:32] [INFO] Lead update received {"contact_id":"938","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 15:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"938"}
[2026-03-16 15:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"938","person_id":"12626"}
[2026-03-16 15:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 15:46:54] [INFO] Checking activity reminders 
[2026-03-16 15:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:47:24] [INFO] Checking activity reminders 
[2026-03-16 15:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:47:54] [INFO] Checking activity reminders 
[2026-03-16 15:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:48:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 15:48:24] [INFO] Checking activity reminders 
[2026-03-16 15:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:48:49] [INFO] Lead update received {"contact_id":"15579","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 15:48:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 15:48:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 15:48:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15579"}
[2026-03-16 15:48:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 15:48:54] [INFO] Checking activity reminders 
[2026-03-16 15:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:49:25] [INFO] Checking activity reminders 
[2026-03-16 15:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:49:55] [INFO] Checking activity reminders 
[2026-03-16 15:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:50:25] [INFO] Checking activity reminders 
[2026-03-16 15:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:50:55] [INFO] Checking activity reminders 
[2026-03-16 15:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:51:25] [INFO] Checking activity reminders 
[2026-03-16 15:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:51:55] [INFO] Checking activity reminders 
[2026-03-16 15:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:52:25] [INFO] Checking activity reminders 
[2026-03-16 15:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:52:55] [INFO] Checking activity reminders 
[2026-03-16 15:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:53:25] [INFO] Checking activity reminders 
[2026-03-16 15:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:53:55] [INFO] Checking activity reminders 
[2026-03-16 15:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:54:25] [INFO] Checking activity reminders 
[2026-03-16 15:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:54:56] [INFO] Checking activity reminders 
[2026-03-16 15:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:55:26] [INFO] Checking activity reminders 
[2026-03-16 15:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:55:56] [INFO] Checking activity reminders 
[2026-03-16 15:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:56:26] [INFO] Checking activity reminders 
[2026-03-16 15:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:56:56] [INFO] Checking activity reminders 
[2026-03-16 15:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:57:26] [INFO] Checking activity reminders 
[2026-03-16 15:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:57:56] [INFO] Checking activity reminders 
[2026-03-16 15:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:58:26] [INFO] Checking activity reminders 
[2026-03-16 15:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:58:56] [INFO] Checking activity reminders 
[2026-03-16 15:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:59:26] [INFO] Checking activity reminders 
[2026-03-16 15:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 15:59:56] [INFO] Checking activity reminders 
[2026-03-16 15:59:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 15:59:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:00:26] [INFO] Checking activity reminders 
[2026-03-16 16:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:00:57] [INFO] Checking activity reminders 
[2026-03-16 16:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:01:27] [INFO] Checking activity reminders 
[2026-03-16 16:01:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:01:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:01:57] [INFO] Checking activity reminders 
[2026-03-16 16:01:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:01:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:02:27] [INFO] Checking activity reminders 
[2026-03-16 16:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:02:58] [INFO] Checking activity reminders 
[2026-03-16 16:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:03:28] [INFO] Checking activity reminders 
[2026-03-16 16:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:03:58] [INFO] Checking activity reminders 
[2026-03-16 16:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:04:25] [INFO] Activity save request {"post_data":{"contact_id":"15579","deal_id":"local_69b5c046c0bd02.46587389","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"2 ساله دنبال\r\nسال 99 در بورس 50 متضرر به دلیل سیگنال اشتباه \r\nترکمن \r\nصندوق طلا و عیار سرمایه \r\n28 ساله \r\nکارگر ساختمان \r\nپرزنت 405\r\nمیگه عددش بالاست \r\nکپیتال پرواز میگه  تومان \r\nشرایط کانال بهش توضیح دادم \r\nتمام سیگنال ها رو دریافت میکنی ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 16:04:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15579","note_was_empty":true}
[2026-03-16 16:04:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"15579","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:25] [INFO] Updating virtual stage {"contact_id":"15579","stage_name":"deal_registered","force":false}
[2026-03-16 16:04:25] [INFO] Virtual stage successfully saved {"contact_id":"15579","stage_name":"deal_registered"}
[2026-03-16 16:04:25] [INFO] Virtual stage updated after activity save {"contact_id":"15579"}
[2026-03-16 16:04:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c046c0bd02.46587389","stage":"تماس پیگیری","status_change":null}
[2026-03-16 16:04:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7f8d18b1491.77282111","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7f8d18b1491.77282111"}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:25] [INFO] Updating virtual stage {"contact_id":"15579","stage_name":"deal_registered","force":false}
[2026-03-16 16:04:25] [INFO] Virtual stage successfully saved {"contact_id":"15579","stage_name":"deal_registered"}
[2026-03-16 16:04:25] [INFO] Virtual stage updated after activity save {"contact_id":"15579"}
[2026-03-16 16:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:28] [INFO] Checking activity reminders 
[2026-03-16 16:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:04:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15579","deal_id":"local_69b5c046c0bd02.46587389","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 16:04:54","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 16:04:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15579","is_new_deal":false}
[2026-03-16 16:04:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-16 16:04:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 16:04:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 16:04:54] [INFO] getContactPrimaryPhone called {"contact_id":"15579"}
[2026-03-16 16:04:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:54] [INFO] getContactPrimaryPhone result {"contact_id":"15579","person_found":true,"primary_phone":"9334118027"}
[2026-03-16 16:04:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9334118027"}
[2026-03-16 16:04:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9334118027","contact_id":"15579","deal_id":"local_69b5c046c0bd02.46587389","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 16:04:54"}
[2026-03-16 16:04:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c046c0bd02.46587389","contact_id":"15579","existing_deal_found":true,"existing_contact_id":"15579","existing_title":"معامله دوم 9334118027","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 16:04:54"}
[2026-03-16 16:04:54] [INFO] DealController.save validated payments {"deal_id":"local_69b5c046c0bd02.46587389","contact_id":"15579","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 16:04:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15579","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 16:04:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c046c0bd02.46587389","contact_didar_id":"15579","title":"معامله دوم 9334118027 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9334118027","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یونس یانق","existing_deal":"YES","existing_deal_id":"local_69b5c046c0bd02.46587389","existing_deal_status":"Pending","server_time":"2026-03-16 16:04:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 16:04:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c046c0bd02.46587389","contact_id":"15579","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9334118027 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-16 16:04:54","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 16:04:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15579","person_id":"1957"}
[2026-03-16 16:04:58] [INFO] Checking activity reminders 
[2026-03-16 16:04:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:04:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:05:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 16:05:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 16:05:28] [INFO] Checking activity reminders 
[2026-03-16 16:05:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:05:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:05:58] [INFO] Checking activity reminders 
[2026-03-16 16:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:06:28] [INFO] Checking activity reminders 
[2026-03-16 16:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:06:58] [INFO] Checking activity reminders 
[2026-03-16 16:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:07:28] [INFO] Checking activity reminders 
[2026-03-16 16:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:07:58] [INFO] Checking activity reminders 
[2026-03-16 16:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:08:28] [INFO] Checking activity reminders 
[2026-03-16 16:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:08:58] [INFO] Checking activity reminders 
[2026-03-16 16:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:09:29] [INFO] Checking activity reminders 
[2026-03-16 16:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:09:59] [INFO] Checking activity reminders 
[2026-03-16 16:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:10:29] [INFO] Checking activity reminders 
[2026-03-16 16:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:10:59] [INFO] Checking activity reminders 
[2026-03-16 16:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:11:58] [INFO] Checking activity reminders 
[2026-03-16 16:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:12:04] [INFO] Checking activity reminders 
[2026-03-16 16:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:12:34] [INFO] Checking activity reminders 
[2026-03-16 16:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:01] [INFO] Checking activity reminders 
[2026-03-16 16:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:05] [INFO] Checking activity reminders 
[2026-03-16 16:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:07] [INFO] Checking activity reminders 
[2026-03-16 16:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:09] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-16 16:13:09] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:09] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:09] [INFO] Checking activity reminders 
[2026-03-16 16:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:10] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:12] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:12] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:12] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 16:13:12] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:14] [INFO] Checking activity reminders 
[2026-03-16 16:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 16:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:17] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 16:13:17] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:17] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:17] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:23] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:23] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-16 16:13:23] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:32] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-16 16:13:32] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-16 16:13:32] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-16 16:13:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 16:13:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 16:13:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 16:13:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 16:13:44] [INFO] Checking activity reminders 
[2026-03-16 16:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:14:14] [INFO] Checking activity reminders 
[2026-03-16 16:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:14:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-16 16:14:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-16 16:14:45] [INFO] Checking activity reminders 
[2026-03-16 16:14:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:14:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:15:07] [INFO] Checking activity reminders 
[2026-03-16 16:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:15:37] [INFO] Checking activity reminders 
[2026-03-16 16:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:15:38] [INFO] Checking activity reminders 
[2026-03-16 16:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:15:43] [INFO] Checking activity reminders 
[2026-03-16 16:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:16:06] [INFO] Lead update received {"contact_id":"13256","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 16:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:16:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13256"}
[2026-03-16 16:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:16:08] [INFO] Checking activity reminders 
[2026-03-16 16:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:16:13] [INFO] Checking activity reminders 
[2026-03-16 16:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:16:57] [INFO] Checking activity reminders 
[2026-03-16 16:16:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:16:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:16:59] [INFO] Checking activity reminders 
[2026-03-16 16:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:17:29] [INFO] Checking activity reminders 
[2026-03-16 16:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:17:59] [INFO] Checking activity reminders 
[2026-03-16 16:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:18:29] [INFO] Checking activity reminders 
[2026-03-16 16:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:18:59] [INFO] Checking activity reminders 
[2026-03-16 16:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:19:29] [INFO] Checking activity reminders 
[2026-03-16 16:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:19:59] [INFO] Checking activity reminders 
[2026-03-16 16:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:19:59] [INFO] generateDealTitle result {"contact_id":"13256","person_name":"ارین صادقی","mobile":"9182563283","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9182563283"}
[2026-03-16 16:20:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 16:20:20","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 16:20:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:20:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":true}
[2026-03-16 16:20:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 16:20:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 16:20:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 16:20:20] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-03-16 16:20:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:20:20] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-03-16 16:20:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-03-16 16:20:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 16:20:20"}
[2026-03-16 16:20:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:20:20] [INFO] generateDealTitle result {"contact_id":"13256","person_name":"ارین صادقی","mobile":"9182563283","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9182563283"}
[2026-03-16 16:20:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13256","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 16:20:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 16:20:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 16:20:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 16:20:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:20:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 16:20:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 16:20:20","ip_address":"78.39.140.222","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 16:20:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:20:29] [INFO] Checking activity reminders 
[2026-03-16 16:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:21:00] [INFO] Checking activity reminders 
[2026-03-16 16:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:21:30] [INFO] Checking activity reminders 
[2026-03-16 16:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:21:39] [INFO] Activity save request {"post_data":{"contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 با پشتیبانی استاد \r\nنمایشگاه کار میکنه عموش گفته بیا شریکی مغازه بزنیم \r\nدر طلا و خودرو سرمایه \r\nمنتظر وصولی که پرداخت کنه \r\nگفت رزرو کن تا پرداخت کنم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:21:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 16:21:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:21:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13256","note_was_empty":true}
[2026-03-16 16:21:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"13256","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:21:39] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"deal_registered","force":false}
[2026-03-16 16:21:39] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"deal_registered"}
[2026-03-16 16:21:39] [INFO] Virtual stage updated after activity save {"contact_id":"13256"}
[2026-03-16 16:21:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7fc8c85ff31.51322513","stage":"تماس پیگیری","status_change":null}
[2026-03-16 16:21:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7fcdb523d12.46651181","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:21:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7fcdb523d12.46651181"}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:21:39] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"deal_registered","force":false}
[2026-03-16 16:21:39] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"deal_registered"}
[2026-03-16 16:21:39] [INFO] Virtual stage updated after activity save {"contact_id":"13256"}
[2026-03-16 16:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:22:00] [INFO] Checking activity reminders 
[2026-03-16 16:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:22:02] [INFO] Checking activity reminders 
[2026-03-16 16:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:22:04] [INFO] Checking activity reminders 
[2026-03-16 16:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:22:34] [INFO] Checking activity reminders 
[2026-03-16 16:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:04] [INFO] Checking activity reminders 
[2026-03-16 16:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:23:34] [INFO] Checking activity reminders 
[2026-03-16 16:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:23:57] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_99","deal_id":"local_69b72ca4f0a651.90282634","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 16:23:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_99","note_was_empty":true}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:57] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_99","stage_name":"new","force":false}
[2026-03-16 16:23:57] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_99","stage_name":"new"}
[2026-03-16 16:23:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_99"}
[2026-03-16 16:23:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72ca4f0a651.90282634","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 16:23:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7fd65b04671.64290533","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7fd65b04671.64290533"}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:23:57] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_99","stage_name":"deal_registered","force":false}
[2026-03-16 16:23:57] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_99","stage_name":"deal_registered"}
[2026-03-16 16:23:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_99"}
[2026-03-16 16:23:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_99","person_id":"21176"}
[2026-03-16 16:24:04] [INFO] Checking activity reminders 
[2026-03-16 16:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:24:34] [INFO] Checking activity reminders 
[2026-03-16 16:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:25:04] [INFO] Checking activity reminders 
[2026-03-16 16:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:25:35] [INFO] Checking activity reminders 
[2026-03-16 16:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:26:05] [INFO] Checking activity reminders 
[2026-03-16 16:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:26:26] [INFO] Lead update received {"contact_id":"13665","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 16:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:26:26] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13665"}
[2026-03-16 16:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:26:35] [INFO] Checking activity reminders 
[2026-03-16 16:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:26:51] [INFO] Checking activity reminders 
[2026-03-16 16:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:26:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 16:26:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 16:26:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 16:26:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 16:27:05] [INFO] Checking activity reminders 
[2026-03-16 16:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:27:22] [INFO] Checking activity reminders 
[2026-03-16 16:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:27:35] [INFO] Checking activity reminders 
[2026-03-16 16:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:27:52] [INFO] Checking activity reminders 
[2026-03-16 16:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:28:05] [INFO] Checking activity reminders 
[2026-03-16 16:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:28:22] [INFO] Checking activity reminders 
[2026-03-16 16:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:28:35] [INFO] Checking activity reminders 
[2026-03-16 16:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:28:52] [INFO] Checking activity reminders 
[2026-03-16 16:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:29:05] [INFO] Checking activity reminders 
[2026-03-16 16:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:29:23] [INFO] Checking activity reminders 
[2026-03-16 16:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:29:29] [INFO] Activity save request {"post_data":{"contact_id":"13665","deal_id":"local_69b72bee5a3a19.06156210","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت  نداشت\r\nخودش مجدد تماس میگیره  \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 16:29:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13665","note_was_empty":true}
[2026-03-16 16:29:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"13665","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:29] [INFO] Updating virtual stage {"contact_id":"13665","stage_name":"deal_registered","force":false}
[2026-03-16 16:29:29] [INFO] Virtual stage successfully saved {"contact_id":"13665","stage_name":"deal_registered"}
[2026-03-16 16:29:29] [INFO] Virtual stage updated after activity save {"contact_id":"13665"}
[2026-03-16 16:29:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72bee5a3a19.06156210","stage":"تماس پیگیری","status_change":null}
[2026-03-16 16:29:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b7feb1e56bf8.18222793","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69b7feb1e56bf8.18222793"}
[2026-03-16 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:29] [INFO] Updating virtual stage {"contact_id":"13665","stage_name":"deal_registered","force":false}
[2026-03-16 16:29:29] [INFO] Virtual stage successfully saved {"contact_id":"13665","stage_name":"deal_registered"}
[2026-03-16 16:29:29] [INFO] Virtual stage updated after activity save {"contact_id":"13665"}
[2026-03-16 16:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-03-16 16:29:35] [INFO] Checking activity reminders 
[2026-03-16 16:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:29:53] [INFO] Checking activity reminders 
[2026-03-16 16:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:30:05] [INFO] Checking activity reminders 
[2026-03-16 16:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 16:30:23] [INFO] Checking activity reminders 
[2026-03-16 16:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:30:36] [INFO] Checking activity reminders 
[2026-03-16 16:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:30:53] [INFO] Checking activity reminders 
[2026-03-16 16:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:31:06] [INFO] Checking activity reminders 
[2026-03-16 16:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:31:23] [INFO] Checking activity reminders 
[2026-03-16 16:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:31:53] [INFO] Checking activity reminders 
[2026-03-16 16:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:32:23] [INFO] Checking activity reminders 
[2026-03-16 16:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:32:53] [INFO] Checking activity reminders 
[2026-03-16 16:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:33:23] [INFO] Checking activity reminders 
[2026-03-16 16:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:33:53] [INFO] Checking activity reminders 
[2026-03-16 16:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:34:02] [INFO] Checking activity reminders 
[2026-03-16 16:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:34:03] [INFO] Checking activity reminders 
[2026-03-16 16:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:34:05] [INFO] Checking activity reminders 
[2026-03-16 16:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:34:07] [INFO] Checking activity reminders 
[2026-03-16 16:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:34:37] [INFO] Checking activity reminders 
[2026-03-16 16:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:35:07] [INFO] Checking activity reminders 
[2026-03-16 16:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:35:37] [INFO] Checking activity reminders 
[2026-03-16 16:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:36:07] [INFO] Checking activity reminders 
[2026-03-16 16:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:36:37] [INFO] Checking activity reminders 
[2026-03-16 16:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:37:07] [INFO] Checking activity reminders 
[2026-03-16 16:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:37:37] [INFO] Checking activity reminders 
[2026-03-16 16:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:38:07] [INFO] Checking activity reminders 
[2026-03-16 16:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:38:38] [INFO] Checking activity reminders 
[2026-03-16 16:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:39:08] [INFO] Checking activity reminders 
[2026-03-16 16:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:39:38] [INFO] Checking activity reminders 
[2026-03-16 16:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:40:08] [INFO] Checking activity reminders 
[2026-03-16 16:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:40:38] [INFO] Checking activity reminders 
[2026-03-16 16:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:41:08] [INFO] Checking activity reminders 
[2026-03-16 16:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:41:38] [INFO] Checking activity reminders 
[2026-03-16 16:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:42:08] [INFO] Checking activity reminders 
[2026-03-16 16:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:42:38] [INFO] Checking activity reminders 
[2026-03-16 16:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:43:08] [INFO] Checking activity reminders 
[2026-03-16 16:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:43:38] [INFO] Checking activity reminders 
[2026-03-16 16:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:44:08] [INFO] Checking activity reminders 
[2026-03-16 16:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:44:38] [INFO] Checking activity reminders 
[2026-03-16 16:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:45:08] [INFO] Checking activity reminders 
[2026-03-16 16:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:45:39] [INFO] Checking activity reminders 
[2026-03-16 16:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:46:09] [INFO] Checking activity reminders 
[2026-03-16 16:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:46:39] [INFO] Checking activity reminders 
[2026-03-16 16:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:47:09] [INFO] Checking activity reminders 
[2026-03-16 16:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:52:27] [INFO] Checking activity reminders 
[2026-03-16 16:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:52:47] [INFO] Checking activity reminders 
[2026-03-16 16:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:52:49] [INFO] Checking activity reminders 
[2026-03-16 16:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:53:19] [INFO] Checking activity reminders 
[2026-03-16 16:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:53:49] [INFO] Checking activity reminders 
[2026-03-16 16:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:55:40] [INFO] Checking activity reminders 
[2026-03-16 16:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:57:12] [INFO] Checking activity reminders 
[2026-03-16 16:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:57:42] [INFO] Checking activity reminders 
[2026-03-16 16:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:58:12] [INFO] Checking activity reminders 
[2026-03-16 16:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:58:32] [INFO] Checking activity reminders 
[2026-03-16 16:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:58:32] [INFO] Checking activity reminders 
[2026-03-16 16:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:58:33] [INFO] Checking activity reminders 
[2026-03-16 16:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:58:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 16:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:59:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 16:59:12","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 16:59:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:59:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-03-16 16:59:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 16:59:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 16:59:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 16:59:12] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-03-16 16:59:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:59:12] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-03-16 16:59:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-03-16 16:59:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 16:59:12"}
[2026-03-16 16:59:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 16:59:12"}
[2026-03-16 16:59:12] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 16:59:12] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 16:59:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-03-16 16:59:12","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 16:59:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:59:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 16:59:12","ip_address":"2.176.239.94","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 16:59:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-03-16 16:59:14] [INFO] Checking activity reminders 
[2026-03-16 16:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 16:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-16 16:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 16:59:44] [INFO] Checking activity reminders 
[2026-03-16 16:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 16:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:00:14] [INFO] Checking activity reminders 
[2026-03-16 17:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:00:44] [INFO] Checking activity reminders 
[2026-03-16 17:00:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:00:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:02:42] [INFO] Checking activity reminders 
[2026-03-16 17:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:03:12] [INFO] Checking activity reminders 
[2026-03-16 17:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:03:42] [INFO] Checking activity reminders 
[2026-03-16 17:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:04:12] [INFO] Checking activity reminders 
[2026-03-16 17:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:04:42] [INFO] Checking activity reminders 
[2026-03-16 17:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:05:12] [INFO] Checking activity reminders 
[2026-03-16 17:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:05:42] [INFO] Checking activity reminders 
[2026-03-16 17:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:06:12] [INFO] Checking activity reminders 
[2026-03-16 17:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:06:42] [INFO] Checking activity reminders 
[2026-03-16 17:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:07:12] [INFO] Checking activity reminders 
[2026-03-16 17:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:07:42] [INFO] Checking activity reminders 
[2026-03-16 17:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:07:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9905","deal_id":"local_69b7234b755176.66079631","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 17:07:46","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 17:07:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 17:07:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9905","is_new_deal":false}
[2026-03-16 17:07:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 17:07:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:07:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:07:46] [INFO] getContactPrimaryPhone called {"contact_id":"9905"}
[2026-03-16 17:07:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 17:07:46] [INFO] getContactPrimaryPhone result {"contact_id":"9905","person_found":true,"primary_phone":"9012997004"}
[2026-03-16 17:07:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9012997004"}
[2026-03-16 17:07:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9012997004","contact_id":"9905","deal_id":"local_69b7234b755176.66079631","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 17:07:46"}
[2026-03-16 17:07:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7234b755176.66079631","contact_id":"9905","existing_deal_found":true,"existing_contact_id":"9905","existing_title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 17:07:46"}
[2026-03-16 17:07:46] [INFO] DealController.save validated payments {"deal_id":"local_69b7234b755176.66079631","contact_id":"9905","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 17:07:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9905","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 17:07:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7234b755176.66079631","contact_didar_id":"9905","title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9012997004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"YES","existing_deal_id":"local_69b7234b755176.66079631","existing_deal_status":"Pending","server_time":"2026-03-16 17:07:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 17:07:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 17:07:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7234b755176.66079631","contact_id":"9905","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9012997004 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-16 17:07:46","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 17:07:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9905","person_id":"14085"}
[2026-03-16 17:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:08:13] [INFO] Checking activity reminders 
[2026-03-16 17:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:10:26] [INFO] Checking activity reminders 
[2026-03-16 17:10:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:10:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:11:38] [INFO] Checking activity reminders 
[2026-03-16 17:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:11:40] [INFO] Checking activity reminders 
[2026-03-16 17:11:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:11:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:11:42] [INFO] Checking activity reminders 
[2026-03-16 17:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:12:12] [INFO] Checking activity reminders 
[2026-03-16 17:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:12:42] [INFO] Checking activity reminders 
[2026-03-16 17:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:13:13] [INFO] Checking activity reminders 
[2026-03-16 17:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:13:43] [INFO] Checking activity reminders 
[2026-03-16 17:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:14:13] [INFO] Checking activity reminders 
[2026-03-16 17:14:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:14:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:14:43] [INFO] Checking activity reminders 
[2026-03-16 17:14:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:14:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:15:13] [INFO] Checking activity reminders 
[2026-03-16 17:15:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:15:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:15:43] [INFO] Checking activity reminders 
[2026-03-16 17:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:16:13] [INFO] Checking activity reminders 
[2026-03-16 17:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:16:43] [INFO] Checking activity reminders 
[2026-03-16 17:16:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:16:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:17:13] [INFO] Checking activity reminders 
[2026-03-16 17:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:17:43] [INFO] Checking activity reminders 
[2026-03-16 17:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:18:13] [INFO] Checking activity reminders 
[2026-03-16 17:18:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:18:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:18:44] [INFO] Checking activity reminders 
[2026-03-16 17:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:19:14] [INFO] Checking activity reminders 
[2026-03-16 17:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:19:44] [INFO] Checking activity reminders 
[2026-03-16 17:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:20:14] [INFO] Checking activity reminders 
[2026-03-16 17:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:20:44] [INFO] Checking activity reminders 
[2026-03-16 17:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:21:14] [INFO] Checking activity reminders 
[2026-03-16 17:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:21:44] [INFO] Checking activity reminders 
[2026-03-16 17:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:31:14] [INFO] Checking activity reminders 
[2026-03-16 17:31:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:31:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:31:44] [INFO] Checking activity reminders 
[2026-03-16 17:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:32:14] [INFO] Checking activity reminders 
[2026-03-16 17:32:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:32:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:32:44] [INFO] Checking activity reminders 
[2026-03-16 17:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:33:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20886","deal_id":"local_69b722b8c6ead2.80632148","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 17:33:00","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 17:33:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:33:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20886","is_new_deal":false}
[2026-03-16 17:33:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 17:33:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:33:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:33:00] [INFO] getContactPrimaryPhone called {"contact_id":"20886"}
[2026-03-16 17:33:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:33:00] [INFO] getContactPrimaryPhone result {"contact_id":"20886","person_found":true,"primary_phone":"9046189227"}
[2026-03-16 17:33:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9046189227"}
[2026-03-16 17:33:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9046189227","contact_id":"20886","deal_id":"local_69b722b8c6ead2.80632148","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 17:33:00"}
[2026-03-16 17:33:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b722b8c6ead2.80632148","contact_id":"20886","existing_deal_found":true,"existing_contact_id":"20886","existing_title":"معامله دوم 9046189227 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 17:33:00"}
[2026-03-16 17:33:00] [INFO] DealController.save validated payments {"deal_id":"local_69b722b8c6ead2.80632148","contact_id":"20886","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 17:33:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20886","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 17:33:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b722b8c6ead2.80632148","contact_didar_id":"20886","title":"معامله دوم 9046189227 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9046189227","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نیما ملکی","existing_deal":"YES","existing_deal_id":"local_69b722b8c6ead2.80632148","existing_deal_status":"Pending","server_time":"2026-03-16 17:33:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 17:33:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:33:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b722b8c6ead2.80632148","contact_id":"20886","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9046189227 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 17:33:00","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 17:33:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:33:14] [INFO] Checking activity reminders 
[2026-03-16 17:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:33:44] [INFO] Checking activity reminders 
[2026-03-16 17:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:34:14] [INFO] Checking activity reminders 
[2026-03-16 17:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:34:19] [WARNING] Auth check failed - not authenticated {"session_id":"4jn15tjodo47bjqpk0vtv7sf4o","session_keys":[],"action":"log_client_event"}
[2026-03-16 17:34:19] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-16 17:34:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 17:34:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 17:34:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 17:34:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 17:34:24] [INFO] Activity save request {"post_data":{"contact_id":"20886","deal_id":"local_69b722b8c6ead2.80632148","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی در عیار تو ضرر \r\nبرای سال اینده فعلا نمیتونه پرداخت داشته باشه \r\nخودش اطلاع یده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 17:34:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20886","note_was_empty":true}
[2026-03-16 17:34:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"20886","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:24] [INFO] Updating virtual stage {"contact_id":"20886","stage_name":"deal_registered","force":false}
[2026-03-16 17:34:24] [INFO] Virtual stage successfully saved {"contact_id":"20886","stage_name":"deal_registered"}
[2026-03-16 17:34:24] [INFO] Virtual stage updated after activity save {"contact_id":"20886"}
[2026-03-16 17:34:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b722b8c6ead2.80632148","stage":"تماس پیگیری","status_change":null}
[2026-03-16 17:34:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b80de82a2f00.34282967","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69b80de82a2f00.34282967"}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:24] [INFO] Updating virtual stage {"contact_id":"20886","stage_name":"deal_registered","force":false}
[2026-03-16 17:34:24] [INFO] Virtual stage successfully saved {"contact_id":"20886","stage_name":"deal_registered"}
[2026-03-16 17:34:24] [INFO] Virtual stage updated after activity save {"contact_id":"20886"}
[2026-03-16 17:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20886","person_id":"15607"}
[2026-03-16 17:34:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 17:34:44] [INFO] Checking activity reminders 
[2026-03-16 17:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:35:14] [INFO] Checking activity reminders 
[2026-03-16 17:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:35:44] [INFO] Checking activity reminders 
[2026-03-16 17:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:36:14] [INFO] Checking activity reminders 
[2026-03-16 17:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:36:32] [INFO] Checking activity reminders 
[2026-03-16 17:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:36:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 17:36:45] [INFO] Checking activity reminders 
[2026-03-16 17:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 17:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 17:37:15] [INFO] Checking activity reminders 
[2026-03-16 17:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:37:28] [INFO] Checking activity reminders 
[2026-03-16 17:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:37:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 17:37:45] [INFO] Checking activity reminders 
[2026-03-16 17:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:38:08] [INFO] Checking activity reminders 
[2026-03-16 17:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:38:38] [INFO] Checking activity reminders 
[2026-03-16 17:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:39:08] [INFO] Checking activity reminders 
[2026-03-16 17:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:39:38] [INFO] Checking activity reminders 
[2026-03-16 17:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:39:50] [INFO] Checking activity reminders 
[2026-03-16 17:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:40:08] [INFO] Checking activity reminders 
[2026-03-16 17:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:40:39] [INFO] Checking activity reminders 
[2026-03-16 17:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:41:09] [INFO] Checking activity reminders 
[2026-03-16 17:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:41:29] [INFO] Checking activity reminders 
[2026-03-16 17:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 17:41:39] [INFO] Checking activity reminders 
[2026-03-16 17:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:01] [INFO] Checking activity reminders 
[2026-03-16 17:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:09] [INFO] Checking activity reminders 
[2026-03-16 17:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:10] [INFO] Checking activity reminders 
[2026-03-16 17:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:20] [INFO] Checking activity reminders 
[2026-03-16 17:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 17:42:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-03-16 17:42:39] [INFO] Checking activity reminders 
[2026-03-16 17:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:42:50] [INFO] Checking activity reminders 
[2026-03-16 17:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:43:09] [INFO] Checking activity reminders 
[2026-03-16 17:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:43:39] [INFO] Checking activity reminders 
[2026-03-16 17:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:44:09] [INFO] Checking activity reminders 
[2026-03-16 17:44:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:44:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:44:39] [INFO] Checking activity reminders 
[2026-03-16 17:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:44:45] [INFO] Checking activity reminders 
[2026-03-16 17:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:45:09] [INFO] Checking activity reminders 
[2026-03-16 17:45:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:45:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:45:40] [INFO] Checking activity reminders 
[2026-03-16 17:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:45:42] [INFO] Checking activity reminders 
[2026-03-16 17:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:46:10] [INFO] Checking activity reminders 
[2026-03-16 17:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:46:40] [INFO] Checking activity reminders 
[2026-03-16 17:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:47:10] [INFO] Checking activity reminders 
[2026-03-16 17:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:47:38] [INFO] Checking activity reminders 
[2026-03-16 17:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:47:40] [INFO] Checking activity reminders 
[2026-03-16 17:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:47:54] [INFO] Checking activity reminders 
[2026-03-16 17:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:47:58] [INFO] Checking activity reminders 
[2026-03-16 17:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:10] [INFO] Checking activity reminders 
[2026-03-16 17:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:13] [INFO] Checking activity reminders 
[2026-03-16 17:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:16] [INFO] Checking activity reminders 
[2026-03-16 17:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:19] [INFO] Checking activity reminders 
[2026-03-16 17:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:34] [INFO] Checking activity reminders 
[2026-03-16 17:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:41] [INFO] Checking activity reminders 
[2026-03-16 17:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:47] [INFO] Checking activity reminders 
[2026-03-16 17:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:49] [INFO] Checking activity reminders 
[2026-03-16 17:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:48:55] [INFO] Checking activity reminders 
[2026-03-16 17:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:49:03] [INFO] Checking activity reminders 
[2026-03-16 17:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:49:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:49:19] [INFO] Checking activity reminders 
[2026-03-16 17:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:49:23] [INFO] Checking activity reminders 
[2026-03-16 17:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:49:36] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9366573937","09366573937"]}
[2026-03-16 17:49:36] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9366573937","09366573937"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-16 17:49:36] [INFO] Didar write disabled; creating local lead only {"owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","mobile":"9366573937","full_name":"لید جدید"}
[2026-03-16 17:49:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-16 17:49:36] [INFO] Notification created {"notification_id":"606","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","type":"lead_assigned","show_popup":true}
[2026-03-16 17:49:49] [INFO] Checking activity reminders 
[2026-03-16 17:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:50:19] [INFO] Checking activity reminders 
[2026-03-16 17:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:50:49] [INFO] Checking activity reminders 
[2026-03-16 17:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:51:05] [INFO] Activity save request {"post_data":{"contact_id":"3616","deal_id":"local_69b7244eae9c05.84570593","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای کانال تمام سرمایه اش برادرش در بازسازی ملک برده \r\nنمیتونه وارد کانال بشه سرمایه نداره \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 17:51:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3616","note_was_empty":true}
[2026-03-16 17:51:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"3616","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:05] [INFO] Updating virtual stage {"contact_id":"3616","stage_name":"deal_registered","force":false}
[2026-03-16 17:51:05] [INFO] Virtual stage successfully saved {"contact_id":"3616","stage_name":"deal_registered"}
[2026-03-16 17:51:05] [INFO] Virtual stage updated after activity save {"contact_id":"3616"}
[2026-03-16 17:51:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7244eae9c05.84570593","stage":"تماس پیگیری","status_change":null}
[2026-03-16 17:51:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b811d15d95c0.50001037","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69b811d15d95c0.50001037"}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:05] [INFO] Updating virtual stage {"contact_id":"3616","stage_name":"deal_registered","force":false}
[2026-03-16 17:51:05] [INFO] Virtual stage successfully saved {"contact_id":"3616","stage_name":"deal_registered"}
[2026-03-16 17:51:05] [INFO] Virtual stage updated after activity save {"contact_id":"3616"}
[2026-03-16 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3616","person_id":"13925"}
[2026-03-16 17:51:20] [INFO] Checking activity reminders 
[2026-03-16 17:51:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:51:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:51:50] [INFO] Checking activity reminders 
[2026-03-16 17:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:52:20] [INFO] Checking activity reminders 
[2026-03-16 17:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:52:50] [INFO] Checking activity reminders 
[2026-03-16 17:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:52:57] [INFO] Checking activity reminders 
[2026-03-16 17:52:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:52:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:53:00] [INFO] Checking activity reminders 
[2026-03-16 17:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:53:03] [INFO] Checking activity reminders 
[2026-03-16 17:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:53:38] [INFO] Checking activity reminders 
[2026-03-16 17:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:53:41] [INFO] Checking activity reminders 
[2026-03-16 17:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:53:44] [INFO] Checking activity reminders 
[2026-03-16 17:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:54:14] [INFO] Checking activity reminders 
[2026-03-16 17:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:54:44] [INFO] Checking activity reminders 
[2026-03-16 17:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:55:14] [INFO] Checking activity reminders 
[2026-03-16 17:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:55:44] [INFO] Checking activity reminders 
[2026-03-16 17:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:56:14] [INFO] Checking activity reminders 
[2026-03-16 17:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:56:36] [WARNING] Auth check failed - not authenticated {"session_id":"tbfa6s54snbvjlirq5thdneu8d","session_keys":[],"action":"log_client_event"}
[2026-03-16 17:56:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-16 17:56:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 17:56:44] [INFO] Checking activity reminders 
[2026-03-16 17:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 17:57:07] [INFO] Checking activity reminders 
[2026-03-16 17:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:57:14] [INFO] Checking activity reminders 
[2026-03-16 17:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:57:43] [INFO] Checking activity reminders 
[2026-03-16 17:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:57:44] [INFO] Checking activity reminders 
[2026-03-16 17:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:58:13] [INFO] Checking activity reminders 
[2026-03-16 17:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:58:14] [INFO] Checking activity reminders 
[2026-03-16 17:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:58:44] [INFO] Checking activity reminders 
[2026-03-16 17:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:59:04] [INFO] Checking activity reminders 
[2026-03-16 17:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:59:10] [INFO] Checking activity reminders 
[2026-03-16 17:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:59:14] [INFO] Checking activity reminders 
[2026-03-16 17:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:59:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 17:59:40","session_id":"tbfa6s54snbvjlirq5thdneu8d"}
[2026-03-16 17:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 17:59:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_87","is_new_deal":false}
[2026-03-16 17:59:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 17:59:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:59:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 17:59:40] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_87"}
[2026-03-16 17:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 17:59:40] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_87","person_found":true,"primary_phone":"9131118945"}
[2026-03-16 17:59:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131118945"}
[2026-03-16 17:59:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131118945","contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 17:59:40"}
[2026-03-16 17:59:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b740cad7a941.81793437","contact_id":"local_1403_09_26_87","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_87","existing_title":"معامله اول 9131118945 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-16 17:59:40"}
[2026-03-16 17:59:40] [INFO] DealController.save validated payments {"deal_id":"local_69b740cad7a941.81793437","contact_id":"local_1403_09_26_87","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 17:59:40] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_1403_09_26_87","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 17:59:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b740cad7a941.81793437","contact_didar_id":"local_1403_09_26_87","title":"معامله اول 9131118945 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9131118945","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"صرافان","existing_deal":"YES","existing_deal_id":"local_69b740cad7a941.81793437","existing_deal_status":"Pending","server_time":"2026-03-16 17:59:40","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-16 17:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 17:59:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b740cad7a941.81793437","contact_id":"local_1403_09_26_87","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9131118945 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-16 17:59:40","ip_address":"5.215.56.240","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-16 17:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 17:59:42] [INFO] Checking activity reminders 
[2026-03-16 17:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 17:59:44] [INFO] Checking activity reminders 
[2026-03-16 17:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 17:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:11] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ق۰ ت واریز شد تسویه هفته اخر فروردین ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 18:00:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_87","note_was_empty":true}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:11] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-03-16 18:00:11] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-03-16 18:00:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-03-16 18:00:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b740cad7a941.81793437","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-16 18:00:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b813f3228f58.50603643","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69b813f3228f58.50603643"}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:11] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-03-16 18:00:11] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-03-16 18:00:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-03-16 18:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-16 18:00:13] [INFO] Checking activity reminders 
[2026-03-16 18:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:15] [INFO] Checking activity reminders 
[2026-03-16 18:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:16] [INFO] Checking activity reminders 
[2026-03-16 18:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:38] [INFO] Checking activity reminders 
[2026-03-16 18:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:40] [INFO] Checking activity reminders 
[2026-03-16 18:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:43] [INFO] Checking activity reminders 
[2026-03-16 18:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:45] [INFO] Checking activity reminders 
[2026-03-16 18:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:00:46] [INFO] Checking activity reminders 
[2026-03-16 18:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:01:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 18:01:02","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 18:01:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 18:01:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12676","is_new_deal":false}
[2026-03-16 18:01:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 18:01:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:01:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:01:02] [INFO] getContactPrimaryPhone called {"contact_id":"12676"}
[2026-03-16 18:01:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 18:01:02] [INFO] getContactPrimaryPhone result {"contact_id":"12676","person_found":true,"primary_phone":"9113760549"}
[2026-03-16 18:01:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760549"}
[2026-03-16 18:01:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760549","contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:01:02"}
[2026-03-16 18:01:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","existing_deal_found":true,"existing_contact_id":"12676","existing_title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:01:02"}
[2026-03-16 18:01:02] [INFO] DealController.save validated payments {"deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 18:01:02] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12676","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 18:01:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72416ecc7d1.09562998","contact_didar_id":"12676","title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9113760549","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جعفری","existing_deal":"YES","existing_deal_id":"local_69b72416ecc7d1.09562998","existing_deal_status":"Pending","server_time":"2026-03-16 18:01:02","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 18:01:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 18:01:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72416ecc7d1.09562998","contact_id":"12676","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9113760549 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-16 18:01:02","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 18:01:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-03-16 18:01:13] [INFO] Checking activity reminders 
[2026-03-16 18:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:01:15] [INFO] Checking activity reminders 
[2026-03-16 18:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:01:18] [INFO] Checking activity reminders 
[2026-03-16 18:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:01:48] [INFO] Checking activity reminders 
[2026-03-16 18:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:02:18] [INFO] Checking activity reminders 
[2026-03-16 18:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:02:48] [INFO] Checking activity reminders 
[2026-03-16 18:02:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:02:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:03:18] [INFO] Checking activity reminders 
[2026-03-16 18:03:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:03:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:03:48] [INFO] Checking activity reminders 
[2026-03-16 18:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:03:50] [INFO] Checking activity reminders 
[2026-03-16 18:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:03:52] [INFO] Checking activity reminders 
[2026-03-16 18:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:04:06] [INFO] Checking activity reminders 
[2026-03-16 18:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:04:36] [INFO] Checking activity reminders 
[2026-03-16 18:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:05:06] [INFO] Checking activity reminders 
[2026-03-16 18:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:05:26] [INFO] Checking activity reminders 
[2026-03-16 18:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:05:56] [INFO] Checking activity reminders 
[2026-03-16 18:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:06:26] [INFO] Checking activity reminders 
[2026-03-16 18:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:06:57] [INFO] Checking activity reminders 
[2026-03-16 18:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:07:27] [INFO] Checking activity reminders 
[2026-03-16 18:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:07:57] [INFO] Checking activity reminders 
[2026-03-16 18:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:08:27] [INFO] Checking activity reminders 
[2026-03-16 18:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:08:57] [INFO] Checking activity reminders 
[2026-03-16 18:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:09:06] [INFO] Checking activity reminders 
[2026-03-16 18:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:09:07] [INFO] Checking activity reminders 
[2026-03-16 18:09:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:09:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:09:37] [INFO] Checking activity reminders 
[2026-03-16 18:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:09:38] [INFO] Checking activity reminders 
[2026-03-16 18:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:10:08] [INFO] Checking activity reminders 
[2026-03-16 18:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:10:37] [WARNING] Auth check failed - not authenticated {"session_id":"nhb4gutuhrb98rbu0mct3ikhjs","session_keys":[],"action":"log_client_event"}
[2026-03-16 18:10:37] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-16 18:10:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 18:10:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 18:10:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 18:10:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 18:10:38] [INFO] Checking activity reminders 
[2026-03-16 18:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:11:08] [INFO] Checking activity reminders 
[2026-03-16 18:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:11:39] [INFO] Checking activity reminders 
[2026-03-16 18:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:12:09] [INFO] Checking activity reminders 
[2026-03-16 18:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:12:25] [INFO] Lead update received {"contact_id":"local_69b53c491f9508.49754835","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 18:12:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:12:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:12:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53c491f9508.49754835"}
[2026-03-16 18:12:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:12:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:12:39] [INFO] Checking activity reminders 
[2026-03-16 18:12:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:12:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:13:09] [INFO] Checking activity reminders 
[2026-03-16 18:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:13:39] [INFO] Checking activity reminders 
[2026-03-16 18:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:14:09] [INFO] Checking activity reminders 
[2026-03-16 18:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:14:39] [INFO] Checking activity reminders 
[2026-03-16 18:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:15:09] [INFO] Checking activity reminders 
[2026-03-16 18:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:15:39] [INFO] Checking activity reminders 
[2026-03-16 18:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:16:09] [INFO] Checking activity reminders 
[2026-03-16 18:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:16:39] [INFO] Checking activity reminders 
[2026-03-16 18:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:17:09] [INFO] Checking activity reminders 
[2026-03-16 18:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:17:40] [INFO] Checking activity reminders 
[2026-03-16 18:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:18:10] [INFO] Checking activity reminders 
[2026-03-16 18:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:18:20] [INFO] Lead update received {"contact_id":"local_69b53c491f9508.49754835","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-16 18:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53c491f9508.49754835"}
[2026-03-16 18:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:40] [INFO] Checking activity reminders 
[2026-03-16 18:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:18:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b53c491f9508.49754835","deal_id":"local_69b53c492841f","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 18:18:42","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 18:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b53c491f9508.49754835","is_new_deal":false}
[2026-03-16 18:18:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 18:18:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:18:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:18:42] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b53c491f9508.49754835"}
[2026-03-16 18:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:42] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b53c491f9508.49754835","person_found":true,"primary_phone":"9125125139"}
[2026-03-16 18:18:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125125139"}
[2026-03-16 18:18:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125125139","contact_id":"local_69b53c491f9508.49754835","deal_id":"local_69b53c492841f","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:18:42"}
[2026-03-16 18:18:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53c492841f","contact_id":"local_69b53c491f9508.49754835","existing_deal_found":true,"existing_contact_id":"local_69b53c491f9508.49754835","existing_title":"معامله اول 9125125139","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:18:42"}
[2026-03-16 18:18:42] [INFO] DealController.save validated payments {"deal_id":"local_69b53c492841f","contact_id":"local_69b53c491f9508.49754835","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 18:18:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b53c491f9508.49754835","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 18:18:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53c492841f","contact_didar_id":"local_69b53c491f9508.49754835","title":"معامله اول 9125125139 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9125125139","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اقای جنتی","existing_deal":"YES","existing_deal_id":"local_69b53c492841f","existing_deal_status":"Pending","server_time":"2026-03-16 18:18:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 18:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53c492841f","contact_id":"local_69b53c491f9508.49754835","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9125125139 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 18:18:42","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 18:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:19:10] [INFO] Checking activity reminders 
[2026-03-16 18:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:19:40] [INFO] Checking activity reminders 
[2026-03-16 18:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:20:10] [INFO] Checking activity reminders 
[2026-03-16 18:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:20:40] [INFO] Checking activity reminders 
[2026-03-16 18:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:21:10] [INFO] Checking activity reminders 
[2026-03-16 18:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:21:40] [INFO] Checking activity reminders 
[2026-03-16 18:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:22:10] [INFO] Checking activity reminders 
[2026-03-16 18:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:22:40] [INFO] Checking activity reminders 
[2026-03-16 18:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:22:42] [INFO] Activity save request {"post_data":{"contact_id":"local_69b53c491f9508.49754835","deal_id":"local_69b53c492841f","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تازه اشنا شده \r\nخاوران نمایشگاه \/ شریک دار \r\n6-7 میلیارد سرمایه \r\nدر طلا و یورو و دلار میخواد سرمایه گذاری \r\nپرزنت 405 \/ \r\nمشاوره تلفنی با استاد 30 م \r\nارسال پیامک \r\nتازه از کانال بله اشنا شده \r\nمشورت با شریک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:22:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 18:22:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:22:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b53c491f9508.49754835","note_was_empty":true}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:22:42] [INFO] Updating virtual stage {"contact_id":"local_69b53c491f9508.49754835","stage_name":"new","force":false}
[2026-03-16 18:22:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53c491f9508.49754835","stage_name":"new"}
[2026-03-16 18:22:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53c491f9508.49754835"}
[2026-03-16 18:22:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53c492841f","stage":"تماس پیگیری","status_change":null}
[2026-03-16 18:22:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b8193ac50ed3.30772402","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:22:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69b8193ac50ed3.30772402"}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:22:42] [INFO] Updating virtual stage {"contact_id":"local_69b53c491f9508.49754835","stage_name":"deal_registered","force":false}
[2026-03-16 18:22:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53c491f9508.49754835","stage_name":"deal_registered"}
[2026-03-16 18:22:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53c491f9508.49754835"}
[2026-03-16 18:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-16 18:23:04] [INFO] Checking activity reminders 
[2026-03-16 18:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:23:06] [INFO] Checking activity reminders 
[2026-03-16 18:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-16 18:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-16 18:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 18:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-16 18:23:36] [INFO] Checking activity reminders 
[2026-03-16 18:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:23:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-16 18:23:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-16 18:23:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-16 18:23:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-16 18:24:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-16 18:24:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-16 18:24:06] [INFO] Checking activity reminders 
[2026-03-16 18:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:24:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:24:36] [INFO] Checking activity reminders 
[2026-03-16 18:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:25:06] [INFO] Checking activity reminders 
[2026-03-16 18:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:25:36] [INFO] Checking activity reminders 
[2026-03-16 18:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:26:07] [INFO] Checking activity reminders 
[2026-03-16 18:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:26:37] [INFO] Checking activity reminders 
[2026-03-16 18:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:27:07] [INFO] Checking activity reminders 
[2026-03-16 18:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:27:37] [INFO] Checking activity reminders 
[2026-03-16 18:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:28:07] [INFO] Checking activity reminders 
[2026-03-16 18:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:28:37] [INFO] Checking activity reminders 
[2026-03-16 18:28:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:28:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:29:07] [INFO] Checking activity reminders 
[2026-03-16 18:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:29:37] [INFO] Checking activity reminders 
[2026-03-16 18:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:30:07] [INFO] Checking activity reminders 
[2026-03-16 18:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:30:37] [INFO] Checking activity reminders 
[2026-03-16 18:30:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:30:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:31:07] [INFO] Checking activity reminders 
[2026-03-16 18:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:31:38] [INFO] Checking activity reminders 
[2026-03-16 18:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:32:08] [INFO] Checking activity reminders 
[2026-03-16 18:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:32:38] [INFO] Checking activity reminders 
[2026-03-16 18:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:33:08] [INFO] Checking activity reminders 
[2026-03-16 18:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:33:38] [INFO] Checking activity reminders 
[2026-03-16 18:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:34:08] [INFO] Checking activity reminders 
[2026-03-16 18:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:34:38] [INFO] Checking activity reminders 
[2026-03-16 18:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:35:08] [INFO] Checking activity reminders 
[2026-03-16 18:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:35:38] [INFO] Checking activity reminders 
[2026-03-16 18:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:36:08] [INFO] Checking activity reminders 
[2026-03-16 18:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:36:38] [INFO] Checking activity reminders 
[2026-03-16 18:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:37:08] [INFO] Checking activity reminders 
[2026-03-16 18:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:37:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12282","deal_id":"local_69b5c067dbe514.69558389","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 18:37:30","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 18:37:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:37:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12282","is_new_deal":false}
[2026-03-16 18:37:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 18:37:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:37:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:37:30] [INFO] getContactPrimaryPhone called {"contact_id":"12282"}
[2026-03-16 18:37:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:37:30] [INFO] getContactPrimaryPhone result {"contact_id":"12282","person_found":true,"primary_phone":"9223560491"}
[2026-03-16 18:37:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9223560491"}
[2026-03-16 18:37:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9223560491","contact_id":"12282","deal_id":"local_69b5c067dbe514.69558389","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:37:30"}
[2026-03-16 18:37:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c067dbe514.69558389","contact_id":"12282","existing_deal_found":true,"existing_contact_id":"12282","existing_title":"معامله چهارم 9223560491","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:37:30"}
[2026-03-16 18:37:30] [INFO] DealController.save validated payments {"deal_id":"local_69b5c067dbe514.69558389","contact_id":"12282","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-16 18:37:30] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12282","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 18:37:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c067dbe514.69558389","contact_didar_id":"12282","title":"معامله چهارم 9223560491 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9223560491","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی الیاسی","existing_deal":"YES","existing_deal_id":"local_69b5c067dbe514.69558389","existing_deal_status":"Pending","server_time":"2026-03-16 18:37:30","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 18:37:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:37:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c067dbe514.69558389","contact_id":"12282","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9223560491 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 18:37:30","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 18:37:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:37:38] [INFO] Checking activity reminders 
[2026-03-16 18:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:38:09] [INFO] Checking activity reminders 
[2026-03-16 18:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:38:39] [INFO] Checking activity reminders 
[2026-03-16 18:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:38:45] [INFO] Activity save request {"post_data":{"contact_id":"12282","deal_id":"local_69b5c067dbe514.69558389","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی از 404 راضی بود \r\n3 تا خودرو صفر داره \r\nدر طلاذ و بورس سرمایه \r\nپرزنت 405 \r\nچک بانک ملی سفید \/ الکترونیکی \r\nتا اخر هفته قطعی اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 18:38:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12282","note_was_empty":true}
[2026-03-16 18:38:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"12282","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:45] [INFO] Updating virtual stage {"contact_id":"12282","stage_name":"deal_registered","force":false}
[2026-03-16 18:38:45] [INFO] Virtual stage successfully saved {"contact_id":"12282","stage_name":"deal_registered"}
[2026-03-16 18:38:45] [INFO] Virtual stage updated after activity save {"contact_id":"12282"}
[2026-03-16 18:38:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c067dbe514.69558389","stage":"تماس پیگیری","status_change":null}
[2026-03-16 18:38:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b81cfd5028f9.28157344","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69b81cfd5028f9.28157344"}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:45] [INFO] Updating virtual stage {"contact_id":"12282","stage_name":"deal_registered","force":false}
[2026-03-16 18:38:45] [INFO] Virtual stage successfully saved {"contact_id":"12282","stage_name":"deal_registered"}
[2026-03-16 18:38:45] [INFO] Virtual stage updated after activity save {"contact_id":"12282"}
[2026-03-16 18:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-16 18:38:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:39:09] [INFO] Checking activity reminders 
[2026-03-16 18:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:39:39] [INFO] Checking activity reminders 
[2026-03-16 18:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:40:09] [INFO] Checking activity reminders 
[2026-03-16 18:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:40:39] [INFO] Checking activity reminders 
[2026-03-16 18:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:41:09] [INFO] Checking activity reminders 
[2026-03-16 18:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:41:40] [INFO] Checking activity reminders 
[2026-03-16 18:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:42:10] [INFO] Checking activity reminders 
[2026-03-16 18:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:42:40] [INFO] Checking activity reminders 
[2026-03-16 18:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:43:10] [INFO] Checking activity reminders 
[2026-03-16 18:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:43:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:43:40] [INFO] Checking activity reminders 
[2026-03-16 18:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:44:10] [INFO] Checking activity reminders 
[2026-03-16 18:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:44:40] [INFO] Checking activity reminders 
[2026-03-16 18:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:45:10] [INFO] Checking activity reminders 
[2026-03-16 18:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:45:40] [INFO] Checking activity reminders 
[2026-03-16 18:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:46:00] [INFO] Activity save request {"post_data":{"contact_id":"8326","deal_id":"local_69b5c9d0926db4.68057730","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه هنوز گله ام نفروختم پول بیاد دستم \r\nفقط جهت مسخره بازی و اتلاف وقت شماره میگیره \r\nدنبال اطلاعات مجانیه  ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 18:46:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8326","note_was_empty":true}
[2026-03-16 18:46:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"8326","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:00] [INFO] Updating virtual stage {"contact_id":"8326","stage_name":"deal_registered","force":false}
[2026-03-16 18:46:00] [INFO] Virtual stage successfully saved {"contact_id":"8326","stage_name":"deal_registered"}
[2026-03-16 18:46:00] [INFO] Virtual stage updated after activity save {"contact_id":"8326"}
[2026-03-16 18:46:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c9d0926db4.68057730","stage":"تماس پیگیری","status_change":null}
[2026-03-16 18:46:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b81eb02d16f8.35363496","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69b81eb02d16f8.35363496"}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:00] [INFO] Updating virtual stage {"contact_id":"8326","stage_name":"deal_registered","force":false}
[2026-03-16 18:46:00] [INFO] Virtual stage successfully saved {"contact_id":"8326","stage_name":"deal_registered"}
[2026-03-16 18:46:00] [INFO] Virtual stage updated after activity save {"contact_id":"8326"}
[2026-03-16 18:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8326","person_id":"16496"}
[2026-03-16 18:46:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:46:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:46:10] [INFO] Checking activity reminders 
[2026-03-16 18:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-16 18:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-16 18:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:46:40] [INFO] Checking activity reminders 
[2026-03-16 18:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:47:10] [INFO] Checking activity reminders 
[2026-03-16 18:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:47:41] [INFO] Checking activity reminders 
[2026-03-16 18:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:48:11] [INFO] Checking activity reminders 
[2026-03-16 18:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:48:41] [INFO] Checking activity reminders 
[2026-03-16 18:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:49:11] [INFO] Checking activity reminders 
[2026-03-16 18:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:49:41] [INFO] Checking activity reminders 
[2026-03-16 18:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:50:11] [INFO] Checking activity reminders 
[2026-03-16 18:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:50:41] [INFO] Checking activity reminders 
[2026-03-16 18:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:51:11] [INFO] Checking activity reminders 
[2026-03-16 18:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:51:41] [INFO] Checking activity reminders 
[2026-03-16 18:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:52:11] [INFO] Checking activity reminders 
[2026-03-16 18:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:52:41] [INFO] Checking activity reminders 
[2026-03-16 18:52:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:52:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:53:11] [INFO] Checking activity reminders 
[2026-03-16 18:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:53:42] [INFO] Checking activity reminders 
[2026-03-16 18:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:54:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:54:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-16 18:54:09] [INFO] generateDealTitle result {"contact_id":"local_69b53335d88630.58088415","person_name":"لید جدید","mobile":"9118125684","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9118125684"}
[2026-03-16 18:54:12] [INFO] Checking activity reminders 
[2026-03-16 18:54:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:54:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:54:42] [INFO] Checking activity reminders 
[2026-03-16 18:54:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:54:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:55:12] [INFO] Checking activity reminders 
[2026-03-16 18:55:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:55:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:55:42] [INFO] Checking activity reminders 
[2026-03-16 18:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:56:12] [INFO] Checking activity reminders 
[2026-03-16 18:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:56:42] [INFO] Checking activity reminders 
[2026-03-16 18:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:57:12] [INFO] Checking activity reminders 
[2026-03-16 18:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:57:22] [INFO] Checking activity reminders 
[2026-03-16 18:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:57:53] [INFO] Checking activity reminders 
[2026-03-16 18:57:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:57:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:58:20] [INFO] Checking activity reminders 
[2026-03-16 18:58:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:58:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:58:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 18:58:50] [INFO] Checking activity reminders 
[2026-03-16 18:58:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:58:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:59:20] [INFO] Checking activity reminders 
[2026-03-16 18:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:59:50] [INFO] Checking activity reminders 
[2026-03-16 18:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 18:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 18:59:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21042","deal_id":"local_69b7220c8608e5.60333825","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 18:59:58","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 18:59:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 18:59:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21042","is_new_deal":false}
[2026-03-16 18:59:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 18:59:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:59:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 18:59:58] [INFO] getContactPrimaryPhone called {"contact_id":"21042"}
[2026-03-16 18:59:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 18:59:58] [INFO] getContactPrimaryPhone result {"contact_id":"21042","person_found":true,"primary_phone":"9017371619"}
[2026-03-16 18:59:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9017371619"}
[2026-03-16 18:59:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9017371619","contact_id":"21042","deal_id":"local_69b7220c8608e5.60333825","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:59:58"}
[2026-03-16 18:59:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7220c8608e5.60333825","contact_id":"21042","existing_deal_found":true,"existing_contact_id":"21042","existing_title":"معامله دوم 9017371619 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 18:59:58"}
[2026-03-16 18:59:58] [INFO] DealController.save validated payments {"deal_id":"local_69b7220c8608e5.60333825","contact_id":"21042","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-16 18:59:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21042","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 18:59:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7220c8608e5.60333825","contact_didar_id":"21042","title":"معامله دوم 9017371619 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9017371619","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هدایتی","existing_deal":"YES","existing_deal_id":"local_69b7220c8608e5.60333825","existing_deal_status":"Pending","server_time":"2026-03-16 18:59:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 18:59:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 18:59:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7220c8608e5.60333825","contact_id":"21042","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9017371619 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-16 18:59:58","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 18:59:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21042","person_id":"13351"}
[2026-03-16 19:00:20] [INFO] Checking activity reminders 
[2026-03-16 19:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:00:50] [INFO] Checking activity reminders 
[2026-03-16 19:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:01:20] [INFO] Checking activity reminders 
[2026-03-16 19:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:01:50] [INFO] Checking activity reminders 
[2026-03-16 19:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:02:20] [INFO] Checking activity reminders 
[2026-03-16 19:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:02:51] [INFO] Checking activity reminders 
[2026-03-16 19:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:03:21] [INFO] Checking activity reminders 
[2026-03-16 19:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:03:22] [INFO] Checking activity reminders 
[2026-03-16 19:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:03:52] [INFO] Checking activity reminders 
[2026-03-16 19:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:04:22] [INFO] Checking activity reminders 
[2026-03-16 19:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:04:52] [INFO] Checking activity reminders 
[2026-03-16 19:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:05:22] [INFO] Checking activity reminders 
[2026-03-16 19:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:05:52] [INFO] Checking activity reminders 
[2026-03-16 19:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:06:23] [INFO] Checking activity reminders 
[2026-03-16 19:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:06:53] [INFO] Checking activity reminders 
[2026-03-16 19:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:06:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7569","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 19:06:58","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 19:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:06:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7569","is_new_deal":true}
[2026-03-16 19:06:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:06:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:06:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:06:58] [INFO] getContactPrimaryPhone called {"contact_id":"7569"}
[2026-03-16 19:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:06:58] [INFO] getContactPrimaryPhone result {"contact_id":"7569","person_found":true,"primary_phone":"9199858508"}
[2026-03-16 19:06:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9199858508"}
[2026-03-16 19:06:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9199858508","contact_id":"7569","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 19:06:58"}
[2026-03-16 19:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:06:58] [INFO] generateDealTitle result {"contact_id":"7569","person_name":"فتوحی","mobile":"9199858508","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9199858508"}
[2026-03-16 19:06:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7569","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 19:06:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7569","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 19:06:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7569","title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9199858508","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":14000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتوحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 19:06:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 19:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:06:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 19:06:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7569","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":14000000,"server_time":"2026-03-16 19:06:58","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 19:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:07:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7569","deal_id":"local_69b8239aa093a2.85591394","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 19:07:15","session_id":"a570mu18g6rar86sfrhgabhmn0"}
[2026-03-16 19:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:07:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7569","is_new_deal":false}
[2026-03-16 19:07:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:07:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:07:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-16 19:07:15] [INFO] getContactPrimaryPhone called {"contact_id":"7569"}
[2026-03-16 19:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:07:15] [INFO] getContactPrimaryPhone result {"contact_id":"7569","person_found":true,"primary_phone":"9199858508"}
[2026-03-16 19:07:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9199858508"}
[2026-03-16 19:07:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9199858508","contact_id":"7569","deal_id":"local_69b8239aa093a2.85591394","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 19:07:15"}
[2026-03-16 19:07:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","existing_deal_found":true,"existing_contact_id":"7569","existing_title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 19:07:15"}
[2026-03-16 19:07:15] [INFO] DealController.save validated payments {"deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 19:07:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7569","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 19:07:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b8239aa093a2.85591394","contact_didar_id":"7569","title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9199858508","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":14000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتوحی","existing_deal":"YES","existing_deal_id":"local_69b8239aa093a2.85591394","existing_deal_status":"Pending","server_time":"2026-03-16 19:07:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 19:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:07:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":14000000,"server_time":"2026-03-16 19:07:15","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 19:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-16 19:07:23] [INFO] Checking activity reminders 
[2026-03-16 19:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:07:43] [INFO] Checking activity reminders 
[2026-03-16 19:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:08:13] [INFO] Checking activity reminders 
[2026-03-16 19:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:08:43] [INFO] Checking activity reminders 
[2026-03-16 19:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:09:14] [INFO] Checking activity reminders 
[2026-03-16 19:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:09:44] [INFO] Checking activity reminders 
[2026-03-16 19:09:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:09:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:10:14] [INFO] Checking activity reminders 
[2026-03-16 19:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:10:44] [INFO] Checking activity reminders 
[2026-03-16 19:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:10:54] [INFO] Activity save request {"post_data":{"contact_id":"local_6955069b1103b0.56472092","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیام در بله ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 19:10:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:10:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 19:10:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 19:10:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:10:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_6955069b1103b0.56472092","note_was_empty":true}
[2026-03-16 19:10:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b82486db3345.09693572","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 19:10:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:10:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69b82486db3345.09693572"}
[2026-03-16 19:10:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:10:54] [INFO] Updating virtual stage {"contact_id":"local_6955069b1103b0.56472092","stage_name":"deal_registered","force":false}
[2026-03-16 19:10:54] [INFO] Virtual stage successfully saved {"contact_id":"local_6955069b1103b0.56472092","stage_name":"deal_registered"}
[2026-03-16 19:10:54] [INFO] Virtual stage updated after activity save {"contact_id":"local_6955069b1103b0.56472092"}
[2026-03-16 19:10:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6955069b1103b0.56472092","person_id":"21484"}
[2026-03-16 19:11:14] [INFO] Checking activity reminders 
[2026-03-16 19:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:11:44] [INFO] Checking activity reminders 
[2026-03-16 19:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:12:14] [INFO] Checking activity reminders 
[2026-03-16 19:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:12:44] [INFO] Checking activity reminders 
[2026-03-16 19:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 19:13:14] [INFO] Checking activity reminders 
[2026-03-16 19:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:13:44] [INFO] Checking activity reminders 
[2026-03-16 19:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:15:59] [INFO] Checking activity reminders 
[2026-03-16 19:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:16:03] [INFO] Checking activity reminders 
[2026-03-16 19:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:16:33] [INFO] Checking activity reminders 
[2026-03-16 19:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:17:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:17:03] [INFO] Checking activity reminders 
[2026-03-16 19:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:17:33] [INFO] Checking activity reminders 
[2026-03-16 19:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:18:04] [INFO] Checking activity reminders 
[2026-03-16 19:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:18:34] [INFO] Checking activity reminders 
[2026-03-16 19:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:19:04] [INFO] Checking activity reminders 
[2026-03-16 19:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:19:34] [INFO] Checking activity reminders 
[2026-03-16 19:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:20:04] [INFO] Checking activity reminders 
[2026-03-16 19:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:20:34] [INFO] Checking activity reminders 
[2026-03-16 19:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:21:04] [INFO] Checking activity reminders 
[2026-03-16 19:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:21:34] [INFO] Checking activity reminders 
[2026-03-16 19:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:22:04] [INFO] Checking activity reminders 
[2026-03-16 19:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:22:34] [INFO] Checking activity reminders 
[2026-03-16 19:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:23:04] [INFO] Checking activity reminders 
[2026-03-16 19:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:23:35] [INFO] Checking activity reminders 
[2026-03-16 19:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:24:05] [INFO] Checking activity reminders 
[2026-03-16 19:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:24:35] [INFO] Checking activity reminders 
[2026-03-16 19:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:25:05] [INFO] Checking activity reminders 
[2026-03-16 19:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:25:35] [INFO] Checking activity reminders 
[2026-03-16 19:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:26:05] [INFO] Checking activity reminders 
[2026-03-16 19:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:26:35] [INFO] Checking activity reminders 
[2026-03-16 19:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:27:05] [INFO] Checking activity reminders 
[2026-03-16 19:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:27:35] [INFO] Checking activity reminders 
[2026-03-16 19:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:28:05] [INFO] Checking activity reminders 
[2026-03-16 19:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:28:35] [INFO] Checking activity reminders 
[2026-03-16 19:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:29:06] [INFO] Checking activity reminders 
[2026-03-16 19:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:29:36] [INFO] Checking activity reminders 
[2026-03-16 19:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:30:06] [INFO] Checking activity reminders 
[2026-03-16 19:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:30:36] [INFO] Checking activity reminders 
[2026-03-16 19:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:31:06] [INFO] Checking activity reminders 
[2026-03-16 19:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:31:36] [INFO] Activity save request {"post_data":{"contact_id":"5133","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در کار طلا وارد شده \/ فقط در طلای فیزیکی سرمایه گذاری \r\nپرزنت 405 \r\nمیخواد کلا چک بده \/ بهش گفتم بیعانه نقد داشته باش مابقی شو چک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 19:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:31:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 19:31:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 19:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:31:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5133","note_was_empty":true}
[2026-03-16 19:31:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"5133","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 19:31:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b82960060e59.18364667","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 19:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:31:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69b82960060e59.18364667"}
[2026-03-16 19:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:31:36] [INFO] Updating virtual stage {"contact_id":"5133","stage_name":"deal_registered","force":false}
[2026-03-16 19:31:36] [INFO] Virtual stage successfully saved {"contact_id":"5133","stage_name":"deal_registered"}
[2026-03-16 19:31:36] [INFO] Virtual stage updated after activity save {"contact_id":"5133"}
[2026-03-16 19:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5133","person_id":"2976"}
[2026-03-16 19:31:36] [INFO] Checking activity reminders 
[2026-03-16 19:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:31:57] [INFO] Checking activity reminders 
[2026-03-16 19:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:32:27] [INFO] Checking activity reminders 
[2026-03-16 19:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:32:57] [INFO] Checking activity reminders 
[2026-03-16 19:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:33:19] [INFO] Activity save request {"post_data":{"contact_id":"12752","deal_id":"local_69b72471ccce07.54227037","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای 405 ارسال اطلاعات در پیامک \r\nدر 2 مرحله واریز ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 19:33:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12752","note_was_empty":true}
[2026-03-16 19:33:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"12752","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:19] [INFO] Updating virtual stage {"contact_id":"12752","stage_name":"deal_registered","force":false}
[2026-03-16 19:33:19] [INFO] Virtual stage successfully saved {"contact_id":"12752","stage_name":"deal_registered"}
[2026-03-16 19:33:19] [INFO] Virtual stage updated after activity save {"contact_id":"12752"}
[2026-03-16 19:33:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72471ccce07.54227037","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-16 19:33:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b829c7916cb8.78961316","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69b829c7916cb8.78961316"}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:19] [INFO] Updating virtual stage {"contact_id":"12752","stage_name":"deal_registered","force":false}
[2026-03-16 19:33:19] [INFO] Virtual stage successfully saved {"contact_id":"12752","stage_name":"deal_registered"}
[2026-03-16 19:33:19] [INFO] Virtual stage updated after activity save {"contact_id":"12752"}
[2026-03-16 19:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-16 19:33:27] [INFO] Checking activity reminders 
[2026-03-16 19:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:33:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:33:57] [INFO] Checking activity reminders 
[2026-03-16 19:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:34:27] [INFO] Checking activity reminders 
[2026-03-16 19:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:34:44] [INFO] Activity save request {"post_data":{"contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تمام سرمایه در بورس 30 درصد متضرر \r\nبرای 405 تمدید میکنه فقط باید عیار بفروشه \r\nاطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 19:34:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3592","note_was_empty":true}
[2026-03-16 19:34:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"3592","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:44] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-03-16 19:34:44] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-03-16 19:34:44] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-03-16 19:34:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695d282b0713d2.41229944","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-16 19:34:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b82a1c0b62c0.70707997","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69b82a1c0b62c0.70707997"}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:44] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-03-16 19:34:44] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-03-16 19:34:44] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-03-16 19:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-03-16 19:34:57] [INFO] Checking activity reminders 
[2026-03-16 19:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:35:27] [INFO] Checking activity reminders 
[2026-03-16 19:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:35:58] [INFO] Checking activity reminders 
[2026-03-16 19:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:36:28] [INFO] Checking activity reminders 
[2026-03-16 19:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:36:49] [INFO] Checking activity reminders 
[2026-03-16 19:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:42:46] [INFO] Checking activity reminders 
[2026-03-16 19:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:42:51] [INFO] Checking activity reminders 
[2026-03-16 19:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:43:07] [INFO] Checking activity reminders 
[2026-03-16 19:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:43:37] [INFO] Checking activity reminders 
[2026-03-16 19:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:44:07] [INFO] Checking activity reminders 
[2026-03-16 19:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:44:37] [INFO] Checking activity reminders 
[2026-03-16 19:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:45:07] [INFO] Checking activity reminders 
[2026-03-16 19:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:45:37] [INFO] Checking activity reminders 
[2026-03-16 19:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:46:07] [INFO] Checking activity reminders 
[2026-03-16 19:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:46:10] [INFO] Activity save request {"post_data":{"contact_id":"3360","deal_id":"local_69b533eb614698.79634681","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"باشگاه بود شرایط صحبت نداشت \r\nتماس مجدد 2 ساعت بعد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-16 19:46:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3360","note_was_empty":true}
[2026-03-16 19:46:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"3360","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:10] [INFO] Updating virtual stage {"contact_id":"3360","stage_name":"deal_registered","force":false}
[2026-03-16 19:46:10] [INFO] Virtual stage successfully saved {"contact_id":"3360","stage_name":"deal_registered"}
[2026-03-16 19:46:10] [INFO] Virtual stage updated after activity save {"contact_id":"3360"}
[2026-03-16 19:46:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533eb614698.79634681","stage":"تماس پیگیری","status_change":null}
[2026-03-16 19:46:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b82ccaca6d51.32107636","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69b82ccaca6d51.32107636"}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:10] [INFO] Updating virtual stage {"contact_id":"3360","stage_name":"deal_registered","force":false}
[2026-03-16 19:46:10] [INFO] Virtual stage successfully saved {"contact_id":"3360","stage_name":"deal_registered"}
[2026-03-16 19:46:10] [INFO] Virtual stage updated after activity save {"contact_id":"3360"}
[2026-03-16 19:46:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-16 19:46:37] [INFO] Checking activity reminders 
[2026-03-16 19:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 19:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 19:55:43] [WARNING] Auth check failed - not authenticated {"session_id":"nhb4gutuhrb98rbu0mct3ikhjs","session_keys":[],"action":"check_reminders"}
[2026-03-16 19:55:43] [WARNING] Auth check failed - not authenticated {"session_id":"nhb4gutuhrb98rbu0mct3ikhjs","session_keys":[],"action":"log_client_event"}
[2026-03-16 19:55:43] [WARNING] Auth check failed - not authenticated {"session_id":"nhb4gutuhrb98rbu0mct3ikhjs","session_keys":[],"action":"log_client_event"}
[2026-03-16 21:51:19] [WARNING] Auth check failed - not authenticated {"session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m","session_keys":[],"action":"log_client_event"}
[2026-03-16 21:51:20] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-16 21:51:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 21:51:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-16 21:51:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-16 21:51:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-16 21:52:09] [INFO] Checking activity reminders 
[2026-03-16 21:52:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:52:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:52:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:52:40] [INFO] Checking activity reminders 
[2026-03-16 21:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:53:08] [INFO] Checking activity reminders 
[2026-03-16 21:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:53:53] [INFO] Checking activity reminders 
[2026-03-16 21:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:54:24] [INFO] Checking activity reminders 
[2026-03-16 21:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:54:33] [DEBUG] findByPhone: Found person {"phones":["9103618564"],"found_id":"14534","found_didar_id":"5504","found_name":"علی سلیمانیان"}
[2026-03-16 21:54:33] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9103618564","found_didar_id":"5504","found_local_id":"14534","found_name":"علی سلیمانیان"}
[2026-03-16 21:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:33] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9103618564","09103618564"]}
[2026-03-16 21:54:33] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9103618564","09103618564"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-16 21:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:33] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9103618564","existing_contact_id":"5504","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9103618564"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9103618564","09103618564"]}
[2026-03-16 21:54:33] [INFO] Duplicate lead response prepared using local ID {"local_id":"14534","didar_id":"5504"}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [INFO] generateDealTitle result {"contact_id":"5504","person_name":"علی سلیمانیان","mobile":"9103618564","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9103618564"}
[2026-03-16 21:54:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله چهارم 9103618564","contact_id":"5504","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-16 21:54:36","session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m"}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله چهارم 9103618564","contact_id":"5504","is_new_deal":true}
[2026-03-16 21:54:36] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله چهارم 9103618564"}
[2026-03-16 21:54:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله چهارم 9103618564"}
[2026-03-16 21:54:36] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9103618564","pattern":"معامله_ordinal_phone"}
[2026-03-16 21:54:36] [INFO] getContactPrimaryPhone called {"contact_id":"5504"}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [INFO] getContactPrimaryPhone result {"contact_id":"5504","person_found":true,"primary_phone":"9103618564"}
[2026-03-16 21:54:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9103618564","contact_primary_phone":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison called {"input_phone":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison cleaned {"original":"9103618564","cleaned":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison called {"input_phone":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison cleaned {"original":"9103618564","cleaned":"9103618564"}
[2026-03-16 21:54:36] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9103618564"}
[2026-03-16 21:54:36] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9103618564","normalized_contact_phone":"9103618564","phones_match":true}
[2026-03-16 21:54:36] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله چهارم 9103618564","deal_phone":"9103618564","contact_phone":"9103618564","contact_id":"5504","validation":"PASSED"}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [INFO] generateDealTitle result {"contact_id":"5504","person_name":"علی سلیمانیان","mobile":"9103618564","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9103618564"}
[2026-03-16 21:54:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5504","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-16 21:54:36] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5504","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 21:54:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5504","title":"معامله چهارم 9103618564","base_title_used":"معامله چهارم 9103618564","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی سلیمانیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 21:54:36","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-16 21:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 21:54:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5504","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله چهارم 9103618564","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-16 21:54:36","ip_address":"5.117.48.53","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 21:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-16 21:54:58] [INFO] Checking activity reminders 
[2026-03-16 21:54:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:54:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:55:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8796","person_id":"20225"}
[2026-03-16 21:55:35] [INFO] Checking activity reminders 
[2026-03-16 21:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:55:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:56:05] [INFO] Checking activity reminders 
[2026-03-16 21:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:56:30] [INFO] Checking activity reminders 
[2026-03-16 21:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:57:28] [INFO] Checking activity reminders 
[2026-03-16 21:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:57:37] [INFO] Checking activity reminders 
[2026-03-16 21:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:57:52] [INFO] Checking activity reminders 
[2026-03-16 21:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:57:53] [DEBUG] findByPhone: Found person {"phones":["9169944620"],"found_id":"13855","found_didar_id":"933","found_name":"سام رضایی"}
[2026-03-16 21:57:53] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9169944620","found_didar_id":"933","found_local_id":"13855","found_name":"سام رضایی"}
[2026-03-16 21:57:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:53] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9169944620","09169944620"]}
[2026-03-16 21:57:53] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9169944620","09169944620"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-16 21:57:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:53] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9169944620","existing_contact_id":"933","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9169944620"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9169944620","09169944620"]}
[2026-03-16 21:57:53] [INFO] Duplicate lead response prepared using local ID {"local_id":"13855","didar_id":"933"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [INFO] generateDealTitle result {"contact_id":"933","person_name":"سام رضایی","mobile":"9169944620","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9169944620"}
[2026-03-16 21:57:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله چهارم 9169944620","contact_id":"933","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-16 21:57:56","session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله چهارم 9169944620","contact_id":"933","is_new_deal":true}
[2026-03-16 21:57:56] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله چهارم 9169944620"}
[2026-03-16 21:57:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله چهارم 9169944620"}
[2026-03-16 21:57:56] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9169944620","pattern":"معامله_ordinal_phone"}
[2026-03-16 21:57:56] [INFO] getContactPrimaryPhone called {"contact_id":"933"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [INFO] getContactPrimaryPhone result {"contact_id":"933","person_found":true,"primary_phone":"9169944620"}
[2026-03-16 21:57:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9169944620","contact_primary_phone":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison called {"input_phone":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison cleaned {"original":"9169944620","cleaned":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison called {"input_phone":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison cleaned {"original":"9169944620","cleaned":"9169944620"}
[2026-03-16 21:57:56] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9169944620"}
[2026-03-16 21:57:56] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9169944620","normalized_contact_phone":"9169944620","phones_match":true}
[2026-03-16 21:57:56] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله چهارم 9169944620","deal_phone":"9169944620","contact_phone":"9169944620","contact_id":"933","validation":"PASSED"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [INFO] generateDealTitle result {"contact_id":"933","person_name":"سام رضایی","mobile":"9169944620","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9169944620"}
[2026-03-16 21:57:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"933","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-16 21:57:56] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"933","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 21:57:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"933","title":"معامله چهارم 9169944620","base_title_used":"معامله چهارم 9169944620","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سام رضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 21:57:56","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:57:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 21:57:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"933","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله چهارم 9169944620","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-16 21:57:56","ip_address":"5.117.48.53","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 21:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-16 21:58:15] [INFO] Checking activity reminders 
[2026-03-16 21:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:58:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:58:37] [INFO] Checking activity reminders 
[2026-03-16 21:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:59:01] [DEBUG] findByPhone: Found person {"phones":["9125232550"],"found_id":"1309","found_didar_id":"12500","found_name":"مهدی موسی بیگ"}
[2026-03-16 21:59:01] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9125232550","found_didar_id":"12500","found_local_id":"1309","found_name":"مهدی موسی بیگ"}
[2026-03-16 21:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:01] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9125232550","09125232550"]}
[2026-03-16 21:59:01] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9125232550","09125232550"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-16 21:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:01] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9125232550","existing_contact_id":"12500","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9125232550"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9125232550","09125232550"]}
[2026-03-16 21:59:01] [INFO] Duplicate lead response prepared using local ID {"local_id":"1309","didar_id":"12500"}
[2026-03-16 21:59:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:05] [INFO] generateDealTitle result {"contact_id":"12500","person_name":"مهدی موسی بیگ","mobile":"9195601387","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9195601387"}
[2026-03-16 21:59:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله چهارم 9195601387","contact_id":"12500","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-16 21:59:07","session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m"}
[2026-03-16 21:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله چهارم 9195601387","contact_id":"12500","is_new_deal":true}
[2026-03-16 21:59:07] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله چهارم 9195601387"}
[2026-03-16 21:59:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله چهارم 9195601387"}
[2026-03-16 21:59:07] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9195601387","pattern":"معامله_ordinal_phone"}
[2026-03-16 21:59:07] [INFO] getContactPrimaryPhone called {"contact_id":"12500"}
[2026-03-16 21:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:07] [INFO] getContactPrimaryPhone result {"contact_id":"12500","person_found":true,"primary_phone":"9195601387"}
[2026-03-16 21:59:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9195601387","contact_primary_phone":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison called {"input_phone":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison cleaned {"original":"9195601387","cleaned":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison called {"input_phone":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison cleaned {"original":"9195601387","cleaned":"9195601387"}
[2026-03-16 21:59:07] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9195601387"}
[2026-03-16 21:59:07] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9195601387","normalized_contact_phone":"9195601387","phones_match":true}
[2026-03-16 21:59:07] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله چهارم 9195601387","deal_phone":"9195601387","contact_phone":"9195601387","contact_id":"12500","validation":"PASSED"}
[2026-03-16 21:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:07] [INFO] generateDealTitle result {"contact_id":"12500","person_name":"مهدی موسی بیگ","mobile":"9195601387","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9195601387"}
[2026-03-16 21:59:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12500","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-16 21:59:07] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"12500","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 21:59:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12500","title":"معامله چهارم 9195601387","base_title_used":"معامله چهارم 9195601387","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی موسی بیگ","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 21:59:07","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-16 21:59:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 21:59:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12500","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله چهارم 9195601387","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-16 21:59:07","ip_address":"5.117.48.53","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 21:59:09] [INFO] Checking activity reminders 
[2026-03-16 21:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 21:59:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-16 21:59:43] [INFO] Checking activity reminders 
[2026-03-16 21:59:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 21:59:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:00:06] [INFO] Checking activity reminders 
[2026-03-16 22:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:00:15] [INFO] Checking activity reminders 
[2026-03-16 22:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:01:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:05] [INFO] Checking activity reminders 
[2026-03-16 22:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:01:32] [DEBUG] findByPhone: Found person {"phones":["9128483573"],"found_id":"19876","found_didar_id":"13913","found_name":"اقای عبادی"}
[2026-03-16 22:01:32] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9128483573","found_didar_id":"13913","found_local_id":"19876","found_name":"اقای عبادی"}
[2026-03-16 22:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:33] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9128483573","09128483573"]}
[2026-03-16 22:01:33] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9128483573","09128483573"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-16 22:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:33] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9128483573","existing_contact_id":"13913","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9128483573"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9128483573","09128483573"]}
[2026-03-16 22:01:33] [INFO] Duplicate lead response prepared using local ID {"local_id":"19876","didar_id":"13913"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [INFO] generateDealTitle result {"contact_id":"13913","person_name":"اقای عبادی","mobile":"9128483573","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128483573"}
[2026-03-16 22:01:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9128483573","contact_id":"13913","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-16 22:01:35","session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9128483573","contact_id":"13913","is_new_deal":true}
[2026-03-16 22:01:35] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9128483573"}
[2026-03-16 22:01:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9128483573"}
[2026-03-16 22:01:35] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9128483573","pattern":"معامله_ordinal_phone"}
[2026-03-16 22:01:35] [INFO] getContactPrimaryPhone called {"contact_id":"13913"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [INFO] getContactPrimaryPhone result {"contact_id":"13913","person_found":true,"primary_phone":"9128483573"}
[2026-03-16 22:01:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9128483573","contact_primary_phone":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison called {"input_phone":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison cleaned {"original":"9128483573","cleaned":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison called {"input_phone":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison cleaned {"original":"9128483573","cleaned":"9128483573"}
[2026-03-16 22:01:35] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9128483573"}
[2026-03-16 22:01:35] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9128483573","normalized_contact_phone":"9128483573","phones_match":true}
[2026-03-16 22:01:35] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9128483573","deal_phone":"9128483573","contact_phone":"9128483573","contact_id":"13913","validation":"PASSED"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [INFO] generateDealTitle result {"contact_id":"13913","person_name":"اقای عبادی","mobile":"9128483573","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128483573"}
[2026-03-16 22:01:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13913","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-16 22:01:35] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13913","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 22:01:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13913","title":"معامله سوم 9128483573","base_title_used":"معامله سوم 9128483573","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای عبادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 22:01:35","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 22:01:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13913","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9128483573","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-16 22:01:35","ip_address":"5.117.48.53","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 22:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-03-16 22:01:35] [INFO] Checking activity reminders 
[2026-03-16 22:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:02:03] [INFO] Checking activity reminders 
[2026-03-16 22:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:02:34] [INFO] Checking activity reminders 
[2026-03-16 22:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:02:42] [INFO] Checking activity reminders 
[2026-03-16 22:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 22:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 22:02:48] [DEBUG] findByPhone: Found person {"phones":["9125714155"],"found_id":"14035","found_didar_id":"17295","found_name":"مروتی"}
[2026-03-16 22:02:48] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9125714155","found_didar_id":"17295","found_local_id":"14035","found_name":"مروتی"}
[2026-03-16 22:02:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:48] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9125714155","09125714155"]}
[2026-03-16 22:02:48] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9125714155","09125714155"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-16 22:02:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:48] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9125714155","existing_contact_id":"17295","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9125714155"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9125714155","09125714155"]}
[2026-03-16 22:02:48] [INFO] Duplicate lead response prepared using local ID {"local_id":"14035","didar_id":"17295"}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [INFO] generateDealTitle result {"contact_id":"17295","person_name":"مروتی","mobile":"9125714155","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9125714155"}
[2026-03-16 22:02:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9125714155","contact_id":"17295","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-16 22:02:50","session_id":"4i2sunm1t6kqs4dhhlpsmgfr0m"}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9125714155","contact_id":"17295","is_new_deal":true}
[2026-03-16 22:02:50] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9125714155"}
[2026-03-16 22:02:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9125714155"}
[2026-03-16 22:02:50] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9125714155","pattern":"معامله_ordinal_phone"}
[2026-03-16 22:02:50] [INFO] getContactPrimaryPhone called {"contact_id":"17295"}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [INFO] getContactPrimaryPhone result {"contact_id":"17295","person_found":true,"primary_phone":"9125714155"}
[2026-03-16 22:02:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9125714155","contact_primary_phone":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison called {"input_phone":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison cleaned {"original":"9125714155","cleaned":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison called {"input_phone":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison cleaned {"original":"9125714155","cleaned":"9125714155"}
[2026-03-16 22:02:50] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9125714155"}
[2026-03-16 22:02:50] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9125714155","normalized_contact_phone":"9125714155","phones_match":true}
[2026-03-16 22:02:50] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9125714155","deal_phone":"9125714155","contact_phone":"9125714155","contact_id":"17295","validation":"PASSED"}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [INFO] generateDealTitle result {"contact_id":"17295","person_name":"مروتی","mobile":"9125714155","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9125714155"}
[2026-03-16 22:02:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17295","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-16 22:02:50] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"17295","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-16 22:02:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17295","title":"معامله سوم 9125714155","base_title_used":"معامله سوم 9125714155","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"مروتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-16 22:02:50","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-16 22:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 22:02:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-16 22:02:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17295","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9125714155","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-16 22:02:50","ip_address":"5.117.48.53","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-16 22:02:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-03-16 23:31:41] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-16 23:31:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 23:32:12] [INFO] Checking activity reminders 
[2026-03-16 23:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:32:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:32:43] [INFO] Checking activity reminders 
[2026-03-16 23:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:33:29] [INFO] Checking activity reminders 
[2026-03-16 23:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:33:41] [INFO] Checking activity reminders 
[2026-03-16 23:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:34:11] [INFO] Checking activity reminders 
[2026-03-16 23:34:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:34:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:34:32] [INFO] Checking activity reminders 
[2026-03-16 23:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:34:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"910","deal_id":"local_695a6d9c5c6ee9.79530953","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 23:34:58","session_id":"bg48i8iv5pgae1tfhvbfcis0p6"}
[2026-03-16 23:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:34:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"910","is_new_deal":false}
[2026-03-16 23:34:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-03-16 23:34:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-16 23:34:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-16 23:34:58] [INFO] getContactPrimaryPhone called {"contact_id":"910"}
[2026-03-16 23:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:34:58] [INFO] getContactPrimaryPhone result {"contact_id":"910","person_found":true,"primary_phone":"9356061066"}
[2026-03-16 23:34:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9356061066"}
[2026-03-16 23:34:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9356061066","contact_id":"910","deal_id":"local_695a6d9c5c6ee9.79530953","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 23:34:58"}
[2026-03-16 23:34:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6d9c5c6ee9.79530953","contact_id":"910","existing_deal_found":true,"existing_contact_id":"910","existing_title":"معامله چهارم 9356061066 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 23:34:58"}
[2026-03-16 23:34:58] [INFO] DealController.save validated payments {"deal_id":"local_695a6d9c5c6ee9.79530953","contact_id":"910","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-16 23:34:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"910","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 23:34:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6d9c5c6ee9.79530953","contact_didar_id":"910","title":"معامله چهارم 9356061066 | کانال VIP بدون پشتیبانی","base_title_used":"معامله چهارم 9356061066","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی فاطمی","existing_deal":"YES","existing_deal_id":"local_695a6d9c5c6ee9.79530953","existing_deal_status":"Pending","server_time":"2026-03-16 23:34:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 23:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:34:58] [INFO] Deal success processed {"contact_id":"910","person_name":"مهدی فاطمی","products_count":1}
[2026-03-16 23:34:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6d9c5c6ee9.79530953","contact_id":"910","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9356061066 | کانال VIP بدون پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-03-16 23:34:58","ip_address":"5.117.103.20","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-16 23:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:35:02] [INFO] Checking activity reminders 
[2026-03-16 23:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:35:28] [INFO] Checking activity reminders 
[2026-03-16 23:35:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:35:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:35:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:35:58] [INFO] Checking activity reminders 
[2026-03-16 23:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:37:03] [INFO] Checking activity reminders 
[2026-03-16 23:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:37:15] [INFO] Checking activity reminders 
[2026-03-16 23:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:37:45] [INFO] Checking activity reminders 
[2026-03-16 23:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:38:16] [INFO] Checking activity reminders 
[2026-03-16 23:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:38:46] [INFO] Checking activity reminders 
[2026-03-16 23:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:39:16] [INFO] Checking activity reminders 
[2026-03-16 23:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:39:46] [INFO] Checking activity reminders 
[2026-03-16 23:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:40:17] [INFO] Checking activity reminders 
[2026-03-16 23:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:40:47] [INFO] Checking activity reminders 
[2026-03-16 23:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:41:17] [INFO] Checking activity reminders 
[2026-03-16 23:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:41:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15491","deal_id":"local_69427f919cfb44.45541137","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-16 23:41:46","session_id":"bg48i8iv5pgae1tfhvbfcis0p6"}
[2026-03-16 23:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:41:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15491","is_new_deal":false}
[2026-03-16 23:41:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-16 23:41:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 23:41:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-16 23:41:46] [INFO] getContactPrimaryPhone called {"contact_id":"15491"}
[2026-03-16 23:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:41:46] [INFO] getContactPrimaryPhone result {"contact_id":"15491","person_found":true,"primary_phone":"9306449776"}
[2026-03-16 23:41:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9306449776"}
[2026-03-16 23:41:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9306449776","contact_id":"15491","deal_id":"local_69427f919cfb44.45541137","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 23:41:46"}
[2026-03-16 23:41:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69427f919cfb44.45541137","contact_id":"15491","existing_deal_found":true,"existing_contact_id":"15491","existing_title":"معامله اول 9306449776 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-16 23:41:46"}
[2026-03-16 23:41:46] [INFO] DealController.save validated payments {"deal_id":"local_69427f919cfb44.45541137","contact_id":"15491","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-16 23:41:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15491","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-16 23:41:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69427f919cfb44.45541137","contact_didar_id":"15491","title":"معامله اول 9306449776 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9306449776","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":70000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضایی مقدم","existing_deal":"YES","existing_deal_id":"local_69427f919cfb44.45541137","existing_deal_status":"Pending","server_time":"2026-03-16 23:41:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-16 23:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:41:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69427f919cfb44.45541137","contact_id":"15491","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9306449776 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":70000000,"server_time":"2026-03-16 23:41:46","ip_address":"5.117.103.20","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-16 23:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:41:47] [INFO] Checking activity reminders 
[2026-03-16 23:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:41:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-16 23:41:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-03-16 23:44:17] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-16 23:44:17] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-16 23:44:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-16 23:44:47] [INFO] Checking activity reminders 
[2026-03-16 23:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:45:17] [INFO] Checking activity reminders 
[2026-03-16 23:45:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:45:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:46:44] [INFO] Checking activity reminders 
[2026-03-16 23:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:47:44] [INFO] Checking activity reminders 
[2026-03-16 23:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:48:14] [INFO] Checking activity reminders 
[2026-03-16 23:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:48:44] [INFO] Checking activity reminders 
[2026-03-16 23:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:49:15] [INFO] Checking activity reminders 
[2026-03-16 23:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:49:45] [INFO] Checking activity reminders 
[2026-03-16 23:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:50:15] [INFO] Checking activity reminders 
[2026-03-16 23:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:50:45] [INFO] Checking activity reminders 
[2026-03-16 23:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:51:15] [INFO] Checking activity reminders 
[2026-03-16 23:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:51:45] [INFO] Checking activity reminders 
[2026-03-16 23:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-16 23:52:16] [INFO] Checking activity reminders 
[2026-03-16 23:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-16 23:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 07:42:19] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:19] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-17 07:42:19] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:22] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:22] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:23] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:23] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:24] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:24] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:24] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"get_leads"}
[2026-03-17 07:42:24] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:24] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"get_leads"}
[2026-03-17 07:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"get_leads"}
[2026-03-17 07:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:32] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:32] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:35] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:35] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:36] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:45] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 07:42:45] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-17 07:42:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 07:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 07:43:16] [INFO] Checking activity reminders 
[2026-03-17 07:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 07:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 07:44:02] [INFO] Checking activity reminders 
[2026-03-17 07:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 07:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 07:44:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12752","deal_id":"local_69b72471ccce07.54227037","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 07:44:29","session_id":"8163ncfuouueanc79lrh6m55dc"}
[2026-03-17 07:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 07:44:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12752","is_new_deal":false}
[2026-03-17 07:44:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 07:44:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 07:44:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 07:44:29] [INFO] getContactPrimaryPhone called {"contact_id":"12752"}
[2026-03-17 07:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 07:44:29] [INFO] getContactPrimaryPhone result {"contact_id":"12752","person_found":true,"primary_phone":"9117964006"}
[2026-03-17 07:44:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9117964006"}
[2026-03-17 07:44:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9117964006","contact_id":"12752","deal_id":"local_69b72471ccce07.54227037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 07:44:29"}
[2026-03-17 07:44:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72471ccce07.54227037","contact_id":"12752","existing_deal_found":true,"existing_contact_id":"12752","existing_title":"معامله اول 9117964006 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 07:44:29"}
[2026-03-17 07:44:29] [INFO] DealController.save validated payments {"deal_id":"local_69b72471ccce07.54227037","contact_id":"12752","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 07:44:29] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12752","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 07:44:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72471ccce07.54227037","contact_didar_id":"12752","title":"معامله اول 9117964006 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9117964006","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رادش","existing_deal":"YES","existing_deal_id":"local_69b72471ccce07.54227037","existing_deal_status":"Pending","server_time":"2026-03-17 07:44:29","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 07:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 07:44:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72471ccce07.54227037","contact_id":"12752","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9117964006 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-17 07:44:30","ip_address":"5.117.103.20","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-17 07:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 07:44:32] [INFO] Checking activity reminders 
[2026-03-17 07:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 07:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:26:38] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:45] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:36:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 10:36:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:36:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:39:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 10:39:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:39:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:05] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:05] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 10:40:05] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:07] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:07] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:07] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 10:40:07] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:17] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 10:40:17] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-17 10:40:17] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-17 10:40:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 10:40:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 10:40:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 10:40:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 10:40:48] [INFO] Checking activity reminders 
[2026-03-17 10:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:41:18] [INFO] Checking activity reminders 
[2026-03-17 10:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:41:48] [INFO] Checking activity reminders 
[2026-03-17 10:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:42:18] [INFO] Checking activity reminders 
[2026-03-17 10:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:42:48] [INFO] Checking activity reminders 
[2026-03-17 10:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:49:48] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-17 10:49:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 10:49:54] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-17 10:49:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 10:50:00] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-17 10:50:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 10:50:30] [INFO] Checking activity reminders 
[2026-03-17 10:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:51:00] [INFO] Checking activity reminders 
[2026-03-17 10:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:51:30] [INFO] Checking activity reminders 
[2026-03-17 10:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:52:00] [INFO] Checking activity reminders 
[2026-03-17 10:52:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:52:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:52:06] [INFO] Checking activity reminders 
[2026-03-17 10:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:52:36] [INFO] Checking activity reminders 
[2026-03-17 10:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:53:06] [INFO] Checking activity reminders 
[2026-03-17 10:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:53:36] [INFO] Checking activity reminders 
[2026-03-17 10:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:54:06] [INFO] Checking activity reminders 
[2026-03-17 10:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:54:36] [INFO] Checking activity reminders 
[2026-03-17 10:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:55:06] [INFO] Checking activity reminders 
[2026-03-17 10:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:55:36] [INFO] Checking activity reminders 
[2026-03-17 10:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:56:06] [INFO] Checking activity reminders 
[2026-03-17 10:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:56:36] [INFO] Checking activity reminders 
[2026-03-17 10:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 10:57:06] [INFO] Checking activity reminders 
[2026-03-17 10:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:57:12] [INFO] Checking activity reminders 
[2026-03-17 10:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:57:34] [INFO] Checking activity reminders 
[2026-03-17 10:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:57:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 10:57:42] [INFO] Checking activity reminders 
[2026-03-17 10:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:58:04] [INFO] Checking activity reminders 
[2026-03-17 10:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:58:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:12] [INFO] Checking activity reminders 
[2026-03-17 10:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:24] [INFO] generateDealTitle result {"contact_id":"10797","person_name":"جماعتی","mobile":"9195919186","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195919186"}
[2026-03-17 10:58:35] [INFO] Checking activity reminders 
[2026-03-17 10:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:58:42] [INFO] Checking activity reminders 
[2026-03-17 10:58:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:58:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:58:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10797","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 10:58:48","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 10:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10797","is_new_deal":true}
[2026-03-17 10:58:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 10:58:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 10:58:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 10:58:48] [INFO] getContactPrimaryPhone called {"contact_id":"10797"}
[2026-03-17 10:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:48] [INFO] getContactPrimaryPhone result {"contact_id":"10797","person_found":true,"primary_phone":"9195919186"}
[2026-03-17 10:58:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195919186"}
[2026-03-17 10:58:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195919186","contact_id":"10797","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 10:58:48"}
[2026-03-17 10:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:48] [INFO] generateDealTitle result {"contact_id":"10797","person_name":"جماعتی","mobile":"9195919186","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195919186"}
[2026-03-17 10:58:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10797","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-17 10:58:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10797","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 10:58:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10797","title":"معامله دوم 9195919186 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9195919186","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جماعتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 10:58:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 10:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 10:58:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10797","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9195919186 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-17 10:58:48","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 10:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 10:58:52] [INFO] Checking activity reminders 
[2026-03-17 10:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:59:05] [INFO] Checking activity reminders 
[2026-03-17 10:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:59:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-03-17 10:59:22] [INFO] Checking activity reminders 
[2026-03-17 10:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:59:35] [INFO] Checking activity reminders 
[2026-03-17 10:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 10:59:52] [INFO] Checking activity reminders 
[2026-03-17 10:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 10:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:00:05] [INFO] Checking activity reminders 
[2026-03-17 11:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:00:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 11:00:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 11:00:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 11:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 11:00:22] [INFO] Checking activity reminders 
[2026-03-17 11:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:00:52] [INFO] Checking activity reminders 
[2026-03-17 11:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:01:22] [INFO] Checking activity reminders 
[2026-03-17 11:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:01:52] [INFO] Checking activity reminders 
[2026-03-17 11:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:02:22] [INFO] Checking activity reminders 
[2026-03-17 11:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:02:52] [INFO] Checking activity reminders 
[2026-03-17 11:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:03:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 11:03:19","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 11:03:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","is_new_deal":false}
[2026-03-17 11:03:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 11:03:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:03:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:03:19] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-03-17 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 11:03:19] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b7d9a7ab9697.18146949","person_found":true,"primary_phone":"9120539575"}
[2026-03-17 11:03:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120539575"}
[2026-03-17 11:03:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120539575","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:03:19"}
[2026-03-17 11:03:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","existing_deal_found":true,"existing_contact_id":"local_69b7d9a7ab9697.18146949","existing_title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:03:19"}
[2026-03-17 11:03:19] [INFO] DealController.save validated payments {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 11:03:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b7d9a7ab9697.18146949","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 11:03:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7d9a7b670a","contact_didar_id":"local_69b7d9a7ab9697.18146949","title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9120539575","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا حسینی","existing_deal":"YES","existing_deal_id":"local_69b7d9a7b670a","existing_deal_status":"Pending","server_time":"2026-03-17 11:03:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 11:03:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-17 11:03:19","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 11:03:23] [INFO] Checking activity reminders 
[2026-03-17 11:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:03:53] [INFO] Checking activity reminders 
[2026-03-17 11:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:04:23] [INFO] Checking activity reminders 
[2026-03-17 11:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:04:40] [INFO] Checking activity reminders 
[2026-03-17 11:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:04:48] [INFO] Checking activity reminders 
[2026-03-17 11:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:19:59] [INFO] Checking activity reminders 
[2026-03-17 11:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:20:29] [INFO] Checking activity reminders 
[2026-03-17 11:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:20:59] [INFO] Checking activity reminders 
[2026-03-17 11:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:21:29] [INFO] Checking activity reminders 
[2026-03-17 11:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:21:59] [INFO] Checking activity reminders 
[2026-03-17 11:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:22:29] [INFO] Checking activity reminders 
[2026-03-17 11:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:22:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"933","deal_id":"local_69b84bac97c7c7.14544831","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 11:22:48","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 11:22:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:22:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"933","is_new_deal":false}
[2026-03-17 11:22:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 11:22:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:22:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:22:48] [INFO] getContactPrimaryPhone called {"contact_id":"933"}
[2026-03-17 11:22:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:22:48] [INFO] getContactPrimaryPhone result {"contact_id":"933","person_found":true,"primary_phone":"9169944620"}
[2026-03-17 11:22:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9169944620"}
[2026-03-17 11:22:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9169944620","contact_id":"933","deal_id":"local_69b84bac97c7c7.14544831","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:22:48"}
[2026-03-17 11:22:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","existing_deal_found":true,"existing_contact_id":"933","existing_title":"معامله چهارم 9169944620","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:22:48"}
[2026-03-17 11:22:48] [INFO] DealController.save validated payments {"deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-17 11:22:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"933","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 11:22:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84bac97c7c7.14544831","contact_didar_id":"933","title":"معامله چهارم 9169944620 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9169944620","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سام رضایی","existing_deal":"YES","existing_deal_id":"local_69b84bac97c7c7.14544831","existing_deal_status":"Pending","server_time":"2026-03-17 11:22:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 11:22:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:22:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9169944620 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-17 11:22:48","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 11:22:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:22:59] [INFO] Checking activity reminders 
[2026-03-17 11:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:23:30] [INFO] Checking activity reminders 
[2026-03-17 11:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:24:00] [INFO] Checking activity reminders 
[2026-03-17 11:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:24:30] [INFO] Checking activity reminders 
[2026-03-17 11:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:24:43] [INFO] Activity save request {"post_data":{"contact_id":"933","deal_id":"local_69b84bac97c7c7.14544831","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای کانال405 پرزنت شد \/ میگه کل سرمایه ام در بورس که دست استاد و الان نمیتونم کاری انجام بدم \r\nهنوز هم به سود نرسیده \/ فعلا برای کانال 405 نمیتونم اقدام کنم \r\nاطلاعات در روبیکا ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"1","due_date":"2026-03-17 11:00:00","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:24:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:24:43] [INFO] Formatted due date for Didar {"original":"2026-03-17 11:00:00","formatted":"2026-03-17T07:30:00.000Z"}
[2026-03-17 11:24:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:24:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"933","note_was_empty":true}
[2026-03-17 11:24:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"933","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-17 11:24:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:43] [INFO] Updating virtual stage {"contact_id":"933","stage_name":"deal_registered","force":false}
[2026-03-17 11:24:43] [INFO] Virtual stage successfully saved {"contact_id":"933","stage_name":"deal_registered"}
[2026-03-17 11:24:43] [INFO] Virtual stage updated after activity save {"contact_id":"933"}
[2026-03-17 11:24:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b84bac97c7c7.14544831","stage":"تماس پیگیری","status_change":null}
[2026-03-17 11:24:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b908c3e37487.27106923","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69b908c3e37487.27106923"}
[2026-03-17 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:44] [INFO] Updating virtual stage {"contact_id":"933","stage_name":"deal_registered","force":false}
[2026-03-17 11:24:44] [INFO] Virtual stage successfully saved {"contact_id":"933","stage_name":"deal_registered"}
[2026-03-17 11:24:44] [INFO] Virtual stage updated after activity save {"contact_id":"933"}
[2026-03-17 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-03-17 11:24:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-17 11:25:00] [INFO] Checking activity reminders 
[2026-03-17 11:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:25:30] [INFO] Checking activity reminders 
[2026-03-17 11:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:26:00] [INFO] Checking activity reminders 
[2026-03-17 11:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:26:30] [INFO] Checking activity reminders 
[2026-03-17 11:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:27:00] [INFO] Checking activity reminders 
[2026-03-17 11:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:27:30] [INFO] Checking activity reminders 
[2026-03-17 11:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:28:00] [INFO] Checking activity reminders 
[2026-03-17 11:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:28:30] [INFO] Checking activity reminders 
[2026-03-17 11:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:29:00] [INFO] Checking activity reminders 
[2026-03-17 11:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:29:31] [INFO] Checking activity reminders 
[2026-03-17 11:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:30:01] [INFO] Checking activity reminders 
[2026-03-17 11:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:30:31] [INFO] Checking activity reminders 
[2026-03-17 11:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:31:01] [INFO] Checking activity reminders 
[2026-03-17 11:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:31:31] [INFO] Checking activity reminders 
[2026-03-17 11:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:31:57] [WARNING] Auth check failed - not authenticated {"session_id":"jbqkpe27gbku2erd2ttiq3540u","session_keys":[],"action":"log_client_event"}
[2026-03-17 11:31:58] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-17 11:31:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 11:32:01] [INFO] Checking activity reminders 
[2026-03-17 11:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:32:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:32:31] [INFO] Checking activity reminders 
[2026-03-17 11:32:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:32:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:33:01] [INFO] Checking activity reminders 
[2026-03-17 11:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:33:11] [INFO] Checking activity reminders 
[2026-03-17 11:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:33:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 11:33:49] [INFO] Checking activity reminders 
[2026-03-17 11:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:33:56] [INFO] Checking activity reminders 
[2026-03-17 11:33:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:33:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:34:19] [INFO] Checking activity reminders 
[2026-03-17 11:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:34:22] [INFO] Activity save request {"post_data":{"contact_id":"21235","deal_id":"local_69b74229eccd82.75995105","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال پیامک پیگیری عدم پاسخ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:34:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21235","note_was_empty":true}
[2026-03-17 11:34:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"21235","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:22] [INFO] Updating virtual stage {"contact_id":"21235","stage_name":"deal_registered","force":false}
[2026-03-17 11:34:22] [INFO] Virtual stage successfully saved {"contact_id":"21235","stage_name":"deal_registered"}
[2026-03-17 11:34:22] [INFO] Virtual stage updated after activity save {"contact_id":"21235"}
[2026-03-17 11:34:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b74229eccd82.75995105","stage":"تماس پیگیری","status_change":null}
[2026-03-17 11:34:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90b069ff216.92849729","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90b069ff216.92849729"}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:22] [INFO] Updating virtual stage {"contact_id":"21235","stage_name":"deal_registered","force":false}
[2026-03-17 11:34:22] [INFO] Virtual stage successfully saved {"contact_id":"21235","stage_name":"deal_registered"}
[2026-03-17 11:34:22] [INFO] Virtual stage updated after activity save {"contact_id":"21235"}
[2026-03-17 11:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-17 11:34:27] [INFO] Checking activity reminders 
[2026-03-17 11:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:34:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:34:49] [INFO] Checking activity reminders 
[2026-03-17 11:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:34:57] [INFO] Checking activity reminders 
[2026-03-17 11:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:35:19] [INFO] Checking activity reminders 
[2026-03-17 11:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:35:27] [INFO] Activity save request {"post_data":{"contact_id":"6032","deal_id":"local_69b741d85e67d4.37217572","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سال گذشته با ناراحتی از استاد دیگه ادامه نداد تکمیل وجه نکرد، نمیخواد کاناا رو ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:35:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6032","note_was_empty":true}
[2026-03-17 11:35:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"6032","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Updating virtual stage {"contact_id":"6032","stage_name":"deal_registered","force":false}
[2026-03-17 11:35:27] [INFO] Virtual stage successfully saved {"contact_id":"6032","stage_name":"deal_registered"}
[2026-03-17 11:35:27] [INFO] Virtual stage updated after activity save {"contact_id":"6032"}
[2026-03-17 11:35:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b741d85e67d4.37217572","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-17 11:35:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90b4750c411.87374144","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90b4750c411.87374144"}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Updating virtual stage {"contact_id":"6032","stage_name":"deal_registered","force":false}
[2026-03-17 11:35:27] [INFO] Virtual stage successfully saved {"contact_id":"6032","stage_name":"deal_registered"}
[2026-03-17 11:35:27] [INFO] Virtual stage updated after activity save {"contact_id":"6032"}
[2026-03-17 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-03-17 11:35:27] [INFO] Checking activity reminders 
[2026-03-17 11:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:35:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:35:49] [INFO] Checking activity reminders 
[2026-03-17 11:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:35:58] [INFO] Checking activity reminders 
[2026-03-17 11:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:36:09] [INFO] Activity save request {"post_data":{"contact_id":"20204","deal_id":"local_69b7414b249117.35815706","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه گرونه احتمالا اونور سال بیام به خاطر مبلغ دید دادم شرایط گذاشتم","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:36:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:36:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:36:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20204","note_was_empty":true}
[2026-03-17 11:36:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"20204","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:36:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:09] [INFO] Updating virtual stage {"contact_id":"20204","stage_name":"deal_registered","force":false}
[2026-03-17 11:36:10] [INFO] Virtual stage successfully saved {"contact_id":"20204","stage_name":"deal_registered"}
[2026-03-17 11:36:10] [INFO] Virtual stage updated after activity save {"contact_id":"20204"}
[2026-03-17 11:36:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7414b249117.35815706","stage":"تماس پیگیری","status_change":null}
[2026-03-17 11:36:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90b71f23026.34691616","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:36:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90b71f23026.34691616"}
[2026-03-17 11:36:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:10] [INFO] Updating virtual stage {"contact_id":"20204","stage_name":"deal_registered","force":false}
[2026-03-17 11:36:10] [INFO] Virtual stage successfully saved {"contact_id":"20204","stage_name":"deal_registered"}
[2026-03-17 11:36:10] [INFO] Virtual stage updated after activity save {"contact_id":"20204"}
[2026-03-17 11:36:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20204","person_id":"16082"}
[2026-03-17 11:36:19] [INFO] Checking activity reminders 
[2026-03-17 11:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:36:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:36:28] [INFO] Checking activity reminders 
[2026-03-17 11:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:36:49] [INFO] Checking activity reminders 
[2026-03-17 11:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:36:58] [INFO] Checking activity reminders 
[2026-03-17 11:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:37:14] [INFO] Activity save request {"post_data":{"contact_id":"10545","deal_id":"local_69b742b184c4a3.43178237","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تابستون سر تسویه و با استاد و خانوم ظهوری به جالش خورد عودت وجه دادیم نمیخواد باشه کلا ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:37:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"10545","note_was_empty":true}
[2026-03-17 11:37:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"10545","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:14] [INFO] Updating virtual stage {"contact_id":"10545","stage_name":"deal_registered","force":false}
[2026-03-17 11:37:14] [INFO] Virtual stage successfully saved {"contact_id":"10545","stage_name":"deal_registered"}
[2026-03-17 11:37:14] [INFO] Virtual stage updated after activity save {"contact_id":"10545"}
[2026-03-17 11:37:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b742b184c4a3.43178237","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-17 11:37:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90bb239ebf1.08394477","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90bb239ebf1.08394477"}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:14] [INFO] Updating virtual stage {"contact_id":"10545","stage_name":"deal_registered","force":false}
[2026-03-17 11:37:14] [INFO] Virtual stage successfully saved {"contact_id":"10545","stage_name":"deal_registered"}
[2026-03-17 11:37:14] [INFO] Virtual stage updated after activity save {"contact_id":"10545"}
[2026-03-17 11:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10545","person_id":"3638"}
[2026-03-17 11:37:19] [INFO] Checking activity reminders 
[2026-03-17 11:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:23] [INFO] Lead update received {"contact_id":"1748","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 11:37:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:37:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:37:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1748"}
[2026-03-17 11:37:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:37:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:37:27] [INFO] Checking activity reminders 
[2026-03-17 11:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:28] [INFO] Checking activity reminders 
[2026-03-17 11:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:45] [INFO] Checking activity reminders 
[2026-03-17 11:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:57] [INFO] Checking activity reminders 
[2026-03-17 11:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:37:57] [INFO] Checking activity reminders 
[2026-03-17 11:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:38:14] [INFO] Checking activity reminders 
[2026-03-17 11:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:38:27] [INFO] Checking activity reminders 
[2026-03-17 11:38:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:38:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:38:44] [INFO] Checking activity reminders 
[2026-03-17 11:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:38:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 11:38:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 11:38:47] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 11:38:57] [INFO] Checking activity reminders 
[2026-03-17 11:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:39:02] [INFO] Activity save request {"post_data":{"contact_id":"12500","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ایشون دانش اموز دبیرستان هست و دانشپذیز کارشناسی تابستون بوده همیشه محض کنجکاوی ش میزاره ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:39:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"12500","note_was_empty":true}
[2026-03-17 11:39:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"12500","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:39:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90c1e581267.82127480","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90c1e581267.82127480"}
[2026-03-17 11:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:02] [INFO] Updating virtual stage {"contact_id":"12500","stage_name":"deal_registered","force":false}
[2026-03-17 11:39:02] [INFO] Virtual stage successfully saved {"contact_id":"12500","stage_name":"deal_registered"}
[2026-03-17 11:39:02] [INFO] Virtual stage updated after activity save {"contact_id":"12500"}
[2026-03-17 11:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-17 11:39:14] [INFO] Checking activity reminders 
[2026-03-17 11:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:39:27] [INFO] Checking activity reminders 
[2026-03-17 11:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:39:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:39:44] [INFO] Checking activity reminders 
[2026-03-17 11:39:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:39:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:39:57] [INFO] Checking activity reminders 
[2026-03-17 11:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:40:15] [INFO] Checking activity reminders 
[2026-03-17 11:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:40:27] [INFO] Checking activity reminders 
[2026-03-17 11:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:40:32] [INFO] Activity save request {"post_data":{"contact_id":"20915","deal_id":"local_69b741fec13095.34466278","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال ۴۰۴ رو تسویه نکر. پاسخ نداد و حذف شد از کانال پاییز ۴۰۴ همش میپیچونه و میخواد رایگان استفاده کنه با این حساب تماس و ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:40:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20915","note_was_empty":true}
[2026-03-17 11:40:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"20915","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:32] [INFO] Updating virtual stage {"contact_id":"20915","stage_name":"deal_registered","force":false}
[2026-03-17 11:40:32] [INFO] Virtual stage successfully saved {"contact_id":"20915","stage_name":"deal_registered"}
[2026-03-17 11:40:32] [INFO] Virtual stage updated after activity save {"contact_id":"20915"}
[2026-03-17 11:40:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b741fec13095.34466278","stage":"تماس پیگیری","status_change":null}
[2026-03-17 11:40:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90c78b6fb32.24440241","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90c78b6fb32.24440241"}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:32] [INFO] Updating virtual stage {"contact_id":"20915","stage_name":"deal_registered","force":false}
[2026-03-17 11:40:32] [INFO] Virtual stage successfully saved {"contact_id":"20915","stage_name":"deal_registered"}
[2026-03-17 11:40:32] [INFO] Virtual stage updated after activity save {"contact_id":"20915"}
[2026-03-17 11:40:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20915","person_id":"17070"}
[2026-03-17 11:40:47] [INFO] Checking activity reminders 
[2026-03-17 11:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:41:17] [INFO] Checking activity reminders 
[2026-03-17 11:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:41:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5504","deal_id":"local_69b84ae4d7dd24.32190489","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 11:41:27","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-17 11:41:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5504","is_new_deal":false}
[2026-03-17 11:41:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 11:41:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:41:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 11:41:27] [INFO] getContactPrimaryPhone called {"contact_id":"5504"}
[2026-03-17 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-17 11:41:27] [INFO] getContactPrimaryPhone result {"contact_id":"5504","person_found":true,"primary_phone":"9103618564"}
[2026-03-17 11:41:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103618564"}
[2026-03-17 11:41:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103618564","contact_id":"5504","deal_id":"local_69b84ae4d7dd24.32190489","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:41:27"}
[2026-03-17 11:41:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","existing_deal_found":true,"existing_contact_id":"5504","existing_title":"معامله چهارم 9103618564","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 11:41:27"}
[2026-03-17 11:41:27] [INFO] DealController.save validated payments {"deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-17 11:41:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5504","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 11:41:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84ae4d7dd24.32190489","contact_didar_id":"5504","title":"معامله چهارم 9103618564 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9103618564","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی سلیمانیان","existing_deal":"YES","existing_deal_id":"local_69b84ae4d7dd24.32190489","existing_deal_status":"Pending","server_time":"2026-03-17 11:41:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-17 11:41:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9103618564 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-17 11:41:27","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-17 11:41:34] [INFO] Checking activity reminders 
[2026-03-17 11:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:41:36] [INFO] Checking activity reminders 
[2026-03-17 11:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:41:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:41:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:42:06] [INFO] Checking activity reminders 
[2026-03-17 11:42:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:42:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:42:36] [INFO] Checking activity reminders 
[2026-03-17 11:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:43:06] [INFO] Checking activity reminders 
[2026-03-17 11:43:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:43:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:43:36] [INFO] Checking activity reminders 
[2026-03-17 11:43:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:43:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:44:07] [INFO] Checking activity reminders 
[2026-03-17 11:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:44:37] [INFO] Checking activity reminders 
[2026-03-17 11:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:45:07] [INFO] Checking activity reminders 
[2026-03-17 11:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:45:37] [INFO] Checking activity reminders 
[2026-03-17 11:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:46:07] [INFO] Checking activity reminders 
[2026-03-17 11:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:46:37] [INFO] Checking activity reminders 
[2026-03-17 11:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:47:07] [INFO] Checking activity reminders 
[2026-03-17 11:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:47:37] [INFO] Checking activity reminders 
[2026-03-17 11:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:48:07] [INFO] Checking activity reminders 
[2026-03-17 11:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:48:37] [INFO] Checking activity reminders 
[2026-03-17 11:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:49:07] [INFO] Checking activity reminders 
[2026-03-17 11:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:49:37] [INFO] Checking activity reminders 
[2026-03-17 11:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:49:55] [INFO] Checking activity reminders 
[2026-03-17 11:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:50:25] [INFO] Checking activity reminders 
[2026-03-17 11:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:50:55] [INFO] Checking activity reminders 
[2026-03-17 11:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:51:25] [INFO] Checking activity reminders 
[2026-03-17 11:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:51:26] [INFO] Activity save request {"post_data":{"contact_id":"1748","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":"جهت سرمایه گذاری و شراکت در لوازم یدکی با یکی از اشناهاشون درخواست مشاوره داشتن\r\nپرزنت مشاوره ی تلفنی با استاد \r\nکانال405 به دلیل  خرید ملک شخصی و نداشتن سرمایه کافی تمدید نکردند ","activity_duration":"0","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 11:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:51:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 11:51:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 11:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:51:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1748","note_was_empty":true}
[2026-03-17 11:51:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"1748","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-17 11:51:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b90f06d74525.19723822","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 11:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:51:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69b90f06d74525.19723822"}
[2026-03-17 11:51:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:51:26] [INFO] Updating virtual stage {"contact_id":"1748","stage_name":"deal_registered","force":false}
[2026-03-17 11:51:26] [INFO] Virtual stage successfully saved {"contact_id":"1748","stage_name":"deal_registered"}
[2026-03-17 11:51:26] [INFO] Virtual stage updated after activity save {"contact_id":"1748"}
[2026-03-17 11:51:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-03-17 11:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:51:55] [INFO] Checking activity reminders 
[2026-03-17 11:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:52:25] [INFO] Checking activity reminders 
[2026-03-17 11:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:52:55] [INFO] Checking activity reminders 
[2026-03-17 11:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:53:14] [INFO] Checking activity reminders 
[2026-03-17 11:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:53:26] [INFO] Checking activity reminders 
[2026-03-17 11:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:53:36] [INFO] Lead update received {"contact_id":"local_69b53335d88630.58088415","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 11:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:53:36] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53335d88630.58088415"}
[2026-03-17 11:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 11:53:56] [INFO] Checking activity reminders 
[2026-03-17 11:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:54:27] [INFO] Checking activity reminders 
[2026-03-17 11:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:54:57] [INFO] Checking activity reminders 
[2026-03-17 11:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:55:27] [INFO] Checking activity reminders 
[2026-03-17 11:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:55:57] [INFO] Checking activity reminders 
[2026-03-17 11:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:56:27] [INFO] Checking activity reminders 
[2026-03-17 11:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:56:57] [INFO] Checking activity reminders 
[2026-03-17 11:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:57:27] [INFO] Checking activity reminders 
[2026-03-17 11:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:57:57] [INFO] Checking activity reminders 
[2026-03-17 11:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:58:27] [INFO] Checking activity reminders 
[2026-03-17 11:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:58:57] [INFO] Checking activity reminders 
[2026-03-17 11:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:59:27] [INFO] Checking activity reminders 
[2026-03-17 11:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 11:59:58] [INFO] Checking activity reminders 
[2026-03-17 11:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 11:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:00:28] [INFO] Checking activity reminders 
[2026-03-17 12:00:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:00:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:00:50] [INFO] Checking activity reminders 
[2026-03-17 12:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:01:20] [INFO] Checking activity reminders 
[2026-03-17 12:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:01:50] [INFO] Checking activity reminders 
[2026-03-17 12:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:02:20] [INFO] Checking activity reminders 
[2026-03-17 12:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:02:51] [INFO] Checking activity reminders 
[2026-03-17 12:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:03:21] [INFO] Checking activity reminders 
[2026-03-17 12:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:03:51] [INFO] Checking activity reminders 
[2026-03-17 12:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:04:21] [INFO] Checking activity reminders 
[2026-03-17 12:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:04:51] [INFO] Checking activity reminders 
[2026-03-17 12:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:05:21] [INFO] Checking activity reminders 
[2026-03-17 12:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:05:51] [INFO] Checking activity reminders 
[2026-03-17 12:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:06:21] [INFO] Checking activity reminders 
[2026-03-17 12:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:06:51] [INFO] Checking activity reminders 
[2026-03-17 12:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:07:21] [INFO] Checking activity reminders 
[2026-03-17 12:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:07:51] [INFO] Checking activity reminders 
[2026-03-17 12:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:08:22] [INFO] Checking activity reminders 
[2026-03-17 12:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:08:52] [INFO] Checking activity reminders 
[2026-03-17 12:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:09:22] [INFO] Checking activity reminders 
[2026-03-17 12:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:09:52] [INFO] Checking activity reminders 
[2026-03-17 12:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:10:22] [INFO] Checking activity reminders 
[2026-03-17 12:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:10:52] [INFO] Checking activity reminders 
[2026-03-17 12:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:14:19] [INFO] Checking activity reminders 
[2026-03-17 12:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:14:49] [INFO] Checking activity reminders 
[2026-03-17 12:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:15:19] [INFO] Checking activity reminders 
[2026-03-17 12:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:15:49] [INFO] Checking activity reminders 
[2026-03-17 12:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:16:19] [INFO] Checking activity reminders 
[2026-03-17 12:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:16:49] [INFO] Checking activity reminders 
[2026-03-17 12:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:16:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 12:16:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:16:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:17:19] [INFO] Checking activity reminders 
[2026-03-17 12:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:17:50] [INFO] Checking activity reminders 
[2026-03-17 12:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:18:20] [INFO] Checking activity reminders 
[2026-03-17 12:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:18:50] [INFO] Checking activity reminders 
[2026-03-17 12:18:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:18:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 12:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:20] [INFO] Checking activity reminders 
[2026-03-17 12:19:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:19:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:31] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:31] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 12:19:31] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:33] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:33] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:33] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-17 12:19:33] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:35] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:39] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 12:19:40] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-17 12:19:40] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-17 12:19:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 12:19:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:19:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:19:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:19:50] [INFO] Checking activity reminders 
[2026-03-17 12:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:20:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:20:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:20:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:20:10] [INFO] Checking activity reminders 
[2026-03-17 12:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:20:20] [INFO] Checking activity reminders 
[2026-03-17 12:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:20:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:20:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:20:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:20:41] [INFO] Checking activity reminders 
[2026-03-17 12:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:20:50] [INFO] Checking activity reminders 
[2026-03-17 12:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:21:13] [INFO] Checking activity reminders 
[2026-03-17 12:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:21:20] [INFO] Checking activity reminders 
[2026-03-17 12:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:21:43] [INFO] Checking activity reminders 
[2026-03-17 12:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:21:50] [INFO] Checking activity reminders 
[2026-03-17 12:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:22:14] [INFO] Checking activity reminders 
[2026-03-17 12:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:22:21] [INFO] Checking activity reminders 
[2026-03-17 12:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:22:44] [INFO] Checking activity reminders 
[2026-03-17 12:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:22:51] [INFO] Checking activity reminders 
[2026-03-17 12:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:23:14] [INFO] Checking activity reminders 
[2026-03-17 12:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:23:21] [INFO] Checking activity reminders 
[2026-03-17 12:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:23:44] [INFO] Checking activity reminders 
[2026-03-17 12:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:23:51] [INFO] Checking activity reminders 
[2026-03-17 12:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:24:14] [INFO] Checking activity reminders 
[2026-03-17 12:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:24:21] [INFO] Checking activity reminders 
[2026-03-17 12:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:24:44] [INFO] Checking activity reminders 
[2026-03-17 12:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:25:14] [INFO] Checking activity reminders 
[2026-03-17 12:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:25:40] [INFO] Checking activity reminders 
[2026-03-17 12:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:25:44] [INFO] Checking activity reminders 
[2026-03-17 12:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:25:44] [INFO] Checking activity reminders 
[2026-03-17 12:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:25:47] [INFO] Checking activity reminders 
[2026-03-17 12:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:26:15] [INFO] Checking activity reminders 
[2026-03-17 12:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:26:17] [INFO] Checking activity reminders 
[2026-03-17 12:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:26:45] [INFO] Checking activity reminders 
[2026-03-17 12:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:26:47] [INFO] Checking activity reminders 
[2026-03-17 12:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:15] [INFO] Checking activity reminders 
[2026-03-17 12:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:17] [INFO] Checking activity reminders 
[2026-03-17 12:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:20] [INFO] Checking activity reminders 
[2026-03-17 12:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:27:45] [INFO] Checking activity reminders 
[2026-03-17 12:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:50] [INFO] Checking activity reminders 
[2026-03-17 12:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:27:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:27:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:27:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:28:15] [INFO] Checking activity reminders 
[2026-03-17 12:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:28:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:28:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:28:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:28:20] [INFO] Lead update received {"contact_id":"628","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:28:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"628"}
[2026-03-17 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:28:20] [INFO] Checking activity reminders 
[2026-03-17 12:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:28:45] [INFO] Checking activity reminders 
[2026-03-17 12:28:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:28:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:28:51] [INFO] Checking activity reminders 
[2026-03-17 12:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:29:16] [INFO] Checking activity reminders 
[2026-03-17 12:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:29:21] [INFO] Checking activity reminders 
[2026-03-17 12:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:29:46] [INFO] Checking activity reminders 
[2026-03-17 12:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:29:51] [INFO] Checking activity reminders 
[2026-03-17 12:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:30:16] [INFO] Checking activity reminders 
[2026-03-17 12:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:30:21] [INFO] Checking activity reminders 
[2026-03-17 12:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:30:51] [INFO] Checking activity reminders 
[2026-03-17 12:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:31:21] [INFO] Checking activity reminders 
[2026-03-17 12:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:31:51] [INFO] Checking activity reminders 
[2026-03-17 12:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:32:21] [INFO] Checking activity reminders 
[2026-03-17 12:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:32:51] [INFO] Checking activity reminders 
[2026-03-17 12:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:33:21] [INFO] Checking activity reminders 
[2026-03-17 12:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:33:52] [INFO] Checking activity reminders 
[2026-03-17 12:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:34:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:34:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:34:20] [INFO] generateDealTitle result {"contact_id":"628","person_name":"فرامرز اکبری","mobile":"9135175912","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9135175912"}
[2026-03-17 12:34:22] [INFO] Checking activity reminders 
[2026-03-17 12:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:34:52] [INFO] Checking activity reminders 
[2026-03-17 12:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:35:22] [INFO] Checking activity reminders 
[2026-03-17 12:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:35:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"628","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 12:35:25","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 12:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:35:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"628","is_new_deal":true}
[2026-03-17 12:35:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 12:35:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 12:35:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 12:35:25] [INFO] getContactPrimaryPhone called {"contact_id":"628"}
[2026-03-17 12:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:35:25] [INFO] getContactPrimaryPhone result {"contact_id":"628","person_found":true,"primary_phone":"9135175912"}
[2026-03-17 12:35:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135175912"}
[2026-03-17 12:35:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135175912","contact_id":"628","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 12:35:25"}
[2026-03-17 12:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:35:25] [INFO] generateDealTitle result {"contact_id":"628","person_name":"فرامرز اکبری","mobile":"9135175912","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9135175912"}
[2026-03-17 12:35:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"628","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 12:35:25] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"628","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 12:35:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"628","title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135175912","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرز اکبری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 12:35:25","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 12:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:35:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 12:35:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"628","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-03-17 12:35:25","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 12:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:35:53] [INFO] Checking activity reminders 
[2026-03-17 12:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:36:03] [INFO] Activity save request {"post_data":{"contact_id":"628","deal_id":"local_69b9195524bd16.39037949","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 \r\nحتما برای تدید مربی بعد از عید میاد \r\n39 م واریز \r\nاخر فروردین تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 12:36:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"628","note_was_empty":true}
[2026-03-17 12:36:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"628","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:03] [INFO] Updating virtual stage {"contact_id":"628","stage_name":"deal_registered","force":false}
[2026-03-17 12:36:03] [INFO] Virtual stage successfully saved {"contact_id":"628","stage_name":"deal_registered"}
[2026-03-17 12:36:03] [INFO] Virtual stage updated after activity save {"contact_id":"628"}
[2026-03-17 12:36:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b9195524bd16.39037949","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-17 12:36:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b9197b8d0bb5.80135975","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69b9197b8d0bb5.80135975"}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:03] [INFO] Updating virtual stage {"contact_id":"628","stage_name":"deal_registered","force":false}
[2026-03-17 12:36:03] [INFO] Virtual stage successfully saved {"contact_id":"628","stage_name":"deal_registered"}
[2026-03-17 12:36:03] [INFO] Virtual stage updated after activity save {"contact_id":"628"}
[2026-03-17 12:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-03-17 12:36:23] [INFO] Checking activity reminders 
[2026-03-17 12:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:36:30] [INFO] Checking activity reminders 
[2026-03-17 12:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:36:31] [INFO] Checking activity reminders 
[2026-03-17 12:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:36:33] [INFO] Checking activity reminders 
[2026-03-17 12:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:36:37] [INFO] Checking activity reminders 
[2026-03-17 12:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:37:07] [INFO] Checking activity reminders 
[2026-03-17 12:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:37:37] [INFO] Checking activity reminders 
[2026-03-17 12:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:38:07] [INFO] Checking activity reminders 
[2026-03-17 12:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:38:37] [INFO] Checking activity reminders 
[2026-03-17 12:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:38:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:38:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:38:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:38:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:38:46] [INFO] generateDealTitle result {"contact_id":"local_69b53335d88630.58088415","person_name":"محمدیان محمدیان","mobile":"9118125684","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9118125684"}
[2026-03-17 12:39:07] [INFO] Checking activity reminders 
[2026-03-17 12:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:39:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b53335d88630.58088415","deal_id":"local_69b53335dd7ea","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 12:39:14","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 12:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:39:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b53335d88630.58088415","is_new_deal":false}
[2026-03-17 12:39:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 12:39:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 12:39:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 12:39:14] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b53335d88630.58088415"}
[2026-03-17 12:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:39:14] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b53335d88630.58088415","person_found":true,"primary_phone":"9118125684"}
[2026-03-17 12:39:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9118125684"}
[2026-03-17 12:39:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9118125684","contact_id":"local_69b53335d88630.58088415","deal_id":"local_69b53335dd7ea","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 12:39:14"}
[2026-03-17 12:39:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53335dd7ea","contact_id":"local_69b53335d88630.58088415","existing_deal_found":true,"existing_contact_id":"local_69b53335d88630.58088415","existing_title":"معامله اول 9118125684","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 12:39:14"}
[2026-03-17 12:39:14] [INFO] DealController.save validated payments {"deal_id":"local_69b53335dd7ea","contact_id":"local_69b53335d88630.58088415","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-17 12:39:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b53335d88630.58088415","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 12:39:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53335dd7ea","contact_didar_id":"local_69b53335d88630.58088415","title":"معامله اول 9118125684 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9118125684","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدیان محمدیان","existing_deal":"YES","existing_deal_id":"local_69b53335dd7ea","existing_deal_status":"Pending","server_time":"2026-03-17 12:39:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 12:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:39:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53335dd7ea","contact_id":"local_69b53335d88630.58088415","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9118125684 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-17 12:39:14","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 12:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 12:39:37] [INFO] Checking activity reminders 
[2026-03-17 12:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:40:07] [INFO] Checking activity reminders 
[2026-03-17 12:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:40:37] [INFO] Checking activity reminders 
[2026-03-17 12:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:40:57] [INFO] Checking activity reminders 
[2026-03-17 12:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:41:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 12:41:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 12:41:25] [INFO] Checking activity reminders 
[2026-03-17 12:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:41:55] [INFO] Checking activity reminders 
[2026-03-17 12:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:14] [INFO] Checking activity reminders 
[2026-03-17 12:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:22] [INFO] Checking activity reminders 
[2026-03-17 12:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:24] [INFO] Checking activity reminders 
[2026-03-17 12:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:27] [INFO] Checking activity reminders 
[2026-03-17 12:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:29] [INFO] Checking activity reminders 
[2026-03-17 12:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:30] [INFO] Checking activity reminders 
[2026-03-17 12:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:48] [INFO] Checking activity reminders 
[2026-03-17 12:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:42:58] [INFO] Checking activity reminders 
[2026-03-17 12:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:43:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:43:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:43:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:43:18] [INFO] Checking activity reminders 
[2026-03-17 12:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:43:29] [INFO] Checking activity reminders 
[2026-03-17 12:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:43:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 12:43:48] [INFO] Checking activity reminders 
[2026-03-17 12:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:43:59] [INFO] Checking activity reminders 
[2026-03-17 12:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:44:18] [INFO] Checking activity reminders 
[2026-03-17 12:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:44:29] [INFO] Checking activity reminders 
[2026-03-17 12:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:44:48] [INFO] Checking activity reminders 
[2026-03-17 12:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:44:59] [INFO] Checking activity reminders 
[2026-03-17 12:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:45:18] [INFO] Checking activity reminders 
[2026-03-17 12:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:45:29] [INFO] Checking activity reminders 
[2026-03-17 12:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:45:48] [INFO] Checking activity reminders 
[2026-03-17 12:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:45:59] [INFO] Checking activity reminders 
[2026-03-17 12:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:46:18] [INFO] Checking activity reminders 
[2026-03-17 12:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:46:29] [INFO] Checking activity reminders 
[2026-03-17 12:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:46:48] [INFO] Checking activity reminders 
[2026-03-17 12:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:46:59] [INFO] Checking activity reminders 
[2026-03-17 12:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:47:18] [INFO] Checking activity reminders 
[2026-03-17 12:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:47:29] [INFO] Checking activity reminders 
[2026-03-17 12:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:47:48] [INFO] Checking activity reminders 
[2026-03-17 12:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:47:59] [INFO] Checking activity reminders 
[2026-03-17 12:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:48:19] [INFO] Checking activity reminders 
[2026-03-17 12:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:48:29] [INFO] Checking activity reminders 
[2026-03-17 12:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:48:49] [INFO] Checking activity reminders 
[2026-03-17 12:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:48:59] [INFO] Checking activity reminders 
[2026-03-17 12:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:49:19] [INFO] Checking activity reminders 
[2026-03-17 12:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:49:47] [INFO] Checking activity reminders 
[2026-03-17 12:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:49:49] [INFO] Checking activity reminders 
[2026-03-17 12:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:50:17] [INFO] Checking activity reminders 
[2026-03-17 12:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:50:19] [INFO] Checking activity reminders 
[2026-03-17 12:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:50:47] [INFO] Checking activity reminders 
[2026-03-17 12:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:50:49] [INFO] Checking activity reminders 
[2026-03-17 12:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:51:17] [INFO] Checking activity reminders 
[2026-03-17 12:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:51:19] [INFO] Checking activity reminders 
[2026-03-17 12:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:51:47] [INFO] Checking activity reminders 
[2026-03-17 12:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:51:49] [INFO] Checking activity reminders 
[2026-03-17 12:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:52:17] [INFO] Checking activity reminders 
[2026-03-17 12:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:52:19] [INFO] Checking activity reminders 
[2026-03-17 12:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:52:48] [INFO] Checking activity reminders 
[2026-03-17 12:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:52:55] [INFO] Checking activity reminders 
[2026-03-17 12:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:53:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:53:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:53:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:53:18] [INFO] Checking activity reminders 
[2026-03-17 12:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:53:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 12:53:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 12:53:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 12:53:25] [INFO] Checking activity reminders 
[2026-03-17 12:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:53:48] [INFO] Checking activity reminders 
[2026-03-17 12:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:53:55] [INFO] Checking activity reminders 
[2026-03-17 12:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:54:18] [INFO] Checking activity reminders 
[2026-03-17 12:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:54:25] [INFO] Checking activity reminders 
[2026-03-17 12:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:54:48] [INFO] Checking activity reminders 
[2026-03-17 12:54:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:54:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:54:56] [INFO] Checking activity reminders 
[2026-03-17 12:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:55:18] [INFO] Checking activity reminders 
[2026-03-17 12:55:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:55:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:55:26] [INFO] Checking activity reminders 
[2026-03-17 12:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:55:48] [INFO] Checking activity reminders 
[2026-03-17 12:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:55:56] [INFO] Checking activity reminders 
[2026-03-17 12:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:56:18] [INFO] Checking activity reminders 
[2026-03-17 12:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:56:26] [INFO] Checking activity reminders 
[2026-03-17 12:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:56:48] [INFO] Checking activity reminders 
[2026-03-17 12:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:56:56] [INFO] Checking activity reminders 
[2026-03-17 12:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:57:18] [INFO] Checking activity reminders 
[2026-03-17 12:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:57:26] [INFO] Checking activity reminders 
[2026-03-17 12:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:57:48] [INFO] Checking activity reminders 
[2026-03-17 12:57:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:57:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:57:56] [INFO] Checking activity reminders 
[2026-03-17 12:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:58:18] [INFO] Checking activity reminders 
[2026-03-17 12:58:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:58:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:58:26] [INFO] Checking activity reminders 
[2026-03-17 12:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:58:48] [INFO] Checking activity reminders 
[2026-03-17 12:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:58:56] [INFO] Checking activity reminders 
[2026-03-17 12:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:59:18] [INFO] Checking activity reminders 
[2026-03-17 12:59:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:59:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:59:27] [INFO] Checking activity reminders 
[2026-03-17 12:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:59:48] [INFO] Checking activity reminders 
[2026-03-17 12:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 12:59:57] [INFO] Checking activity reminders 
[2026-03-17 12:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 12:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:00:19] [INFO] Checking activity reminders 
[2026-03-17 13:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:00:27] [INFO] Checking activity reminders 
[2026-03-17 13:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:00:49] [INFO] Checking activity reminders 
[2026-03-17 13:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:00:57] [INFO] Activity save request {"post_data":{"contact_id":"local_69b53335d88630.58088415","deal_id":"local_69b53335dd7ea","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"2 ساله دنبال \r\nبابلسر \r\nنمایسگاه جمع کرده \r\nقبلا عضو کانال بوده \r\nدر طلا و دلار سرمایه گذاری \r\nپرزنت 405 با پشتیبانی استاد \r\nارسال در بله ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:00:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 13:00:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:00:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b53335d88630.58088415","note_was_empty":true}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:00:57] [INFO] Updating virtual stage {"contact_id":"local_69b53335d88630.58088415","stage_name":"new","force":false}
[2026-03-17 13:00:57] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53335d88630.58088415","stage_name":"new"}
[2026-03-17 13:00:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53335d88630.58088415"}
[2026-03-17 13:00:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53335dd7ea","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-17 13:00:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b91f5150a870.21529044","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:00:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69b91f5150a870.21529044"}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:00:57] [INFO] Updating virtual stage {"contact_id":"local_69b53335d88630.58088415","stage_name":"deal_registered","force":false}
[2026-03-17 13:00:57] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53335d88630.58088415","stage_name":"deal_registered"}
[2026-03-17 13:00:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53335d88630.58088415"}
[2026-03-17 13:00:57] [INFO] Checking activity reminders 
[2026-03-17 13:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53335d88630.58088415","person_id":"21826"}
[2026-03-17 13:01:05] [INFO] Checking activity reminders 
[2026-03-17 13:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:01:06] [INFO] Checking activity reminders 
[2026-03-17 13:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:01:19] [INFO] Checking activity reminders 
[2026-03-17 13:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:01:36] [INFO] Checking activity reminders 
[2026-03-17 13:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:01:49] [INFO] Checking activity reminders 
[2026-03-17 13:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:02:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 13:02:06] [INFO] Checking activity reminders 
[2026-03-17 13:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:02:19] [INFO] Checking activity reminders 
[2026-03-17 13:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:02:24] [INFO] Lead update received {"contact_id":"10303","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 13:02:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 13:02:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 13:02:24] [DEBUG] findByPhone: Found person {"phones":["9024315511"],"found_id":"21828","found_didar_id":"local_69b5356dd44278.87738871","found_name":"لید جدید"}
[2026-03-17 13:02:24] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9024315511","found_didar_id":"local_69b5356dd44278.87738871","found_local_id":"21828","found_name":"لید جدید"}
[2026-03-17 13:02:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 13:02:24] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9024315511","found_id":"21828","found_didar_id":"local_69b5356dd44278.87738871","exclude_id":33,"exclude_didar_id":"10303"}
[2026-03-17 13:02:24] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدید (مسئول: خانم شکیبا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-03-17 13:02:29] [INFO] Checking activity reminders 
[2026-03-17 13:02:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:02:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:02:49] [INFO] Checking activity reminders 
[2026-03-17 13:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:03:19] [INFO] Checking activity reminders 
[2026-03-17 13:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:14:04] [INFO] Checking activity reminders 
[2026-03-17 13:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:14:21] [INFO] Checking activity reminders 
[2026-03-17 13:14:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:14:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:14:23] [INFO] Checking activity reminders 
[2026-03-17 13:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:14:25] [INFO] Checking activity reminders 
[2026-03-17 13:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:14:55] [INFO] Checking activity reminders 
[2026-03-17 13:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:15:25] [INFO] Checking activity reminders 
[2026-03-17 13:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:15:55] [INFO] Checking activity reminders 
[2026-03-17 13:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:16:26] [INFO] Checking activity reminders 
[2026-03-17 13:16:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:16:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:16:56] [INFO] Checking activity reminders 
[2026-03-17 13:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:17:26] [INFO] Checking activity reminders 
[2026-03-17 13:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:17:56] [INFO] Checking activity reminders 
[2026-03-17 13:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:18:26] [INFO] Checking activity reminders 
[2026-03-17 13:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:18:56] [INFO] Checking activity reminders 
[2026-03-17 13:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:19:26] [INFO] Checking activity reminders 
[2026-03-17 13:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:19:56] [INFO] Checking activity reminders 
[2026-03-17 13:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:20:27] [INFO] Checking activity reminders 
[2026-03-17 13:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:20:57] [INFO] Checking activity reminders 
[2026-03-17 13:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:21:27] [INFO] Checking activity reminders 
[2026-03-17 13:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:21:57] [INFO] Checking activity reminders 
[2026-03-17 13:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:22:27] [INFO] Checking activity reminders 
[2026-03-17 13:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:22:57] [INFO] Checking activity reminders 
[2026-03-17 13:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:23:27] [INFO] Checking activity reminders 
[2026-03-17 13:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:23:57] [INFO] Checking activity reminders 
[2026-03-17 13:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:24:27] [INFO] Checking activity reminders 
[2026-03-17 13:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:24:49] [INFO] Lead update received {"contact_id":"local_69b53b38944027.01024355","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 13:24:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:24:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:24:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53b38944027.01024355"}
[2026-03-17 13:24:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:24:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:24:58] [INFO] Checking activity reminders 
[2026-03-17 13:24:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:24:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:25:28] [INFO] Checking activity reminders 
[2026-03-17 13:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:25:58] [INFO] Checking activity reminders 
[2026-03-17 13:25:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:25:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:26:28] [INFO] Checking activity reminders 
[2026-03-17 13:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:26:38] [INFO] Activity save request {"post_data":{"contact_id":"local_69b53b38944027.01024355","deal_id":"local_69b53b3895238","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دوست اقای اسفندیار \/ دانشپذیرمون \r\nمیگه من درخواستی نداشتم \r\nحتما اقای اسفندیار نیاز داشته \r\nتماس با اسفندیار داشتم میگه اذیت میکنه و درخواست نداشتم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 13:26:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b53b38944027.01024355","note_was_empty":true}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:38] [INFO] Updating virtual stage {"contact_id":"local_69b53b38944027.01024355","stage_name":"new","force":false}
[2026-03-17 13:26:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53b38944027.01024355","stage_name":"new"}
[2026-03-17 13:26:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53b38944027.01024355"}
[2026-03-17 13:26:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53b3895238","stage":"تماس پیگیری","status_change":null}
[2026-03-17 13:26:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b925563e21a5.97661483","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69b925563e21a5.97661483"}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:38] [INFO] Updating virtual stage {"contact_id":"local_69b53b38944027.01024355","stage_name":"deal_registered","force":false}
[2026-03-17 13:26:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53b38944027.01024355","stage_name":"deal_registered"}
[2026-03-17 13:26:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53b38944027.01024355"}
[2026-03-17 13:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53b38944027.01024355","person_id":"21831"}
[2026-03-17 13:26:58] [INFO] Checking activity reminders 
[2026-03-17 13:26:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:26:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:26:59] [INFO] Checking activity reminders 
[2026-03-17 13:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:27:01] [INFO] Checking activity reminders 
[2026-03-17 13:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:27:31] [INFO] Checking activity reminders 
[2026-03-17 13:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:28:01] [INFO] Checking activity reminders 
[2026-03-17 13:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:28:31] [INFO] Checking activity reminders 
[2026-03-17 13:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:10] [INFO] Checking activity reminders 
[2026-03-17 13:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:12] [INFO] Checking activity reminders 
[2026-03-17 13:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:41] [INFO] Checking activity reminders 
[2026-03-17 13:31:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:43] [INFO] Checking activity reminders 
[2026-03-17 13:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:44] [INFO] Checking activity reminders 
[2026-03-17 13:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:31:51] [INFO] Checking activity reminders 
[2026-03-17 13:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:32:02] [INFO] Checking activity reminders 
[2026-03-17 13:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:32:05] [INFO] Checking activity reminders 
[2026-03-17 13:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:32:35] [INFO] Checking activity reminders 
[2026-03-17 13:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:33:05] [INFO] Checking activity reminders 
[2026-03-17 13:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:33:35] [INFO] Checking activity reminders 
[2026-03-17 13:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:33:43] [INFO] Checking activity reminders 
[2026-03-17 13:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:33:45] [INFO] Checking activity reminders 
[2026-03-17 13:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:33:50] [INFO] Checking activity reminders 
[2026-03-17 13:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:34:20] [INFO] Checking activity reminders 
[2026-03-17 13:34:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:34:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:34:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:34:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:34:50] [INFO] Checking activity reminders 
[2026-03-17 13:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:35:20] [INFO] Checking activity reminders 
[2026-03-17 13:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:35:50] [INFO] Checking activity reminders 
[2026-03-17 13:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:36:20] [INFO] Checking activity reminders 
[2026-03-17 13:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:36:50] [INFO] Checking activity reminders 
[2026-03-17 13:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:37:20] [INFO] Checking activity reminders 
[2026-03-17 13:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:37:51] [INFO] Checking activity reminders 
[2026-03-17 13:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:38:21] [INFO] Checking activity reminders 
[2026-03-17 13:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:38:51] [INFO] Checking activity reminders 
[2026-03-17 13:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:39:21] [INFO] Checking activity reminders 
[2026-03-17 13:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:39:51] [INFO] Checking activity reminders 
[2026-03-17 13:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:40:21] [INFO] Checking activity reminders 
[2026-03-17 13:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:40:51] [INFO] Checking activity reminders 
[2026-03-17 13:40:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:40:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:41:21] [INFO] Checking activity reminders 
[2026-03-17 13:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:41:51] [INFO] Checking activity reminders 
[2026-03-17 13:41:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:41:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:42:22] [INFO] Checking activity reminders 
[2026-03-17 13:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:42:52] [INFO] Checking activity reminders 
[2026-03-17 13:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:43:22] [INFO] Checking activity reminders 
[2026-03-17 13:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:43:52] [INFO] Checking activity reminders 
[2026-03-17 13:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:44:22] [INFO] Checking activity reminders 
[2026-03-17 13:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:44:52] [INFO] Checking activity reminders 
[2026-03-17 13:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:45:22] [INFO] Checking activity reminders 
[2026-03-17 13:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:45:52] [INFO] Checking activity reminders 
[2026-03-17 13:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:46:18] [INFO] Lead update received {"contact_id":"local_69b5bfc4725973.13015304","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 13:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:46:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5bfc4725973.13015304"}
[2026-03-17 13:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:46:22] [INFO] Checking activity reminders 
[2026-03-17 13:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:46:52] [INFO] Checking activity reminders 
[2026-03-17 13:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:47:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"local_69b5bfc4725973.13015304","deal_id":"local_69b5bfc4774d9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 13:47:19","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 13:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:47:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"local_69b5bfc4725973.13015304","is_new_deal":false}
[2026-03-17 13:47:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-17 13:47:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 13:47:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 13:47:19] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b5bfc4725973.13015304"}
[2026-03-17 13:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:47:19] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b5bfc4725973.13015304","person_found":true,"primary_phone":"9141256360"}
[2026-03-17 13:47:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141256360"}
[2026-03-17 13:47:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141256360","contact_id":"local_69b5bfc4725973.13015304","deal_id":"local_69b5bfc4774d9","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 13:47:19"}
[2026-03-17 13:47:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5bfc4774d9","contact_id":"local_69b5bfc4725973.13015304","existing_deal_found":true,"existing_contact_id":"local_69b5bfc4725973.13015304","existing_title":"معامله اول 9141256360","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 13:47:19"}
[2026-03-17 13:47:19] [INFO] DealController.save validated payments {"deal_id":"local_69b5bfc4774d9","contact_id":"local_69b5bfc4725973.13015304","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-17 13:47:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b5bfc4725973.13015304","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 13:47:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5bfc4774d9","contact_didar_id":"local_69b5bfc4725973.13015304","title":"معامله اول 9141256360 | کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9141256360","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد دادخواه","existing_deal":"YES","existing_deal_id":"local_69b5bfc4774d9","existing_deal_status":"Pending","server_time":"2026-03-17 13:47:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 13:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:47:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5bfc4774d9","contact_id":"local_69b5bfc4725973.13015304","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9141256360 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-17 13:47:19","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 13:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:47:22] [INFO] Checking activity reminders 
[2026-03-17 13:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:47:53] [INFO] Checking activity reminders 
[2026-03-17 13:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:48:23] [INFO] Checking activity reminders 
[2026-03-17 13:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:48:53] [INFO] Checking activity reminders 
[2026-03-17 13:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:49:23] [INFO] Checking activity reminders 
[2026-03-17 13:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:49:47] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5bfc4725973.13015304","deal_id":"local_69b5bfc4774d9","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"6 ماهه اشنا از اینستا \/ \r\n2 ماهه از تلگرام و بله دنبال \/ از اطلاعات رایگان در عیار و صندوق طلا سرمایه \r\nپرزنت 405 \r\n70 در بورس \/ 70 وام داره \r\nکلا 150 م سرمایه \r\n37 ساله \/ 14 ساله کارمند \r\nملک شخصی داره \r\nخیلی وام و قسط داره \r\nارسال اطلاعات در بله \r\nنقد و چک پرداخت","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 13:49:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5bfc4725973.13015304","note_was_empty":true}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:47] [INFO] Updating virtual stage {"contact_id":"local_69b5bfc4725973.13015304","stage_name":"new","force":false}
[2026-03-17 13:49:47] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5bfc4725973.13015304","stage_name":"new"}
[2026-03-17 13:49:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5bfc4725973.13015304"}
[2026-03-17 13:49:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bfc4774d9","stage":"تماس پیگیری","status_change":null}
[2026-03-17 13:49:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b92ac37d5230.79811232","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69b92ac37d5230.79811232"}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:47] [INFO] Updating virtual stage {"contact_id":"local_69b5bfc4725973.13015304","stage_name":"deal_registered","force":false}
[2026-03-17 13:49:47] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5bfc4725973.13015304","stage_name":"deal_registered"}
[2026-03-17 13:49:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5bfc4725973.13015304"}
[2026-03-17 13:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bfc4725973.13015304","person_id":"21844"}
[2026-03-17 13:49:53] [INFO] Checking activity reminders 
[2026-03-17 13:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:50:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:50:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:50:23] [INFO] Checking activity reminders 
[2026-03-17 13:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:50:53] [INFO] Checking activity reminders 
[2026-03-17 13:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:51:23] [INFO] Checking activity reminders 
[2026-03-17 13:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:51:43] [INFO] Lead update received {"contact_id":"local_69b5c0a6005561.49238459","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 13:51:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:51:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:51:43] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c0a6005561.49238459"}
[2026-03-17 13:51:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:51:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:51:53] [INFO] Checking activity reminders 
[2026-03-17 13:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:52:17] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c0a6005561.49238459","deal_id":"local_69b5c0a604045","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت  \r\nنیم ساعت دیگه تماس ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 13:52:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c0a6005561.49238459","note_was_empty":true}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:17] [INFO] Updating virtual stage {"contact_id":"local_69b5c0a6005561.49238459","stage_name":"new","force":false}
[2026-03-17 13:52:17] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0a6005561.49238459","stage_name":"new"}
[2026-03-17 13:52:17] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0a6005561.49238459"}
[2026-03-17 13:52:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c0a604045","stage":"تماس پیگیری","status_change":null}
[2026-03-17 13:52:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b92b597a6442.72172171","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69b92b597a6442.72172171"}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:17] [INFO] Updating virtual stage {"contact_id":"local_69b5c0a6005561.49238459","stage_name":"deal_registered","force":false}
[2026-03-17 13:52:17] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0a6005561.49238459","stage_name":"deal_registered"}
[2026-03-17 13:52:17] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0a6005561.49238459"}
[2026-03-17 13:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0a6005561.49238459","person_id":"21847"}
[2026-03-17 13:52:23] [INFO] Checking activity reminders 
[2026-03-17 13:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-17 13:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-17 13:52:53] [INFO] Checking activity reminders 
[2026-03-17 13:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-17 13:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-17 13:53:18] [INFO] Checking activity reminders 
[2026-03-17 13:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:53:21] [INFO] Checking activity reminders 
[2026-03-17 13:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:53:22] [INFO] Checking activity reminders 
[2026-03-17 13:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:53:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 13:53:59] [INFO] Checking activity reminders 
[2026-03-17 13:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:54:29] [INFO] Checking activity reminders 
[2026-03-17 13:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:54:59] [INFO] Checking activity reminders 
[2026-03-17 13:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:55:29] [INFO] Checking activity reminders 
[2026-03-17 13:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:55:39] [INFO] Checking activity reminders 
[2026-03-17 13:55:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:55:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:55:41] [INFO] Checking activity reminders 
[2026-03-17 13:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:55:54] [INFO] Checking activity reminders 
[2026-03-17 13:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:56:24] [INFO] Checking activity reminders 
[2026-03-17 13:56:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:56:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:58:59] [INFO] Checking activity reminders 
[2026-03-17 13:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:59:00] [INFO] Checking activity reminders 
[2026-03-17 13:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:59:01] [INFO] Checking activity reminders 
[2026-03-17 13:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:59:16] [INFO] Checking activity reminders 
[2026-03-17 13:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 13:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-17 13:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-17 13:59:46] [INFO] Checking activity reminders 
[2026-03-17 13:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 13:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:00:16] [INFO] Checking activity reminders 
[2026-03-17 14:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:00:46] [INFO] Checking activity reminders 
[2026-03-17 14:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:01:17] [INFO] Checking activity reminders 
[2026-03-17 14:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:01:47] [INFO] Checking activity reminders 
[2026-03-17 14:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:02:17] [INFO] Checking activity reminders 
[2026-03-17 14:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:02:47] [INFO] Checking activity reminders 
[2026-03-17 14:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 14:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_products"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_leads"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_leads"}
[2026-03-17 14:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:06] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:16] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:03:16] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-17 14:03:16] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-17 14:03:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 14:03:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 14:03:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 14:03:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 14:03:17] [INFO] Checking activity reminders 
[2026-03-17 14:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:03:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 14:03:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 14:03:46] [INFO] Checking activity reminders 
[2026-03-17 14:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:03:47] [INFO] Checking activity reminders 
[2026-03-17 14:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 14:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5356dd44278.87738871","person_id":"21828"}
[2026-03-17 14:04:16] [INFO] Checking activity reminders 
[2026-03-17 14:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:04:17] [INFO] Checking activity reminders 
[2026-03-17 14:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:04:36] [INFO] Checking activity reminders 
[2026-03-17 14:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:04:47] [INFO] Checking activity reminders 
[2026-03-17 14:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:04:57] [INFO] Lead update received {"contact_id":"814","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 14:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:04:57] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"814"}
[2026-03-17 14:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:05:12] [INFO] Checking activity reminders 
[2026-03-17 14:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:05:17] [INFO] Checking activity reminders 
[2026-03-17 14:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:05:42] [INFO] Checking activity reminders 
[2026-03-17 14:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:05:47] [INFO] Checking activity reminders 
[2026-03-17 14:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:05:53] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9127449746","09127449746"]}
[2026-03-17 14:05:53] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9127449746","09127449746"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-17 14:05:53] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9127449746","full_name":"لید جدید"}
[2026-03-17 14:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:05:53] [INFO] Notification created {"notification_id":"607","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-17 14:06:17] [INFO] Checking activity reminders 
[2026-03-17 14:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:06:47] [INFO] Checking activity reminders 
[2026-03-17 14:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:07:11] [INFO] Checking activity reminders 
[2026-03-17 14:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:07:32] [INFO] Lead update received {"contact_id":"10303","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 14:07:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:07:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:07:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"10303"}
[2026-03-17 14:07:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:07:41] [INFO] Checking activity reminders 
[2026-03-17 14:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:08:12] [INFO] Checking activity reminders 
[2026-03-17 14:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:08:42] [INFO] Checking activity reminders 
[2026-03-17 14:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:08:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"10303","deal_id":"14763","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 14:08:47","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 14:08:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:08:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"10303","is_new_deal":false}
[2026-03-17 14:08:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:08:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:08:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:08:47] [INFO] getContactPrimaryPhone called {"contact_id":"10303"}
[2026-03-17 14:08:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:08:47] [INFO] getContactPrimaryPhone result {"contact_id":"10303","person_found":true,"primary_phone":"9370595415"}
[2026-03-17 14:08:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9370595415"}
[2026-03-17 14:08:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9370595415","contact_id":"10303","deal_id":"14763","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:08:47"}
[2026-03-17 14:08:47] [INFO] DealController.save existing deal lookup {"deal_id":"14763","contact_id":"10303","existing_deal_found":true,"existing_contact_id":"10303","existing_title":"معامله پورفلاح","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:08:47"}
[2026-03-17 14:08:47] [INFO] DealController.save validated payments {"deal_id":"14763","contact_id":"10303","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-17 14:08:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10303","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 14:08:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"14763","contact_didar_id":"10303","title":"معامله پورفلاح | کانال VIP بدون پشتیبان","base_title_used":"معامله پورفلاح","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پورفلاح پورفلاح","existing_deal":"YES","existing_deal_id":"14763","existing_deal_status":"Pending","server_time":"2026-03-17 14:08:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 14:08:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:08:47] [INFO] ensureDealProductsFromText: no product match {"deal_id":"14763","texts":["کانال VIP بدون پشتیبان"]}
[2026-03-17 14:08:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"14763","contact_id":"10303","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پورفلاح | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-17 14:08:47","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 14:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:09:12] [INFO] Checking activity reminders 
[2026-03-17 14:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:09:42] [INFO] Checking activity reminders 
[2026-03-17 14:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:10:02] [INFO] Activity save request {"post_data":{"contact_id":"10303","deal_id":"14763","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عضو کانال بوده \r\nبرای 405 پرزنت شد \r\nداره سکه مهریه میده \r\nاز شرایط پرداخت استفاده \r\nچک نداره \r\nدر بله پیام ارسال شد \r\nخودش اقدام میکنه ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 14:10:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10303","note_was_empty":true}
[2026-03-17 14:10:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"10303","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:02] [INFO] Updating virtual stage {"contact_id":"10303","stage_name":"deal_registered","force":false}
[2026-03-17 14:10:02] [INFO] Virtual stage successfully saved {"contact_id":"10303","stage_name":"deal_registered"}
[2026-03-17 14:10:02] [INFO] Virtual stage updated after activity save {"contact_id":"10303"}
[2026-03-17 14:10:02] [INFO] Pipeline stage updated after activity save {"deal_id":"14763","stage":"تماس پیگیری","status_change":null}
[2026-03-17 14:10:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b92f8299d660.38821965","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69b92f8299d660.38821965"}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:02] [INFO] Updating virtual stage {"contact_id":"10303","stage_name":"deal_registered","force":false}
[2026-03-17 14:10:02] [INFO] Virtual stage successfully saved {"contact_id":"10303","stage_name":"deal_registered"}
[2026-03-17 14:10:02] [INFO] Virtual stage updated after activity save {"contact_id":"10303"}
[2026-03-17 14:10:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-17 14:10:11] [INFO] Checking activity reminders 
[2026-03-17 14:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:10:36] [INFO] Checking activity reminders 
[2026-03-17 14:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:11:06] [INFO] Checking activity reminders 
[2026-03-17 14:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:11:36] [INFO] Checking activity reminders 
[2026-03-17 14:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:12:06] [INFO] Checking activity reminders 
[2026-03-17 14:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:12:36] [INFO] Checking activity reminders 
[2026-03-17 14:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:13:06] [INFO] Checking activity reminders 
[2026-03-17 14:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:13:36] [INFO] Checking activity reminders 
[2026-03-17 14:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:14:06] [INFO] Checking activity reminders 
[2026-03-17 14:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:14:36] [INFO] Checking activity reminders 
[2026-03-17 14:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:15:06] [INFO] Checking activity reminders 
[2026-03-17 14:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:15:36] [INFO] Checking activity reminders 
[2026-03-17 14:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:16:07] [INFO] Checking activity reminders 
[2026-03-17 14:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:16:37] [INFO] Checking activity reminders 
[2026-03-17 14:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:17:07] [INFO] Checking activity reminders 
[2026-03-17 14:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:17:37] [INFO] Checking activity reminders 
[2026-03-17 14:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:18:07] [INFO] Checking activity reminders 
[2026-03-17 14:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:18:37] [INFO] Checking activity reminders 
[2026-03-17 14:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:19:07] [INFO] Checking activity reminders 
[2026-03-17 14:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:19:37] [INFO] Checking activity reminders 
[2026-03-17 14:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:20:07] [INFO] Checking activity reminders 
[2026-03-17 14:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:20:31] [INFO] Checking activity reminders 
[2026-03-17 14:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:21:01] [INFO] Checking activity reminders 
[2026-03-17 14:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:21:27] [INFO] Checking activity reminders 
[2026-03-17 14:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:21:36] [INFO] Checking activity reminders 
[2026-03-17 14:21:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:21:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:21:42] [INFO] Lead update received {"contact_id":"local_69b5c0f25ca361.77593757","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-17 14:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:21:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c0f25ca361.77593757"}
[2026-03-17 14:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b5c0f25ca361.77593757","deal_id":"local_69b5c0f26035b","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 14:22:03","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 14:22:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b5c0f25ca361.77593757","is_new_deal":false}
[2026-03-17 14:22:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 14:22:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 14:22:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 14:22:03] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b5c0f25ca361.77593757"}
[2026-03-17 14:22:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:03] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b5c0f25ca361.77593757","person_found":true,"primary_phone":"9187788995"}
[2026-03-17 14:22:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9187788995"}
[2026-03-17 14:22:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9187788995","contact_id":"local_69b5c0f25ca361.77593757","deal_id":"local_69b5c0f26035b","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:22:03"}
[2026-03-17 14:22:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c0f26035b","contact_id":"local_69b5c0f25ca361.77593757","existing_deal_found":true,"existing_contact_id":"local_69b5c0f25ca361.77593757","existing_title":"معامله اول 9187788995","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:22:03"}
[2026-03-17 14:22:03] [INFO] DealController.save validated payments {"deal_id":"local_69b5c0f26035b","contact_id":"local_69b5c0f25ca361.77593757","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-17 14:22:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b5c0f25ca361.77593757","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 14:22:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c0f26035b","contact_didar_id":"local_69b5c0f25ca361.77593757","title":"معامله اول 9187788995 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9187788995","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نوید فلاحت","existing_deal":"YES","existing_deal_id":"local_69b5c0f26035b","existing_deal_status":"Pending","server_time":"2026-03-17 14:22:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 14:22:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c0f26035b","contact_id":"local_69b5c0f25ca361.77593757","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9187788995 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-17 14:22:03","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 14:22:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:22:06] [INFO] Checking activity reminders 
[2026-03-17 14:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:22:36] [INFO] Checking activity reminders 
[2026-03-17 14:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:23:06] [INFO] Checking activity reminders 
[2026-03-17 14:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:23:36] [INFO] Checking activity reminders 
[2026-03-17 14:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:23:43] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c0f25ca361.77593757","deal_id":"local_69b5c0f26035b","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"2 اسله دنبال \r\nقبلا عضو کانال بوده \r\nشهر کرد \r\nعراق بوده \r\nدر ملک و زمین سرمایه گذاری \/ رکود و متضرر \r\n4 میلیارد نقد \r\nپرزنت 405 \/ پشتیبانی استاد \r\nارسال در بله ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:23:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 14:23:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:23:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c0f25ca361.77593757","note_was_empty":true}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:23:43] [INFO] Updating virtual stage {"contact_id":"local_69b5c0f25ca361.77593757","stage_name":"new","force":false}
[2026-03-17 14:23:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0f25ca361.77593757","stage_name":"new"}
[2026-03-17 14:23:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0f25ca361.77593757"}
[2026-03-17 14:23:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c0f26035b","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-17 14:23:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b932b77477b9.41174702","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:23:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69b932b77477b9.41174702"}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:23:43] [INFO] Updating virtual stage {"contact_id":"local_69b5c0f25ca361.77593757","stage_name":"deal_registered","force":false}
[2026-03-17 14:23:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0f25ca361.77593757","stage_name":"deal_registered"}
[2026-03-17 14:23:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0f25ca361.77593757"}
[2026-03-17 14:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0f25ca361.77593757","person_id":"21849"}
[2026-03-17 14:24:06] [INFO] Checking activity reminders 
[2026-03-17 14:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:24:37] [INFO] Checking activity reminders 
[2026-03-17 14:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:25:07] [INFO] Checking activity reminders 
[2026-03-17 14:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:25:37] [INFO] Checking activity reminders 
[2026-03-17 14:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:26:07] [INFO] Checking activity reminders 
[2026-03-17 14:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:26:37] [INFO] Checking activity reminders 
[2026-03-17 14:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:26:48] [INFO] Checking activity reminders 
[2026-03-17 14:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:27:18] [INFO] Checking activity reminders 
[2026-03-17 14:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:27:48] [INFO] Checking activity reminders 
[2026-03-17 14:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:28:18] [INFO] Checking activity reminders 
[2026-03-17 14:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:28:48] [INFO] Checking activity reminders 
[2026-03-17 14:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:29:18] [INFO] Checking activity reminders 
[2026-03-17 14:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:29:48] [INFO] Checking activity reminders 
[2026-03-17 14:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:30:18] [INFO] Checking activity reminders 
[2026-03-17 14:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:30:48] [INFO] Checking activity reminders 
[2026-03-17 14:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:31:18] [INFO] Checking activity reminders 
[2026-03-17 14:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:31:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کارشناسی حضوری","contact_id":"local_69b92e89d8be69.70262482","deal_id":"local_69b92e89dc39f","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 14:31:38","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کارشناسی حضوری","contact_id":"local_69b92e89d8be69.70262482","is_new_deal":false}
[2026-03-17 14:31:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کارشناسی حضوری"}
[2026-03-17 14:31:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کارشناسی حضوری"}
[2026-03-17 14:31:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کارشناسی حضوری"}
[2026-03-17 14:31:38] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b92e89d8be69.70262482"}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:38] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b92e89d8be69.70262482","person_found":true,"primary_phone":"9127449746"}
[2026-03-17 14:31:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127449746"}
[2026-03-17 14:31:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127449746","contact_id":"local_69b92e89d8be69.70262482","deal_id":"local_69b92e89dc39f","is_new_deal":false,"incoming_title":"کارشناسی حضوری","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:31:38"}
[2026-03-17 14:31:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b92e89dc39f","contact_id":"local_69b92e89d8be69.70262482","existing_deal_found":true,"existing_contact_id":"local_69b92e89d8be69.70262482","existing_title":"معامله اول 9127449746","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:31:38"}
[2026-03-17 14:31:38] [INFO] DealController.save validated payments {"deal_id":"local_69b92e89dc39f","contact_id":"local_69b92e89d8be69.70262482","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-17 14:31:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b92e89d8be69.70262482","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 14:31:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b92e89dc39f","contact_didar_id":"local_69b92e89d8be69.70262482","title":"معامله اول 9127449746 | کارشناسی حضوری","base_title_used":"معامله اول 9127449746","services_text":"کارشناسی حضوری","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":10000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کارشناسی حضوری"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69b92e89dc39f","existing_deal_status":"Pending","server_time":"2026-03-17 14:31:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:38] [INFO] Deal success processed {"contact_id":"local_69b92e89d8be69.70262482","person_name":"لید جدید","products_count":1}
[2026-03-17 14:31:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b92e89dc39f","contact_id":"local_69b92e89d8be69.70262482","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9127449746 | کارشناسی حضوری","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":10000000,"payment_amount":10000000,"server_time":"2026-03-17 14:31:38","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:31:48] [INFO] Checking activity reminders 
[2026-03-17 14:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:32:19] [INFO] Checking activity reminders 
[2026-03-17 14:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:32:49] [INFO] Checking activity reminders 
[2026-03-17 14:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:32:59] [INFO] Activity save request {"post_data":{"contact_id":"local_69b92e89d8be69.70262482","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ابهر \r\nنقاش خودرو \r\nمغازه داره میخواد کارشناسی مدرک و مجوز \r\nمعرف اقای حلوایی\r\nپرزنت 2 روزه حضوری \r\nارسال شماره کارت تجارت \r\nواریز و ارسال ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 14:32:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:32:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 14:32:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 14:32:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:32:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b92e89d8be69.70262482","note_was_empty":true}
[2026-03-17 14:32:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b934e321e719.01831383","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 14:32:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:32:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69b934e321e719.01831383"}
[2026-03-17 14:32:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:32:59] [INFO] Updating virtual stage {"contact_id":"local_69b92e89d8be69.70262482","stage_name":"deal_registered","force":false}
[2026-03-17 14:32:59] [INFO] Virtual stage successfully saved {"contact_id":"local_69b92e89d8be69.70262482","stage_name":"deal_registered"}
[2026-03-17 14:32:59] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b92e89d8be69.70262482"}
[2026-03-17 14:32:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:33:08] [INFO] Checking activity reminders 
[2026-03-17 14:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:15] [INFO] Checking activity reminders 
[2026-03-17 14:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:16] [INFO] Checking activity reminders 
[2026-03-17 14:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:19] [INFO] Checking activity reminders 
[2026-03-17 14:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:21] [INFO] Checking activity reminders 
[2026-03-17 14:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:22] [INFO] Checking activity reminders 
[2026-03-17 14:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:33:52] [INFO] Checking activity reminders 
[2026-03-17 14:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:34:29] [INFO] Checking activity reminders 
[2026-03-17 14:34:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:34:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:34:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-17 14:34:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-17 14:34:59] [INFO] Checking activity reminders 
[2026-03-17 14:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:35:46] [INFO] Checking activity reminders 
[2026-03-17 14:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:35:56] [INFO] Checking activity reminders 
[2026-03-17 14:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:36:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:36:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:36:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:36:15] [INFO] generateDealTitle result {"contact_id":"814","person_name":"مروجی مروجی","mobile":"9171011811","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9171011811"}
[2026-03-17 14:36:26] [INFO] Checking activity reminders 
[2026-03-17 14:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:36:56] [INFO] Checking activity reminders 
[2026-03-17 14:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:37:26] [INFO] Checking activity reminders 
[2026-03-17 14:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:37:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"814","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 14:37:38","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:37:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"814","is_new_deal":true}
[2026-03-17 14:37:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:37:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:37:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-17 14:37:38] [INFO] getContactPrimaryPhone called {"contact_id":"814"}
[2026-03-17 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:37:38] [INFO] getContactPrimaryPhone result {"contact_id":"814","person_found":true,"primary_phone":"9171011811"}
[2026-03-17 14:37:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171011811"}
[2026-03-17 14:37:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171011811","contact_id":"814","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 14:37:38"}
[2026-03-17 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:37:38] [INFO] generateDealTitle result {"contact_id":"814","person_name":"مروجی مروجی","mobile":"9171011811","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9171011811"}
[2026-03-17 14:37:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"814","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 14:37:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"814","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 14:37:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"814","title":"معامله سوم 9171011811 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9171011811","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مروجی مروجی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 14:37:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:37:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 14:37:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"814","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9171011811 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":27000000,"server_time":"2026-03-17 14:37:38","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:37:56] [INFO] Checking activity reminders 
[2026-03-17 14:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:26] [INFO] Activity save request {"post_data":{"contact_id":"814","deal_id":"local_69b935fa70d3a8.66009756","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت405 \r\nدر طلا و نوسانات بورسی سرمایه \r\nبدون سوال و پشتیبانی استاد \r\n2 مرحله پرداخت \r\nاردیبهشت تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-17 14:38:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"814","note_was_empty":true}
[2026-03-17 14:38:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"814","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Updating virtual stage {"contact_id":"814","stage_name":"deal_registered","force":false}
[2026-03-17 14:38:26] [INFO] Virtual stage successfully saved {"contact_id":"814","stage_name":"deal_registered"}
[2026-03-17 14:38:26] [INFO] Virtual stage updated after activity save {"contact_id":"814"}
[2026-03-17 14:38:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b935fa70d3a8.66009756","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-17 14:38:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69b9362a388cc8.62375683","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69b9362a388cc8.62375683"}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Updating virtual stage {"contact_id":"814","stage_name":"deal_registered","force":false}
[2026-03-17 14:38:26] [INFO] Virtual stage successfully saved {"contact_id":"814","stage_name":"deal_registered"}
[2026-03-17 14:38:26] [INFO] Virtual stage updated after activity save {"contact_id":"814"}
[2026-03-17 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-03-17 14:38:26] [INFO] Checking activity reminders 
[2026-03-17 14:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:40] [INFO] Checking activity reminders 
[2026-03-17 14:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:44] [INFO] Checking activity reminders 
[2026-03-17 14:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:46] [INFO] Checking activity reminders 
[2026-03-17 14:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:48] [INFO] Checking activity reminders 
[2026-03-17 14:38:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:50] [INFO] Checking activity reminders 
[2026-03-17 14:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:38:54] [INFO] Checking activity reminders 
[2026-03-17 14:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:40:13] [INFO] Checking activity reminders 
[2026-03-17 14:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:40:14] [INFO] Checking activity reminders 
[2026-03-17 14:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:40:19] [INFO] Checking activity reminders 
[2026-03-17 14:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:40:25] [INFO] Checking activity reminders 
[2026-03-17 14:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:40:55] [INFO] Checking activity reminders 
[2026-03-17 14:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:41:25] [INFO] Checking activity reminders 
[2026-03-17 14:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:41:55] [INFO] Checking activity reminders 
[2026-03-17 14:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:42:25] [INFO] Checking activity reminders 
[2026-03-17 14:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:42:55] [INFO] Checking activity reminders 
[2026-03-17 14:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:43:25] [INFO] Checking activity reminders 
[2026-03-17 14:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:43:55] [INFO] Checking activity reminders 
[2026-03-17 14:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:44:26] [INFO] Checking activity reminders 
[2026-03-17 14:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:44:56] [INFO] Checking activity reminders 
[2026-03-17 14:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:45:26] [INFO] Checking activity reminders 
[2026-03-17 14:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:45:56] [INFO] Checking activity reminders 
[2026-03-17 14:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:46:26] [INFO] Checking activity reminders 
[2026-03-17 14:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:46:56] [INFO] Checking activity reminders 
[2026-03-17 14:46:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:46:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:47:26] [INFO] Checking activity reminders 
[2026-03-17 14:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:47:56] [INFO] Checking activity reminders 
[2026-03-17 14:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:48:26] [INFO] Checking activity reminders 
[2026-03-17 14:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:48:56] [INFO] Checking activity reminders 
[2026-03-17 14:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:49:26] [INFO] Checking activity reminders 
[2026-03-17 14:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:49:56] [INFO] Checking activity reminders 
[2026-03-17 14:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:50:27] [INFO] Checking activity reminders 
[2026-03-17 14:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:50:57] [INFO] Checking activity reminders 
[2026-03-17 14:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:51:27] [INFO] Checking activity reminders 
[2026-03-17 14:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:54:36] [WARNING] Auth check failed - not authenticated {"session_id":"7nhhv2uso5rcfpsbg8miojk2eg","session_keys":[],"action":"log_client_event"}
[2026-03-17 14:54:36] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-17 14:54:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 14:54:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 14:54:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 14:54:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 14:55:06] [INFO] Checking activity reminders 
[2026-03-17 14:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:55:36] [INFO] Checking activity reminders 
[2026-03-17 14:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:56:07] [INFO] Checking activity reminders 
[2026-03-17 14:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:56:37] [INFO] Checking activity reminders 
[2026-03-17 14:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21669","person_id":"8474"}
[2026-03-17 14:56:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21509","person_id":"7959"}
[2026-03-17 14:57:07] [INFO] Checking activity reminders 
[2026-03-17 14:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:57:37] [INFO] Checking activity reminders 
[2026-03-17 14:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 14:58:07] [INFO] Checking activity reminders 
[2026-03-17 14:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:58:37] [INFO] Checking activity reminders 
[2026-03-17 14:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:58:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-03-17 14:59:07] [INFO] Checking activity reminders 
[2026-03-17 14:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:59:37] [INFO] Checking activity reminders 
[2026-03-17 14:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 14:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 14:59:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53c491f9508.49754835","person_id":"21833"}
[2026-03-17 14:59:52] [ERROR] Failed to get support logs {"contact_id":"local_69b53c491f9508.49754835","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-17 14:59:52] [ERROR] Error getting support logs {"contact_id":"local_69b53c491f9508.49754835","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-17 15:00:07] [INFO] Checking activity reminders 
[2026-03-17 15:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:00:37] [INFO] Checking activity reminders 
[2026-03-17 15:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:01:07] [INFO] Checking activity reminders 
[2026-03-17 15:01:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:01:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:01:37] [INFO] Checking activity reminders 
[2026-03-17 15:01:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:01:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:02:07] [INFO] Checking activity reminders 
[2026-03-17 15:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:02:38] [INFO] Checking activity reminders 
[2026-03-17 15:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:03:08] [INFO] Checking activity reminders 
[2026-03-17 15:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:03:38] [INFO] Checking activity reminders 
[2026-03-17 15:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:04:08] [INFO] Checking activity reminders 
[2026-03-17 15:04:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:04:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:04:38] [INFO] Checking activity reminders 
[2026-03-17 15:04:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:04:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:05:08] [INFO] Checking activity reminders 
[2026-03-17 15:05:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:05:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:05:38] [INFO] Checking activity reminders 
[2026-03-17 15:05:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:05:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:06:08] [INFO] Checking activity reminders 
[2026-03-17 15:06:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:06:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:06:38] [INFO] Checking activity reminders 
[2026-03-17 15:06:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:06:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:07:08] [INFO] Checking activity reminders 
[2026-03-17 15:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:07:38] [INFO] Checking activity reminders 
[2026-03-17 15:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:08:08] [INFO] Checking activity reminders 
[2026-03-17 15:08:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:08:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:08:39] [INFO] Checking activity reminders 
[2026-03-17 15:08:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:08:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:09:09] [INFO] Checking activity reminders 
[2026-03-17 15:09:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:09:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:09:39] [INFO] Checking activity reminders 
[2026-03-17 15:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:09:39] [INFO] Checking activity reminders 
[2026-03-17 15:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:09:52] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:09:52] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-17 15:09:52] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:09:56] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:09:56] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:09:59] [INFO] Checking activity reminders 
[2026-03-17 15:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:00] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:10:00] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-17 15:10:00] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-17 15:10:01] [INFO] Checking activity reminders 
[2026-03-17 15:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:02] [INFO] Checking activity reminders 
[2026-03-17 15:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:06] [INFO] Checking activity reminders 
[2026-03-17 15:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:09] [INFO] Checking activity reminders 
[2026-03-17 15:10:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:36] [INFO] Checking activity reminders 
[2026-03-17 15:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:38] [INFO] Checking activity reminders 
[2026-03-17 15:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:40] [INFO] Checking activity reminders 
[2026-03-17 15:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:43] [INFO] Checking activity reminders 
[2026-03-17 15:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:45] [INFO] Checking activity reminders 
[2026-03-17 15:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:46] [INFO] Checking activity reminders 
[2026-03-17 15:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:51] [INFO] Checking activity reminders 
[2026-03-17 15:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:55] [INFO] Checking activity reminders 
[2026-03-17 15:10:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:10:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:10:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 15:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-17 15:11:09] [INFO] Checking activity reminders 
[2026-03-17 15:11:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:11:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:11:14] [INFO] Checking activity reminders 
[2026-03-17 15:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:11:29] [INFO] Checking activity reminders 
[2026-03-17 15:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:11:44] [INFO] Checking activity reminders 
[2026-03-17 15:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:11:59] [INFO] Checking activity reminders 
[2026-03-17 15:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:12:14] [INFO] Checking activity reminders 
[2026-03-17 15:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:12:29] [INFO] Checking activity reminders 
[2026-03-17 15:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:12:44] [INFO] Checking activity reminders 
[2026-03-17 15:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:12:59] [INFO] Checking activity reminders 
[2026-03-17 15:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:13:14] [INFO] Checking activity reminders 
[2026-03-17 15:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:13:29] [INFO] Checking activity reminders 
[2026-03-17 15:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:13:44] [INFO] Checking activity reminders 
[2026-03-17 15:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:14:00] [INFO] Checking activity reminders 
[2026-03-17 15:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:14:30] [INFO] Checking activity reminders 
[2026-03-17 15:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:15:00] [INFO] Checking activity reminders 
[2026-03-17 15:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:15:30] [INFO] Checking activity reminders 
[2026-03-17 15:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:15:44] [INFO] Checking activity reminders 
[2026-03-17 15:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:15:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 15:15:45","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 15:15:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-17 15:15:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16990","is_new_deal":false}
[2026-03-17 15:15:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 15:15:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 15:15:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 15:15:45] [INFO] getContactPrimaryPhone called {"contact_id":"16990"}
[2026-03-17 15:15:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-17 15:15:45] [INFO] getContactPrimaryPhone result {"contact_id":"16990","person_found":true,"primary_phone":"9164871600"}
[2026-03-17 15:15:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9164871600"}
[2026-03-17 15:15:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9164871600","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 15:15:45"}
[2026-03-17 15:15:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","existing_deal_found":true,"existing_contact_id":"16990","existing_title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 15:15:45"}
[2026-03-17 15:15:45] [INFO] DealController.save validated payments {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","payments_count":4,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 15:15:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16990","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 15:15:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699acfc26ad3b8.32168488","contact_didar_id":"16990","title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9164871600","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"استخری","existing_deal":"YES","existing_deal_id":"local_699acfc26ad3b8.32168488","existing_deal_status":"Pending","server_time":"2026-03-17 15:15:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 15:15:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-17 15:15:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":50000000,"server_time":"2026-03-17 15:15:45","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 15:15:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-17 15:16:00] [INFO] Checking activity reminders 
[2026-03-17 15:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:16:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-17 15:16:28] [INFO] Checking activity reminders 
[2026-03-17 15:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:16:30] [INFO] Checking activity reminders 
[2026-03-17 15:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:16:58] [INFO] Checking activity reminders 
[2026-03-17 15:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:17:00] [INFO] Checking activity reminders 
[2026-03-17 15:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:17:28] [INFO] Checking activity reminders 
[2026-03-17 15:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:17:30] [INFO] Checking activity reminders 
[2026-03-17 15:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:17:58] [INFO] Checking activity reminders 
[2026-03-17 15:17:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:17:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:18:01] [INFO] Checking activity reminders 
[2026-03-17 15:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:18:29] [INFO] Checking activity reminders 
[2026-03-17 15:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:18:31] [INFO] Checking activity reminders 
[2026-03-17 15:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:01] [INFO] Checking activity reminders 
[2026-03-17 15:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 15:19:08","session_id":"k2j3j08oa9e7abqqh0a5sii6eo"}
[2026-03-17 15:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-17 15:19:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1025","is_new_deal":false}
[2026-03-17 15:19:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 15:19:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 15:19:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 15:19:08] [INFO] getContactPrimaryPhone called {"contact_id":"1025"}
[2026-03-17 15:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-17 15:19:08] [INFO] getContactPrimaryPhone result {"contact_id":"1025","person_found":true,"primary_phone":"9120445350"}
[2026-03-17 15:19:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120445350"}
[2026-03-17 15:19:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120445350","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 15:19:08"}
[2026-03-17 15:19:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","existing_deal_found":true,"existing_contact_id":"1025","existing_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 15:19:08"}
[2026-03-17 15:19:08] [INFO] DealController.save validated payments {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-17 15:19:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1025","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 15:19:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c1e6192e4.67895249","contact_didar_id":"1025","title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9120445350","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کیانی","existing_deal":"YES","existing_deal_id":"local_69b72c1e6192e4.67895249","existing_deal_status":"Pending","server_time":"2026-03-17 15:19:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 15:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-17 15:19:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-17 15:19:08","ip_address":"2.176.249.128","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 15:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-03-17 15:19:22] [INFO] Checking activity reminders 
[2026-03-17 15:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:23] [INFO] Checking activity reminders 
[2026-03-17 15:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:28] [INFO] Checking activity reminders 
[2026-03-17 15:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:40] [INFO] Checking activity reminders 
[2026-03-17 15:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:41] [INFO] Checking activity reminders 
[2026-03-17 15:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:19:42] [INFO] Checking activity reminders 
[2026-03-17 15:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:12] [INFO] Checking activity reminders 
[2026-03-17 15:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:24] [INFO] Checking activity reminders 
[2026-03-17 15:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:30] [INFO] Checking activity reminders 
[2026-03-17 15:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:33] [INFO] Checking activity reminders 
[2026-03-17 15:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:35] [INFO] Checking activity reminders 
[2026-03-17 15:20:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:20:37] [INFO] Checking activity reminders 
[2026-03-17 15:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:07] [INFO] Checking activity reminders 
[2026-03-17 15:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:22] [INFO] Checking activity reminders 
[2026-03-17 15:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:24] [INFO] Checking activity reminders 
[2026-03-17 15:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:26] [INFO] Checking activity reminders 
[2026-03-17 15:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:28] [INFO] Checking activity reminders 
[2026-03-17 15:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 15:21:44] [INFO] Checking activity reminders 
[2026-03-17 15:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:21:45] [INFO] Checking activity reminders 
[2026-03-17 15:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:22:10] [INFO] Checking activity reminders 
[2026-03-17 15:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:22:14] [INFO] Checking activity reminders 
[2026-03-17 15:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:22:16] [INFO] Checking activity reminders 
[2026-03-17 15:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:22:18] [INFO] Checking activity reminders 
[2026-03-17 15:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:22:48] [INFO] Checking activity reminders 
[2026-03-17 15:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:23:17] [INFO] Checking activity reminders 
[2026-03-17 15:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:23:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 15:23:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 15:23:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 15:23:22] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:22] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:24] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-03-17 15:23:24] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:24] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:24] [INFO] KPI calculation started {"filters":{"date_from":"2026-02-20","date_to":"2026-03-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-02-20","person_date_to":"2026-03-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"system","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:24] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5"}
[2026-03-17 15:23:48] [INFO] Checking activity reminders 
[2026-03-17 15:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:24:18] [INFO] Checking activity reminders 
[2026-03-17 15:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:24:48] [INFO] Checking activity reminders 
[2026-03-17 15:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:25:18] [INFO] Checking activity reminders 
[2026-03-17 15:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:43:26] [INFO] Checking activity reminders 
[2026-03-17 15:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:43:59] [INFO] Checking activity reminders 
[2026-03-17 15:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 15:57:06] [INFO] Checking activity reminders 
[2026-03-17 15:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 15:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 16:03:19] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 16:03:19] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-17 16:03:19] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-17 17:47:35] [WARNING] Auth check failed - not authenticated {"session_id":"6dh4d9u8ikl26sn5fi06fmtcp4","session_keys":[],"action":"log_client_event"}
[2026-03-17 17:47:36] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-17 17:47:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 17:47:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 17:47:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 17:47:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 17:48:06] [INFO] Checking activity reminders 
[2026-03-17 17:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:48:51] [INFO] Checking activity reminders 
[2026-03-17 17:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:48:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 17:49:21] [INFO] Checking activity reminders 
[2026-03-17 17:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:49:51] [INFO] Checking activity reminders 
[2026-03-17 17:49:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:49:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:50:21] [INFO] Checking activity reminders 
[2026-03-17 17:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-03-17 17:50:51] [INFO] Checking activity reminders 
[2026-03-17 17:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:53:46] [INFO] Checking activity reminders 
[2026-03-17 17:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:53:50] [INFO] Checking activity reminders 
[2026-03-17 17:53:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:53:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:54:20] [INFO] Checking activity reminders 
[2026-03-17 17:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 17:54:50] [INFO] Checking activity reminders 
[2026-03-17 17:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 17:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:23:18] [INFO] Checking activity reminders 
[2026-03-17 18:23:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:23:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"6svvrvfhn0q2vl0khusota0an4","session_keys":[],"action":"log_client_event"}
[2026-03-17 18:46:46] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-17 18:46:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 18:46:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7748","person_id":"3689"}
[2026-03-17 18:47:16] [INFO] Checking activity reminders 
[2026-03-17 18:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:47:38] [INFO] Checking activity reminders 
[2026-03-17 18:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:48:01] [INFO] Checking activity reminders 
[2026-03-17 18:48:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:48:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:48:10] [INFO] Checking activity reminders 
[2026-03-17 18:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:48:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7748","deal_id":"local_699db178f1d182.19423265","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 18:48:28","session_id":"6svvrvfhn0q2vl0khusota0an4"}
[2026-03-17 18:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7748","person_id":"3689"}
[2026-03-17 18:48:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7748","is_new_deal":false}
[2026-03-17 18:48:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 18:48:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 18:48:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 18:48:28] [INFO] getContactPrimaryPhone called {"contact_id":"7748"}
[2026-03-17 18:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7748","person_id":"3689"}
[2026-03-17 18:48:28] [INFO] getContactPrimaryPhone result {"contact_id":"7748","person_found":true,"primary_phone":"9163228263"}
[2026-03-17 18:48:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163228263"}
[2026-03-17 18:48:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163228263","contact_id":"7748","deal_id":"local_699db178f1d182.19423265","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-17 18:48:28"}
[2026-03-17 18:48:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_699db178f1d182.19423265","contact_id":"7748","existing_deal_found":true,"existing_contact_id":"7748","existing_title":"معامله دوم 9163228263 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-17 18:48:28"}
[2026-03-17 18:48:28] [INFO] DealController.save validated payments {"deal_id":"local_699db178f1d182.19423265","contact_id":"7748","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-17 18:48:28] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7748","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 18:48:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699db178f1d182.19423265","contact_didar_id":"7748","title":"معامله دوم 9163228263 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9163228263","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سعدی","existing_deal":"YES","existing_deal_id":"local_699db178f1d182.19423265","existing_deal_status":"Pending","server_time":"2026-03-17 18:48:28","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-17 18:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7748","person_id":"3689"}
[2026-03-17 18:48:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699db178f1d182.19423265","contact_id":"7748","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9163228263 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-17 18:48:28","ip_address":"5.215.56.240","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-17 18:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7748","person_id":"3689"}
[2026-03-17 18:48:46] [INFO] Checking activity reminders 
[2026-03-17 18:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:48:53] [INFO] Checking activity reminders 
[2026-03-17 18:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:48:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-17 18:49:23] [INFO] Checking activity reminders 
[2026-03-17 18:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:49:40] [INFO] Checking activity reminders 
[2026-03-17 18:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 18:49:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16058","deal_id":"local_69a00ad7955ae4.47769512","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 18:49:59","session_id":"6svvrvfhn0q2vl0khusota0an4"}
[2026-03-17 18:49:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-17 18:49:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16058","is_new_deal":false}
[2026-03-17 18:49:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 18:49:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 18:49:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 18:49:59] [INFO] getContactPrimaryPhone called {"contact_id":"16058"}
[2026-03-17 18:49:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-17 18:49:59] [INFO] getContactPrimaryPhone result {"contact_id":"16058","person_found":true,"primary_phone":"9147318626"}
[2026-03-17 18:49:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147318626"}
[2026-03-17 18:49:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147318626","contact_id":"16058","deal_id":"local_69a00ad7955ae4.47769512","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-17 18:49:59"}
[2026-03-17 18:49:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69a00ad7955ae4.47769512","contact_id":"16058","existing_deal_found":true,"existing_contact_id":"16058","existing_title":"معامله اول 9147318626 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-17 18:49:59"}
[2026-03-17 18:49:59] [INFO] DealController.save validated payments {"deal_id":"local_69a00ad7955ae4.47769512","contact_id":"16058","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-17 18:49:59] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"16058","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 18:49:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69a00ad7955ae4.47769512","contact_didar_id":"16058","title":"معامله اول 9147318626 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9147318626","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسین شریفی","existing_deal":"YES","existing_deal_id":"local_69a00ad7955ae4.47769512","existing_deal_status":"Pending","server_time":"2026-03-17 18:49:59","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-17 18:49:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-17 18:49:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69a00ad7955ae4.47769512","contact_id":"16058","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9147318626 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-17 18:49:59","ip_address":"5.215.56.240","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-17 18:49:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-03-17 18:50:10] [INFO] Checking activity reminders 
[2026-03-17 18:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 18:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:01:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:01:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-17 20:01:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:02:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:02:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-17 20:02:48] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:04:48] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:04:48] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-17 20:04:48] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-17 20:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:08:46] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:08:47] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:09:02] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:09:03] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-17 20:09:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 20:09:33] [INFO] Checking activity reminders 
[2026-03-17 20:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:10:03] [INFO] Checking activity reminders 
[2026-03-17 20:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:10:33] [INFO] Checking activity reminders 
[2026-03-17 20:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:11:04] [INFO] Checking activity reminders 
[2026-03-17 20:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:11:34] [INFO] Checking activity reminders 
[2026-03-17 20:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:12:04] [INFO] Checking activity reminders 
[2026-03-17 20:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:12:34] [INFO] Checking activity reminders 
[2026-03-17 20:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:13:04] [INFO] Checking activity reminders 
[2026-03-17 20:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:13:35] [INFO] Checking activity reminders 
[2026-03-17 20:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:14:05] [INFO] Checking activity reminders 
[2026-03-17 20:14:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:14:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:14:35] [INFO] Checking activity reminders 
[2026-03-17 20:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:15:05] [INFO] Checking activity reminders 
[2026-03-17 20:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:15:35] [INFO] Checking activity reminders 
[2026-03-17 20:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:16:06] [INFO] Checking activity reminders 
[2026-03-17 20:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:16:31] [WARNING] Auth check failed - not authenticated {"session_id":"t5b7a4n7fm5lacjuggjb5lb0fo","session_keys":[],"action":"log_client_event"}
[2026-03-17 20:16:31] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-17 20:16:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 20:16:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 20:16:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 20:16:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 20:16:36] [INFO] Checking activity reminders 
[2026-03-17 20:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:16:55] [INFO] Checking activity reminders 
[2026-03-17 20:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:17:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:17:06] [INFO] Checking activity reminders 
[2026-03-17 20:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:17:37] [INFO] Checking activity reminders 
[2026-03-17 20:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:17:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:18:07] [INFO] Checking activity reminders 
[2026-03-17 20:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:18:27] [INFO] Checking activity reminders 
[2026-03-17 20:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:18:37] [INFO] Checking activity reminders 
[2026-03-17 20:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:19:07] [INFO] Checking activity reminders 
[2026-03-17 20:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:19:37] [INFO] Checking activity reminders 
[2026-03-17 20:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:20:08] [INFO] Checking activity reminders 
[2026-03-17 20:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:21:08] [INFO] Checking activity reminders 
[2026-03-17 20:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:21:27] [INFO] Checking activity reminders 
[2026-03-17 20:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:21:57] [INFO] Checking activity reminders 
[2026-03-17 20:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:22:07] [INFO] Checking activity reminders 
[2026-03-17 20:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:22:27] [INFO] Checking activity reminders 
[2026-03-17 20:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:22:38] [INFO] Checking activity reminders 
[2026-03-17 20:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:22:44] [INFO] Checking activity reminders 
[2026-03-17 20:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:22:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:22:57] [INFO] Checking activity reminders 
[2026-03-17 20:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:23:10] [INFO] Checking activity reminders 
[2026-03-17 20:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:23:17] [DEBUG] findByPhone: Found person {"phones":["9122871815"],"found_id":"12299","found_didar_id":"11595","found_name":"سلیمانی"}
[2026-03-17 20:23:17] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9122871815","found_didar_id":"11595","found_local_id":"12299","found_name":"سلیمانی"}
[2026-03-17 20:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:17] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9122871815","09122871815"]}
[2026-03-17 20:23:17] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9122871815","09122871815"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-17 20:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:17] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9122871815","existing_contact_id":"11595","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9122871815"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9122871815","09122871815"]}
[2026-03-17 20:23:17] [INFO] Duplicate lead response prepared using local ID {"local_id":"12299","didar_id":"11595"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [INFO] generateDealTitle result {"contact_id":"11595","person_name":"سلیمانی","mobile":"9122871815","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9122871815"}
[2026-03-17 20:23:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله چهارم 9122871815","contact_id":"11595","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-17 20:23:19","session_id":"t5b7a4n7fm5lacjuggjb5lb0fo"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله چهارم 9122871815","contact_id":"11595","is_new_deal":true}
[2026-03-17 20:23:19] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله چهارم 9122871815"}
[2026-03-17 20:23:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله چهارم 9122871815"}
[2026-03-17 20:23:19] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9122871815","pattern":"معامله_ordinal_phone"}
[2026-03-17 20:23:19] [INFO] getContactPrimaryPhone called {"contact_id":"11595"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [INFO] getContactPrimaryPhone result {"contact_id":"11595","person_found":true,"primary_phone":"9122871815"}
[2026-03-17 20:23:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9122871815","contact_primary_phone":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison called {"input_phone":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison cleaned {"original":"9122871815","cleaned":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison called {"input_phone":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison cleaned {"original":"9122871815","cleaned":"9122871815"}
[2026-03-17 20:23:19] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9122871815"}
[2026-03-17 20:23:19] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9122871815","normalized_contact_phone":"9122871815","phones_match":true}
[2026-03-17 20:23:19] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله چهارم 9122871815","deal_phone":"9122871815","contact_phone":"9122871815","contact_id":"11595","validation":"PASSED"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [INFO] generateDealTitle result {"contact_id":"11595","person_name":"سلیمانی","mobile":"9122871815","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9122871815"}
[2026-03-17 20:23:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11595","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-17 20:23:19] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11595","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-17 20:23:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11595","title":"معامله چهارم 9122871815","base_title_used":"معامله چهارم 9122871815","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سلیمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 20:23:19","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 20:23:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11595","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله چهارم 9122871815","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-17 20:23:19","ip_address":"204.18.87.18","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 20:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-17 20:23:27] [INFO] Checking activity reminders 
[2026-03-17 20:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:23:40] [INFO] Checking activity reminders 
[2026-03-17 20:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:23:54] [INFO] Checking activity reminders 
[2026-03-17 20:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:23:58] [INFO] Checking activity reminders 
[2026-03-17 20:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:19] [INFO] Checking activity reminders 
[2026-03-17 20:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:26] [INFO] Checking activity reminders 
[2026-03-17 20:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:28] [INFO] Checking activity reminders 
[2026-03-17 20:24:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:34] [INFO] Checking activity reminders 
[2026-03-17 20:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:52] [INFO] Checking activity reminders 
[2026-03-17 20:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:24:58] [INFO] Checking activity reminders 
[2026-03-17 20:24:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:24:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:25:04] [DEBUG] findByPhone: Found person {"phones":["9185390859"],"found_id":"4325","found_didar_id":"20938","found_name":"شریف پور"}
[2026-03-17 20:25:04] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9185390859","found_didar_id":"20938","found_local_id":"4325","found_name":"شریف پور"}
[2026-03-17 20:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:04] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9185390859","09185390859"]}
[2026-03-17 20:25:04] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9185390859","09185390859"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-17 20:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:04] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9185390859","existing_contact_id":"20938","existing_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","existing_owner_name":"خانم شکیبا","all_matched_phones":["9185390859"],"user_attempting_creation":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9185390859","09185390859"]}
[2026-03-17 20:25:04] [INFO] Duplicate lead response prepared using local ID {"local_id":"4325","didar_id":"20938"}
[2026-03-17 20:25:12] [INFO] Checking activity reminders 
[2026-03-17 20:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:25:15] [INFO] Checking activity reminders 
[2026-03-17 20:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [INFO] generateDealTitle result {"contact_id":"20938","person_name":"شریف پور","mobile":"9185390859","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9185390859"}
[2026-03-17 20:25:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9185390859","contact_id":"20938","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-17 20:25:16","session_id":"t5b7a4n7fm5lacjuggjb5lb0fo"}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9185390859","contact_id":"20938","is_new_deal":true}
[2026-03-17 20:25:16] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9185390859"}
[2026-03-17 20:25:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9185390859"}
[2026-03-17 20:25:16] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9185390859","pattern":"معامله_ordinal_phone"}
[2026-03-17 20:25:16] [INFO] getContactPrimaryPhone called {"contact_id":"20938"}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [INFO] getContactPrimaryPhone result {"contact_id":"20938","person_found":true,"primary_phone":"9185390859"}
[2026-03-17 20:25:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9185390859","contact_primary_phone":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison called {"input_phone":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison cleaned {"original":"9185390859","cleaned":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison called {"input_phone":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison cleaned {"original":"9185390859","cleaned":"9185390859"}
[2026-03-17 20:25:16] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9185390859"}
[2026-03-17 20:25:16] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9185390859","normalized_contact_phone":"9185390859","phones_match":true}
[2026-03-17 20:25:16] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9185390859","deal_phone":"9185390859","contact_phone":"9185390859","contact_id":"20938","validation":"PASSED"}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [INFO] generateDealTitle result {"contact_id":"20938","person_name":"شریف پور","mobile":"9185390859","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9185390859"}
[2026-03-17 20:25:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20938","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-17 20:25:16] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20938","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-17 20:25:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20938","title":"معامله دوم 9185390859","base_title_used":"معامله دوم 9185390859","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شریف پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 20:25:16","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-17 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:16] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 20:25:16] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20938","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9185390859","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-17 20:25:16","ip_address":"204.18.87.18","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 20:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:28] [INFO] Checking activity reminders 
[2026-03-17 20:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:25:30] [INFO] Checking activity reminders 
[2026-03-17 20:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:25:58] [INFO] Checking activity reminders 
[2026-03-17 20:25:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:25:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:26:01] [INFO] Checking activity reminders 
[2026-03-17 20:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:26:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-17 20:26:28] [INFO] Checking activity reminders 
[2026-03-17 20:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:26:31] [INFO] Checking activity reminders 
[2026-03-17 20:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:26:38] [ERROR] Failed to get support logs {"contact_id":"20938","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-17 20:26:38] [ERROR] Error getting support logs {"contact_id":"20938","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-17 20:26:51] [INFO] Checking activity reminders 
[2026-03-17 20:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:26:59] [INFO] Checking activity reminders 
[2026-03-17 20:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:27:21] [INFO] Checking activity reminders 
[2026-03-17 20:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:27:29] [INFO] Checking activity reminders 
[2026-03-17 20:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:27:44] [INFO] Checking activity reminders 
[2026-03-17 20:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:27:54] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9011681829","09011681829"]}
[2026-03-17 20:27:54] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9011681829","09011681829"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-17 20:27:54] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9011681829","full_name":"لید جدید"}
[2026-03-17 20:27:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-17 20:27:54] [INFO] Notification created {"notification_id":"608","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-17 20:27:59] [INFO] Checking activity reminders 
[2026-03-17 20:27:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:27:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:28:10] [INFO] Checking activity reminders 
[2026-03-17 20:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:28:29] [INFO] Checking activity reminders 
[2026-03-17 20:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:28:40] [INFO] Checking activity reminders 
[2026-03-17 20:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:28:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10797","deal_id":"local_69b902b0acbee7.69460685","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-17 20:28:58","session_id":"8163ncfuouueanc79lrh6m55dc"}
[2026-03-17 20:28:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:28:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10797","is_new_deal":false}
[2026-03-17 20:28:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-17 20:28:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 20:28:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-17 20:28:58] [INFO] getContactPrimaryPhone called {"contact_id":"10797"}
[2026-03-17 20:28:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:28:58] [INFO] getContactPrimaryPhone result {"contact_id":"10797","person_found":true,"primary_phone":"9195919186"}
[2026-03-17 20:28:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195919186"}
[2026-03-17 20:28:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195919186","contact_id":"10797","deal_id":"local_69b902b0acbee7.69460685","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 20:28:58"}
[2026-03-17 20:28:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b902b0acbee7.69460685","contact_id":"10797","existing_deal_found":true,"existing_contact_id":"10797","existing_title":"معامله دوم 9195919186 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-17 20:28:58"}
[2026-03-17 20:28:58] [INFO] DealController.save validated payments {"deal_id":"local_69b902b0acbee7.69460685","contact_id":"10797","payments_count":6,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-17 20:28:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10797","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-17 20:28:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b902b0acbee7.69460685","contact_didar_id":"10797","title":"معامله دوم 9195919186 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9195919186","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جماعتی","existing_deal":"YES","existing_deal_id":"local_69b902b0acbee7.69460685","existing_deal_status":"Pending","server_time":"2026-03-17 20:28:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-17 20:28:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:28:59] [INFO] Deal success processed {"contact_id":"10797","person_name":"جماعتی","products_count":1}
[2026-03-17 20:28:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b902b0acbee7.69460685","contact_id":"10797","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9195919186 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-17 20:28:59","ip_address":"5.117.103.20","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-17 20:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-03-17 20:29:00] [INFO] Checking activity reminders 
[2026-03-17 20:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:29:48] [INFO] Checking activity reminders 
[2026-03-17 20:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:29:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:30:18] [INFO] Checking activity reminders 
[2026-03-17 20:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:30:41] [INFO] Checking activity reminders 
[2026-03-17 20:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:30:53] [INFO] Checking activity reminders 
[2026-03-17 20:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:31:13] [INFO] Checking activity reminders 
[2026-03-17 20:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:31:25] [INFO] Checking activity reminders 
[2026-03-17 20:31:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:31:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:31:33] [INFO] Checking activity reminders 
[2026-03-17 20:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:31:47] [DEBUG] findByPhone: Found person {"phones":["9141021021"],"found_id":"18002","found_didar_id":"4786","found_name":"وحیدمحمدزاده"}
[2026-03-17 20:31:47] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9141021021","found_didar_id":"4786","found_local_id":"18002","found_name":"وحیدمحمدزاده"}
[2026-03-17 20:31:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:47] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9141021021","09141021021"]}
[2026-03-17 20:31:47] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9141021021","09141021021"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-17 20:31:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:47] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9141021021","existing_contact_id":"4786","existing_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","existing_owner_name":"خانم شایسته","all_matched_phones":["9141021021"],"user_attempting_creation":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9141021021","09141021021"]}
[2026-03-17 20:31:47] [INFO] Duplicate lead response prepared using local ID {"local_id":"18002","didar_id":"4786"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [INFO] generateDealTitle result {"contact_id":"4786","person_name":"وحیدمحمدزاده","mobile":"9141021021","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9141021021"}
[2026-03-17 20:31:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله دوم 9141021021","contact_id":"4786","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-17 20:31:49","session_id":"t5b7a4n7fm5lacjuggjb5lb0fo"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله دوم 9141021021","contact_id":"4786","is_new_deal":true}
[2026-03-17 20:31:49] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله دوم 9141021021"}
[2026-03-17 20:31:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله دوم 9141021021"}
[2026-03-17 20:31:49] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9141021021","pattern":"معامله_ordinal_phone"}
[2026-03-17 20:31:49] [INFO] getContactPrimaryPhone called {"contact_id":"4786"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [INFO] getContactPrimaryPhone result {"contact_id":"4786","person_found":true,"primary_phone":"9141021021"}
[2026-03-17 20:31:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9141021021","contact_primary_phone":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison called {"input_phone":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison cleaned {"original":"9141021021","cleaned":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison called {"input_phone":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison cleaned {"original":"9141021021","cleaned":"9141021021"}
[2026-03-17 20:31:49] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9141021021"}
[2026-03-17 20:31:49] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9141021021","normalized_contact_phone":"9141021021","phones_match":true}
[2026-03-17 20:31:49] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله دوم 9141021021","deal_phone":"9141021021","contact_phone":"9141021021","contact_id":"4786","validation":"PASSED"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [INFO] generateDealTitle result {"contact_id":"4786","person_name":"وحیدمحمدزاده","mobile":"9141021021","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9141021021"}
[2026-03-17 20:31:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4786","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-17 20:31:49] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"4786","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-17 20:31:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4786","title":"معامله دوم 9141021021","base_title_used":"معامله دوم 9141021021","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"وحیدمحمدزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 20:31:49","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:31:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 20:31:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4786","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله دوم 9141021021","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-17 20:31:49","ip_address":"204.18.87.18","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 20:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-03-17 20:32:14] [INFO] Checking activity reminders 
[2026-03-17 20:32:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:32:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 20:32:44] [INFO] Checking activity reminders 
[2026-03-17 20:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:33:09] [INFO] Checking activity reminders 
[2026-03-17 20:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:33:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 20:33:58] [INFO] Checking activity reminders 
[2026-03-17 20:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:34:16] [INFO] Checking activity reminders 
[2026-03-17 20:34:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:34:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:34:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 20:34:37] [INFO] Checking activity reminders 
[2026-03-17 20:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:35:34] [INFO] Checking activity reminders 
[2026-03-17 20:35:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:35:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:35:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:36:04] [INFO] Checking activity reminders 
[2026-03-17 20:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:36:17] [INFO] Checking activity reminders 
[2026-03-17 20:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:36:48] [INFO] Checking activity reminders 
[2026-03-17 20:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-17 20:37:53] [INFO] Checking activity reminders 
[2026-03-17 20:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:38:23] [INFO] Checking activity reminders 
[2026-03-17 20:38:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:38:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:38:32] [INFO] Checking activity reminders 
[2026-03-17 20:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:38:49] [INFO] Checking activity reminders 
[2026-03-17 20:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 20:38:57] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9905145305","09905145305"]}
[2026-03-17 20:38:57] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9905145305","09905145305"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-17 20:38:57] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9905145305","full_name":"لید جدید"}
[2026-03-17 20:38:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-17 20:38:57] [INFO] Notification created {"notification_id":"609","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-03-17 20:39:40] [INFO] Checking activity reminders 
[2026-03-17 20:39:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 20:39:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 22:43:27] [WARNING] Auth check failed - not authenticated {"session_id":"k8iu3r6v5lo32qdto86q3ntha6","session_keys":[],"action":"log_client_event"}
[2026-03-17 22:43:27] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-03-17 22:43:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-17 22:43:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-17 22:43:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-17 22:43:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-17 22:43:53] [INFO] Checking activity reminders 
[2026-03-17 22:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 22:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 22:44:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:23] [INFO] Checking activity reminders 
[2026-03-17 22:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 22:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 22:44:32] [INFO] Checking activity reminders 
[2026-03-17 22:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 22:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-17 22:44:39] [DEBUG] findByPhone: Found person {"phones":["9399303029"],"found_id":"5691","found_didar_id":"19271","found_name":"امیررضا اشرفپور"}
[2026-03-17 22:44:39] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9399303029","found_didar_id":"19271","found_local_id":"5691","found_name":"امیررضا اشرفپور"}
[2026-03-17 22:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:39] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9399303029","09399303029"]}
[2026-03-17 22:44:39] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9399303029","09399303029"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-03-17 22:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:39] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9399303029","existing_contact_id":"19271","existing_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","existing_owner_name":"خانم توانا","all_matched_phones":["9399303029"],"user_attempting_creation":"1d963d5b-0a67-40ac-826a-2e8480250d49","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9399303029","09399303029"]}
[2026-03-17 22:44:39] [INFO] Duplicate lead response prepared using local ID {"local_id":"5691","didar_id":"19271"}
[2026-03-17 22:44:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:40] [INFO] generateDealTitle result {"contact_id":"19271","person_name":"امیررضا اشرفپور","mobile":"9399303029","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9399303029"}
[2026-03-17 22:44:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"معامله سوم 9399303029","contact_id":"19271","deal_id":"","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","form_data_keys":["contact_id","title","pipeline_stage","deal_status"],"server_time":"2026-03-17 22:44:41","session_id":"k8iu3r6v5lo32qdto86q3ntha6"}
[2026-03-17 22:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله سوم 9399303029","contact_id":"19271","is_new_deal":true}
[2026-03-17 22:44:41] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله سوم 9399303029"}
[2026-03-17 22:44:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله سوم 9399303029"}
[2026-03-17 22:44:41] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"9399303029","pattern":"معامله_ordinal_phone"}
[2026-03-17 22:44:41] [INFO] getContactPrimaryPhone called {"contact_id":"19271"}
[2026-03-17 22:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:41] [INFO] getContactPrimaryPhone result {"contact_id":"19271","person_found":true,"primary_phone":"9399303029"}
[2026-03-17 22:44:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"9399303029","contact_primary_phone":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison called {"input_phone":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison cleaned {"original":"9399303029","cleaned":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison called {"input_phone":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison cleaned {"original":"9399303029","cleaned":"9399303029"}
[2026-03-17 22:44:41] [INFO] normalizePhoneForComparison valid 10-digit mobile {"final":"9399303029"}
[2026-03-17 22:44:41] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"9399303029","normalized_contact_phone":"9399303029","phones_match":true}
[2026-03-17 22:44:41] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله سوم 9399303029","deal_phone":"9399303029","contact_phone":"9399303029","contact_id":"19271","validation":"PASSED"}
[2026-03-17 22:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:41] [INFO] generateDealTitle result {"contact_id":"19271","person_name":"امیررضا اشرفپور","mobile":"9399303029","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9399303029"}
[2026-03-17 22:44:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"19271","payments_count":0,"status":"Pending","pipeline_stage":"معامله جدید"}
[2026-03-17 22:44:41] [INFO] DealController.save validating permissions {"current_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"19271","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-17 22:44:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"19271","title":"معامله سوم 9399303029","base_title_used":"معامله سوم 9399303029","services_text":"","requested_services_count":0,"pipeline_stage":"معامله جدید","status":"Pending","payable_amount":null,"payment_amount":0,"payments_present":false,"requested_services":[],"user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیررضا اشرفپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-17 22:44:41","session_data":{"didar_id":"be60addc-d481-4cb5-bd7b-716622147ae5","name":"خانم تاج‌الدین","user_id":"4"}}
[2026-03-17 22:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:44:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-17 22:44:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"19271","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","user_name":"خانم تاج‌الدین","deal_title":"معامله سوم 9399303029","deal_status":"Pending","pipeline_stage":"معامله جدید","payable_amount":null,"payment_amount":0,"server_time":"2026-03-17 22:44:41","ip_address":"204.18.87.18","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-17 22:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-17 22:58:44] [INFO] Checking activity reminders 
[2026-03-17 22:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-17 22:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 10:07:48] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"check_reminders"}
[2026-03-18 10:07:48] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-18 10:07:48] [WARNING] Auth check failed - not authenticated {"session_id":"prcerbmnucctp0nseh7u18rri7","session_keys":[],"action":"log_client_event"}
[2026-03-18 10:10:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 10:10:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 10:10:46] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 10:10:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-18 10:10:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-18 10:10:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 10:10:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 10:10:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 10:10:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 10:10:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 10:10:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 10:10:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 10:11:26] [INFO] Checking activity reminders 
[2026-03-18 10:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 10:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 10:11:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 10:11:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 10:11:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 10:11:57] [INFO] Checking activity reminders 
[2026-03-18 10:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 10:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 10:12:41] [INFO] Checking activity reminders 
[2026-03-18 10:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 10:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 10:13:11] [INFO] Checking activity reminders 
[2026-03-18 10:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 10:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:18:39] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:39] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 11:18:39] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_didar_users"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_users_list"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_kpi_products"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_performance_dashboard"}
[2026-03-18 11:18:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:43] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:45] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 11:18:50] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-18 11:18:50] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-18 11:18:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 11:18:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 11:18:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 11:18:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 11:18:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 11:18:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 11:18:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 11:19:21] [INFO] Checking activity reminders 
[2026-03-18 11:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:19:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 11:19:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 11:19:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 11:19:51] [INFO] Checking activity reminders 
[2026-03-18 11:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:20:21] [INFO] Checking activity reminders 
[2026-03-18 11:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:21:41] [INFO] Checking activity reminders 
[2026-03-18 11:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:22:17] [INFO] Checking activity reminders 
[2026-03-18 11:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:24:46] [INFO] Checking activity reminders 
[2026-03-18 11:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:25:01] [INFO] Checking activity reminders 
[2026-03-18 11:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:25:04] [INFO] Checking activity reminders 
[2026-03-18 11:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:26:54] [INFO] Checking activity reminders 
[2026-03-18 11:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 11:38:32] [INFO] Checking activity reminders 
[2026-03-18 11:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 11:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:40:01] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:40:01] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"check_reminders"}
[2026-03-18 12:40:01] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:40:09] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:40:10] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:40:15] [WARNING] Auth check failed - not authenticated {"session_id":"8163ncfuouueanc79lrh6m55dc","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:40:16] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-18 12:40:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 12:40:46] [INFO] Checking activity reminders 
[2026-03-18 12:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:40:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 12:40:59] [INFO] Checking activity reminders 
[2026-03-18 12:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:41:30] [INFO] Checking activity reminders 
[2026-03-18 12:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:42:00] [INFO] Checking activity reminders 
[2026-03-18 12:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:42:10] [INFO] Checking activity reminders 
[2026-03-18 12:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:42:40] [INFO] Checking activity reminders 
[2026-03-18 12:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:43:11] [INFO] Checking activity reminders 
[2026-03-18 12:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:43:41] [INFO] Checking activity reminders 
[2026-03-18 12:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:44:11] [INFO] Checking activity reminders 
[2026-03-18 12:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:44:41] [INFO] Checking activity reminders 
[2026-03-18 12:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:44:42] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 12:44:42] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:44:42] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:45:11] [INFO] Checking activity reminders 
[2026-03-18 12:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:45:26] [INFO] Checking activity reminders 
[2026-03-18 12:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:45:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:45:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:45:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:45:49] [INFO] generateDealTitle result {"contact_id":"2212","person_name":"عباسی","mobile":"9132930255","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132930255"}
[2026-03-18 12:45:56] [INFO] Checking activity reminders 
[2026-03-18 12:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:46:27] [INFO] Checking activity reminders 
[2026-03-18 12:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:46:57] [INFO] Checking activity reminders 
[2026-03-18 12:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:47:18] [INFO] Checking activity reminders 
[2026-03-18 12:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:47:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2212","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 12:47:28","session_id":"8163ncfuouueanc79lrh6m55dc"}
[2026-03-18 12:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:47:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2212","is_new_deal":true}
[2026-03-18 12:47:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 12:47:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 12:47:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 12:47:28] [INFO] getContactPrimaryPhone called {"contact_id":"2212"}
[2026-03-18 12:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:47:28] [INFO] getContactPrimaryPhone result {"contact_id":"2212","person_found":true,"primary_phone":"9132930255"}
[2026-03-18 12:47:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132930255"}
[2026-03-18 12:47:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132930255","contact_id":"2212","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 12:47:28"}
[2026-03-18 12:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:47:28] [INFO] generateDealTitle result {"contact_id":"2212","person_name":"عباسی","mobile":"9132930255","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132930255"}
[2026-03-18 12:47:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2212","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-18 12:47:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2212","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 12:47:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2212","title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132930255","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عباسی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-18 12:47:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 12:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:47:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-18 12:47:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2212","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":29000000,"server_time":"2026-03-18 12:47:28","ip_address":"2.147.70.127","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-18 12:47:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:47:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-03-18 12:48:21] [INFO] Checking activity reminders 
[2026-03-18 12:48:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:48:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:48:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:48:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:48:37] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_101","person_name":"شرافتی پور","mobile":"9129581472","existing_deals":0,"ordinal":"اول","title":"معامله اول 9129581472"}
[2026-03-18 12:48:51] [INFO] Checking activity reminders 
[2026-03-18 12:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:49:22] [INFO] Checking activity reminders 
[2026-03-18 12:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:49:43] [INFO] Checking activity reminders 
[2026-03-18 12:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 12:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 12:49:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_101","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 12:49:50","session_id":"8163ncfuouueanc79lrh6m55dc"}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:49:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_101","is_new_deal":true}
[2026-03-18 12:49:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 12:49:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 12:49:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 12:49:50] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_101"}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:49:50] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_101","person_found":true,"primary_phone":"9129581472"}
[2026-03-18 12:49:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129581472"}
[2026-03-18 12:49:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129581472","contact_id":"local_1403_09_26_101","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 12:49:50"}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:49:50] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_101","person_name":"شرافتی پور","mobile":"9129581472","existing_deals":0,"ordinal":"اول","title":"معامله اول 9129581472"}
[2026-03-18 12:49:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_101","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-18 12:49:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_101","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 12:49:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_101","title":"معامله اول 9129581472 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9129581472","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شرافتی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-18 12:49:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:49:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-18 12:49:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_101","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9129581472 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":29000000,"server_time":"2026-03-18 12:49:50","ip_address":"2.147.70.127","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:49:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-03-18 12:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 12:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:58] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:50:58] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-18 12:50:58] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:51:00] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:51:05] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 12:51:05] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-18 12:51:05] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-18 12:51:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 12:51:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 12:51:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 12:51:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 13:29:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 13:29:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:26] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:48] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 13:29:49] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-18 13:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:52] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:58] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 13:29:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-18 13:29:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-18 13:29:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 13:29:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 13:29:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 13:29:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 13:30:28] [INFO] Checking activity reminders 
[2026-03-18 13:30:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 13:30:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 13:30:54] [INFO] Checking activity reminders 
[2026-03-18 13:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 13:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 13:45:18] [INFO] Checking activity reminders 
[2026-03-18 13:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 13:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:05:14] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 15:05:14] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:14] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"check_reminders"}
[2026-03-18 15:05:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:40] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:41] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:45] [WARNING] Auth check failed - not authenticated {"session_id":"r7vieo1nak5d0v125uj42pt1pg","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:05:45] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-18 15:05:45] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-18 15:05:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:05:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-18 15:05:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-18 15:05:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-18 15:06:16] [INFO] Checking activity reminders 
[2026-03-18 15:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:06:46] [INFO] Checking activity reminders 
[2026-03-18 15:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:07:17] [INFO] Checking activity reminders 
[2026-03-18 15:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:07:47] [INFO] Checking activity reminders 
[2026-03-18 15:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:08:17] [INFO] Checking activity reminders 
[2026-03-18 15:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:08:47] [INFO] Checking activity reminders 
[2026-03-18 15:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:09:17] [INFO] Checking activity reminders 
[2026-03-18 15:09:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:09:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:09:47] [INFO] Checking activity reminders 
[2026-03-18 15:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:10:17] [INFO] Checking activity reminders 
[2026-03-18 15:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:10:48] [INFO] Checking activity reminders 
[2026-03-18 15:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:11:19] [INFO] Checking activity reminders 
[2026-03-18 15:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:11:50] [INFO] Checking activity reminders 
[2026-03-18 15:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:12:20] [INFO] Checking activity reminders 
[2026-03-18 15:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:20:24] [WARNING] Auth check failed - not authenticated {"session_id":"lqphd46amsfaqujqv35aqc2lmi","session_keys":[],"action":"log_client_event"}
[2026-03-18 15:20:24] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-18 15:20:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:20:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:20:35] [INFO] Checking activity reminders 
[2026-03-18 15:20:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:20:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:21:53] [INFO] Checking activity reminders 
[2026-03-18 15:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:22:01] [INFO] Checking activity reminders 
[2026-03-18 15:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:22:06] [INFO] Checking activity reminders 
[2026-03-18 15:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:22:36] [INFO] Checking activity reminders 
[2026-03-18 15:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:22:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:23:06] [INFO] Checking activity reminders 
[2026-03-18 15:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:23:36] [INFO] Checking activity reminders 
[2026-03-18 15:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:24:06] [INFO] Checking activity reminders 
[2026-03-18 15:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:24:36] [INFO] Checking activity reminders 
[2026-03-18 15:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:25:06] [INFO] Checking activity reminders 
[2026-03-18 15:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:25:36] [INFO] Checking activity reminders 
[2026-03-18 15:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:26:07] [INFO] Checking activity reminders 
[2026-03-18 15:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:26:37] [INFO] Checking activity reminders 
[2026-03-18 15:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:27:07] [INFO] Checking activity reminders 
[2026-03-18 15:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:27:37] [INFO] Checking activity reminders 
[2026-03-18 15:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:28:01] [INFO] Checking activity reminders 
[2026-03-18 15:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:28:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:28:31] [INFO] Checking activity reminders 
[2026-03-18 15:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:29:01] [INFO] Checking activity reminders 
[2026-03-18 15:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:29:31] [INFO] Checking activity reminders 
[2026-03-18 15:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:30:01] [INFO] Checking activity reminders 
[2026-03-18 15:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:30:31] [INFO] Checking activity reminders 
[2026-03-18 15:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:30:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7569","deal_id":"local_69b8239aa093a2.85591394","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 15:30:56","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 15:30:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:30:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7569","is_new_deal":false}
[2026-03-18 15:30:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-18 15:30:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 15:30:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 15:30:56] [INFO] getContactPrimaryPhone called {"contact_id":"7569"}
[2026-03-18 15:30:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:30:56] [INFO] getContactPrimaryPhone result {"contact_id":"7569","person_found":true,"primary_phone":"9199858508"}
[2026-03-18 15:30:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9199858508"}
[2026-03-18 15:30:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9199858508","contact_id":"7569","deal_id":"local_69b8239aa093a2.85591394","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 15:30:56"}
[2026-03-18 15:30:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","existing_deal_found":true,"existing_contact_id":"7569","existing_title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 15:30:56"}
[2026-03-18 15:30:56] [INFO] DealController.save validated payments {"deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-18 15:30:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7569","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 15:30:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b8239aa093a2.85591394","contact_didar_id":"7569","title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9199858508","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتوحی","existing_deal":"YES","existing_deal_id":"local_69b8239aa093a2.85591394","existing_deal_status":"Pending","server_time":"2026-03-18 15:30:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 15:30:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:30:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:30:56] [INFO] Deal success processed {"contact_id":"7569","person_name":"فتوحی","products_count":1}
[2026-03-18 15:30:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b8239aa093a2.85591394","contact_id":"7569","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9199858508 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-03-18 15:30:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 15:30:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-03-18 15:31:01] [INFO] Checking activity reminders 
[2026-03-18 15:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:31:09] [INFO] Checking activity reminders 
[2026-03-18 15:31:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:31:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:31:33] [INFO] Checking activity reminders 
[2026-03-18 15:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:31:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 15:50:25] [INFO] Checking activity reminders 
[2026-03-18 15:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:50:27] [INFO] Checking activity reminders 
[2026-03-18 15:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:50:57] [INFO] Checking activity reminders 
[2026-03-18 15:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:51:27] [INFO] Checking activity reminders 
[2026-03-18 15:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:51:57] [INFO] Checking activity reminders 
[2026-03-18 15:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:52:28] [INFO] Checking activity reminders 
[2026-03-18 15:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:52:58] [INFO] Checking activity reminders 
[2026-03-18 15:52:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:52:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:53:28] [INFO] Checking activity reminders 
[2026-03-18 15:53:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:53:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:53:58] [INFO] Checking activity reminders 
[2026-03-18 15:53:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:53:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:54:28] [INFO] Checking activity reminders 
[2026-03-18 15:54:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:54:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:54:58] [INFO] Checking activity reminders 
[2026-03-18 15:54:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:54:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:55:28] [INFO] Checking activity reminders 
[2026-03-18 15:55:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:55:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:55:58] [INFO] Checking activity reminders 
[2026-03-18 15:55:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:55:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:56:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:56:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:56:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 15:56:31] [INFO] Checking activity reminders 
[2026-03-18 15:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:57:01] [INFO] Checking activity reminders 
[2026-03-18 15:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:57:10] [INFO] Checking activity reminders 
[2026-03-18 15:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:57:14] [INFO] Checking activity reminders 
[2026-03-18 15:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:57:41] [INFO] Activity save request {"post_data":{"contact_id":"20938","deal_id":"local_69b98774da8311.07485018","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 15:57:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20938","note_was_empty":true}
[2026-03-18 15:57:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"20938","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:41] [INFO] Updating virtual stage {"contact_id":"20938","stage_name":"deal_registered","force":false}
[2026-03-18 15:57:41] [INFO] Virtual stage successfully saved {"contact_id":"20938","stage_name":"deal_registered"}
[2026-03-18 15:57:41] [INFO] Virtual stage updated after activity save {"contact_id":"20938"}
[2026-03-18 15:57:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b98774da8311.07485018","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 15:57:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9a3d1b4f26.66140271","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9a3d1b4f26.66140271"}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:41] [INFO] Updating virtual stage {"contact_id":"20938","stage_name":"deal_registered","force":false}
[2026-03-18 15:57:41] [INFO] Virtual stage successfully saved {"contact_id":"20938","stage_name":"deal_registered"}
[2026-03-18 15:57:41] [INFO] Virtual stage updated after activity save {"contact_id":"20938"}
[2026-03-18 15:57:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-03-18 15:57:44] [INFO] Checking activity reminders 
[2026-03-18 15:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:58:14] [INFO] Checking activity reminders 
[2026-03-18 15:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:58:45] [INFO] Checking activity reminders 
[2026-03-18 15:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:59:15] [INFO] Checking activity reminders 
[2026-03-18 15:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 15:59:45] [INFO] Checking activity reminders 
[2026-03-18 15:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 15:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:00:15] [INFO] Checking activity reminders 
[2026-03-18 16:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:00:45] [INFO] Checking activity reminders 
[2026-03-18 16:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:01:15] [INFO] Checking activity reminders 
[2026-03-18 16:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:01:45] [INFO] Checking activity reminders 
[2026-03-18 16:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:02:15] [INFO] Checking activity reminders 
[2026-03-18 16:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:02:34] [WARNING] Auth check failed - not authenticated {"session_id":"fgs6so30o85ua03ljpptnl6g19","session_keys":[],"action":"log_client_event"}
[2026-03-18 16:02:34] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-18 16:02:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-18 16:02:45] [INFO] Checking activity reminders 
[2026-03-18 16:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:02:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:05] [INFO] Checking activity reminders 
[2026-03-18 16:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:03:12] [INFO] Activity save request {"post_data":{"contact_id":"14209","deal_id":"local_69b741b246bf54.51338687","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"داره خونه میخره فعلا نمیتونه کانال باشه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:03:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14209","note_was_empty":true}
[2026-03-18 16:03:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"14209","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-18 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:12] [INFO] Updating virtual stage {"contact_id":"14209","stage_name":"deal_registered","force":false}
[2026-03-18 16:03:13] [INFO] Virtual stage successfully saved {"contact_id":"14209","stage_name":"deal_registered"}
[2026-03-18 16:03:13] [INFO] Virtual stage updated after activity save {"contact_id":"14209"}
[2026-03-18 16:03:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b741b246bf54.51338687","stage":"تماس پیگیری","status_change":null}
[2026-03-18 16:03:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9b88edd855.50812383","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:03:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9b88edd855.50812383"}
[2026-03-18 16:03:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:13] [INFO] Updating virtual stage {"contact_id":"14209","stage_name":"deal_registered","force":false}
[2026-03-18 16:03:13] [INFO] Virtual stage successfully saved {"contact_id":"14209","stage_name":"deal_registered"}
[2026-03-18 16:03:13] [INFO] Virtual stage updated after activity save {"contact_id":"14209"}
[2026-03-18 16:03:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:15] [INFO] Checking activity reminders 
[2026-03-18 16:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:03:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:16] [INFO] generateDealTitle result {"contact_id":"14209","person_name":"نادر حسین نژاد","mobile":"9147598300","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9147598300"}
[2026-03-18 16:03:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14209","person_id":"17264"}
[2026-03-18 16:03:21] [INFO] generateDealTitle result {"contact_id":"14209","person_name":"نادر حسین نژاد","mobile":"9147598300","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9147598300"}
[2026-03-18 16:03:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:03:35] [INFO] Checking activity reminders 
[2026-03-18 16:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:03:45] [INFO] Checking activity reminders 
[2026-03-18 16:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:04:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:05] [INFO] Checking activity reminders 
[2026-03-18 16:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:04:15] [INFO] Checking activity reminders 
[2026-03-18 16:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:04:16] [INFO] Activity save request {"post_data":{"contact_id":"15061","deal_id":"local_69b7425067a3b3.46700206","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سال ۴۰۴ از کانال رضایت تداشت و برج ۶ تمکیل نکرد وحذف شد نمیخواد باشه همش رو ملک هست وقت نداره","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:04:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15061","note_was_empty":true}
[2026-03-18 16:04:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"15061","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Updating virtual stage {"contact_id":"15061","stage_name":"deal_registered","force":false}
[2026-03-18 16:04:16] [INFO] Virtual stage successfully saved {"contact_id":"15061","stage_name":"deal_registered"}
[2026-03-18 16:04:16] [INFO] Virtual stage updated after activity save {"contact_id":"15061"}
[2026-03-18 16:04:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7425067a3b3.46700206","stage":"تماس پیگیری","status_change":null}
[2026-03-18 16:04:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9bc8204740.82368511","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9bc8204740.82368511"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Updating virtual stage {"contact_id":"15061","stage_name":"deal_registered","force":false}
[2026-03-18 16:04:16] [INFO] Virtual stage successfully saved {"contact_id":"15061","stage_name":"deal_registered"}
[2026-03-18 16:04:16] [INFO] Virtual stage updated after activity save {"contact_id":"15061"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-03-18 16:04:16] [INFO] Lead update received {"contact_id":"local_69b5bf794b6f20.82995812","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5bf794b6f20.82995812"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:04:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:04:35] [INFO] Checking activity reminders 
[2026-03-18 16:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:04:45] [INFO] Checking activity reminders 
[2026-03-18 16:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:04:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:05] [INFO] Checking activity reminders 
[2026-03-18 16:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:05:08] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5bf794b6f20.82995812","deal_id":"local_69b5bf7953f3d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیمارستان \/ انژیو قلب داشت \r\nشرایط صحبت نداشت \r\nپیامک ارسال داشت ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:05:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5bf794b6f20.82995812","note_was_empty":true}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:08] [INFO] Updating virtual stage {"contact_id":"local_69b5bf794b6f20.82995812","stage_name":"new","force":false}
[2026-03-18 16:05:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5bf794b6f20.82995812","stage_name":"new"}
[2026-03-18 16:05:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5bf794b6f20.82995812"}
[2026-03-18 16:05:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bf7953f3d","stage":"تماس پیگیری","status_change":null}
[2026-03-18 16:05:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9bfc8ce114.40649814","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9bfc8ce114.40649814"}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:08] [INFO] Updating virtual stage {"contact_id":"local_69b5bf794b6f20.82995812","stage_name":"deal_registered","force":false}
[2026-03-18 16:05:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5bf794b6f20.82995812","stage_name":"deal_registered"}
[2026-03-18 16:05:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5bf794b6f20.82995812"}
[2026-03-18 16:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5bf794b6f20.82995812","person_id":"21843"}
[2026-03-18 16:05:16] [INFO] Checking activity reminders 
[2026-03-18 16:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:05:35] [INFO] Checking activity reminders 
[2026-03-18 16:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:05:38] [INFO] Activity save request {"post_data":{"contact_id":"12500","deal_id":"local_69b84bf3db1142.67072346","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چرا انقدر معامله ثبت نیشه براش این فرد بچه هست و دانشگذیر کارشانسی بوده","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:05:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"12500","note_was_empty":true}
[2026-03-18 16:05:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"12500","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:38] [INFO] Updating virtual stage {"contact_id":"12500","stage_name":"deal_registered","force":false}
[2026-03-18 16:05:38] [INFO] Virtual stage successfully saved {"contact_id":"12500","stage_name":"deal_registered"}
[2026-03-18 16:05:38] [INFO] Virtual stage updated after activity save {"contact_id":"12500"}
[2026-03-18 16:05:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b84bf3db1142.67072346","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 16:05:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9c1a335c05.68410306","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9c1a335c05.68410306"}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:38] [INFO] Updating virtual stage {"contact_id":"12500","stage_name":"deal_registered","force":false}
[2026-03-18 16:05:38] [INFO] Virtual stage successfully saved {"contact_id":"12500","stage_name":"deal_registered"}
[2026-03-18 16:05:38] [INFO] Virtual stage updated after activity save {"contact_id":"12500"}
[2026-03-18 16:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-18 16:05:46] [INFO] Checking activity reminders 
[2026-03-18 16:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:06:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:06:06] [INFO] Checking activity reminders 
[2026-03-18 16:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:06:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:06:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:06:08] [INFO] generateDealTitle result {"contact_id":"14698","person_name":"میرابیان","mobile":"9176170414","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9176170414"}
[2026-03-18 16:06:16] [INFO] Checking activity reminders 
[2026-03-18 16:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:06:36] [INFO] Checking activity reminders 
[2026-03-18 16:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:06:46] [INFO] Checking activity reminders 
[2026-03-18 16:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:06:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:06:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:07:09] [INFO] Checking activity reminders 
[2026-03-18 16:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:07:16] [INFO] Checking activity reminders 
[2026-03-18 16:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:07:39] [INFO] Checking activity reminders 
[2026-03-18 16:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:07:46] [INFO] Checking activity reminders 
[2026-03-18 16:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:08:14] [INFO] Checking activity reminders 
[2026-03-18 16:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:08:16] [INFO] Checking activity reminders 
[2026-03-18 16:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:08:33] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5cad25f7010.51432269","deal_id":"local_69b5cad26da07","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:08:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5cad25f7010.51432269","note_was_empty":true}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:33] [INFO] Updating virtual stage {"contact_id":"local_69b5cad25f7010.51432269","stage_name":"new","force":false}
[2026-03-18 16:08:33] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cad25f7010.51432269","stage_name":"new"}
[2026-03-18 16:08:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cad25f7010.51432269"}
[2026-03-18 16:08:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5cad26da07","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 16:08:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9cc9021e22.85574299","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9cc9021e22.85574299"}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:33] [INFO] Updating virtual stage {"contact_id":"local_69b5cad25f7010.51432269","stage_name":"deal_registered","force":false}
[2026-03-18 16:08:33] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cad25f7010.51432269","stage_name":"deal_registered"}
[2026-03-18 16:08:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cad25f7010.51432269"}
[2026-03-18 16:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cad25f7010.51432269","person_id":"21860"}
[2026-03-18 16:08:44] [INFO] Checking activity reminders 
[2026-03-18 16:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:08:46] [INFO] Checking activity reminders 
[2026-03-18 16:08:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:08:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:09:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"14698","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 16:09:12","session_id":"fgs6so30o85ua03ljpptnl6g19"}
[2026-03-18 16:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"14698","is_new_deal":true}
[2026-03-18 16:09:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:09:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:09:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:09:12] [INFO] getContactPrimaryPhone called {"contact_id":"14698"}
[2026-03-18 16:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:12] [INFO] getContactPrimaryPhone result {"contact_id":"14698","person_found":true,"primary_phone":"9176170414"}
[2026-03-18 16:09:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9176170414"}
[2026-03-18 16:09:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9176170414","contact_id":"14698","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-18 16:09:12"}
[2026-03-18 16:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:12] [INFO] generateDealTitle result {"contact_id":"14698","person_name":"میرابیان","mobile":"9176170414","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9176170414"}
[2026-03-18 16:09:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14698","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-18 16:09:12] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14698","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 16:09:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14698","title":"معامله دوم 9176170414 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9176170414","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"میرابیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-18 16:09:12","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-18 16:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-18 16:09:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14698","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9176170414 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":20000000,"server_time":"2026-03-18 16:09:12","ip_address":"5.215.56.240","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-18 16:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:14] [INFO] Checking activity reminders 
[2026-03-18 16:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:09:16] [INFO] Checking activity reminders 
[2026-03-18 16:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:09:35] [INFO] Activity save request {"post_data":{"contact_id":"14698","deal_id":"local_69ba9cf0b0b840.23617668","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تمدی کرده برج ۱۱ تسویه اخر فروردین ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:09:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14698","note_was_empty":true}
[2026-03-18 16:09:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"14698","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:35] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-03-18 16:09:35] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-03-18 16:09:35] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-03-18 16:09:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ba9cf0b0b840.23617668","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-18 16:09:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ba9d07172142.75548685","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69ba9d07172142.75548685"}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:35] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-03-18 16:09:35] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-03-18 16:09:35] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-03-18 16:09:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-03-18 16:09:46] [INFO] Checking activity reminders 
[2026-03-18 16:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:10:16] [INFO] Checking activity reminders 
[2026-03-18 16:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:10:46] [INFO] Checking activity reminders 
[2026-03-18 16:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:10:56] [INFO] Checking activity reminders 
[2026-03-18 16:10:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:10:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:11:16] [INFO] Checking activity reminders 
[2026-03-18 16:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:11:47] [INFO] Checking activity reminders 
[2026-03-18 16:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:12:17] [INFO] Checking activity reminders 
[2026-03-18 16:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:12:47] [INFO] Checking activity reminders 
[2026-03-18 16:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:13:17] [INFO] Checking activity reminders 
[2026-03-18 16:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:13:47] [INFO] Checking activity reminders 
[2026-03-18 16:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:14:17] [INFO] Checking activity reminders 
[2026-03-18 16:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:14:47] [INFO] Checking activity reminders 
[2026-03-18 16:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:15:17] [INFO] Checking activity reminders 
[2026-03-18 16:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:15:47] [INFO] Checking activity reminders 
[2026-03-18 16:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:16:17] [INFO] Checking activity reminders 
[2026-03-18 16:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:16:47] [INFO] Checking activity reminders 
[2026-03-18 16:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:17:17] [INFO] Checking activity reminders 
[2026-03-18 16:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:17:48] [INFO] Checking activity reminders 
[2026-03-18 16:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:18:18] [INFO] Checking activity reminders 
[2026-03-18 16:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:18:48] [INFO] Checking activity reminders 
[2026-03-18 16:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:19:18] [INFO] Checking activity reminders 
[2026-03-18 16:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:19:48] [INFO] Checking activity reminders 
[2026-03-18 16:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:20:18] [INFO] Checking activity reminders 
[2026-03-18 16:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:20:48] [INFO] Checking activity reminders 
[2026-03-18 16:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:21:18] [INFO] Checking activity reminders 
[2026-03-18 16:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:21:48] [INFO] Checking activity reminders 
[2026-03-18 16:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:22:19] [INFO] Checking activity reminders 
[2026-03-18 16:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:22:49] [INFO] Checking activity reminders 
[2026-03-18 16:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:23:19] [INFO] Checking activity reminders 
[2026-03-18 16:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:23:49] [INFO] Checking activity reminders 
[2026-03-18 16:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:24:19] [INFO] Checking activity reminders 
[2026-03-18 16:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:24:49] [INFO] Checking activity reminders 
[2026-03-18 16:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:25:19] [INFO] Checking activity reminders 
[2026-03-18 16:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:25:49] [INFO] Checking activity reminders 
[2026-03-18 16:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:26:19] [INFO] Checking activity reminders 
[2026-03-18 16:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:26:49] [INFO] Checking activity reminders 
[2026-03-18 16:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:27:19] [INFO] Checking activity reminders 
[2026-03-18 16:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:27:50] [INFO] Checking activity reminders 
[2026-03-18 16:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:28:20] [INFO] Checking activity reminders 
[2026-03-18 16:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:28:50] [INFO] Checking activity reminders 
[2026-03-18 16:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:28:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:28:59] [INFO] Checking activity reminders 
[2026-03-18 16:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:29:29] [INFO] Checking activity reminders 
[2026-03-18 16:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:29:36] [INFO] Checking activity reminders 
[2026-03-18 16:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:29:50] [INFO] Checking activity reminders 
[2026-03-18 16:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:29:51] [INFO] Checking activity reminders 
[2026-03-18 16:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:29:56] [INFO] Checking activity reminders 
[2026-03-18 16:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:30:02] [INFO] Activity save request {"post_data":{"contact_id":"11595","deal_id":"local_69b986ff6de6a1.37972034","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"جهت کانال cip  سوال داشتند \/ خانم بردبار پاسخ گو نیست بهش گفتم تعهد ما تا زمان انجام عملی میشود \r\nپرزنت 405 بدون پشتیبانی استاد \/ 54 \r\nدر 2 مرحله واریز نقد ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:30:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11595","note_was_empty":true}
[2026-03-18 16:30:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"11595","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:02] [INFO] Updating virtual stage {"contact_id":"11595","stage_name":"deal_registered","force":false}
[2026-03-18 16:30:02] [INFO] Virtual stage successfully saved {"contact_id":"11595","stage_name":"deal_registered"}
[2026-03-18 16:30:02] [INFO] Virtual stage updated after activity save {"contact_id":"11595"}
[2026-03-18 16:30:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b986ff6de6a1.37972034","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-18 16:30:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69baa1d2217456.71967146","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69baa1d2217456.71967146"}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:02] [INFO] Updating virtual stage {"contact_id":"11595","stage_name":"deal_registered","force":false}
[2026-03-18 16:30:02] [INFO] Virtual stage successfully saved {"contact_id":"11595","stage_name":"deal_registered"}
[2026-03-18 16:30:02] [INFO] Virtual stage updated after activity save {"contact_id":"11595"}
[2026-03-18 16:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:26] [INFO] Checking activity reminders 
[2026-03-18 16:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:30:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11595","deal_id":"local_69b986ff6de6a1.37972034","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 16:30:39","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 16:30:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11595","is_new_deal":false}
[2026-03-18 16:30:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:30:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:30:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-18 16:30:39] [INFO] getContactPrimaryPhone called {"contact_id":"11595"}
[2026-03-18 16:30:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:39] [INFO] getContactPrimaryPhone result {"contact_id":"11595","person_found":true,"primary_phone":"9122871815"}
[2026-03-18 16:30:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122871815"}
[2026-03-18 16:30:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122871815","contact_id":"11595","deal_id":"local_69b986ff6de6a1.37972034","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 16:30:39"}
[2026-03-18 16:30:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","existing_deal_found":true,"existing_contact_id":"11595","existing_title":"معامله چهارم 9122871815","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 16:30:39"}
[2026-03-18 16:30:39] [INFO] DealController.save validated payments {"deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-18 16:30:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11595","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 16:30:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b986ff6de6a1.37972034","contact_didar_id":"11595","title":"معامله چهارم 9122871815 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9122871815","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سلیمانی","existing_deal":"YES","existing_deal_id":"local_69b986ff6de6a1.37972034","existing_deal_status":"Pending","server_time":"2026-03-18 16:30:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 16:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9122871815 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-18 16:30:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 16:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-18 16:30:57] [INFO] Checking activity reminders 
[2026-03-18 16:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:31:27] [INFO] Checking activity reminders 
[2026-03-18 16:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:31:57] [INFO] Checking activity reminders 
[2026-03-18 16:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:32:27] [INFO] Checking activity reminders 
[2026-03-18 16:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:32:57] [INFO] Checking activity reminders 
[2026-03-18 16:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:33:27] [INFO] Checking activity reminders 
[2026-03-18 16:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:33:53] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c0bd58a264.66909550","deal_id":"local_69b5c0bd595a6","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:33:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c0bd58a264.66909550","note_was_empty":true}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:53] [INFO] Updating virtual stage {"contact_id":"local_69b5c0bd58a264.66909550","stage_name":"new","force":false}
[2026-03-18 16:33:53] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0bd58a264.66909550","stage_name":"new"}
[2026-03-18 16:33:53] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0bd58a264.66909550"}
[2026-03-18 16:33:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c0bd595a6","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 16:33:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69baa2b9ca8573.51718373","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69baa2b9ca8573.51718373"}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:53] [INFO] Updating virtual stage {"contact_id":"local_69b5c0bd58a264.66909550","stage_name":"deal_registered","force":false}
[2026-03-18 16:33:53] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c0bd58a264.66909550","stage_name":"deal_registered"}
[2026-03-18 16:33:53] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c0bd58a264.66909550"}
[2026-03-18 16:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c0bd58a264.66909550","person_id":"21848"}
[2026-03-18 16:33:57] [INFO] Checking activity reminders 
[2026-03-18 16:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:34:27] [INFO] Checking activity reminders 
[2026-03-18 16:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:34:57] [INFO] Checking activity reminders 
[2026-03-18 16:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:35:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:35:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:35:27] [INFO] Checking activity reminders 
[2026-03-18 16:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:38:01] [INFO] Checking activity reminders 
[2026-03-18 16:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:38:31] [INFO] Checking activity reminders 
[2026-03-18 16:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:39:01] [INFO] Checking activity reminders 
[2026-03-18 16:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:39:31] [INFO] Checking activity reminders 
[2026-03-18 16:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:39:32] [INFO] Checking activity reminders 
[2026-03-18 16:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:40:02] [INFO] Checking activity reminders 
[2026-03-18 16:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:40:32] [INFO] Checking activity reminders 
[2026-03-18 16:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:41:02] [INFO] Checking activity reminders 
[2026-03-18 16:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:41:32] [INFO] Checking activity reminders 
[2026-03-18 16:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:42:03] [INFO] Checking activity reminders 
[2026-03-18 16:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:42:33] [INFO] Checking activity reminders 
[2026-03-18 16:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:43:03] [INFO] Checking activity reminders 
[2026-03-18 16:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:43:33] [INFO] Checking activity reminders 
[2026-03-18 16:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:44:03] [INFO] Checking activity reminders 
[2026-03-18 16:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:44:33] [INFO] Checking activity reminders 
[2026-03-18 16:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:45:03] [INFO] Checking activity reminders 
[2026-03-18 16:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:45:33] [INFO] Checking activity reminders 
[2026-03-18 16:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:46:03] [INFO] Checking activity reminders 
[2026-03-18 16:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:46:34] [INFO] Checking activity reminders 
[2026-03-18 16:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:47:04] [INFO] Checking activity reminders 
[2026-03-18 16:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:47:34] [INFO] Checking activity reminders 
[2026-03-18 16:47:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:47:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:48:04] [INFO] Checking activity reminders 
[2026-03-18 16:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:48:05] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c02409e7e3.38569796","deal_id":"local_69b5c0240fedc","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 16:48:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c02409e7e3.38569796","note_was_empty":true}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:05] [INFO] Updating virtual stage {"contact_id":"local_69b5c02409e7e3.38569796","stage_name":"new","force":false}
[2026-03-18 16:48:05] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c02409e7e3.38569796","stage_name":"new"}
[2026-03-18 16:48:05] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c02409e7e3.38569796"}
[2026-03-18 16:48:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c0240fedc","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 16:48:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69baa60d1356e7.61683447","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69baa60d1356e7.61683447"}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:05] [INFO] Updating virtual stage {"contact_id":"local_69b5c02409e7e3.38569796","stage_name":"deal_registered","force":false}
[2026-03-18 16:48:05] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c02409e7e3.38569796","stage_name":"deal_registered"}
[2026-03-18 16:48:05] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c02409e7e3.38569796"}
[2026-03-18 16:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c02409e7e3.38569796","person_id":"21845"}
[2026-03-18 16:48:34] [INFO] Checking activity reminders 
[2026-03-18 16:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 16:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 16:49:04] [INFO] Checking activity reminders 
[2026-03-18 16:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:49:34] [INFO] Checking activity reminders 
[2026-03-18 16:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:50:04] [INFO] Checking activity reminders 
[2026-03-18 16:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:50:34] [INFO] Checking activity reminders 
[2026-03-18 16:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:51:04] [INFO] Checking activity reminders 
[2026-03-18 16:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:51:34] [INFO] Checking activity reminders 
[2026-03-18 16:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:52:04] [INFO] Checking activity reminders 
[2026-03-18 16:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:52:35] [INFO] Checking activity reminders 
[2026-03-18 16:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:53:05] [INFO] Checking activity reminders 
[2026-03-18 16:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:53:35] [INFO] Checking activity reminders 
[2026-03-18 16:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:54:05] [INFO] Checking activity reminders 
[2026-03-18 16:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:54:35] [INFO] Checking activity reminders 
[2026-03-18 16:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:55:05] [INFO] Checking activity reminders 
[2026-03-18 16:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:55:35] [INFO] Checking activity reminders 
[2026-03-18 16:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:56:05] [INFO] Checking activity reminders 
[2026-03-18 16:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:56:35] [INFO] Checking activity reminders 
[2026-03-18 16:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:57:05] [INFO] Checking activity reminders 
[2026-03-18 16:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:57:36] [INFO] Checking activity reminders 
[2026-03-18 16:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:58:06] [INFO] Checking activity reminders 
[2026-03-18 16:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:58:36] [INFO] Checking activity reminders 
[2026-03-18 16:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:59:06] [INFO] Checking activity reminders 
[2026-03-18 16:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 16:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 16:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 16:59:36] [INFO] Checking activity reminders 
[2026-03-18 16:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 16:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:00:06] [INFO] Checking activity reminders 
[2026-03-18 17:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:00:32] [INFO] Lead update received {"contact_id":"local_69b5c08e4f4f65.47774060","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 17:00:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:00:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:00:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c08e4f4f65.47774060"}
[2026-03-18 17:00:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:00:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:00:36] [INFO] Checking activity reminders 
[2026-03-18 17:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:01:06] [INFO] Checking activity reminders 
[2026-03-18 17:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:01:36] [INFO] Checking activity reminders 
[2026-03-18 17:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:02:07] [INFO] Checking activity reminders 
[2026-03-18 17:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:02:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c08e4f4f65.47774060","deal_id":"local_69b5c08e55ba1","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه من اصلا همچین درخواستی نداشتم \/ بهش گفتم شماره تون ما که نداشتیم خودتون گذاشتین میگه خطم دست خودم نیست \/ براش پیامک گذاشتم \r\nخودش پیگیری کنه ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 17:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 17:02:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 17:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c08e4f4f65.47774060","note_was_empty":true}
[2026-03-18 17:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:08] [INFO] Updating virtual stage {"contact_id":"local_69b5c08e4f4f65.47774060","stage_name":"new","force":false}
[2026-03-18 17:02:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c08e4f4f65.47774060","stage_name":"new"}
[2026-03-18 17:02:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c08e4f4f65.47774060"}
[2026-03-18 17:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c08e55ba1","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-18 17:02:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69baa957f00520.59737720","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 17:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69baa957f00520.59737720"}
[2026-03-18 17:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:08] [INFO] Updating virtual stage {"contact_id":"local_69b5c08e4f4f65.47774060","stage_name":"deal_registered","force":false}
[2026-03-18 17:02:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c08e4f4f65.47774060","stage_name":"deal_registered"}
[2026-03-18 17:02:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c08e4f4f65.47774060"}
[2026-03-18 17:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c08e4f4f65.47774060","person_id":"21846"}
[2026-03-18 17:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:02:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:02:37] [INFO] Checking activity reminders 
[2026-03-18 17:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:03:07] [INFO] Checking activity reminders 
[2026-03-18 17:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:03:37] [INFO] Checking activity reminders 
[2026-03-18 17:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:04:07] [INFO] Checking activity reminders 
[2026-03-18 17:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:04:37] [INFO] Checking activity reminders 
[2026-03-18 17:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:05:07] [INFO] Checking activity reminders 
[2026-03-18 17:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:05:12] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c12646e224.91180719","deal_id":"local_69b5c1264b487","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 17:05:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c12646e224.91180719","note_was_empty":true}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:12] [INFO] Updating virtual stage {"contact_id":"local_69b5c12646e224.91180719","stage_name":"new","force":false}
[2026-03-18 17:05:12] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c12646e224.91180719","stage_name":"new"}
[2026-03-18 17:05:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c12646e224.91180719"}
[2026-03-18 17:05:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c1264b487","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 17:05:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69baaa10573983.02597118","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69baaa10573983.02597118"}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:12] [INFO] Updating virtual stage {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered","force":false}
[2026-03-18 17:05:12] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered"}
[2026-03-18 17:05:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c12646e224.91180719"}
[2026-03-18 17:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:05:37] [INFO] Checking activity reminders 
[2026-03-18 17:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:06:07] [INFO] Checking activity reminders 
[2026-03-18 17:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:06:37] [INFO] Checking activity reminders 
[2026-03-18 17:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:07:08] [INFO] Checking activity reminders 
[2026-03-18 17:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:07:38] [INFO] Checking activity reminders 
[2026-03-18 17:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:08:08] [INFO] Checking activity reminders 
[2026-03-18 17:08:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:08:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:08:38] [INFO] Checking activity reminders 
[2026-03-18 17:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:09:08] [INFO] Checking activity reminders 
[2026-03-18 17:09:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:09:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:09:38] [INFO] Checking activity reminders 
[2026-03-18 17:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:10:08] [INFO] Checking activity reminders 
[2026-03-18 17:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:10:38] [INFO] Checking activity reminders 
[2026-03-18 17:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:11:08] [INFO] Checking activity reminders 
[2026-03-18 17:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:11:38] [INFO] Checking activity reminders 
[2026-03-18 17:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:12:08] [INFO] Checking activity reminders 
[2026-03-18 17:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:12:38] [INFO] Checking activity reminders 
[2026-03-18 17:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:13:09] [INFO] Checking activity reminders 
[2026-03-18 17:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:13:39] [INFO] Checking activity reminders 
[2026-03-18 17:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:14:09] [INFO] Checking activity reminders 
[2026-03-18 17:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:14:39] [INFO] Checking activity reminders 
[2026-03-18 17:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:15:09] [INFO] Checking activity reminders 
[2026-03-18 17:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:15:39] [INFO] Checking activity reminders 
[2026-03-18 17:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:16:09] [INFO] Checking activity reminders 
[2026-03-18 17:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:16:39] [INFO] Checking activity reminders 
[2026-03-18 17:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:17:10] [INFO] Checking activity reminders 
[2026-03-18 17:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:17:40] [INFO] Checking activity reminders 
[2026-03-18 17:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:18:10] [INFO] Checking activity reminders 
[2026-03-18 17:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:18:40] [INFO] Checking activity reminders 
[2026-03-18 17:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:19:10] [INFO] Checking activity reminders 
[2026-03-18 17:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:19:40] [INFO] Checking activity reminders 
[2026-03-18 17:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:20:10] [INFO] Checking activity reminders 
[2026-03-18 17:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:20:40] [INFO] Checking activity reminders 
[2026-03-18 17:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:21:10] [INFO] Checking activity reminders 
[2026-03-18 17:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:21:40] [INFO] Checking activity reminders 
[2026-03-18 17:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:22:10] [INFO] Checking activity reminders 
[2026-03-18 17:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:22:40] [INFO] Checking activity reminders 
[2026-03-18 17:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:23:11] [INFO] Checking activity reminders 
[2026-03-18 17:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:23:41] [INFO] Checking activity reminders 
[2026-03-18 17:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:24:11] [INFO] Checking activity reminders 
[2026-03-18 17:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:24:41] [INFO] Checking activity reminders 
[2026-03-18 17:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:25:11] [INFO] Checking activity reminders 
[2026-03-18 17:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:25:41] [INFO] Checking activity reminders 
[2026-03-18 17:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:26:11] [INFO] Checking activity reminders 
[2026-03-18 17:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:26:41] [INFO] Checking activity reminders 
[2026-03-18 17:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:27:11] [INFO] Checking activity reminders 
[2026-03-18 17:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:27:41] [INFO] Checking activity reminders 
[2026-03-18 17:27:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:27:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:28:11] [INFO] Checking activity reminders 
[2026-03-18 17:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:28:41] [INFO] Checking activity reminders 
[2026-03-18 17:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:29:12] [INFO] Checking activity reminders 
[2026-03-18 17:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:29:42] [INFO] Checking activity reminders 
[2026-03-18 17:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:30:12] [INFO] Checking activity reminders 
[2026-03-18 17:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:30:42] [INFO] Checking activity reminders 
[2026-03-18 17:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:31:12] [INFO] Checking activity reminders 
[2026-03-18 17:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:31:14] [INFO] Lead update received {"contact_id":"local_69b5cf1280cb81.11074755","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 17:31:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:31:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:31:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5cf1280cb81.11074755"}
[2026-03-18 17:31:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:31:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:31:42] [INFO] Checking activity reminders 
[2026-03-18 17:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:32:12] [INFO] Checking activity reminders 
[2026-03-18 17:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:32:42] [INFO] Checking activity reminders 
[2026-03-18 17:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:33:12] [INFO] Checking activity reminders 
[2026-03-18 17:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:33:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b5cf1280cb81.11074755","deal_id":"local_69b5cf1284c22","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 17:33:24","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 17:33:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:33:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b5cf1280cb81.11074755","is_new_deal":false}
[2026-03-18 17:33:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 17:33:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 17:33:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 17:33:24] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b5cf1280cb81.11074755"}
[2026-03-18 17:33:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:33:24] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b5cf1280cb81.11074755","person_found":true,"primary_phone":"9194733236"}
[2026-03-18 17:33:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9194733236"}
[2026-03-18 17:33:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9194733236","contact_id":"local_69b5cf1280cb81.11074755","deal_id":"local_69b5cf1284c22","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 17:33:24"}
[2026-03-18 17:33:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5cf1284c22","contact_id":"local_69b5cf1280cb81.11074755","existing_deal_found":true,"existing_contact_id":"local_69b5cf1280cb81.11074755","existing_title":"معامله اول 9194733236","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 17:33:24"}
[2026-03-18 17:33:24] [INFO] DealController.save validated payments {"deal_id":"local_69b5cf1284c22","contact_id":"local_69b5cf1280cb81.11074755","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-18 17:33:24] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b5cf1280cb81.11074755","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 17:33:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5cf1284c22","contact_didar_id":"local_69b5cf1280cb81.11074755","title":"معامله اول 9194733236 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9194733236","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان حسینی","existing_deal":"YES","existing_deal_id":"local_69b5cf1284c22","existing_deal_status":"Pending","server_time":"2026-03-18 17:33:24","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 17:33:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:33:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5cf1284c22","contact_id":"local_69b5cf1280cb81.11074755","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9194733236 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-18 17:33:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 17:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:33:42] [INFO] Checking activity reminders 
[2026-03-18 17:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:34:12] [INFO] Checking activity reminders 
[2026-03-18 17:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:34:43] [INFO] Checking activity reminders 
[2026-03-18 17:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:35:13] [INFO] Checking activity reminders 
[2026-03-18 17:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:35:43] [INFO] Checking activity reminders 
[2026-03-18 17:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:36:13] [INFO] Checking activity reminders 
[2026-03-18 17:36:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:36:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:36:43] [INFO] Checking activity reminders 
[2026-03-18 17:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:37:13] [INFO] Checking activity reminders 
[2026-03-18 17:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:37:43] [INFO] Checking activity reminders 
[2026-03-18 17:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:38:13] [INFO] Checking activity reminders 
[2026-03-18 17:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:38:43] [INFO] Checking activity reminders 
[2026-03-18 17:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:39:13] [INFO] Checking activity reminders 
[2026-03-18 17:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:39:44] [INFO] Checking activity reminders 
[2026-03-18 17:39:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:39:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:40:14] [INFO] Checking activity reminders 
[2026-03-18 17:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:40:44] [INFO] Checking activity reminders 
[2026-03-18 17:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:41:14] [INFO] Checking activity reminders 
[2026-03-18 17:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:41:44] [INFO] Checking activity reminders 
[2026-03-18 17:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:42:14] [INFO] Checking activity reminders 
[2026-03-18 17:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:42:44] [INFO] Checking activity reminders 
[2026-03-18 17:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:43:14] [INFO] Checking activity reminders 
[2026-03-18 17:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:43:44] [INFO] Checking activity reminders 
[2026-03-18 17:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:44:15] [INFO] Checking activity reminders 
[2026-03-18 17:44:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:44:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:44:45] [INFO] Checking activity reminders 
[2026-03-18 17:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:45:15] [INFO] Checking activity reminders 
[2026-03-18 17:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:45:45] [INFO] Checking activity reminders 
[2026-03-18 17:45:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:45:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:46:15] [INFO] Checking activity reminders 
[2026-03-18 17:46:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:46:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:46:45] [INFO] Checking activity reminders 
[2026-03-18 17:46:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:46:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:47:15] [INFO] Checking activity reminders 
[2026-03-18 17:47:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:47:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:47:16] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5cf1280cb81.11074755","deal_id":"local_69b5cf1284c22","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"1.5 ساله دنبال در تلگرام \r\nحسابرس مالی \r\nدر طلا و سکه و خودرو سرمایه گذاری \r\nکانال های زیادی دنبال \/ 400 نقد \r\nپرزنت 405 \/ پشتیبانی استاد \r\nمشورت با برادر \r\nچند بار برای کانال 404 خواسته اقدام کنه \/ فکر میکرد 15 م بوده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 17:47:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5cf1280cb81.11074755","note_was_empty":true}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:16] [INFO] Updating virtual stage {"contact_id":"local_69b5cf1280cb81.11074755","stage_name":"new","force":false}
[2026-03-18 17:47:16] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cf1280cb81.11074755","stage_name":"new"}
[2026-03-18 17:47:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cf1280cb81.11074755"}
[2026-03-18 17:47:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5cf1284c22","stage":"تماس پیگیری","status_change":null}
[2026-03-18 17:47:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bab3ec280600.94596915","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69bab3ec280600.94596915"}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:16] [INFO] Updating virtual stage {"contact_id":"local_69b5cf1280cb81.11074755","stage_name":"deal_registered","force":false}
[2026-03-18 17:47:16] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cf1280cb81.11074755","stage_name":"deal_registered"}
[2026-03-18 17:47:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cf1280cb81.11074755"}
[2026-03-18 17:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cf1280cb81.11074755","person_id":"21864"}
[2026-03-18 17:47:21] [INFO] Checking activity reminders 
[2026-03-18 17:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:47:23] [INFO] Checking activity reminders 
[2026-03-18 17:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:47:24] [INFO] Checking activity reminders 
[2026-03-18 17:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:47:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:47:54] [INFO] Checking activity reminders 
[2026-03-18 17:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:48:15] [INFO] Lead update received {"contact_id":"local_69b5c12646e224.91180719","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 17:48:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:48:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:48:15] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c12646e224.91180719"}
[2026-03-18 17:48:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:48:24] [INFO] Checking activity reminders 
[2026-03-18 17:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:48:54] [INFO] Checking activity reminders 
[2026-03-18 17:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:49:24] [INFO] Checking activity reminders 
[2026-03-18 17:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:49:54] [INFO] Checking activity reminders 
[2026-03-18 17:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:50:24] [INFO] Checking activity reminders 
[2026-03-18 17:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:50:52] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c12646e224.91180719","deal_id":"local_69b5c1264b487","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"1 ماهه اشنا \r\n26 ساله\/ معلم \r\n60 میلیون وام خودش و 150 میلیون وام پدرش دلار خریده متضرر شده \r\nارومیه \/ ماکو \r\nمیگه الان دلار بفروشم \r\nکانال 405 براش مناسب نیست سرمایه و درامد خیلی پایین \r\nبهش مشاوره دادم جهت شغل دوم \/کارشناسی و معامله خودرو \r\nدر پیامک ارسال کردم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 17:50:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b5c12646e224.91180719","note_was_empty":true}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:52] [INFO] Updating virtual stage {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered","force":false}
[2026-03-18 17:50:52] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered"}
[2026-03-18 17:50:52] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c12646e224.91180719"}
[2026-03-18 17:50:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c1264b487","stage":"تماس پیگیری","status_change":null}
[2026-03-18 17:50:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bab4c4048833.28600588","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69bab4c4048833.28600588"}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:52] [INFO] Updating virtual stage {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered","force":false}
[2026-03-18 17:50:52] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c12646e224.91180719","stage_name":"deal_registered"}
[2026-03-18 17:50:52] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c12646e224.91180719"}
[2026-03-18 17:50:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c12646e224.91180719","person_id":"21850"}
[2026-03-18 17:50:54] [INFO] Checking activity reminders 
[2026-03-18 17:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:51:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:51:13] [INFO] Checking activity reminders 
[2026-03-18 17:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:18] [INFO] Checking activity reminders 
[2026-03-18 17:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:30] [INFO] Checking activity reminders 
[2026-03-18 17:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:34] [INFO] Checking activity reminders 
[2026-03-18 17:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:38] [INFO] Checking activity reminders 
[2026-03-18 17:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:51:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:51:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:52:08] [INFO] Checking activity reminders 
[2026-03-18 17:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:52:38] [INFO] Checking activity reminders 
[2026-03-18 17:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:53:09] [INFO] Checking activity reminders 
[2026-03-18 17:53:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:53:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:53:39] [INFO] Checking activity reminders 
[2026-03-18 17:53:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:53:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:54:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69b71a339a4045.55733842","deal_id":"local_69b71a33a12ec","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 17:54:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b71a339a4045.55733842","note_was_empty":true}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:07] [INFO] Updating virtual stage {"contact_id":"local_69b71a339a4045.55733842","stage_name":"new","force":false}
[2026-03-18 17:54:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71a339a4045.55733842","stage_name":"new"}
[2026-03-18 17:54:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71a339a4045.55733842"}
[2026-03-18 17:54:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b71a33a12ec","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 17:54:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bab587723e72.45690777","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69bab587723e72.45690777"}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:07] [INFO] Updating virtual stage {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered","force":false}
[2026-03-18 17:54:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered"}
[2026-03-18 17:54:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71a339a4045.55733842"}
[2026-03-18 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 17:54:09] [INFO] Checking activity reminders 
[2026-03-18 17:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 17:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 17:54:39] [INFO] Checking activity reminders 
[2026-03-18 17:54:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:54:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:55:09] [INFO] Checking activity reminders 
[2026-03-18 17:55:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:55:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:55:39] [INFO] Checking activity reminders 
[2026-03-18 17:55:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:55:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:56:09] [INFO] Checking activity reminders 
[2026-03-18 17:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:56:39] [INFO] Checking activity reminders 
[2026-03-18 17:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:57:09] [INFO] Checking activity reminders 
[2026-03-18 17:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:57:39] [INFO] Checking activity reminders 
[2026-03-18 17:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:58:09] [INFO] Checking activity reminders 
[2026-03-18 17:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:58:40] [INFO] Checking activity reminders 
[2026-03-18 17:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:59:10] [INFO] Checking activity reminders 
[2026-03-18 17:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 17:59:40] [INFO] Checking activity reminders 
[2026-03-18 17:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 17:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:00:10] [INFO] Checking activity reminders 
[2026-03-18 18:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:00:40] [INFO] Checking activity reminders 
[2026-03-18 18:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:01:10] [INFO] Checking activity reminders 
[2026-03-18 18:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:01:40] [INFO] Checking activity reminders 
[2026-03-18 18:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:02:10] [INFO] Checking activity reminders 
[2026-03-18 18:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:02:41] [INFO] Checking activity reminders 
[2026-03-18 18:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:03:11] [INFO] Checking activity reminders 
[2026-03-18 18:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:03:41] [INFO] Checking activity reminders 
[2026-03-18 18:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:04:11] [INFO] Checking activity reminders 
[2026-03-18 18:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:04:41] [INFO] Checking activity reminders 
[2026-03-18 18:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:05:11] [INFO] Checking activity reminders 
[2026-03-18 18:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:05:41] [INFO] Checking activity reminders 
[2026-03-18 18:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:06:11] [INFO] Checking activity reminders 
[2026-03-18 18:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:06:41] [INFO] Checking activity reminders 
[2026-03-18 18:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:07:11] [INFO] Checking activity reminders 
[2026-03-18 18:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:07:41] [INFO] Checking activity reminders 
[2026-03-18 18:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:08:11] [INFO] Checking activity reminders 
[2026-03-18 18:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:08:42] [INFO] Checking activity reminders 
[2026-03-18 18:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:09:12] [INFO] Checking activity reminders 
[2026-03-18 18:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:09:42] [INFO] Checking activity reminders 
[2026-03-18 18:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:10:12] [INFO] Checking activity reminders 
[2026-03-18 18:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:10:42] [INFO] Checking activity reminders 
[2026-03-18 18:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:11:12] [INFO] Checking activity reminders 
[2026-03-18 18:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:11:42] [INFO] Checking activity reminders 
[2026-03-18 18:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:12:12] [INFO] Checking activity reminders 
[2026-03-18 18:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:12:43] [INFO] Checking activity reminders 
[2026-03-18 18:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:13:13] [INFO] Checking activity reminders 
[2026-03-18 18:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:13:43] [INFO] Checking activity reminders 
[2026-03-18 18:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:13:56] [INFO] Checking activity reminders 
[2026-03-18 18:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:14:20] [INFO] Checking activity reminders 
[2026-03-18 18:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:14:22] [INFO] Checking activity reminders 
[2026-03-18 18:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:14:52] [INFO] Checking activity reminders 
[2026-03-18 18:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:15:22] [INFO] Checking activity reminders 
[2026-03-18 18:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:15:53] [INFO] Checking activity reminders 
[2026-03-18 18:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:16:23] [INFO] Checking activity reminders 
[2026-03-18 18:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:16:53] [INFO] Checking activity reminders 
[2026-03-18 18:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:17:23] [INFO] Checking activity reminders 
[2026-03-18 18:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:17:53] [INFO] Checking activity reminders 
[2026-03-18 18:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:18:23] [INFO] Checking activity reminders 
[2026-03-18 18:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:18:53] [INFO] Checking activity reminders 
[2026-03-18 18:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:19:23] [INFO] Checking activity reminders 
[2026-03-18 18:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:19:53] [INFO] Checking activity reminders 
[2026-03-18 18:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:20:23] [INFO] Checking activity reminders 
[2026-03-18 18:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:20:53] [INFO] Checking activity reminders 
[2026-03-18 18:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:21:24] [INFO] Checking activity reminders 
[2026-03-18 18:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:21:54] [INFO] Checking activity reminders 
[2026-03-18 18:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:22:24] [INFO] Checking activity reminders 
[2026-03-18 18:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:22:54] [INFO] Checking activity reminders 
[2026-03-18 18:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:05] [INFO] Checking activity reminders 
[2026-03-18 18:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:14] [INFO] Checking activity reminders 
[2026-03-18 18:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:16] [INFO] Checking activity reminders 
[2026-03-18 18:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:20] [INFO] Checking activity reminders 
[2026-03-18 18:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:22] [INFO] Checking activity reminders 
[2026-03-18 18:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:23:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:23:48] [INFO] Lead update received {"contact_id":"local_69b71a339a4045.55733842","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 18:23:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:23:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:23:48] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b71a339a4045.55733842"}
[2026-03-18 18:23:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:23:52] [INFO] Checking activity reminders 
[2026-03-18 18:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:24:22] [INFO] Checking activity reminders 
[2026-03-18 18:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:24:26] [INFO] Activity save request {"post_data":{"contact_id":"local_69b71a339a4045.55733842","deal_id":"local_69b71a33a12ec","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پیامک داد جایی هست شرایط صحبت نداره \r\nخودش تماس میگیره ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 18:24:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b71a339a4045.55733842","note_was_empty":true}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:26] [INFO] Updating virtual stage {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered","force":false}
[2026-03-18 18:24:26] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered"}
[2026-03-18 18:24:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71a339a4045.55733842"}
[2026-03-18 18:24:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b71a33a12ec","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 18:24:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69babca2727546.15545336","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69babca2727546.15545336"}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:26] [INFO] Updating virtual stage {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered","force":false}
[2026-03-18 18:24:26] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71a339a4045.55733842","stage_name":"deal_registered"}
[2026-03-18 18:24:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71a339a4045.55733842"}
[2026-03-18 18:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71a339a4045.55733842","person_id":"21873"}
[2026-03-18 18:24:37] [INFO] Checking activity reminders 
[2026-03-18 18:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:25:07] [INFO] Checking activity reminders 
[2026-03-18 18:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:25:11] [INFO] Activity save request {"post_data":{"contact_id":"local_69b98812684d53.79123214","deal_id":"local_69b988129133f","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 18:25:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b98812684d53.79123214","note_was_empty":true}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:11] [INFO] Updating virtual stage {"contact_id":"local_69b98812684d53.79123214","stage_name":"new","force":false}
[2026-03-18 18:25:11] [INFO] Virtual stage successfully saved {"contact_id":"local_69b98812684d53.79123214","stage_name":"new"}
[2026-03-18 18:25:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b98812684d53.79123214"}
[2026-03-18 18:25:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b988129133f","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-18 18:25:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69babccf83ba09.64518257","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69babccf83ba09.64518257"}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:11] [INFO] Updating virtual stage {"contact_id":"local_69b98812684d53.79123214","stage_name":"deal_registered","force":false}
[2026-03-18 18:25:11] [INFO] Virtual stage successfully saved {"contact_id":"local_69b98812684d53.79123214","stage_name":"deal_registered"}
[2026-03-18 18:25:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b98812684d53.79123214"}
[2026-03-18 18:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-18 18:25:37] [INFO] Checking activity reminders 
[2026-03-18 18:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:26:07] [INFO] Checking activity reminders 
[2026-03-18 18:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:26:37] [INFO] Checking activity reminders 
[2026-03-18 18:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:27:07] [INFO] Checking activity reminders 
[2026-03-18 18:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:27:37] [INFO] Checking activity reminders 
[2026-03-18 18:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:28:08] [INFO] Checking activity reminders 
[2026-03-18 18:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:28:38] [INFO] Checking activity reminders 
[2026-03-18 18:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:29:08] [INFO] Checking activity reminders 
[2026-03-18 18:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:29:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:29:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:29:38] [INFO] Checking activity reminders 
[2026-03-18 18:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:30:08] [INFO] Checking activity reminders 
[2026-03-18 18:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:30:38] [INFO] Checking activity reminders 
[2026-03-18 18:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:30:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:30:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:31:08] [INFO] Checking activity reminders 
[2026-03-18 18:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:31:38] [INFO] Checking activity reminders 
[2026-03-18 18:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:32:08] [INFO] Checking activity reminders 
[2026-03-18 18:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:32:38] [INFO] Checking activity reminders 
[2026-03-18 18:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:33:08] [INFO] Checking activity reminders 
[2026-03-18 18:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:33:38] [INFO] Checking activity reminders 
[2026-03-18 18:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:34:09] [INFO] Checking activity reminders 
[2026-03-18 18:34:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:34:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:34:39] [INFO] Checking activity reminders 
[2026-03-18 18:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:35:09] [INFO] Checking activity reminders 
[2026-03-18 18:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:35:39] [INFO] Checking activity reminders 
[2026-03-18 18:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:36:09] [INFO] Checking activity reminders 
[2026-03-18 18:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:36:39] [INFO] Checking activity reminders 
[2026-03-18 18:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:37:09] [INFO] Checking activity reminders 
[2026-03-18 18:37:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:37:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:37:39] [INFO] Checking activity reminders 
[2026-03-18 18:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:38:09] [INFO] Checking activity reminders 
[2026-03-18 18:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:38:39] [INFO] Checking activity reminders 
[2026-03-18 18:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:39:09] [INFO] Checking activity reminders 
[2026-03-18 18:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:39:39] [INFO] Checking activity reminders 
[2026-03-18 18:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:40:09] [INFO] Checking activity reminders 
[2026-03-18 18:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:40:40] [INFO] Checking activity reminders 
[2026-03-18 18:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:44:10] [INFO] Checking activity reminders 
[2026-03-18 18:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:44:40] [INFO] Checking activity reminders 
[2026-03-18 18:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:45:10] [INFO] Checking activity reminders 
[2026-03-18 18:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:45:40] [INFO] Checking activity reminders 
[2026-03-18 18:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:45:43] [INFO] Lead update received {"contact_id":"local_69b6a793c4c6f7.03520358","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-18 18:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:45:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b6a793c4c6f7.03520358"}
[2026-03-18 18:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:10] [INFO] Checking activity reminders 
[2026-03-18 18:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:46:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b6a793c4c6f7.03520358","deal_id":"local_69b6a793c8066","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 18:46:37","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 18:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b6a793c4c6f7.03520358","is_new_deal":false}
[2026-03-18 18:46:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 18:46:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 18:46:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 18:46:37] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b6a793c4c6f7.03520358"}
[2026-03-18 18:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:37] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b6a793c4c6f7.03520358","person_found":true,"primary_phone":"9153901879"}
[2026-03-18 18:46:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153901879"}
[2026-03-18 18:46:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153901879","contact_id":"local_69b6a793c4c6f7.03520358","deal_id":"local_69b6a793c8066","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 18:46:37"}
[2026-03-18 18:46:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6a793c8066","contact_id":"local_69b6a793c4c6f7.03520358","existing_deal_found":true,"existing_contact_id":"local_69b6a793c4c6f7.03520358","existing_title":"معامله اول 9153901879","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 18:46:37"}
[2026-03-18 18:46:37] [INFO] DealController.save validated payments {"deal_id":"local_69b6a793c8066","contact_id":"local_69b6a793c4c6f7.03520358","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-18 18:46:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b6a793c4c6f7.03520358","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 18:46:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6a793c8066","contact_didar_id":"local_69b6a793c4c6f7.03520358","title":"معامله اول 9153901879 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9153901879","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصرزاده مصرزاده","existing_deal":"YES","existing_deal_id":"local_69b6a793c8066","existing_deal_status":"Pending","server_time":"2026-03-18 18:46:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 18:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6a793c8066","contact_id":"local_69b6a793c4c6f7.03520358","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9153901879 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-18 18:46:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 18:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 18:46:40] [INFO] Checking activity reminders 
[2026-03-18 18:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:47:10] [INFO] Checking activity reminders 
[2026-03-18 18:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:47:41] [INFO] Checking activity reminders 
[2026-03-18 18:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:48:11] [INFO] Checking activity reminders 
[2026-03-18 18:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:48:41] [INFO] Checking activity reminders 
[2026-03-18 18:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:49:11] [INFO] Checking activity reminders 
[2026-03-18 18:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:49:41] [INFO] Checking activity reminders 
[2026-03-18 18:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:50:11] [INFO] Checking activity reminders 
[2026-03-18 18:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:50:41] [INFO] Checking activity reminders 
[2026-03-18 18:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:51:11] [INFO] Checking activity reminders 
[2026-03-18 18:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:51:41] [INFO] Checking activity reminders 
[2026-03-18 18:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:52:11] [INFO] Checking activity reminders 
[2026-03-18 18:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:52:41] [INFO] Checking activity reminders 
[2026-03-18 18:52:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:52:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:53:12] [INFO] Checking activity reminders 
[2026-03-18 18:53:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:53:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:53:42] [INFO] Checking activity reminders 
[2026-03-18 18:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:54:12] [INFO] Checking activity reminders 
[2026-03-18 18:54:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:54:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:54:42] [INFO] Checking activity reminders 
[2026-03-18 18:54:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:54:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:55:12] [INFO] Checking activity reminders 
[2026-03-18 18:55:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:55:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:55:42] [INFO] Checking activity reminders 
[2026-03-18 18:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:56:12] [INFO] Checking activity reminders 
[2026-03-18 18:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:56:42] [INFO] Checking activity reminders 
[2026-03-18 18:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:57:13] [INFO] Checking activity reminders 
[2026-03-18 18:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:57:43] [INFO] Checking activity reminders 
[2026-03-18 18:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:58:13] [INFO] Checking activity reminders 
[2026-03-18 18:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:58:43] [INFO] Checking activity reminders 
[2026-03-18 18:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:59:13] [INFO] Checking activity reminders 
[2026-03-18 18:59:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:59:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 18:59:43] [INFO] Checking activity reminders 
[2026-03-18 18:59:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 18:59:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:00:13] [INFO] Checking activity reminders 
[2026-03-18 19:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:00:43] [INFO] Checking activity reminders 
[2026-03-18 19:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:01:13] [INFO] Checking activity reminders 
[2026-03-18 19:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:01:43] [INFO] Checking activity reminders 
[2026-03-18 19:01:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:01:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:02:13] [INFO] Checking activity reminders 
[2026-03-18 19:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:02:43] [INFO] Checking activity reminders 
[2026-03-18 19:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:03:14] [INFO] Checking activity reminders 
[2026-03-18 19:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:03:44] [INFO] Checking activity reminders 
[2026-03-18 19:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:04:14] [INFO] Checking activity reminders 
[2026-03-18 19:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:04:44] [INFO] Checking activity reminders 
[2026-03-18 19:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:05:14] [INFO] Checking activity reminders 
[2026-03-18 19:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:05:44] [INFO] Checking activity reminders 
[2026-03-18 19:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:06:14] [INFO] Checking activity reminders 
[2026-03-18 19:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:06:44] [INFO] Checking activity reminders 
[2026-03-18 19:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:07:14] [INFO] Checking activity reminders 
[2026-03-18 19:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:07:45] [INFO] Checking activity reminders 
[2026-03-18 19:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:08:15] [INFO] Checking activity reminders 
[2026-03-18 19:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:08:45] [INFO] Checking activity reminders 
[2026-03-18 19:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:09:15] [INFO] Checking activity reminders 
[2026-03-18 19:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:09:45] [INFO] Checking activity reminders 
[2026-03-18 19:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:10:15] [INFO] Checking activity reminders 
[2026-03-18 19:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:10:45] [INFO] Checking activity reminders 
[2026-03-18 19:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:11:15] [INFO] Checking activity reminders 
[2026-03-18 19:11:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:11:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:11:45] [INFO] Checking activity reminders 
[2026-03-18 19:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:11:55] [INFO] Activity save request {"post_data":{"contact_id":"local_69b6a793c4c6f7.03520358","deal_id":"local_69b6a793c8066","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"3 ساله دنبال \r\nقوچان \r\nکارمند \r\nدر طلا فیزیکی سرمایه \/22 م طلا خریده 80 میلون متضرر  در 20 گرم طلا \r\n3 میلیارد سرمایه \r\n20 دقیقه مشاوره جهت سرمایه گذاری و پشتیبانی با استاد \r\nمشورت با خانمش \r\nپیامک ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:11:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 19:11:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:11:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b6a793c4c6f7.03520358","note_was_empty":true}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:11:55] [INFO] Updating virtual stage {"contact_id":"local_69b6a793c4c6f7.03520358","stage_name":"new","force":false}
[2026-03-18 19:11:55] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6a793c4c6f7.03520358","stage_name":"new"}
[2026-03-18 19:11:55] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6a793c4c6f7.03520358"}
[2026-03-18 19:11:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6a793c8066","stage":"تماس پیگیری","status_change":null}
[2026-03-18 19:11:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bac7c39daa61.27910232","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:11:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69bac7c39daa61.27910232"}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:11:55] [INFO] Updating virtual stage {"contact_id":"local_69b6a793c4c6f7.03520358","stage_name":"deal_registered","force":false}
[2026-03-18 19:11:55] [INFO] Virtual stage successfully saved {"contact_id":"local_69b6a793c4c6f7.03520358","stage_name":"deal_registered"}
[2026-03-18 19:11:55] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b6a793c4c6f7.03520358"}
[2026-03-18 19:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a793c4c6f7.03520358","person_id":"21866"}
[2026-03-18 19:12:15] [INFO] Checking activity reminders 
[2026-03-18 19:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:12:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:12:45] [INFO] Checking activity reminders 
[2026-03-18 19:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:13:15] [INFO] Checking activity reminders 
[2026-03-18 19:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:13:46] [INFO] Checking activity reminders 
[2026-03-18 19:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:14:16] [INFO] Checking activity reminders 
[2026-03-18 19:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:14:46] [INFO] Checking activity reminders 
[2026-03-18 19:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:15:16] [INFO] Checking activity reminders 
[2026-03-18 19:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:15:46] [INFO] Checking activity reminders 
[2026-03-18 19:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:16:16] [INFO] Checking activity reminders 
[2026-03-18 19:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:16:46] [INFO] Checking activity reminders 
[2026-03-18 19:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:17:16] [INFO] Checking activity reminders 
[2026-03-18 19:17:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:17:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:17:46] [INFO] Checking activity reminders 
[2026-03-18 19:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:18:16] [INFO] Checking activity reminders 
[2026-03-18 19:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:18:46] [INFO] Checking activity reminders 
[2026-03-18 19:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:19:16] [INFO] Checking activity reminders 
[2026-03-18 19:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:19:47] [INFO] Checking activity reminders 
[2026-03-18 19:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:20:17] [INFO] Checking activity reminders 
[2026-03-18 19:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:20:47] [INFO] Checking activity reminders 
[2026-03-18 19:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:21:17] [INFO] Checking activity reminders 
[2026-03-18 19:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:21:47] [INFO] Checking activity reminders 
[2026-03-18 19:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:22:17] [INFO] Checking activity reminders 
[2026-03-18 19:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:22:47] [INFO] Checking activity reminders 
[2026-03-18 19:22:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:22:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:23:18] [INFO] Checking activity reminders 
[2026-03-18 19:23:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:23:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:23:48] [INFO] Checking activity reminders 
[2026-03-18 19:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:24:18] [INFO] Checking activity reminders 
[2026-03-18 19:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:24:48] [INFO] Checking activity reminders 
[2026-03-18 19:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:25:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21608","deal_id":"local_69b533bc5cb524.07389212","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 19:25:09","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 19:25:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:25:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21608","is_new_deal":false}
[2026-03-18 19:25:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 19:25:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 19:25:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 19:25:09] [INFO] getContactPrimaryPhone called {"contact_id":"21608"}
[2026-03-18 19:25:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:25:09] [INFO] getContactPrimaryPhone result {"contact_id":"21608","person_found":true,"primary_phone":"9151632237"}
[2026-03-18 19:25:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151632237"}
[2026-03-18 19:25:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151632237","contact_id":"21608","deal_id":"local_69b533bc5cb524.07389212","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 19:25:09"}
[2026-03-18 19:25:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b533bc5cb524.07389212","contact_id":"21608","existing_deal_found":true,"existing_contact_id":"21608","existing_title":"معامله دوم 9151632237 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 19:25:09"}
[2026-03-18 19:25:09] [INFO] DealController.save validated payments {"deal_id":"local_69b533bc5cb524.07389212","contact_id":"21608","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-18 19:25:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21608","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 19:25:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b533bc5cb524.07389212","contact_didar_id":"21608","title":"معامله دوم 9151632237 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151632237","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل دلسوز","existing_deal":"YES","existing_deal_id":"local_69b533bc5cb524.07389212","existing_deal_status":"Pending","server_time":"2026-03-18 19:25:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 19:25:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:25:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b533bc5cb524.07389212","contact_id":"21608","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151632237 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-18 19:25:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 19:25:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:25:18] [INFO] Checking activity reminders 
[2026-03-18 19:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:25:48] [INFO] Checking activity reminders 
[2026-03-18 19:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:26:18] [INFO] Checking activity reminders 
[2026-03-18 19:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:26:48] [INFO] Checking activity reminders 
[2026-03-18 19:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:27:18] [INFO] Checking activity reminders 
[2026-03-18 19:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:27:43] [INFO] Activity save request {"post_data":{"contact_id":"21608","deal_id":"local_69b533bc5cb524.07389212","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیرجند \r\nدر خودرو سرمایه گذاری  به دلیل نداشتن اطلاعات و ترس از بازار در بازارهای دیگه وارد نشده \r\nپرزنت 405 \/ 1 ساله با پشتیبانی استاد \r\nمیخواد با شریکش کانال داشته باشه \/ مشورت کنه اطلاع میده \r\nدسته چک نداره \r\nتولیدی کوچک داره \r\n2 مرحله نقدی ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 19:27:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21608","note_was_empty":true}
[2026-03-18 19:27:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"21608","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:43] [INFO] Updating virtual stage {"contact_id":"21608","stage_name":"deal_registered","force":false}
[2026-03-18 19:27:43] [INFO] Virtual stage successfully saved {"contact_id":"21608","stage_name":"deal_registered"}
[2026-03-18 19:27:43] [INFO] Virtual stage updated after activity save {"contact_id":"21608"}
[2026-03-18 19:27:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533bc5cb524.07389212","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-18 19:27:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bacb77a25b82.83117568","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69bacb77a25b82.83117568"}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:43] [INFO] Updating virtual stage {"contact_id":"21608","stage_name":"deal_registered","force":false}
[2026-03-18 19:27:43] [INFO] Virtual stage successfully saved {"contact_id":"21608","stage_name":"deal_registered"}
[2026-03-18 19:27:43] [INFO] Virtual stage updated after activity save {"contact_id":"21608"}
[2026-03-18 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21608","person_id":"17587"}
[2026-03-18 19:27:48] [INFO] Checking activity reminders 
[2026-03-18 19:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:29:40] [INFO] Checking activity reminders 
[2026-03-18 19:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:29:45] [INFO] Checking activity reminders 
[2026-03-18 19:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:29:49] [INFO] Checking activity reminders 
[2026-03-18 19:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:29:50] [INFO] Checking activity reminders 
[2026-03-18 19:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:29:52] [INFO] Checking activity reminders 
[2026-03-18 19:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:30:22] [INFO] Checking activity reminders 
[2026-03-18 19:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:30:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"985","deal_id":"local_69495ab57cc433.38025613","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-18 19:30:41","session_id":"lqphd46amsfaqujqv35aqc2lmi"}
[2026-03-18 19:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:30:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"985","is_new_deal":false}
[2026-03-18 19:30:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-18 19:30:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 19:30:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-18 19:30:41] [INFO] getContactPrimaryPhone called {"contact_id":"985"}
[2026-03-18 19:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:30:41] [INFO] getContactPrimaryPhone result {"contact_id":"985","person_found":true,"primary_phone":"9128311189"}
[2026-03-18 19:30:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128311189"}
[2026-03-18 19:30:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128311189","contact_id":"985","deal_id":"local_69495ab57cc433.38025613","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 19:30:41"}
[2026-03-18 19:30:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69495ab57cc433.38025613","contact_id":"985","existing_deal_found":true,"existing_contact_id":"985","existing_title":"معامله اول 9128311189 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-18 19:30:41"}
[2026-03-18 19:30:41] [INFO] DealController.save validated payments {"deal_id":"local_69495ab57cc433.38025613","contact_id":"985","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-18 19:30:41] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"985","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-18 19:30:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69495ab57cc433.38025613","contact_didar_id":"985","title":"معامله اول 9128311189 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9128311189","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مشیری","existing_deal":"YES","existing_deal_id":"local_69495ab57cc433.38025613","existing_deal_status":"Pending","server_time":"2026-03-18 19:30:41","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-18 19:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:30:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69495ab57cc433.38025613","contact_id":"985","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9128311189 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-18 19:30:41","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-18 19:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:30:53] [INFO] Checking activity reminders 
[2026-03-18 19:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:31:23] [INFO] Checking activity reminders 
[2026-03-18 19:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:31:53] [INFO] Checking activity reminders 
[2026-03-18 19:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:31:56] [INFO] Activity save request {"post_data":{"contact_id":"985","deal_id":"local_69495ab57cc433.38025613","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در بانک سپه حساب هاش بلوکه شده \r\nپرزنت 405 \/ با پشتیبانی استاد \r\nارسال شبا در پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:31:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-18 19:31:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:31:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"985","note_was_empty":true}
[2026-03-18 19:31:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"985","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:31:56] [INFO] Updating virtual stage {"contact_id":"985","stage_name":"deal_registered","force":false}
[2026-03-18 19:31:56] [INFO] Virtual stage successfully saved {"contact_id":"985","stage_name":"deal_registered"}
[2026-03-18 19:31:56] [INFO] Virtual stage updated after activity save {"contact_id":"985"}
[2026-03-18 19:31:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69495ab57cc433.38025613","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-18 19:31:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bacc74028fd7.24364928","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:31:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69bacc74028fd7.24364928"}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:31:56] [INFO] Updating virtual stage {"contact_id":"985","stage_name":"deal_registered","force":false}
[2026-03-18 19:31:56] [INFO] Virtual stage successfully saved {"contact_id":"985","stage_name":"deal_registered"}
[2026-03-18 19:31:56] [INFO] Virtual stage updated after activity save {"contact_id":"985"}
[2026-03-18 19:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-18 19:32:23] [INFO] Checking activity reminders 
[2026-03-18 19:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:32:53] [INFO] Checking activity reminders 
[2026-03-18 19:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:33:23] [INFO] Checking activity reminders 
[2026-03-18 19:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:33:53] [INFO] Checking activity reminders 
[2026-03-18 19:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:34:23] [INFO] Checking activity reminders 
[2026-03-18 19:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:34:53] [INFO] Checking activity reminders 
[2026-03-18 19:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:35:23] [INFO] Checking activity reminders 
[2026-03-18 19:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:35:53] [INFO] Checking activity reminders 
[2026-03-18 19:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:36:23] [INFO] Checking activity reminders 
[2026-03-18 19:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:36:54] [INFO] Checking activity reminders 
[2026-03-18 19:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:37:24] [INFO] Checking activity reminders 
[2026-03-18 19:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:37:54] [INFO] Checking activity reminders 
[2026-03-18 19:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:38:24] [INFO] Checking activity reminders 
[2026-03-18 19:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:38:54] [INFO] Checking activity reminders 
[2026-03-18 19:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:39:24] [INFO] Checking activity reminders 
[2026-03-18 19:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:39:54] [INFO] Checking activity reminders 
[2026-03-18 19:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:40:24] [INFO] Checking activity reminders 
[2026-03-18 19:40:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:40:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:40:54] [INFO] Checking activity reminders 
[2026-03-18 19:40:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:40:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:41:24] [INFO] Checking activity reminders 
[2026-03-18 19:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:41:54] [INFO] Checking activity reminders 
[2026-03-18 19:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:42:24] [INFO] Checking activity reminders 
[2026-03-18 19:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:42:54] [INFO] Checking activity reminders 
[2026-03-18 19:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:43:24] [INFO] Checking activity reminders 
[2026-03-18 19:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:43:54] [INFO] Checking activity reminders 
[2026-03-18 19:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:44:25] [INFO] Checking activity reminders 
[2026-03-18 19:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:44:55] [INFO] Checking activity reminders 
[2026-03-18 19:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:45:25] [INFO] Checking activity reminders 
[2026-03-18 19:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:45:55] [INFO] Checking activity reminders 
[2026-03-18 19:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:46:25] [INFO] Checking activity reminders 
[2026-03-18 19:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:46:55] [INFO] Checking activity reminders 
[2026-03-18 19:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:47:25] [INFO] Checking activity reminders 
[2026-03-18 19:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:47:55] [INFO] Checking activity reminders 
[2026-03-18 19:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:48:25] [INFO] Checking activity reminders 
[2026-03-18 19:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:48:55] [INFO] Checking activity reminders 
[2026-03-18 19:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:49:25] [INFO] Checking activity reminders 
[2026-03-18 19:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:49:55] [INFO] Checking activity reminders 
[2026-03-18 19:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:50:25] [INFO] Checking activity reminders 
[2026-03-18 19:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:50:55] [INFO] Checking activity reminders 
[2026-03-18 19:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:51:25] [INFO] Checking activity reminders 
[2026-03-18 19:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:51:56] [INFO] Checking activity reminders 
[2026-03-18 19:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:52:26] [INFO] Checking activity reminders 
[2026-03-18 19:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:52:56] [INFO] Checking activity reminders 
[2026-03-18 19:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:53:26] [INFO] Checking activity reminders 
[2026-03-18 19:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:53:56] [INFO] Checking activity reminders 
[2026-03-18 19:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:54:26] [INFO] Checking activity reminders 
[2026-03-18 19:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:54:56] [INFO] Checking activity reminders 
[2026-03-18 19:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-18 19:55:26] [INFO] Checking activity reminders 
[2026-03-18 19:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-18 19:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:25:38] [WARNING] Auth check failed - not authenticated {"session_id":"1og9vr69omhgdcu4l206dm2o6b","session_keys":[],"action":"log_client_event"}
[2026-03-19 11:25:38] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 11:25:38] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 11:25:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 11:25:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 11:25:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 11:25:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 11:28:12] [WARNING] Auth check failed - not authenticated {"session_id":"uf45k4a6o5kc9el8e8erlplpgm","session_keys":[],"action":"log_client_event"}
[2026-03-19 11:28:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 11:28:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 11:28:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 11:28:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 11:28:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 11:28:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 11:29:46] [INFO] Checking activity reminders 
[2026-03-19 11:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:29:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:29:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:29:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:29:56] [INFO] generateDealTitle result {"contact_id":"468","person_name":"محمد اسماعیل پور","mobile":"9010541326","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9010541326"}
[2026-03-19 11:30:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"468","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:30:17","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:30:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:30:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"468","is_new_deal":true}
[2026-03-19 11:30:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:30:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:30:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:30:17] [INFO] getContactPrimaryPhone called {"contact_id":"468"}
[2026-03-19 11:30:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:30:17] [INFO] getContactPrimaryPhone result {"contact_id":"468","person_found":true,"primary_phone":"9010541326"}
[2026-03-19 11:30:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9010541326"}
[2026-03-19 11:30:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9010541326","contact_id":"468","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:30:17"}
[2026-03-19 11:30:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:30:17] [INFO] generateDealTitle result {"contact_id":"468","person_name":"محمد اسماعیل پور","mobile":"9010541326","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9010541326"}
[2026-03-19 11:30:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"468","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:30:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"468","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:30:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"468","title":"معامله چهارم 9010541326 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9010541326","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد اسماعیل پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:30:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:30:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:30:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:30:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"468","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9010541326 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:30:17","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-19 11:30:38] [INFO] Checking activity reminders 
[2026-03-19 11:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:30:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-19 11:30:51] [INFO] Checking activity reminders 
[2026-03-19 11:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:30:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:30:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:30:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:30:58] [INFO] generateDealTitle result {"contact_id":"2692","person_name":"امیر تقوی","mobile":"9013305433","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013305433"}
[2026-03-19 11:31:22] [INFO] Checking activity reminders 
[2026-03-19 11:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:31:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2692","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:31:25","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:31:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2692","is_new_deal":true}
[2026-03-19 11:31:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:31:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:31:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:31:25] [INFO] getContactPrimaryPhone called {"contact_id":"2692"}
[2026-03-19 11:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:31:25] [INFO] getContactPrimaryPhone result {"contact_id":"2692","person_found":true,"primary_phone":"9013305433"}
[2026-03-19 11:31:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013305433"}
[2026-03-19 11:31:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013305433","contact_id":"2692","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:31:25"}
[2026-03-19 11:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:31:25] [INFO] generateDealTitle result {"contact_id":"2692","person_name":"امیر تقوی","mobile":"9013305433","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013305433"}
[2026-03-19 11:31:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2692","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:31:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2692","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:31:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2692","title":"معامله دوم 9013305433 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9013305433","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر تقوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:31:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:31:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:31:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2692","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9013305433 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:31:25","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-19 11:31:36] [INFO] Checking activity reminders 
[2026-03-19 11:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:31:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:31:44] [INFO] generateDealTitle result {"contact_id":"21010","person_name":"علی جمال زاده","mobile":"9020074999","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9020074999"}
[2026-03-19 11:32:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21010","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:32:01","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:32:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21010","is_new_deal":true}
[2026-03-19 11:32:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:01] [INFO] getContactPrimaryPhone called {"contact_id":"21010"}
[2026-03-19 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:32:01] [INFO] getContactPrimaryPhone result {"contact_id":"21010","person_found":true,"primary_phone":"9020074999"}
[2026-03-19 11:32:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9020074999"}
[2026-03-19 11:32:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9020074999","contact_id":"21010","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:32:01"}
[2026-03-19 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:32:01] [INFO] generateDealTitle result {"contact_id":"21010","person_name":"علی جمال زاده","mobile":"9020074999","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9020074999"}
[2026-03-19 11:32:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21010","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:32:01] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21010","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:32:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21010","title":"معامله دوم 9020074999 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9020074999","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی جمال زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:32:01","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:32:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:32:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21010","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9020074999 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:32:01","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-19 11:32:13] [INFO] Checking activity reminders 
[2026-03-19 11:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:32:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:20] [INFO] generateDealTitle result {"contact_id":"21144","person_name":"مقتدر","mobile":"9024379978","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9024379978"}
[2026-03-19 11:32:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21144","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:32:37","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21144","is_new_deal":true}
[2026-03-19 11:32:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:32:37] [INFO] getContactPrimaryPhone called {"contact_id":"21144"}
[2026-03-19 11:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:37] [INFO] getContactPrimaryPhone result {"contact_id":"21144","person_found":true,"primary_phone":"9024379978"}
[2026-03-19 11:32:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9024379978"}
[2026-03-19 11:32:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9024379978","contact_id":"21144","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:32:37"}
[2026-03-19 11:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:37] [INFO] generateDealTitle result {"contact_id":"21144","person_name":"مقتدر","mobile":"9024379978","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9024379978"}
[2026-03-19 11:32:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21144","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:32:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21144","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:32:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21144","title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9024379978","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقتدر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:32:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:32:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21144","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:32:37","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:32:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 11:32:48] [INFO] Checking activity reminders 
[2026-03-19 11:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:32:58] [INFO] Checking activity reminders 
[2026-03-19 11:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:04] [INFO] generateDealTitle result {"contact_id":"9457","person_name":"محمدرضا منصوری","mobile":"9396818104","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9396818104"}
[2026-03-19 11:33:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9457","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:33:26","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9457","is_new_deal":true}
[2026-03-19 11:33:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:33:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:33:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:33:26] [INFO] getContactPrimaryPhone called {"contact_id":"9457"}
[2026-03-19 11:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:26] [INFO] getContactPrimaryPhone result {"contact_id":"9457","person_found":true,"primary_phone":"9396818104"}
[2026-03-19 11:33:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396818104"}
[2026-03-19 11:33:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396818104","contact_id":"9457","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:33:26"}
[2026-03-19 11:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:26] [INFO] generateDealTitle result {"contact_id":"9457","person_name":"محمدرضا منصوری","mobile":"9396818104","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9396818104"}
[2026-03-19 11:33:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9457","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:33:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9457","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:33:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9457","title":"معامله سوم 9396818104 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9396818104","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدرضا منصوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:33:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:33:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9457","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9396818104 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:33:26","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 11:33:28] [INFO] Checking activity reminders 
[2026-03-19 11:33:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:33:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:33:39] [INFO] Checking activity reminders 
[2026-03-19 11:33:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:33:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:33:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-19 11:33:51] [INFO] Checking activity reminders 
[2026-03-19 11:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:33:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-19 11:34:10] [INFO] Checking activity reminders 
[2026-03-19 11:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:34:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:19] [INFO] generateDealTitle result {"contact_id":"1808","person_name":"رامین ساعد","mobile":"9059526568","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9059526568"}
[2026-03-19 11:34:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1808","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:34:37","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1808","is_new_deal":true}
[2026-03-19 11:34:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:34:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:34:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:34:37] [INFO] getContactPrimaryPhone called {"contact_id":"1808"}
[2026-03-19 11:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:37] [INFO] getContactPrimaryPhone result {"contact_id":"1808","person_found":true,"primary_phone":"9059526568"}
[2026-03-19 11:34:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9059526568"}
[2026-03-19 11:34:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9059526568","contact_id":"1808","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:34:37"}
[2026-03-19 11:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:37] [INFO] generateDealTitle result {"contact_id":"1808","person_name":"رامین ساعد","mobile":"9059526568","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9059526568"}
[2026-03-19 11:34:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1808","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:34:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1808","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:34:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1808","title":"معامله سوم 9059526568 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9059526568","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رامین ساعد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:34:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:34:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1808","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9059526568 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:34:37","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-19 11:34:49] [INFO] Checking activity reminders 
[2026-03-19 11:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:34:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:34:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:34:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:34:56] [INFO] generateDealTitle result {"contact_id":"20620","person_name":"خانم محمدی","mobile":"9100420103","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9100420103"}
[2026-03-19 11:35:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20620","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:35:12","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:35:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20620","is_new_deal":true}
[2026-03-19 11:35:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:12] [INFO] getContactPrimaryPhone called {"contact_id":"20620"}
[2026-03-19 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:35:12] [INFO] getContactPrimaryPhone result {"contact_id":"20620","person_found":true,"primary_phone":"9100420103"}
[2026-03-19 11:35:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9100420103"}
[2026-03-19 11:35:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9100420103","contact_id":"20620","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:35:12"}
[2026-03-19 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:35:12] [INFO] generateDealTitle result {"contact_id":"20620","person_name":"خانم محمدی","mobile":"9100420103","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9100420103"}
[2026-03-19 11:35:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20620","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:35:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20620","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:35:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20620","title":"معامله دوم 9100420103 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9100420103","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:35:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:35:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:35:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20620","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9100420103 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:35:12","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-19 11:35:23] [INFO] Checking activity reminders 
[2026-03-19 11:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:29] [INFO] generateDealTitle result {"contact_id":"7335","person_name":"سجاد داودی","mobile":"9102789964","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9102789964"}
[2026-03-19 11:35:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7335","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:35:44","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7335","is_new_deal":true}
[2026-03-19 11:35:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:35:44] [INFO] getContactPrimaryPhone called {"contact_id":"7335"}
[2026-03-19 11:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:44] [INFO] getContactPrimaryPhone result {"contact_id":"7335","person_found":true,"primary_phone":"9102789964"}
[2026-03-19 11:35:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102789964"}
[2026-03-19 11:35:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102789964","contact_id":"7335","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:35:44"}
[2026-03-19 11:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:44] [INFO] generateDealTitle result {"contact_id":"7335","person_name":"سجاد داودی","mobile":"9102789964","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9102789964"}
[2026-03-19 11:35:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7335","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:35:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7335","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:35:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7335","title":"معامله سوم 9102789964 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9102789964","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سجاد داودی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:35:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:35:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7335","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9102789964 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:35:44","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-19 11:35:54] [INFO] Checking activity reminders 
[2026-03-19 11:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-19 11:36:07] [INFO] Checking activity reminders 
[2026-03-19 11:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:14] [INFO] generateDealTitle result {"contact_id":"15044","person_name":"میرزایی","mobile":"9103649391","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103649391"}
[2026-03-19 11:36:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15044","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:36:29","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15044","is_new_deal":true}
[2026-03-19 11:36:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:36:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:36:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:36:29] [INFO] getContactPrimaryPhone called {"contact_id":"15044"}
[2026-03-19 11:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:29] [INFO] getContactPrimaryPhone result {"contact_id":"15044","person_found":true,"primary_phone":"9103649391"}
[2026-03-19 11:36:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103649391"}
[2026-03-19 11:36:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103649391","contact_id":"15044","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:36:29"}
[2026-03-19 11:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:29] [INFO] generateDealTitle result {"contact_id":"15044","person_name":"میرزایی","mobile":"9103649391","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103649391"}
[2026-03-19 11:36:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15044","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:36:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15044","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:36:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15044","title":"معامله دوم 9103649391 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9103649391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میرزایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:36:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:36:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15044","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9103649391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:36:29","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:36:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-19 11:36:41] [INFO] Checking activity reminders 
[2026-03-19 11:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:36:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-19 11:36:53] [INFO] Checking activity reminders 
[2026-03-19 11:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:00] [INFO] generateDealTitle result {"contact_id":"7371","person_name":"حسین موسوی","mobile":"9107784835","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9107784835"}
[2026-03-19 11:37:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7371","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:37:20","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7371","is_new_deal":true}
[2026-03-19 11:37:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:20] [INFO] getContactPrimaryPhone called {"contact_id":"7371"}
[2026-03-19 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:20] [INFO] getContactPrimaryPhone result {"contact_id":"7371","person_found":true,"primary_phone":"9107784835"}
[2026-03-19 11:37:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9107784835"}
[2026-03-19 11:37:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9107784835","contact_id":"7371","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:37:20"}
[2026-03-19 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:20] [INFO] generateDealTitle result {"contact_id":"7371","person_name":"حسین موسوی","mobile":"9107784835","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9107784835"}
[2026-03-19 11:37:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7371","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:37:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7371","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:37:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7371","title":"معامله سوم 9107784835 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9107784835","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین موسوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:37:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:37:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7371","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9107784835 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:37:20","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-19 11:37:33] [INFO] Checking activity reminders 
[2026-03-19 11:37:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:37:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:41] [INFO] generateDealTitle result {"contact_id":"15312","person_name":"مهدی حاج آقایی","mobile":"9108357864","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9108357864"}
[2026-03-19 11:37:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15312","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:37:57","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15312","is_new_deal":true}
[2026-03-19 11:37:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:37:57] [INFO] getContactPrimaryPhone called {"contact_id":"15312"}
[2026-03-19 11:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:57] [INFO] getContactPrimaryPhone result {"contact_id":"15312","person_found":true,"primary_phone":"9108357864"}
[2026-03-19 11:37:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9108357864"}
[2026-03-19 11:37:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9108357864","contact_id":"15312","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:37:57"}
[2026-03-19 11:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:57] [INFO] generateDealTitle result {"contact_id":"15312","person_name":"مهدی حاج آقایی","mobile":"9108357864","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9108357864"}
[2026-03-19 11:37:57] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15312","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:37:57] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15312","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:37:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15312","title":"معامله سوم 9108357864 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9108357864","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی حاج آقایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:37:57","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:37:57] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:37:57] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15312","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9108357864 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:37:57","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-19 11:38:07] [INFO] Checking activity reminders 
[2026-03-19 11:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:38:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:15] [INFO] generateDealTitle result {"contact_id":"810","person_name":"احسان جعفری","mobile":"9108564684","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9108564684"}
[2026-03-19 11:38:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"810","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:38:35","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"810","is_new_deal":true}
[2026-03-19 11:38:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:38:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:38:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:38:35] [INFO] getContactPrimaryPhone called {"contact_id":"810"}
[2026-03-19 11:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:35] [INFO] getContactPrimaryPhone result {"contact_id":"810","person_found":true,"primary_phone":"9108564684"}
[2026-03-19 11:38:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9108564684"}
[2026-03-19 11:38:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9108564684","contact_id":"810","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:38:35"}
[2026-03-19 11:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:35] [INFO] generateDealTitle result {"contact_id":"810","person_name":"احسان جعفری","mobile":"9108564684","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9108564684"}
[2026-03-19 11:38:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"810","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:38:35] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"810","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:38:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"810","title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9108564684","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان جعفری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:38:35","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:38:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"810","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:38:35","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-19 11:38:38] [INFO] Checking activity reminders 
[2026-03-19 11:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:38:49] [INFO] Checking activity reminders 
[2026-03-19 11:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:38:54] [INFO] generateDealTitle result {"contact_id":"713","person_name":"وحید احمدی","mobile":"9111189429","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9111189429"}
[2026-03-19 11:39:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"713","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:39:11","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:39:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"713","is_new_deal":true}
[2026-03-19 11:39:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:11] [INFO] getContactPrimaryPhone called {"contact_id":"713"}
[2026-03-19 11:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:39:11] [INFO] getContactPrimaryPhone result {"contact_id":"713","person_found":true,"primary_phone":"9111189429"}
[2026-03-19 11:39:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111189429"}
[2026-03-19 11:39:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111189429","contact_id":"713","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:39:11"}
[2026-03-19 11:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:39:11] [INFO] generateDealTitle result {"contact_id":"713","person_name":"وحید احمدی","mobile":"9111189429","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9111189429"}
[2026-03-19 11:39:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"713","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:39:11] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"713","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:39:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"713","title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9111189429","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"وحید احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:39:11","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:39:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:39:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"713","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:39:11","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-19 11:39:25] [INFO] Checking activity reminders 
[2026-03-19 11:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:39:39] [INFO] Checking activity reminders 
[2026-03-19 11:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:44] [INFO] generateDealTitle result {"contact_id":"13250","person_name":"خالقی","mobile":"9112443747","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112443747"}
[2026-03-19 11:39:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13250","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:39:57","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13250","is_new_deal":true}
[2026-03-19 11:39:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:39:57] [INFO] getContactPrimaryPhone called {"contact_id":"13250"}
[2026-03-19 11:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:57] [INFO] getContactPrimaryPhone result {"contact_id":"13250","person_found":true,"primary_phone":"9112443747"}
[2026-03-19 11:39:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112443747"}
[2026-03-19 11:39:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112443747","contact_id":"13250","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:39:57"}
[2026-03-19 11:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:57] [INFO] generateDealTitle result {"contact_id":"13250","person_name":"خالقی","mobile":"9112443747","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112443747"}
[2026-03-19 11:39:57] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13250","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:39:57] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13250","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:39:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13250","title":"معامله دوم 9112443747 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9112443747","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خالقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:39:57","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:39:57] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:39:57] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13250","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9112443747 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:39:57","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-19 11:40:10] [INFO] Checking activity reminders 
[2026-03-19 11:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:40:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:18] [INFO] generateDealTitle result {"contact_id":"3099","person_name":"فرزین فلاح","mobile":"9113200847","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9113200847"}
[2026-03-19 11:40:39] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3099","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:40:39","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3099","is_new_deal":true}
[2026-03-19 11:40:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:40:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:40:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:40:39] [INFO] getContactPrimaryPhone called {"contact_id":"3099"}
[2026-03-19 11:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:39] [INFO] getContactPrimaryPhone result {"contact_id":"3099","person_found":true,"primary_phone":"9113200847"}
[2026-03-19 11:40:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113200847"}
[2026-03-19 11:40:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113200847","contact_id":"3099","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:40:39"}
[2026-03-19 11:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:39] [INFO] generateDealTitle result {"contact_id":"3099","person_name":"فرزین فلاح","mobile":"9113200847","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9113200847"}
[2026-03-19 11:40:39] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3099","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:40:39] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3099","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:40:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3099","title":"معامله سوم 9113200847 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9113200847","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرزین فلاح","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:40:39","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:39] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:40:39] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3099","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9113200847 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:40:39","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 11:40:42] [INFO] Checking activity reminders 
[2026-03-19 11:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:41:04] [INFO] Checking activity reminders 
[2026-03-19 11:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-19 11:41:19] [INFO] Checking activity reminders 
[2026-03-19 11:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:41:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:41:44] [INFO] generateDealTitle result {"contact_id":"12098","person_name":"جعفریان","mobile":"9114371800","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9114371800"}
[2026-03-19 11:41:49] [INFO] Checking activity reminders 
[2026-03-19 11:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:42:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12098","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:42:20","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:42:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12098","is_new_deal":true}
[2026-03-19 11:42:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:42:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:42:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:42:20] [INFO] getContactPrimaryPhone called {"contact_id":"12098"}
[2026-03-19 11:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:42:20] [INFO] getContactPrimaryPhone result {"contact_id":"12098","person_found":true,"primary_phone":"9114371800"}
[2026-03-19 11:42:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114371800"}
[2026-03-19 11:42:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114371800","contact_id":"12098","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:42:20"}
[2026-03-19 11:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:42:20] [INFO] generateDealTitle result {"contact_id":"12098","person_name":"جعفریان","mobile":"9114371800","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9114371800"}
[2026-03-19 11:42:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12098","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:42:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12098","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:42:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12098","title":"معامله دوم 9114371800 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9114371800","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جعفریان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:42:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:42:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:42:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12098","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9114371800 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:42:20","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:42:20] [INFO] Checking activity reminders 
[2026-03-19 11:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 11:43:08] [INFO] Checking activity reminders 
[2026-03-19 11:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:43:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:16] [INFO] generateDealTitle result {"contact_id":"2926","person_name":"حسن زاده","mobile":"9114493610","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9114493610"}
[2026-03-19 11:43:38] [INFO] Checking activity reminders 
[2026-03-19 11:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:43:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2926","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:43:41","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2926","is_new_deal":true}
[2026-03-19 11:43:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:43:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:43:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:43:41] [INFO] getContactPrimaryPhone called {"contact_id":"2926"}
[2026-03-19 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:41] [INFO] getContactPrimaryPhone result {"contact_id":"2926","person_found":true,"primary_phone":"9114493610"}
[2026-03-19 11:43:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114493610"}
[2026-03-19 11:43:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114493610","contact_id":"2926","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:43:41"}
[2026-03-19 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:41] [INFO] generateDealTitle result {"contact_id":"2926","person_name":"حسن زاده","mobile":"9114493610","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9114493610"}
[2026-03-19 11:43:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2926","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:43:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2926","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:43:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2926","title":"معامله سوم 9114493610 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9114493610","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسن زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:43:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:43:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2926","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9114493610 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:43:41","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-19 11:43:53] [INFO] Checking activity reminders 
[2026-03-19 11:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:43:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:43:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:43:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:43:59] [INFO] generateDealTitle result {"contact_id":"6956","person_name":"علیرضا آذریان","mobile":"9118053297","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9118053297"}
[2026-03-19 11:44:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6956","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:44:19","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:44:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6956","is_new_deal":true}
[2026-03-19 11:44:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:44:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:44:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:44:19] [INFO] getContactPrimaryPhone called {"contact_id":"6956"}
[2026-03-19 11:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:44:19] [INFO] getContactPrimaryPhone result {"contact_id":"6956","person_found":true,"primary_phone":"9118053297"}
[2026-03-19 11:44:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9118053297"}
[2026-03-19 11:44:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9118053297","contact_id":"6956","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:44:19"}
[2026-03-19 11:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:44:19] [INFO] generateDealTitle result {"contact_id":"6956","person_name":"علیرضا آذریان","mobile":"9118053297","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9118053297"}
[2026-03-19 11:44:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6956","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:44:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6956","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:44:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6956","title":"معامله سوم 9118053297 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9118053297","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا آذریان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:44:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:44:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:44:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6956","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9118053297 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:44:19","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 11:44:39] [INFO] Checking activity reminders 
[2026-03-19 11:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:44:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"846","person_id":"10682"}
[2026-03-19 11:44:57] [INFO] Checking activity reminders 
[2026-03-19 11:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:45:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:03] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_163","person_name":"قوام الدین صحنه","mobile":"9119637161","existing_deals":0,"ordinal":"اول","title":"معامله اول 9119637161"}
[2026-03-19 11:45:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_163","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:45:26","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_163","is_new_deal":true}
[2026-03-19 11:45:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:45:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:45:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:45:26] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_163"}
[2026-03-19 11:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:26] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_163","person_found":true,"primary_phone":"9119637161"}
[2026-03-19 11:45:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9119637161"}
[2026-03-19 11:45:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9119637161","contact_id":"local_1403_09_26_163","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:45:26"}
[2026-03-19 11:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:26] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_163","person_name":"قوام الدین صحنه","mobile":"9119637161","existing_deals":0,"ordinal":"اول","title":"معامله اول 9119637161"}
[2026-03-19 11:45:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_163","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:45:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_163","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:45:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_163","title":"معامله اول 9119637161 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9119637161","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قوام الدین صحنه","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:45:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:45:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:45:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_163","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9119637161 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:45:26","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:45:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-19 11:45:27] [INFO] Checking activity reminders 
[2026-03-19 11:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:45:40] [INFO] Checking activity reminders 
[2026-03-19 11:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:45:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:45:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:45:47] [INFO] generateDealTitle result {"contact_id":"3481","person_name":"بیژن صفرپور","mobile":"9174582804","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9174582804"}
[2026-03-19 11:46:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3481","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 11:46:06","session_id":"uf45k4a6o5kc9el8e8erlplpgm"}
[2026-03-19 11:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:46:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3481","is_new_deal":true}
[2026-03-19 11:46:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 11:46:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:46:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 11:46:06] [INFO] getContactPrimaryPhone called {"contact_id":"3481"}
[2026-03-19 11:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:46:06] [INFO] getContactPrimaryPhone result {"contact_id":"3481","person_found":true,"primary_phone":"9174582804"}
[2026-03-19 11:46:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174582804"}
[2026-03-19 11:46:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174582804","contact_id":"3481","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 11:46:06"}
[2026-03-19 11:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:46:06] [INFO] generateDealTitle result {"contact_id":"3481","person_name":"بیژن صفرپور","mobile":"9174582804","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9174582804"}
[2026-03-19 11:46:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3481","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 11:46:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3481","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 11:46:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3481","title":"معامله دوم 9174582804 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9174582804","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بیژن صفرپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 11:46:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 11:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:46:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 11:46:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3481","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9174582804 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 11:46:06","ip_address":"46.41.248.245","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 11:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 11:47:04] [INFO] Checking activity reminders 
[2026-03-19 11:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:50:11] [INFO] Checking activity reminders 
[2026-03-19 11:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:50:53] [INFO] Checking activity reminders 
[2026-03-19 11:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 11:51:16] [INFO] Checking activity reminders 
[2026-03-19 11:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 11:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:08:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 12:08:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:08:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:08:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:08:10] [INFO] Checking activity reminders 
[2026-03-19 12:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:08:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:08:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:08:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:08:41] [INFO] Checking activity reminders 
[2026-03-19 12:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:18:33] [INFO] Checking activity reminders 
[2026-03-19 12:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:19:09] [INFO] Checking activity reminders 
[2026-03-19 12:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:19:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:19:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:19:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:19:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:19:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:19:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:19:40] [INFO] Checking activity reminders 
[2026-03-19 12:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:19:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:19:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:19:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:20:11] [INFO] Checking activity reminders 
[2026-03-19 12:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:20:41] [INFO] Checking activity reminders 
[2026-03-19 12:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:21:08] [INFO] Checking activity reminders 
[2026-03-19 12:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:21:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:21:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:21:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:21:39] [INFO] Checking activity reminders 
[2026-03-19 12:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:21:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:21:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:21:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:22:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:22:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:22:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:22:09] [INFO] Checking activity reminders 
[2026-03-19 12:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:22:28] [INFO] Checking activity reminders 
[2026-03-19 12:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:22:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:22:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:22:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:22:58] [INFO] Checking activity reminders 
[2026-03-19 12:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:23:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:23:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:23:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:23:29] [INFO] Checking activity reminders 
[2026-03-19 12:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:30:00] [WARNING] Auth check failed - not authenticated {"session_id":"shl1blkinvrj34tugtlssafvgk","session_keys":[],"action":"log_client_event"}
[2026-03-19 12:30:00] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 12:30:00] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 12:30:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 12:30:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:30:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:30:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:31:12] [INFO] Checking activity reminders 
[2026-03-19 12:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:34:43] [INFO] Checking activity reminders 
[2026-03-19 12:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:34:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:34:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:34:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:35:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:35:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:35:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:35:14] [INFO] Checking activity reminders 
[2026-03-19 12:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:35:37] [INFO] Checking activity reminders 
[2026-03-19 12:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:35:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:35:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:35:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:35:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:35:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:35:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:36:09] [INFO] Checking activity reminders 
[2026-03-19 12:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:36:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:36:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:36:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:36:35] [INFO] Checking activity reminders 
[2026-03-19 12:36:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:36:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:36:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:36:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:36:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:37:19] [INFO] Checking activity reminders 
[2026-03-19 12:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:37:25] [INFO] Checking activity reminders 
[2026-03-19 12:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:37:55] [INFO] Checking activity reminders 
[2026-03-19 12:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:38:15] [INFO] Checking activity reminders 
[2026-03-19 12:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:38:21] [INFO] Checking activity reminders 
[2026-03-19 12:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:38:40] [INFO] Checking activity reminders 
[2026-03-19 12:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:39:30] [INFO] Checking activity reminders 
[2026-03-19 12:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:39:55] [INFO] Checking activity reminders 
[2026-03-19 12:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:40:10] [INFO] Checking activity reminders 
[2026-03-19 12:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:40:17] [INFO] Checking activity reminders 
[2026-03-19 12:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:40:23] [INFO] Checking activity reminders 
[2026-03-19 12:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:40:39] [INFO] Checking activity reminders 
[2026-03-19 12:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:40:52] [INFO] Checking activity reminders 
[2026-03-19 12:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:41:10] [INFO] Checking activity reminders 
[2026-03-19 12:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:41:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 12:41:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 12:41:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 12:41:40] [INFO] Checking activity reminders 
[2026-03-19 12:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:42:05] [INFO] Checking activity reminders 
[2026-03-19 12:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:42:11] [INFO] Checking activity reminders 
[2026-03-19 12:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 12:42:25] [INFO] Checking activity reminders 
[2026-03-19 12:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 12:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:03:45] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 13:03:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 13:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4281","person_id":"18455"}
[2026-03-19 13:04:16] [INFO] Checking activity reminders 
[2026-03-19 13:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:04:46] [INFO] Checking activity reminders 
[2026-03-19 13:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:05:35] [INFO] Checking activity reminders 
[2026-03-19 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:06:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4281","deal_id":"local_69998d5249e3c8.56066858","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 13:06:03","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 13:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4281","person_id":"18455"}
[2026-03-19 13:06:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4281","is_new_deal":false}
[2026-03-19 13:06:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 13:06:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 13:06:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 13:06:03] [INFO] getContactPrimaryPhone called {"contact_id":"4281"}
[2026-03-19 13:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4281","person_id":"18455"}
[2026-03-19 13:06:03] [INFO] getContactPrimaryPhone result {"contact_id":"4281","person_found":true,"primary_phone":"9125679202"}
[2026-03-19 13:06:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125679202"}
[2026-03-19 13:06:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125679202","contact_id":"4281","deal_id":"local_69998d5249e3c8.56066858","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 13:06:03"}
[2026-03-19 13:06:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69998d5249e3c8.56066858","contact_id":"4281","existing_deal_found":true,"existing_contact_id":"4281","existing_title":"معامله سوم 9125679202 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 13:06:03"}
[2026-03-19 13:06:03] [INFO] DealController.save validated payments {"deal_id":"local_69998d5249e3c8.56066858","contact_id":"4281","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-19 13:06:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4281","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 13:06:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69998d5249e3c8.56066858","contact_didar_id":"4281","title":"معامله سوم 9125679202 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9125679202","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":41000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"چاووش چاووش","existing_deal":"YES","existing_deal_id":"local_69998d5249e3c8.56066858","existing_deal_status":"Pending","server_time":"2026-03-19 13:06:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 13:06:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4281","person_id":"18455"}
[2026-03-19 13:06:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69998d5249e3c8.56066858","contact_id":"4281","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9125679202 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":41000000,"server_time":"2026-03-19 13:06:04","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 13:06:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4281","person_id":"18455"}
[2026-03-19 13:06:06] [INFO] Checking activity reminders 
[2026-03-19 13:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:17:13] [WARNING] Auth check failed - not authenticated {"session_id":"u9icqp18sa5mho5pm6qguhgec5","session_keys":[],"action":"log_client_event"}
[2026-03-19 13:17:13] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 13:17:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 13:21:14] [INFO] Checking activity reminders 
[2026-03-19 13:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:21:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:21:24] [INFO] Checking activity reminders 
[2026-03-19 13:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:21:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-19 13:21:44] [INFO] Checking activity reminders 
[2026-03-19 13:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:21:55] [INFO] Checking activity reminders 
[2026-03-19 13:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:22:01] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_28","deal_id":"local_69b7417ddbc365.66921775","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ماشین تازه تحویل گرفته ثبت نامی شرایط پراخت خیلی نداره، گفاتم اقساط تا اردیبهشت تسویه کن فکر کنه تا ساعت ۴ اطلاع","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 13:22:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_28","note_was_empty":true}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:01] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_28","stage_name":"deal_registered","force":false}
[2026-03-19 13:22:01] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_28","stage_name":"deal_registered"}
[2026-03-19 13:22:01] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_28"}
[2026-03-19 13:22:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7417ddbc365.66921775","stage":"تماس پیگیری","status_change":null}
[2026-03-19 13:22:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbc7417155c7.00746728","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbc7417155c7.00746728"}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:01] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_28","stage_name":"deal_registered","force":false}
[2026-03-19 13:22:01] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_28","stage_name":"deal_registered"}
[2026-03-19 13:22:01] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_28"}
[2026-03-19 13:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_28","person_id":"21110"}
[2026-03-19 13:22:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:22:15] [INFO] Checking activity reminders 
[2026-03-19 13:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:22:25] [INFO] Checking activity reminders 
[2026-03-19 13:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:23:46] [INFO] Checking activity reminders 
[2026-03-19 13:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:23:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"985","deal_id":"local_69495ab57cc433.38025613","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 13:23:46","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 13:23:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-19 13:23:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"985","is_new_deal":false}
[2026-03-19 13:23:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 13:23:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 13:23:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 13:23:46] [INFO] getContactPrimaryPhone called {"contact_id":"985"}
[2026-03-19 13:23:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-19 13:23:46] [INFO] getContactPrimaryPhone result {"contact_id":"985","person_found":true,"primary_phone":"9128311189"}
[2026-03-19 13:23:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128311189"}
[2026-03-19 13:23:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128311189","contact_id":"985","deal_id":"local_69495ab57cc433.38025613","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 13:23:46"}
[2026-03-19 13:23:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69495ab57cc433.38025613","contact_id":"985","existing_deal_found":true,"existing_contact_id":"985","existing_title":"معامله اول 9128311189 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 13:23:46"}
[2026-03-19 13:23:46] [INFO] DealController.save validated payments {"deal_id":"local_69495ab57cc433.38025613","contact_id":"985","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-19 13:23:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"985","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 13:23:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69495ab57cc433.38025613","contact_didar_id":"985","title":"معامله اول 9128311189 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9128311189","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مشیری","existing_deal":"YES","existing_deal_id":"local_69495ab57cc433.38025613","existing_deal_status":"Pending","server_time":"2026-03-19 13:23:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 13:23:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-19 13:23:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69495ab57cc433.38025613","contact_id":"985","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9128311189 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":40000000,"server_time":"2026-03-19 13:23:46","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 13:23:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-03-19 13:31:11] [INFO] Checking activity reminders 
[2026-03-19 13:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:31:42] [INFO] Checking activity reminders 
[2026-03-19 13:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:32:12] [INFO] Checking activity reminders 
[2026-03-19 13:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:32:30] [INFO] Activity save request {"post_data":{"contact_id":"19271","deal_id":"local_69b9a82114c262.89718371","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چک هاش پاس نشدن منتظر هست ، طلا داره نمیخواد تو ضرر نقد کنه ، موضوعات داداگاهیش اوکی شده، کانال هست نهایتا اواسط فروردین بیاد گفتم شرایط پرداخت نداری کامل باید بزنی ۷۹ت گفت چاره ای نیست اوکیه تا فردا ببینه بشه ۳۰ درصد بزنه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:32:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 13:32:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:32:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"19271","note_was_empty":true}
[2026-03-19 13:32:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"19271","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:32:30] [INFO] Updating virtual stage {"contact_id":"19271","stage_name":"deal_registered","force":false}
[2026-03-19 13:32:30] [INFO] Virtual stage successfully saved {"contact_id":"19271","stage_name":"deal_registered"}
[2026-03-19 13:32:30] [INFO] Virtual stage updated after activity save {"contact_id":"19271"}
[2026-03-19 13:32:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b9a82114c262.89718371","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-19 13:32:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbc9b65abfc6.13699800","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:32:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbc9b65abfc6.13699800"}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:32:30] [INFO] Updating virtual stage {"contact_id":"19271","stage_name":"deal_registered","force":false}
[2026-03-19 13:32:30] [INFO] Virtual stage successfully saved {"contact_id":"19271","stage_name":"deal_registered"}
[2026-03-19 13:32:30] [INFO] Virtual stage updated after activity save {"contact_id":"19271"}
[2026-03-19 13:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-03-19 13:39:00] [INFO] Checking activity reminders 
[2026-03-19 13:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:39:31] [INFO] Checking activity reminders 
[2026-03-19 13:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:44:18] [INFO] Checking activity reminders 
[2026-03-19 13:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:11] [INFO] Checking activity reminders 
[2026-03-19 13:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:45:41] [INFO] Checking activity reminders 
[2026-03-19 13:45:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:45:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:45:42] [INFO] Activity save request {"post_data":{"contact_id":"local_69b98aa9870dc3.89828270","deal_id":"local_69b98aa98f60b","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شماره مشترک در شبکه موجود نیست اشتباه هست","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 13:45:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b98aa9870dc3.89828270","note_was_empty":true}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Updating virtual stage {"contact_id":"local_69b98aa9870dc3.89828270","stage_name":"new","force":false}
[2026-03-19 13:45:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69b98aa9870dc3.89828270","stage_name":"new"}
[2026-03-19 13:45:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b98aa9870dc3.89828270"}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b98aa98f60b","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 13:45:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbccce370607.01324731","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbccce370607.01324731"}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:42] [INFO] Updating virtual stage {"contact_id":"local_69b98aa9870dc3.89828270","stage_name":"deal_registered","force":false}
[2026-03-19 13:45:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69b98aa9870dc3.89828270","stage_name":"deal_registered"}
[2026-03-19 13:45:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b98aa9870dc3.89828270"}
[2026-03-19 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98aa9870dc3.89828270","person_id":"21898"}
[2026-03-19 13:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:54:52] [INFO] Checking activity reminders 
[2026-03-19 13:54:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:54:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:55:22] [INFO] Checking activity reminders 
[2026-03-19 13:55:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:55:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:55:24] [INFO] Lead update received {"contact_id":"local_69b71bac8c78b3.97008426","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-19 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:55:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b71bac8c78b3.97008426"}
[2026-03-19 13:55:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:55:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:55:53] [INFO] Checking activity reminders 
[2026-03-19 13:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:56:23] [INFO] Checking activity reminders 
[2026-03-19 13:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:56:44] [INFO] Activity save request {"post_data":{"contact_id":"local_69b71bac8c78b3.97008426","deal_id":"local_69b71bac8fdd0","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دانشجو،۲۰۰ نقد خانواده تا خرداد سود کنن \r\nباباش ملک ۵۵۰۰ داشته فروخته ملک ۱۰ ت خریده بخشی از پول از مستاجر گرفته ۱۳۰۰ ملنده بده \r\nشرایط عضویت ندارن \r\nواسه ۲۰۰ ت میخواست بدونه چیکار کنه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 13:56:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b71bac8c78b3.97008426","note_was_empty":true}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:44] [INFO] Updating virtual stage {"contact_id":"local_69b71bac8c78b3.97008426","stage_name":"new","force":false}
[2026-03-19 13:56:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71bac8c78b3.97008426","stage_name":"new"}
[2026-03-19 13:56:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71bac8c78b3.97008426"}
[2026-03-19 13:56:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b71bac8fdd0","stage":"تماس پیگیری","status_change":null}
[2026-03-19 13:56:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbcf6496def9.95103979","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbcf6496def9.95103979"}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:44] [INFO] Updating virtual stage {"contact_id":"local_69b71bac8c78b3.97008426","stage_name":"deal_registered","force":false}
[2026-03-19 13:56:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69b71bac8c78b3.97008426","stage_name":"deal_registered"}
[2026-03-19 13:56:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b71bac8c78b3.97008426"}
[2026-03-19 13:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b71bac8c78b3.97008426","person_id":"21874"}
[2026-03-19 13:56:53] [INFO] Checking activity reminders 
[2026-03-19 13:56:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 13:56:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 13:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 13:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"check_reminders"}
[2026-03-19 14:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:13] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:14] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_leads"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:21] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:22] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:32] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:01:32] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 14:01:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:02:03] [INFO] Checking activity reminders 
[2026-03-19 14:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:02:33] [INFO] Checking activity reminders 
[2026-03-19 14:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:03:19] [INFO] Checking activity reminders 
[2026-03-19 14:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:03:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 14:03:27","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:03:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16990","is_new_deal":false}
[2026-03-19 14:03:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 14:03:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 14:03:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 14:03:27] [INFO] getContactPrimaryPhone called {"contact_id":"16990"}
[2026-03-19 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:03:27] [INFO] getContactPrimaryPhone result {"contact_id":"16990","person_found":true,"primary_phone":"9164871600"}
[2026-03-19 14:03:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9164871600"}
[2026-03-19 14:03:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9164871600","contact_id":"16990","deal_id":"local_699acfc26ad3b8.32168488","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 14:03:27"}
[2026-03-19 14:03:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","existing_deal_found":true,"existing_contact_id":"16990","existing_title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 14:03:27"}
[2026-03-19 14:03:27] [INFO] DealController.save validated payments {"deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","payments_count":5,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-19 14:03:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16990","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 14:03:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699acfc26ad3b8.32168488","contact_didar_id":"16990","title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9164871600","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"استخری","existing_deal":"YES","existing_deal_id":"local_699acfc26ad3b8.32168488","existing_deal_status":"Pending","server_time":"2026-03-19 14:03:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:03:27] [INFO] Deal success processed {"contact_id":"16990","person_name":"استخری","products_count":1}
[2026-03-19 14:03:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699acfc26ad3b8.32168488","contact_id":"16990","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9164871600 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-19 14:03:27","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 14:03:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-03-19 14:18:57] [INFO] Checking activity reminders 
[2026-03-19 14:18:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:18:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:19:18] [INFO] Lead update received {"contact_id":"local_69b5cc63be39d4.73483321","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-19 14:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5cc63be39d4.73483321"}
[2026-03-19 14:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:27] [INFO] Checking activity reminders 
[2026-03-19 14:19:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:19:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:19:40] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5cc63be39d4.73483321","deal_id":"local_69b5cc63d0421","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمیدونست چی میخواد خودش مجد. تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:19:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5cc63be39d4.73483321","note_was_empty":true}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:40] [INFO] Updating virtual stage {"contact_id":"local_69b5cc63be39d4.73483321","stage_name":"new","force":false}
[2026-03-19 14:19:40] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cc63be39d4.73483321","stage_name":"new"}
[2026-03-19 14:19:40] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cc63be39d4.73483321"}
[2026-03-19 14:19:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5cc63d0421","stage":"تماس پیگیری","status_change":null}
[2026-03-19 14:19:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd4c4054385.24780689","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd4c4054385.24780689"}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:19:40] [INFO] Updating virtual stage {"contact_id":"local_69b5cc63be39d4.73483321","stage_name":"deal_registered","force":false}
[2026-03-19 14:19:40] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5cc63be39d4.73483321","stage_name":"deal_registered"}
[2026-03-19 14:19:40] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5cc63be39d4.73483321"}
[2026-03-19 14:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5cc63be39d4.73483321","person_id":"21861"}
[2026-03-19 14:20:43] [INFO] Checking activity reminders 
[2026-03-19 14:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:20:49] [WARNING] Auth check failed - not authenticated {"session_id":"ar1ovrd2ehajv20quo6idtc0m5","session_keys":[],"action":"log_client_event"}
[2026-03-19 14:20:50] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 14:20:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 14:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:21:13] [INFO] Checking activity reminders 
[2026-03-19 14:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:21:20] [INFO] Checking activity reminders 
[2026-03-19 14:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:21:43] [INFO] Checking activity reminders 
[2026-03-19 14:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:22:13] [INFO] Checking activity reminders 
[2026-03-19 14:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:23:20] [INFO] Checking activity reminders 
[2026-03-19 14:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:23:41] [INFO] Lead update received {"contact_id":"local_69b5c321c85469.79927052","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-19 14:23:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:23:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:23:41] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c321c85469.79927052"}
[2026-03-19 14:23:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:23:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:23:50] [INFO] Checking activity reminders 
[2026-03-19 14:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:24:20] [INFO] Checking activity reminders 
[2026-03-19 14:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:24:25] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c321c85469.79927052","deal_id":"local_69b5c321c9200","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ترک، برای فروش ماسین ش گذاشته بود منصرف شده اصلا نمیدونست ما چی داریم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:24:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c321c85469.79927052","note_was_empty":true}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Updating virtual stage {"contact_id":"local_69b5c321c85469.79927052","stage_name":"new","force":false}
[2026-03-19 14:24:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c321c85469.79927052","stage_name":"new"}
[2026-03-19 14:24:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c321c85469.79927052"}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c321c9200","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 14:24:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd5e1993322.74489961","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd5e1993322.74489961"}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:25] [INFO] Updating virtual stage {"contact_id":"local_69b5c321c85469.79927052","stage_name":"deal_registered","force":false}
[2026-03-19 14:24:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c321c85469.79927052","stage_name":"deal_registered"}
[2026-03-19 14:24:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c321c85469.79927052"}
[2026-03-19 14:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c321c85469.79927052","person_id":"21855"}
[2026-03-19 14:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:24:50] [INFO] Checking activity reminders 
[2026-03-19 14:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:26:38] [INFO] Checking activity reminders 
[2026-03-19 14:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:27:08] [INFO] Activity save request {"post_data":{"contact_id":"15499","deal_id":"local_69b5cbcbbcf539.09181984","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ دو بار تماس ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:27:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15499","note_was_empty":true}
[2026-03-19 14:27:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"15499","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Updating virtual stage {"contact_id":"15499","stage_name":"deal_registered","force":false}
[2026-03-19 14:27:08] [INFO] Virtual stage successfully saved {"contact_id":"15499","stage_name":"deal_registered"}
[2026-03-19 14:27:08] [INFO] Virtual stage updated after activity save {"contact_id":"15499"}
[2026-03-19 14:27:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5cbcbbcf539.09181984","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 14:27:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd68414fb22.79763272","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd68414fb22.79763272"}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Updating virtual stage {"contact_id":"15499","stage_name":"deal_registered","force":false}
[2026-03-19 14:27:08] [INFO] Virtual stage successfully saved {"contact_id":"15499","stage_name":"deal_registered"}
[2026-03-19 14:27:08] [INFO] Virtual stage updated after activity save {"contact_id":"15499"}
[2026-03-19 14:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15499","person_id":"7779"}
[2026-03-19 14:27:08] [INFO] Checking activity reminders 
[2026-03-19 14:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:27:38] [INFO] Checking activity reminders 
[2026-03-19 14:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:30:00] [INFO] Checking activity reminders 
[2026-03-19 14:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:30:29] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c5fb515789.14047675","deal_id":"local_69b5c5fb52128","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در شبکه تیست ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:30:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c5fb515789.14047675","note_was_empty":true}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Updating virtual stage {"contact_id":"local_69b5c5fb515789.14047675","stage_name":"new","force":false}
[2026-03-19 14:30:29] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c5fb515789.14047675","stage_name":"new"}
[2026-03-19 14:30:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c5fb515789.14047675"}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c5fb52128","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 14:30:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd74d369c98.99478886","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd74d369c98.99478886"}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:29] [INFO] Updating virtual stage {"contact_id":"local_69b5c5fb515789.14047675","stage_name":"deal_registered","force":false}
[2026-03-19 14:30:29] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c5fb515789.14047675","stage_name":"deal_registered"}
[2026-03-19 14:30:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c5fb515789.14047675"}
[2026-03-19 14:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-03-19 14:30:30] [INFO] Checking activity reminders 
[2026-03-19 14:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:31:01] [INFO] Checking activity reminders 
[2026-03-19 14:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:32:54] [INFO] Checking activity reminders 
[2026-03-19 14:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:33:25] [INFO] Checking activity reminders 
[2026-03-19 14:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:33:28] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c1427baf66.91684532","deal_id":"local_69b5c1427d62d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمیشناخت گفت من شماره نذاشتم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:33:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c1427baf66.91684532","note_was_empty":true}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Updating virtual stage {"contact_id":"local_69b5c1427baf66.91684532","stage_name":"new","force":false}
[2026-03-19 14:33:28] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c1427baf66.91684532","stage_name":"new"}
[2026-03-19 14:33:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c1427baf66.91684532"}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c1427d62d","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 14:33:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd80077f6d8.02295126","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd80077f6d8.02295126"}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:28] [INFO] Updating virtual stage {"contact_id":"local_69b5c1427baf66.91684532","stage_name":"deal_registered","force":false}
[2026-03-19 14:33:28] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c1427baf66.91684532","stage_name":"deal_registered"}
[2026-03-19 14:33:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c1427baf66.91684532"}
[2026-03-19 14:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c1427baf66.91684532","person_id":"21851"}
[2026-03-19 14:33:50] [INFO] Checking activity reminders 
[2026-03-19 14:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:33:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:15] [INFO] Checking activity reminders 
[2026-03-19 14:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:36:31] [INFO] Lead update received {"contact_id":"local_69b5c28fa9d173.80489035","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-19 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:31] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c28fa9d173.80489035"}
[2026-03-19 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:46] [INFO] Checking activity reminders 
[2026-03-19 14:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:36:59] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c28fa9d173.80489035","deal_id":"local_69b5c28faa9ac","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت فردا یا س فردا ۱۱ به بعد تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:36:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c28fa9d173.80489035","note_was_empty":true}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:59] [INFO] Updating virtual stage {"contact_id":"local_69b5c28fa9d173.80489035","stage_name":"new","force":false}
[2026-03-19 14:36:59] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c28fa9d173.80489035","stage_name":"new"}
[2026-03-19 14:36:59] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c28fa9d173.80489035"}
[2026-03-19 14:36:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c28faa9ac","stage":"تماس پیگیری","status_change":null}
[2026-03-19 14:36:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbd8d3b7f240.07871080","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbd8d3b7f240.07871080"}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:36:59] [INFO] Updating virtual stage {"contact_id":"local_69b5c28fa9d173.80489035","stage_name":"deal_registered","force":false}
[2026-03-19 14:36:59] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c28fa9d173.80489035","stage_name":"deal_registered"}
[2026-03-19 14:36:59] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c28fa9d173.80489035"}
[2026-03-19 14:36:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c28fa9d173.80489035","person_id":"21854"}
[2026-03-19 14:38:02] [INFO] Checking activity reminders 
[2026-03-19 14:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:54:05] [INFO] Checking activity reminders 
[2026-03-19 14:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:54:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:55:30] [INFO] Checking activity reminders 
[2026-03-19 14:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:56:01] [INFO] Checking activity reminders 
[2026-03-19 14:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:56:01] [INFO] Activity save request {"post_data":{"contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:56:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3481","note_was_empty":true}
[2026-03-19 14:56:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"3481","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:01] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-03-19 14:56:01] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-03-19 14:56:01] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-03-19 14:56:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb0c62ffbc6.46672277","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 14:56:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbdd493b2ef4.48026772","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbdd493b2ef4.48026772"}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:01] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-03-19 14:56:01] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-03-19 14:56:01] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-03-19 14:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 14:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 14:57:21] [INFO] Checking activity reminders 
[2026-03-19 14:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:57:51] [INFO] Checking activity reminders 
[2026-03-19 14:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:58:21] [INFO] Checking activity reminders 
[2026-03-19 14:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:58:51] [INFO] Checking activity reminders 
[2026-03-19 14:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 14:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 14:59:03] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c5492aa524.57866757","deal_id":"local_69b5c5492b5e0","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نجف اباد اصفهان کامند ذوب اهن ۲ تا بچه داره، خونه مصرف داره ماشین داره، ۲۵۰ گرم طلا ، میگه میتواگ خونهدعوض کنم محله بهتر برم پرزنت کانال ۷۹ت ۵۴ ت تا یکشنبه ۲ فروردین اطلاع تا حالا عضو نبوده حایی سنتی بودا کم ریسکه  دید دادم بهش ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:59:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 14:59:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:59:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c5492aa524.57866757","note_was_empty":true}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:59:03] [INFO] Updating virtual stage {"contact_id":"local_69b5c5492aa524.57866757","stage_name":"new","force":false}
[2026-03-19 14:59:03] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c5492aa524.57866757","stage_name":"new"}
[2026-03-19 14:59:03] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c5492aa524.57866757"}
[2026-03-19 14:59:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c5492b5e0","stage":"تماس پیگیری","status_change":null}
[2026-03-19 14:59:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbddff3dad09.43862448","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:59:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbddff3dad09.43862448"}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 14:59:03] [INFO] Updating virtual stage {"contact_id":"local_69b5c5492aa524.57866757","stage_name":"deal_registered","force":false}
[2026-03-19 14:59:03] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c5492aa524.57866757","stage_name":"deal_registered"}
[2026-03-19 14:59:03] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c5492aa524.57866757"}
[2026-03-19 14:59:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5492aa524.57866757","person_id":"21856"}
[2026-03-19 15:01:39] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 15:01:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:02:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21235","person_id":"17543"}
[2026-03-19 15:02:09] [INFO] Checking activity reminders 
[2026-03-19 15:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:02:40] [INFO] Checking activity reminders 
[2026-03-19 15:02:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:02:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:04:07] [INFO] Checking activity reminders 
[2026-03-19 15:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:04:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c590bc4844.02968723","deal_id":"local_69b5c590beafe","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","note":"","result_note":" ۲بار تماس عدم پاسخ ارسال پیامک پیگری","activity_duration":"0","direction":"incoming","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:04:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c590bc4844.02968723","note_was_empty":true}
[2026-03-19 15:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Updating virtual stage {"contact_id":"local_69b5c590bc4844.02968723","stage_name":"new","force":false}
[2026-03-19 15:04:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c590bc4844.02968723","stage_name":"new"}
[2026-03-19 15:04:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c590bc4844.02968723"}
[2026-03-19 15:04:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c590beafe","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 15:04:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbdf4ccc9488.40633885","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbdf4ccc9488.40633885"}
[2026-03-19 15:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:36] [INFO] Updating virtual stage {"contact_id":"local_69b5c590bc4844.02968723","stage_name":"deal_registered","force":false}
[2026-03-19 15:04:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c590bc4844.02968723","stage_name":"deal_registered"}
[2026-03-19 15:04:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c590bc4844.02968723"}
[2026-03-19 15:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c590bc4844.02968723","person_id":"21857"}
[2026-03-19 15:04:38] [INFO] Checking activity reminders 
[2026-03-19 15:04:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:04:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:07:17] [INFO] Checking activity reminders 
[2026-03-19 15:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:07:47] [INFO] Checking activity reminders 
[2026-03-19 15:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:07:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:16] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c26679f016.87637904","deal_id":"local_69b5c2667a9cb","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:08:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:08:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:08:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c26679f016.87637904","note_was_empty":true}
[2026-03-19 15:08:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:17] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"new","force":false}
[2026-03-19 15:08:17] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"new"}
[2026-03-19 15:08:17] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:08:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c2667a9cb","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 15:08:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbe029012cb4.33049883","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:08:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbe029012cb4.33049883"}
[2026-03-19 15:08:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:17] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-03-19 15:08:17] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-03-19 15:08:17] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:08:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:08:17] [INFO] Checking activity reminders 
[2026-03-19 15:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:10:39] [INFO] Checking activity reminders 
[2026-03-19 15:10:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:10:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:10:57] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c26679f016.87637904","deal_id":"local_69b5c2667a9cb","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:10:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:10:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:10:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:10:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:10:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c26679f016.87637904","note_was_empty":true}
[2026-03-19 15:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:10:58] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-03-19 15:10:58] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-03-19 15:10:58] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:10:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c2667a9cb","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 15:10:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbe0c9f00490.27266019","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:10:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbe0c9f00490.27266019"}
[2026-03-19 15:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:10:58] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-03-19 15:10:58] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-03-19 15:10:58] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:12] [INFO] Checking activity reminders 
[2026-03-19 15:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:12:35] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c22538ee57.18446518","deal_id":"local_69b5c2253b55e","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:12:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c22538ee57.18446518","note_was_empty":true}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:35] [INFO] Updating virtual stage {"contact_id":"local_69b5c22538ee57.18446518","stage_name":"new","force":false}
[2026-03-19 15:12:35] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c22538ee57.18446518","stage_name":"new"}
[2026-03-19 15:12:35] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c22538ee57.18446518"}
[2026-03-19 15:12:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c2253b55e","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 15:12:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbe12b0be5f3.16669368","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbe12b0be5f3.16669368"}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:12:35] [INFO] Updating virtual stage {"contact_id":"local_69b5c22538ee57.18446518","stage_name":"deal_registered","force":false}
[2026-03-19 15:12:35] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c22538ee57.18446518","stage_name":"deal_registered"}
[2026-03-19 15:12:35] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c22538ee57.18446518"}
[2026-03-19 15:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c22538ee57.18446518","person_id":"21852"}
[2026-03-19 15:13:59] [WARNING] Auth check failed - not authenticated {"session_id":"kd09hso83t39bpseg2hjegufte","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:13:59] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 15:13:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:14:18] [INFO] Checking activity reminders 
[2026-03-19 15:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:14:59] [INFO] Checking activity reminders 
[2026-03-19 15:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:15:26] [INFO] Checking activity reminders 
[2026-03-19 15:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:15:30] [INFO] Checking activity reminders 
[2026-03-19 15:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:32:45] [WARNING] Auth check failed - not authenticated {"session_id":"h09b56ucaqpg8s83pq8vuts5jh","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:32:46] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 15:32:46] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 15:32:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:32:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 15:32:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 15:32:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 15:33:16] [INFO] Checking activity reminders 
[2026-03-19 15:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:34:33] [WARNING] Auth check failed - not authenticated {"session_id":"3m89ggsv9m63qsdva1dluo8bor","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:34:33] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 15:34:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:34:43] [INFO] Checking activity reminders 
[2026-03-19 15:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:34:48] [INFO] Checking activity reminders 
[2026-03-19 15:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:34:56] [INFO] Checking activity reminders 
[2026-03-19 15:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:35:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:35:26] [INFO] Checking activity reminders 
[2026-03-19 15:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:35:56] [INFO] Checking activity reminders 
[2026-03-19 15:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:36:22] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:22] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"check_reminders"}
[2026-03-19 15:36:22] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:27] [INFO] Checking activity reminders 
[2026-03-19 15:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:36:28] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_products"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_leads"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:32] [INFO] Lead update received {"contact_id":"local_69b5c26679f016.87637904","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-19 15:36:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:36:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:36:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:36:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:36:33] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:33] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:33] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_leads"}
[2026-03-19 15:36:33] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:35] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:36] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:39] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:40] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:40] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:40] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:41] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:41] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:42] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:42] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:42] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:42] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_leads"}
[2026-03-19 15:36:43] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:43] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:47] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:48] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:36:57] [INFO] Checking activity reminders 
[2026-03-19 15:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:37:01] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:37:01] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 15:37:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:37:27] [INFO] Checking activity reminders 
[2026-03-19 15:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:37:32] [INFO] Checking activity reminders 
[2026-03-19 15:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:37:57] [INFO] Checking activity reminders 
[2026-03-19 15:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:38:02] [INFO] Checking activity reminders 
[2026-03-19 15:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:38:23] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c26679f016.87637904","deal_id":"local_69b5c2667a9cb","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اهواز کارمند ساخت و ساز تهران منطقه پیروزی\r\n۲ تا واحد فروخته با پولش رو گرم ۱۰ ت طلا خریده ۶۰۰ گرم طلا ۴۰۰ گرم سکه ۸۶\r\n۲ واحد نوساز داده اجاره\r\n۱ میلیارد نقد\r\nمادربزرگش فوت کرده ارسال ش کارت واریز امروز تسویه هفته دیگه","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:38:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c26679f016.87637904","note_was_empty":true}
[2026-03-19 15:38:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:24] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-03-19 15:38:24] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-03-19 15:38:24] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:38:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c2667a9cb","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-19 15:38:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbe737f3a489.20953089","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:38:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbe737f3a489.20953089"}
[2026-03-19 15:38:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:24] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-03-19 15:38:24] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-03-19 15:38:24] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-03-19 15:38:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-03-19 15:38:27] [INFO] Checking activity reminders 
[2026-03-19 15:38:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:38:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:38:32] [INFO] Checking activity reminders 
[2026-03-19 15:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:39:03] [INFO] Checking activity reminders 
[2026-03-19 15:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:39:56] [WARNING] Auth check failed - not authenticated {"session_id":"8hfefbs8egvcgh6brdr2ld4b53","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:39:56] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-03-19 15:40:08] [INFO] Checking activity reminders 
[2026-03-19 15:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:40:21] [WARNING] Auth check failed - not authenticated {"session_id":"8hfefbs8egvcgh6brdr2ld4b53","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:40:21] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 15:40:21] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 15:40:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:40:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 15:40:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 15:40:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 15:40:38] [INFO] Checking activity reminders 
[2026-03-19 15:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:40:40] [INFO] Checking activity reminders 
[2026-03-19 15:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:40:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-03-19 15:40:53] [INFO] Checking activity reminders 
[2026-03-19 15:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:00] [INFO] generateDealTitle result {"contact_id":"14485","person_name":"سلامی سلامی","mobile":"9161163230","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9161163230"}
[2026-03-19 15:41:00] [INFO] Checking activity reminders 
[2026-03-19 15:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:41:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14485","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:41:14","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14485","is_new_deal":true}
[2026-03-19 15:41:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:14] [INFO] getContactPrimaryPhone called {"contact_id":"14485"}
[2026-03-19 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:14] [INFO] getContactPrimaryPhone result {"contact_id":"14485","person_found":true,"primary_phone":"9161163230"}
[2026-03-19 15:41:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9161163230"}
[2026-03-19 15:41:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9161163230","contact_id":"14485","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:41:14"}
[2026-03-19 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:14] [INFO] generateDealTitle result {"contact_id":"14485","person_name":"سلامی سلامی","mobile":"9161163230","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9161163230"}
[2026-03-19 15:41:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14485","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:41:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14485","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:41:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14485","title":"معامله دوم 9161163230 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9161163230","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سلامی سلامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:41:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:41:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14485","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9161163230 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:41:14","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:41:33] [INFO] Checking activity reminders 
[2026-03-19 15:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:40] [INFO] generateDealTitle result {"contact_id":"8737","person_name":"حسین کاظمی","mobile":"9171154854","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9171154854"}
[2026-03-19 15:41:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8737","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:41:53","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8737","is_new_deal":true}
[2026-03-19 15:41:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:41:53] [INFO] getContactPrimaryPhone called {"contact_id":"8737"}
[2026-03-19 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:53] [INFO] getContactPrimaryPhone result {"contact_id":"8737","person_found":true,"primary_phone":"9171154854"}
[2026-03-19 15:41:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171154854"}
[2026-03-19 15:41:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171154854","contact_id":"8737","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:41:53"}
[2026-03-19 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:53] [INFO] generateDealTitle result {"contact_id":"8737","person_name":"حسین کاظمی","mobile":"9171154854","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9171154854"}
[2026-03-19 15:41:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8737","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:41:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8737","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:41:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8737","title":"معامله سوم 9171154854 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9171154854","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسین کاظمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:41:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:41:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:41:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8737","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9171154854 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:41:53","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-19 15:42:04] [INFO] Checking activity reminders 
[2026-03-19 15:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:10] [INFO] generateDealTitle result {"contact_id":"7057","person_name":"مجید بهر","mobile":"9173907801","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173907801"}
[2026-03-19 15:42:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7057","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:42:24","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:42:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7057","is_new_deal":true}
[2026-03-19 15:42:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:42:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:42:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:42:24] [INFO] getContactPrimaryPhone called {"contact_id":"7057"}
[2026-03-19 15:42:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:24] [INFO] getContactPrimaryPhone result {"contact_id":"7057","person_found":true,"primary_phone":"9173907801"}
[2026-03-19 15:42:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173907801"}
[2026-03-19 15:42:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173907801","contact_id":"7057","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:42:24"}
[2026-03-19 15:42:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:24] [INFO] generateDealTitle result {"contact_id":"7057","person_name":"مجید بهر","mobile":"9173907801","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173907801"}
[2026-03-19 15:42:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7057","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:42:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7057","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:42:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7057","title":"معامله دوم 9173907801 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173907801","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مجید بهر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:42:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:42:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:42:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7057","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9173907801 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:42:24","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:42:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-19 15:42:39] [INFO] Checking activity reminders 
[2026-03-19 15:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:42:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:42:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:42:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:42:44] [INFO] generateDealTitle result {"contact_id":"20833","person_name":"سعید","mobile":"9181290139","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9181290139"}
[2026-03-19 15:43:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20833","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:43:03","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:43:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20833","is_new_deal":true}
[2026-03-19 15:43:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:43:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:43:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:43:03] [INFO] getContactPrimaryPhone called {"contact_id":"20833"}
[2026-03-19 15:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:43:03] [INFO] getContactPrimaryPhone result {"contact_id":"20833","person_found":true,"primary_phone":"9181290139"}
[2026-03-19 15:43:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9181290139"}
[2026-03-19 15:43:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9181290139","contact_id":"20833","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:43:03"}
[2026-03-19 15:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:43:03] [INFO] generateDealTitle result {"contact_id":"20833","person_name":"سعید","mobile":"9181290139","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9181290139"}
[2026-03-19 15:43:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20833","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:43:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20833","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:43:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20833","title":"معامله دوم 9181290139 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9181290139","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سعید","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:43:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:43:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:43:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20833","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9181290139 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:43:03","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-03-19 15:43:09] [INFO] Checking activity reminders 
[2026-03-19 15:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:43:40] [INFO] Checking activity reminders 
[2026-03-19 15:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:44:06] [INFO] Checking activity reminders 
[2026-03-19 15:44:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:44:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:44:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:12] [INFO] generateDealTitle result {"contact_id":"11172","person_name":"ناصری","mobile":"9183719675","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9183719675"}
[2026-03-19 15:44:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11172","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:44:28","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:44:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11172","is_new_deal":true}
[2026-03-19 15:44:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:44:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:44:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:44:28] [INFO] getContactPrimaryPhone called {"contact_id":"11172"}
[2026-03-19 15:44:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:28] [INFO] getContactPrimaryPhone result {"contact_id":"11172","person_found":true,"primary_phone":"9183719675"}
[2026-03-19 15:44:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9183719675"}
[2026-03-19 15:44:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9183719675","contact_id":"11172","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:44:28"}
[2026-03-19 15:44:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:28] [INFO] generateDealTitle result {"contact_id":"11172","person_name":"ناصری","mobile":"9183719675","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9183719675"}
[2026-03-19 15:44:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11172","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:44:28] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11172","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:44:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11172","title":"معامله دوم 9183719675 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9183719675","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ناصری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:44:28","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:44:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:44:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11172","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9183719675 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:44:28","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:44:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-03-19 15:44:42] [INFO] Checking activity reminders 
[2026-03-19 15:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:44:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:44:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:44:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:44:52] [INFO] generateDealTitle result {"contact_id":"20997","person_name":"موسی عادلی","mobile":"9191488896","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9191488896"}
[2026-03-19 15:45:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20997","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:45:11","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:45:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:45:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20997","is_new_deal":true}
[2026-03-19 15:45:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:11] [INFO] getContactPrimaryPhone called {"contact_id":"20997"}
[2026-03-19 15:45:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:45:11] [INFO] getContactPrimaryPhone result {"contact_id":"20997","person_found":true,"primary_phone":"9191488896"}
[2026-03-19 15:45:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191488896"}
[2026-03-19 15:45:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191488896","contact_id":"20997","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:45:11"}
[2026-03-19 15:45:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:45:11] [INFO] generateDealTitle result {"contact_id":"20997","person_name":"موسی عادلی","mobile":"9191488896","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9191488896"}
[2026-03-19 15:45:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20997","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:45:11] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20997","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:45:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20997","title":"معامله دوم 9191488896 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9191488896","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"موسی عادلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:45:11","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:45:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:45:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:45:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20997","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9191488896 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:45:11","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:45:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:45:13] [INFO] Checking activity reminders 
[2026-03-19 15:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:45:37] [INFO] Checking activity reminders 
[2026-03-19 15:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:45:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2972","deal_id":"local_6996dac21a9c63.55426335","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:45:37","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 15:45:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2972","is_new_deal":false}
[2026-03-19 15:45:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:45:37] [INFO] getContactPrimaryPhone called {"contact_id":"2972"}
[2026-03-19 15:45:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:37] [INFO] getContactPrimaryPhone result {"contact_id":"2972","person_found":true,"primary_phone":"9337323132"}
[2026-03-19 15:45:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9337323132"}
[2026-03-19 15:45:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9337323132","contact_id":"2972","deal_id":"local_6996dac21a9c63.55426335","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 15:45:37"}
[2026-03-19 15:45:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","existing_deal_found":true,"existing_contact_id":"2972","existing_title":"معامله سوم 9337323132 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 15:45:37"}
[2026-03-19 15:45:37] [INFO] DealController.save validated payments {"deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-19 15:45:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2972","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 15:45:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6996dac21a9c63.55426335","contact_didar_id":"2972","title":"معامله سوم 9337323132 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9337323132","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارمین قهرمانی","existing_deal":"YES","existing_deal_id":"local_6996dac21a9c63.55426335","existing_deal_status":"Pending","server_time":"2026-03-19 15:45:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 15:45:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:37] [INFO] Deal success processed {"contact_id":"2972","person_name":"ارمین قهرمانی","products_count":1}
[2026-03-19 15:45:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6996dac21a9c63.55426335","contact_id":"2972","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9337323132 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-19 15:45:37","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 15:45:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-03-19 15:45:45] [INFO] Checking activity reminders 
[2026-03-19 15:45:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:45:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:45:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:45:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:45:53] [INFO] generateDealTitle result {"contact_id":"8325","person_name":"پوریا واحدی","mobile":"9195850815","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195850815"}
[2026-03-19 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:46:08] [INFO] Checking activity reminders 
[2026-03-19 15:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:46:08] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8325","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:46:08","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:46:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8325","is_new_deal":true}
[2026-03-19 15:46:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:46:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:46:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:46:08] [INFO] getContactPrimaryPhone called {"contact_id":"8325"}
[2026-03-19 15:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:46:08] [INFO] getContactPrimaryPhone result {"contact_id":"8325","person_found":true,"primary_phone":"9195850815"}
[2026-03-19 15:46:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195850815"}
[2026-03-19 15:46:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195850815","contact_id":"8325","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:46:08"}
[2026-03-19 15:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:46:08] [INFO] generateDealTitle result {"contact_id":"8325","person_name":"پوریا واحدی","mobile":"9195850815","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195850815"}
[2026-03-19 15:46:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8325","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:46:08] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8325","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:46:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8325","title":"معامله دوم 9195850815 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9195850815","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"پوریا واحدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:46:08","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:46:09] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:46:09] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8325","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9195850815 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:46:09","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:46:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-19 15:46:21] [INFO] Checking activity reminders 
[2026-03-19 15:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:46:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-03-19 15:46:38] [INFO] Checking activity reminders 
[2026-03-19 15:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:46:42] [INFO] Checking activity reminders 
[2026-03-19 15:46:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:46:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-03-19 15:46:58] [INFO] Checking activity reminders 
[2026-03-19 15:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:47:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:04] [INFO] generateDealTitle result {"contact_id":"17326","person_name":"9303715476","mobile":"9303715476","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9303715476"}
[2026-03-19 15:47:08] [INFO] Checking activity reminders 
[2026-03-19 15:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:47:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17326","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:47:19","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17326","is_new_deal":true}
[2026-03-19 15:47:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:19] [INFO] getContactPrimaryPhone called {"contact_id":"17326"}
[2026-03-19 15:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:19] [INFO] getContactPrimaryPhone result {"contact_id":"17326","person_found":true,"primary_phone":"9303715476"}
[2026-03-19 15:47:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9303715476"}
[2026-03-19 15:47:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9303715476","contact_id":"17326","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:47:19"}
[2026-03-19 15:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:19] [INFO] generateDealTitle result {"contact_id":"17326","person_name":"9303715476","mobile":"9303715476","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9303715476"}
[2026-03-19 15:47:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17326","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:47:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"17326","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:47:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17326","title":"معامله دوم 9303715476 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9303715476","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"9303715476","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:47:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:47:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17326","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9303715476 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:47:19","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 15:47:31] [INFO] Checking activity reminders 
[2026-03-19 15:47:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:47:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:47:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:39] [INFO] generateDealTitle result {"contact_id":"15643","person_name":"گرجی گرجی","mobile":"9304304201","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9304304201"}
[2026-03-19 15:47:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15643","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:47:58","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:47:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15643","is_new_deal":true}
[2026-03-19 15:47:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:47:58] [INFO] getContactPrimaryPhone called {"contact_id":"15643"}
[2026-03-19 15:47:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:58] [INFO] getContactPrimaryPhone result {"contact_id":"15643","person_found":true,"primary_phone":"9304304201"}
[2026-03-19 15:47:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9304304201"}
[2026-03-19 15:47:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9304304201","contact_id":"15643","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:47:58"}
[2026-03-19 15:47:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:58] [INFO] generateDealTitle result {"contact_id":"15643","person_name":"گرجی گرجی","mobile":"9304304201","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9304304201"}
[2026-03-19 15:47:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15643","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:47:58] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15643","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:47:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15643","title":"معامله دوم 9304304201 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9304304201","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"گرجی گرجی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:47:58","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:47:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:47:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:47:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15643","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9304304201 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:47:58","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:47:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:48:02] [INFO] Checking activity reminders 
[2026-03-19 15:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:12] [INFO] Checking activity reminders 
[2026-03-19 15:48:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:16] [INFO] Checking activity reminders 
[2026-03-19 15:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:22] [INFO] generateDealTitle result {"contact_id":"14944","person_name":"سلمانی","mobile":"9133247982","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133247982"}
[2026-03-19 15:48:25] [INFO] Checking activity reminders 
[2026-03-19 15:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:37] [INFO] Checking activity reminders 
[2026-03-19 15:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14944","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:48:40","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14944","is_new_deal":true}
[2026-03-19 15:48:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:40] [INFO] getContactPrimaryPhone called {"contact_id":"14944"}
[2026-03-19 15:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:40] [INFO] getContactPrimaryPhone result {"contact_id":"14944","person_found":true,"primary_phone":"9133247982"}
[2026-03-19 15:48:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133247982"}
[2026-03-19 15:48:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133247982","contact_id":"14944","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:48:40"}
[2026-03-19 15:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:40] [INFO] generateDealTitle result {"contact_id":"14944","person_name":"سلمانی","mobile":"9133247982","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133247982"}
[2026-03-19 15:48:40] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14944","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:48:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14944","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:48:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14944","title":"معامله دوم 9133247982 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9133247982","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سلمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:48:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:40] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:48:40] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14944","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9133247982 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:48:40","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 15:48:53] [INFO] Checking activity reminders 
[2026-03-19 15:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16589","person_id":"8632"}
[2026-03-19 15:48:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8144","deal_id":"local_6999b4b54097a2.16178484","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:48:59","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 15:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:48:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8144","is_new_deal":false}
[2026-03-19 15:48:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:48:59] [INFO] getContactPrimaryPhone called {"contact_id":"8144"}
[2026-03-19 15:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:48:59] [INFO] getContactPrimaryPhone result {"contact_id":"8144","person_found":true,"primary_phone":"9122162935"}
[2026-03-19 15:48:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122162935"}
[2026-03-19 15:48:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122162935","contact_id":"8144","deal_id":"local_6999b4b54097a2.16178484","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 15:48:59"}
[2026-03-19 15:48:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","existing_deal_found":true,"existing_contact_id":"8144","existing_title":"معامله دوم 9122162935 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 15:48:59"}
[2026-03-19 15:48:59] [INFO] DealController.save validated payments {"deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-19 15:48:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8144","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 15:48:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6999b4b54097a2.16178484","contact_didar_id":"8144","title":"معامله دوم 9122162935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122162935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ثریا پرویزی","existing_deal":"YES","existing_deal_id":"local_6999b4b54097a2.16178484","existing_deal_status":"Pending","server_time":"2026-03-19 15:48:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 15:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:48:59] [INFO] Deal success processed {"contact_id":"8144","person_name":"ثریا پرویزی","products_count":1}
[2026-03-19 15:48:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6999b4b54097a2.16178484","contact_id":"8144","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9122162935 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-19 15:48:59","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 15:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-19 15:49:05] [INFO] Checking activity reminders 
[2026-03-19 15:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:49:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:07] [INFO] Checking activity reminders 
[2026-03-19 15:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:49:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:11] [INFO] generateDealTitle result {"contact_id":"2039","person_name":"حسن خانی","mobile":"9339013914","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9339013914"}
[2026-03-19 15:49:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2039","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:49:26","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2039","is_new_deal":true}
[2026-03-19 15:49:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:49:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:49:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:49:26] [INFO] getContactPrimaryPhone called {"contact_id":"2039"}
[2026-03-19 15:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:26] [INFO] getContactPrimaryPhone result {"contact_id":"2039","person_found":true,"primary_phone":"9339013914"}
[2026-03-19 15:49:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9339013914"}
[2026-03-19 15:49:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9339013914","contact_id":"2039","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:49:26"}
[2026-03-19 15:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:26] [INFO] generateDealTitle result {"contact_id":"2039","person_name":"حسن خانی","mobile":"9339013914","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9339013914"}
[2026-03-19 15:49:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2039","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:49:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2039","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:49:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2039","title":"معامله سوم 9339013914 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9339013914","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسن خانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:49:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:49:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2039","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9339013914 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:49:26","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-19 15:49:37] [INFO] Checking activity reminders 
[2026-03-19 15:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:49:42] [INFO] Checking activity reminders 
[2026-03-19 15:49:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:49:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:49:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:49:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:49:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:49:49] [INFO] generateDealTitle result {"contact_id":"15667","person_name":"ابولفضل صباغی","mobile":"9350578441","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9350578441"}
[2026-03-19 15:50:02] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15667","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:50:02","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:50:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15667","is_new_deal":true}
[2026-03-19 15:50:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:02] [INFO] getContactPrimaryPhone called {"contact_id":"15667"}
[2026-03-19 15:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:50:02] [INFO] getContactPrimaryPhone result {"contact_id":"15667","person_found":true,"primary_phone":"9350578441"}
[2026-03-19 15:50:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9350578441"}
[2026-03-19 15:50:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9350578441","contact_id":"15667","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:50:02"}
[2026-03-19 15:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:50:02] [INFO] generateDealTitle result {"contact_id":"15667","person_name":"ابولفضل صباغی","mobile":"9350578441","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9350578441"}
[2026-03-19 15:50:02] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15667","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:50:02] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15667","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:50:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15667","title":"معامله سوم 9350578441 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9350578441","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ابولفضل صباغی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:50:02","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:50:02] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:50:02] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15667","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9350578441 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:50:02","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:50:18] [INFO] Checking activity reminders 
[2026-03-19 15:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:50:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:24] [INFO] generateDealTitle result {"contact_id":"8989","person_name":"عبدالهیان","mobile":"9354473238","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9354473238"}
[2026-03-19 15:50:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8989","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:50:38","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:50:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8989","is_new_deal":true}
[2026-03-19 15:50:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:50:38] [INFO] getContactPrimaryPhone called {"contact_id":"8989"}
[2026-03-19 15:50:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:38] [INFO] getContactPrimaryPhone result {"contact_id":"8989","person_found":true,"primary_phone":"9354473238"}
[2026-03-19 15:50:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9354473238"}
[2026-03-19 15:50:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9354473238","contact_id":"8989","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:50:38"}
[2026-03-19 15:50:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:38] [INFO] generateDealTitle result {"contact_id":"8989","person_name":"عبدالهیان","mobile":"9354473238","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9354473238"}
[2026-03-19 15:50:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8989","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:50:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8989","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:50:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8989","title":"معامله دوم 9354473238 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9354473238","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"عبدالهیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:50:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:50:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:50:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8989","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9354473238 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:50:38","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:50:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:50:41] [WARNING] Auth check failed - not authenticated {"session_id":"h9qq5spnueikil90cbdvdl3jqv","session_keys":[],"action":"log_client_event"}
[2026-03-19 15:50:42] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-19 15:50:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 15:50:51] [INFO] Checking activity reminders 
[2026-03-19 15:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:50:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:50:56] [INFO] generateDealTitle result {"contact_id":"7330","person_name":"محمد یعقوبی","mobile":"9362284121","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9362284121"}
[2026-03-19 15:51:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7330","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:51:10","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:51:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:51:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7330","is_new_deal":true}
[2026-03-19 15:51:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:10] [INFO] getContactPrimaryPhone called {"contact_id":"7330"}
[2026-03-19 15:51:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:51:10] [INFO] getContactPrimaryPhone result {"contact_id":"7330","person_found":true,"primary_phone":"9362284121"}
[2026-03-19 15:51:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9362284121"}
[2026-03-19 15:51:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9362284121","contact_id":"7330","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:51:10"}
[2026-03-19 15:51:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:51:10] [INFO] generateDealTitle result {"contact_id":"7330","person_name":"محمد یعقوبی","mobile":"9362284121","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9362284121"}
[2026-03-19 15:51:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7330","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:51:10] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7330","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:51:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7330","title":"معامله دوم 9362284121 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9362284121","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد یعقوبی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:51:10","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:51:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:51:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:51:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7330","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9362284121 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:51:10","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:51:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 15:51:12] [INFO] Checking activity reminders 
[2026-03-19 15:51:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:51:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:51:26] [INFO] Checking activity reminders 
[2026-03-19 15:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:51:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:34] [INFO] generateDealTitle result {"contact_id":"10787","person_name":"سامانی","mobile":"9363805623","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9363805623"}
[2026-03-19 15:51:51] [INFO] Checking activity reminders 
[2026-03-19 15:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:51:56] [INFO] Checking activity reminders 
[2026-03-19 15:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:51:57] [INFO] Checking activity reminders 
[2026-03-19 15:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:51:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10787","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:51:57","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10787","is_new_deal":true}
[2026-03-19 15:51:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:51:57] [INFO] getContactPrimaryPhone called {"contact_id":"10787"}
[2026-03-19 15:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:57] [INFO] getContactPrimaryPhone result {"contact_id":"10787","person_found":true,"primary_phone":"9363805623"}
[2026-03-19 15:51:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363805623"}
[2026-03-19 15:51:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363805623","contact_id":"10787","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:51:57"}
[2026-03-19 15:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:57] [INFO] generateDealTitle result {"contact_id":"10787","person_name":"سامانی","mobile":"9363805623","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9363805623"}
[2026-03-19 15:51:57] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10787","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:51:57] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10787","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:51:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10787","title":"معامله سوم 9363805623 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9363805623","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سامانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:51:57","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:51:57] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:51:57] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10787","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9363805623 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:51:57","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:52:02] [INFO] Checking activity reminders 
[2026-03-19 15:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:11] [INFO] Checking activity reminders 
[2026-03-19 15:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:16] [INFO] generateDealTitle result {"contact_id":"16868","person_name":"احمدزاده","mobile":"9144124640","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144124640"}
[2026-03-19 15:52:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16868","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:52:31","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16868","is_new_deal":true}
[2026-03-19 15:52:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:52:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:52:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:52:31] [INFO] getContactPrimaryPhone called {"contact_id":"16868"}
[2026-03-19 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:31] [INFO] getContactPrimaryPhone result {"contact_id":"16868","person_found":true,"primary_phone":"9144124640"}
[2026-03-19 15:52:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144124640"}
[2026-03-19 15:52:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144124640","contact_id":"16868","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:52:31"}
[2026-03-19 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:31] [INFO] generateDealTitle result {"contact_id":"16868","person_name":"احمدزاده","mobile":"9144124640","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144124640"}
[2026-03-19 15:52:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16868","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:52:31] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"16868","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:52:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16868","title":"معامله دوم 9144124640 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144124640","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"احمدزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:52:31","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:52:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16868","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9144124640 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:52:31","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 15:52:32] [INFO] Checking activity reminders 
[2026-03-19 15:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:52:43] [INFO] Checking activity reminders 
[2026-03-19 15:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:52:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:52:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:52:52] [INFO] generateDealTitle result {"contact_id":"21663","person_name":"نصرتی","mobile":"9388070661","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9388070661"}
[2026-03-19 15:52:54] [INFO] Activity save request {"post_data":{"contact_id":"11224","deal_id":"local_69b5bf9de5c773.06780749","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ارسال شکارت ۱۰ واریز هفته دیگه پرداخت دوم بعد دسترسی بدیم هفته اخر فروردین تسویه ۷۹ ت\r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:52:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11224","note_was_empty":true}
[2026-03-19 15:52:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"11224","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:54] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-19 15:52:54] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-19 15:52:54] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-19 15:52:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5bf9de5c773.06780749","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-19 15:52:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbea9ee579f2.68295124","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbea9ee579f2.68295124"}
[2026-03-19 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:52:54] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-03-19 15:52:54] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-03-19 15:52:54] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-03-19 15:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-19 15:53:03] [INFO] Checking activity reminders 
[2026-03-19 15:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:53:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21663","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:53:10","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:53:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:53:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21663","is_new_deal":true}
[2026-03-19 15:53:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:53:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:53:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:53:10] [INFO] getContactPrimaryPhone called {"contact_id":"21663"}
[2026-03-19 15:53:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:53:10] [INFO] getContactPrimaryPhone result {"contact_id":"21663","person_found":true,"primary_phone":"9388070661"}
[2026-03-19 15:53:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9388070661"}
[2026-03-19 15:53:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9388070661","contact_id":"21663","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:53:10"}
[2026-03-19 15:53:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:53:10] [INFO] generateDealTitle result {"contact_id":"21663","person_name":"نصرتی","mobile":"9388070661","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9388070661"}
[2026-03-19 15:53:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21663","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:53:10] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21663","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:53:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21663","title":"معامله دوم 9388070661 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9388070661","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نصرتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:53:10","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:53:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:53:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:53:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21663","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9388070661 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:53:10","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:53:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-19 15:53:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:13] [INFO] Checking activity reminders 
[2026-03-19 15:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:53:33] [INFO] Checking activity reminders 
[2026-03-19 15:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:53:45] [INFO] Checking activity reminders 
[2026-03-19 15:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:53:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:53:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:53:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:53:51] [INFO] generateDealTitle result {"contact_id":"5640","person_name":"سیدمحمدرضاخدمتکار","mobile":"9388836886","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9388836886"}
[2026-03-19 15:53:58] [INFO] Activity save request {"post_data":{"contact_id":"10787","deal_id":"local_69bbea655a00b5.14651192","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"به درد نخور پارسال دعوامون شد باهاش با استاد و ظهوری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:53:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"10787","note_was_empty":true}
[2026-03-19 15:53:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"10787","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Updating virtual stage {"contact_id":"10787","stage_name":"deal_registered","force":false}
[2026-03-19 15:53:58] [INFO] Virtual stage successfully saved {"contact_id":"10787","stage_name":"deal_registered"}
[2026-03-19 15:53:58] [INFO] Virtual stage updated after activity save {"contact_id":"10787"}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbea655a00b5.14651192","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 15:53:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbeade8388a2.41816776","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbeade8388a2.41816776"}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:53:58] [INFO] Updating virtual stage {"contact_id":"10787","stage_name":"deal_registered","force":false}
[2026-03-19 15:53:58] [INFO] Virtual stage successfully saved {"contact_id":"10787","stage_name":"deal_registered"}
[2026-03-19 15:53:58] [INFO] Virtual stage updated after activity save {"contact_id":"10787"}
[2026-03-19 15:53:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10787","person_id":"14279"}
[2026-03-19 15:54:03] [INFO] Checking activity reminders 
[2026-03-19 15:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:54:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5640","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:54:03","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:54:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5640","is_new_deal":true}
[2026-03-19 15:54:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:03] [INFO] getContactPrimaryPhone called {"contact_id":"5640"}
[2026-03-19 15:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:54:03] [INFO] getContactPrimaryPhone result {"contact_id":"5640","person_found":true,"primary_phone":"9388836886"}
[2026-03-19 15:54:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9388836886"}
[2026-03-19 15:54:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9388836886","contact_id":"5640","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:54:03"}
[2026-03-19 15:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:54:03] [INFO] generateDealTitle result {"contact_id":"5640","person_name":"سیدمحمدرضاخدمتکار","mobile":"9388836886","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9388836886"}
[2026-03-19 15:54:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5640","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:54:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5640","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:54:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5640","title":"معامله دوم 9388836886 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9388836886","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سیدمحمدرضاخدمتکار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:54:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:54:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:54:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5640","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9388836886 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:54:04","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:54:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-19 15:54:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:12] [INFO] Checking activity reminders 
[2026-03-19 15:54:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:54:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:19] [INFO] generateDealTitle result {"contact_id":"4924","person_name":"محمودلو","mobile":"9393029500","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9393029500"}
[2026-03-19 15:54:33] [INFO] Checking activity reminders 
[2026-03-19 15:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:54:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4924","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:54:35","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4924","is_new_deal":true}
[2026-03-19 15:54:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:54:35] [INFO] getContactPrimaryPhone called {"contact_id":"4924"}
[2026-03-19 15:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:35] [INFO] getContactPrimaryPhone result {"contact_id":"4924","person_found":true,"primary_phone":"9393029500"}
[2026-03-19 15:54:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9393029500"}
[2026-03-19 15:54:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9393029500","contact_id":"4924","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:54:35"}
[2026-03-19 15:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:35] [INFO] generateDealTitle result {"contact_id":"4924","person_name":"محمودلو","mobile":"9393029500","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9393029500"}
[2026-03-19 15:54:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4924","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:54:35] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4924","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:54:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4924","title":"معامله دوم 9393029500 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9393029500","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمودلو","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:54:35","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:54:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4924","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9393029500 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:54:35","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:54:38] [INFO] Activity save request {"post_data":{"contact_id":"15667","deal_id":"local_69bbe9f2a26316.11038333","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمیخواد باشه ریسک پذیر نبست مارستل تسویه نکرد عودت دادیم","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:54:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15667","note_was_empty":true}
[2026-03-19 15:54:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"15667","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Updating virtual stage {"contact_id":"15667","stage_name":"deal_registered","force":false}
[2026-03-19 15:54:38] [INFO] Virtual stage successfully saved {"contact_id":"15667","stage_name":"deal_registered"}
[2026-03-19 15:54:38] [INFO] Virtual stage updated after activity save {"contact_id":"15667"}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe9f2a26316.11038333","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 15:54:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbeb06c06d18.45683325","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbeb06c06d18.45683325"}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:38] [INFO] Updating virtual stage {"contact_id":"15667","stage_name":"deal_registered","force":false}
[2026-03-19 15:54:38] [INFO] Virtual stage successfully saved {"contact_id":"15667","stage_name":"deal_registered"}
[2026-03-19 15:54:38] [INFO] Virtual stage updated after activity save {"contact_id":"15667"}
[2026-03-19 15:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 15:54:45] [INFO] Checking activity reminders 
[2026-03-19 15:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20597","person_id":"13967"}
[2026-03-19 15:54:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:54:58] [INFO] Checking activity reminders 
[2026-03-19 15:54:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:54:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:55:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:03] [INFO] Checking activity reminders 
[2026-03-19 15:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:05] [INFO] generateDealTitle result {"contact_id":"20941","person_name":"محمدرضا ناصری","mobile":"9914995876","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9914995876"}
[2026-03-19 15:55:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20941","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:55:18","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:55:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20941","is_new_deal":true}
[2026-03-19 15:55:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:18] [INFO] getContactPrimaryPhone called {"contact_id":"20941"}
[2026-03-19 15:55:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:18] [INFO] getContactPrimaryPhone result {"contact_id":"20941","person_found":true,"primary_phone":"9914995876"}
[2026-03-19 15:55:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9914995876"}
[2026-03-19 15:55:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9914995876","contact_id":"20941","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:55:18"}
[2026-03-19 15:55:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:18] [INFO] generateDealTitle result {"contact_id":"20941","person_name":"محمدرضا ناصری","mobile":"9914995876","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9914995876"}
[2026-03-19 15:55:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20941","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:55:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20941","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:55:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20941","title":"معامله دوم 9914995876 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9914995876","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدرضا ناصری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:55:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:55:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:55:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20941","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9914995876 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:55:18","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:55:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-03-19 15:55:28] [INFO] Checking activity reminders 
[2026-03-19 15:55:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:55:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:32] [INFO] Activity save request {"post_data":{"contact_id":"15643","deal_id":"local_69bbe976bb3c84.95429173","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پول نمیده میپیچونه پارسال دوروغ گفت تسویه نکرد الکی گفت زندانم حذف شد","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:55:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15643","note_was_empty":true}
[2026-03-19 15:55:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"15643","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Updating virtual stage {"contact_id":"15643","stage_name":"deal_registered","force":false}
[2026-03-19 15:55:32] [INFO] Virtual stage successfully saved {"contact_id":"15643","stage_name":"deal_registered"}
[2026-03-19 15:55:32] [INFO] Virtual stage updated after activity save {"contact_id":"15643"}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe976bb3c84.95429173","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 15:55:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbeb3c8e54e2.83385959","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbeb3c8e54e2.83385959"}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:32] [INFO] Updating virtual stage {"contact_id":"15643","stage_name":"deal_registered","force":false}
[2026-03-19 15:55:32] [INFO] Virtual stage successfully saved {"contact_id":"15643","stage_name":"deal_registered"}
[2026-03-19 15:55:32] [INFO] Virtual stage updated after activity save {"contact_id":"15643"}
[2026-03-19 15:55:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:33] [INFO] Checking activity reminders 
[2026-03-19 15:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:35] [INFO] generateDealTitle result {"contact_id":"15700","person_name":"محمد جوکار","mobile":"9928032529","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9928032529"}
[2026-03-19 15:55:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15700","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:55:49","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15700","is_new_deal":true}
[2026-03-19 15:55:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:55:49] [INFO] getContactPrimaryPhone called {"contact_id":"15700"}
[2026-03-19 15:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:49] [INFO] getContactPrimaryPhone result {"contact_id":"15700","person_found":true,"primary_phone":"9928032529"}
[2026-03-19 15:55:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9928032529"}
[2026-03-19 15:55:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9928032529","contact_id":"15700","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:55:49"}
[2026-03-19 15:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:49] [INFO] generateDealTitle result {"contact_id":"15700","person_name":"محمد جوکار","mobile":"9928032529","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9928032529"}
[2026-03-19 15:55:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15700","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:55:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15700","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:55:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15700","title":"معامله دوم 9928032529 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9928032529","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد جوکار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:55:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:55:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15700","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9928032529 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:55:49","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 15:55:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 15:55:58] [INFO] Checking activity reminders 
[2026-03-19 15:55:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:55:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:56:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:04] [INFO] Checking activity reminders 
[2026-03-19 15:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:56:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:10] [INFO] generateDealTitle result {"contact_id":"20362","person_name":"اکبری اکبری","mobile":"9045661540","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9045661540"}
[2026-03-19 15:56:23] [INFO] Checking activity reminders 
[2026-03-19 15:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:56:34] [INFO] Activity save request {"post_data":{"contact_id":"4924","deal_id":"local_69bbeb03550462.50445019","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ایران نیست خیلی جواب تماس نمیده پارسالم ۱۵ ت داد اصلا استفاده نکرد","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:56:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4924","note_was_empty":true}
[2026-03-19 15:56:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"4924","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Updating virtual stage {"contact_id":"4924","stage_name":"deal_registered","force":false}
[2026-03-19 15:56:34] [INFO] Virtual stage successfully saved {"contact_id":"4924","stage_name":"deal_registered"}
[2026-03-19 15:56:34] [INFO] Virtual stage updated after activity save {"contact_id":"4924"}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeb03550462.50445019","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 15:56:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbeb7a0917e7.69504406","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbeb7a0917e7.69504406"}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Updating virtual stage {"contact_id":"4924","stage_name":"deal_registered","force":false}
[2026-03-19 15:56:34] [INFO] Virtual stage successfully saved {"contact_id":"4924","stage_name":"deal_registered"}
[2026-03-19 15:56:34] [INFO] Virtual stage updated after activity save {"contact_id":"4924"}
[2026-03-19 15:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4924","person_id":"5597"}
[2026-03-19 15:56:34] [INFO] Checking activity reminders 
[2026-03-19 15:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:56:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20362","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 15:56:38","session_id":"8hfefbs8egvcgh6brdr2ld4b53"}
[2026-03-19 15:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20362","is_new_deal":true}
[2026-03-19 15:56:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 15:56:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:56:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 15:56:38] [INFO] getContactPrimaryPhone called {"contact_id":"20362"}
[2026-03-19 15:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:38] [INFO] getContactPrimaryPhone result {"contact_id":"20362","person_found":true,"primary_phone":"9045661540"}
[2026-03-19 15:56:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9045661540"}
[2026-03-19 15:56:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9045661540","contact_id":"20362","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-19 15:56:38"}
[2026-03-19 15:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:38] [INFO] generateDealTitle result {"contact_id":"20362","person_name":"اکبری اکبری","mobile":"9045661540","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9045661540"}
[2026-03-19 15:56:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20362","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-19 15:56:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20362","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-19 15:56:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20362","title":"معامله سوم 9045661540 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9045661540","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اکبری اکبری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-19 15:56:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-19 15:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-19 15:56:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20362","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9045661540 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-19 15:56:38","ip_address":"46.41.250.87","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-19 15:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:04] [INFO] Checking activity reminders 
[2026-03-19 15:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:57:06] [INFO] Activity save request {"post_data":{"contact_id":"20997","deal_id":"local_69bbe8cf7a9066.39109682","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پول نداره خ نه خرید حتی ۴۰۴ ر. ادامه نداد","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:57:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20997","note_was_empty":true}
[2026-03-19 15:57:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"20997","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Updating virtual stage {"contact_id":"20997","stage_name":"deal_registered","force":false}
[2026-03-19 15:57:06] [INFO] Virtual stage successfully saved {"contact_id":"20997","stage_name":"deal_registered"}
[2026-03-19 15:57:06] [INFO] Virtual stage updated after activity save {"contact_id":"20997"}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe8cf7a9066.39109682","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-19 15:57:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbeb9a7990e8.97850794","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbeb9a7990e8.97850794"}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:06] [INFO] Updating virtual stage {"contact_id":"20997","stage_name":"deal_registered","force":false}
[2026-03-19 15:57:06] [INFO] Virtual stage successfully saved {"contact_id":"20997","stage_name":"deal_registered"}
[2026-03-19 15:57:06] [INFO] Virtual stage updated after activity save {"contact_id":"20997"}
[2026-03-19 15:57:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 15:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:34] [INFO] Checking activity reminders 
[2026-03-19 15:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:57:50] [INFO] Activity save request {"post_data":{"contact_id":"14485","deal_id":"local_69bbe7e258d4e6.75536737","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پول نداره خیلی وقته نمیتونه معانله کنه حسبااش بسته شد","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:57:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14485","note_was_empty":true}
[2026-03-19 15:57:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"14485","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:50] [INFO] Updating virtual stage {"contact_id":"14485","stage_name":"deal_registered","force":false}
[2026-03-19 15:57:50] [INFO] Virtual stage successfully saved {"contact_id":"14485","stage_name":"deal_registered"}
[2026-03-19 15:57:50] [INFO] Virtual stage updated after activity save {"contact_id":"14485"}
[2026-03-19 15:57:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe7e258d4e6.75536737","stage":"تماس پیگیری","status_change":null}
[2026-03-19 15:57:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbebc6263b41.70281132","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbebc6263b41.70281132"}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:50] [INFO] Updating virtual stage {"contact_id":"14485","stage_name":"deal_registered","force":false}
[2026-03-19 15:57:50] [INFO] Virtual stage successfully saved {"contact_id":"14485","stage_name":"deal_registered"}
[2026-03-19 15:57:50] [INFO] Virtual stage updated after activity save {"contact_id":"14485"}
[2026-03-19 15:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 15:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:05] [INFO] Checking activity reminders 
[2026-03-19 15:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:58:25] [INFO] Activity save request {"post_data":{"contact_id":"20362","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه گرونه به دردم نمیخوره ۵ ت بدین","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:58:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20362","note_was_empty":true}
[2026-03-19 15:58:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"20362","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:58:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbebe9e7e093.64493386","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbebe9e7e093.64493386"}
[2026-03-19 15:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:25] [INFO] Updating virtual stage {"contact_id":"20362","stage_name":"deal_registered","force":false}
[2026-03-19 15:58:25] [INFO] Virtual stage successfully saved {"contact_id":"20362","stage_name":"deal_registered"}
[2026-03-19 15:58:25] [INFO] Virtual stage updated after activity save {"contact_id":"20362"}
[2026-03-19 15:58:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:58:35] [INFO] Checking activity reminders 
[2026-03-19 15:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:05] [INFO] Checking activity reminders 
[2026-03-19 15:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 15:59:16] [INFO] Activity save request {"post_data":{"contact_id":"20362","deal_id":"local_69bbeb7e5ca195.81831193","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نیگا گرونه به دردم نمیخوره ۵ ت بدین جای دیگه هستم ارزونه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 15:59:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20362","note_was_empty":true}
[2026-03-19 15:59:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"20362","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:16] [INFO] Updating virtual stage {"contact_id":"20362","stage_name":"deal_registered","force":false}
[2026-03-19 15:59:16] [INFO] Virtual stage successfully saved {"contact_id":"20362","stage_name":"deal_registered"}
[2026-03-19 15:59:16] [INFO] Virtual stage updated after activity save {"contact_id":"20362"}
[2026-03-19 15:59:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeb7e5ca195.81831193","stage":"تماس پیگیری","status_change":null}
[2026-03-19 15:59:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbec1c035f69.81960294","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbec1c035f69.81960294"}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:16] [INFO] Updating virtual stage {"contact_id":"20362","stage_name":"deal_registered","force":false}
[2026-03-19 15:59:16] [INFO] Virtual stage successfully saved {"contact_id":"20362","stage_name":"deal_registered"}
[2026-03-19 15:59:16] [INFO] Virtual stage updated after activity save {"contact_id":"20362"}
[2026-03-19 15:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-19 15:59:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 15:59:35] [INFO] Checking activity reminders 
[2026-03-19 15:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 15:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:00:05] [INFO] Checking activity reminders 
[2026-03-19 16:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:00:08] [INFO] Activity save request {"post_data":{"contact_id":"8989","deal_id":"local_69bbea169ecba5.59900645","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه گرونه معامله نیست استادم دقیق نمیگه درست جوا ب نمیده\r\nسیگنال اشتباه داد سر ماشین ضرر کرده","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 16:00:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8989","note_was_empty":true}
[2026-03-19 16:00:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"8989","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:08] [INFO] Updating virtual stage {"contact_id":"8989","stage_name":"deal_registered","force":false}
[2026-03-19 16:00:08] [INFO] Virtual stage successfully saved {"contact_id":"8989","stage_name":"deal_registered"}
[2026-03-19 16:00:08] [INFO] Virtual stage updated after activity save {"contact_id":"8989"}
[2026-03-19 16:00:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbea169ecba5.59900645","stage":"تماس پیگیری","status_change":null}
[2026-03-19 16:00:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbec50948077.19941461","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbec50948077.19941461"}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:08] [INFO] Updating virtual stage {"contact_id":"8989","stage_name":"deal_registered","force":false}
[2026-03-19 16:00:08] [INFO] Virtual stage successfully saved {"contact_id":"8989","stage_name":"deal_registered"}
[2026-03-19 16:00:08] [INFO] Virtual stage updated after activity save {"contact_id":"8989"}
[2026-03-19 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:36] [INFO] Checking activity reminders 
[2026-03-19 16:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:00:45] [INFO] Activity save request {"post_data":{"contact_id":"16868","deal_id":"local_69bbea877a3c67.70642549","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پسرش گفته به دردمون نمیخوره نمیخوان باشن","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 16:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 16:00:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 16:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16868","note_was_empty":true}
[2026-03-19 16:00:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"16868","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-19 16:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:45] [INFO] Updating virtual stage {"contact_id":"16868","stage_name":"deal_registered","force":false}
[2026-03-19 16:00:45] [INFO] Virtual stage successfully saved {"contact_id":"16868","stage_name":"deal_registered"}
[2026-03-19 16:00:45] [INFO] Virtual stage updated after activity save {"contact_id":"16868"}
[2026-03-19 16:00:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbea877a3c67.70642549","stage":"تماس پیگیری","status_change":null}
[2026-03-19 16:00:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbec75e323a3.75732604","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 16:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbec75e323a3.75732604"}
[2026-03-19 16:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:00:45] [INFO] Updating virtual stage {"contact_id":"16868","stage_name":"deal_registered","force":false}
[2026-03-19 16:00:45] [INFO] Virtual stage successfully saved {"contact_id":"16868","stage_name":"deal_registered"}
[2026-03-19 16:00:45] [INFO] Virtual stage updated after activity save {"contact_id":"16868"}
[2026-03-19 16:00:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:01:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-03-19 16:01:06] [INFO] Checking activity reminders 
[2026-03-19 16:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:01:52] [INFO] Checking activity reminders 
[2026-03-19 16:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:02:07] [WARNING] Auth check failed - not authenticated {"session_id":"8hfefbs8egvcgh6brdr2ld4b53","session_keys":[],"action":"log_client_event"}
[2026-03-19 16:02:07] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 16:02:07] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 16:02:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 16:02:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:02:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:02:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:02:38] [INFO] Checking activity reminders 
[2026-03-19 16:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:02:47] [INFO] Checking activity reminders 
[2026-03-19 16:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:02:53] [INFO] Checking activity reminders 
[2026-03-19 16:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:03:13] [INFO] Checking activity reminders 
[2026-03-19 16:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:03:21] [INFO] Checking activity reminders 
[2026-03-19 16:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:03:31] [INFO] Checking activity reminders 
[2026-03-19 16:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:05:26] [INFO] Checking activity reminders 
[2026-03-19 16:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 16:05:52] [INFO] Checking activity reminders 
[2026-03-19 16:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:06:12] [INFO] Checking activity reminders 
[2026-03-19 16:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:07:17] [INFO] Checking activity reminders 
[2026-03-19 16:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:07:30] [INFO] Checking activity reminders 
[2026-03-19 16:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:07:37] [INFO] Checking activity reminders 
[2026-03-19 16:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:07:46] [INFO] Checking activity reminders 
[2026-03-19 16:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:09:18] [INFO] Checking activity reminders 
[2026-03-19 16:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:13:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 16:13:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:13:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:13:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:14:15] [INFO] Checking activity reminders 
[2026-03-19 16:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:14:19] [INFO] Checking activity reminders 
[2026-03-19 16:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:14:27] [INFO] Checking activity reminders 
[2026-03-19 16:14:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:14:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:14:37] [INFO] Checking activity reminders 
[2026-03-19 16:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:15:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-19 16:15:28] [INFO] Checking activity reminders 
[2026-03-19 16:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:15:44] [INFO] Checking activity reminders 
[2026-03-19 16:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:15:48] [INFO] Checking activity reminders 
[2026-03-19 16:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:16:01] [INFO] Checking activity reminders 
[2026-03-19 16:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-19 16:16:22] [INFO] Checking activity reminders 
[2026-03-19 16:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:16:41] [INFO] Checking activity reminders 
[2026-03-19 16:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-03-19 16:17:00] [INFO] Checking activity reminders 
[2026-03-19 16:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:12] [INFO] Checking activity reminders 
[2026-03-19 16:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:22] [INFO] Checking activity reminders 
[2026-03-19 16:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:35] [INFO] Checking activity reminders 
[2026-03-19 16:17:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:47] [INFO] Checking activity reminders 
[2026-03-19 16:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:56] [INFO] Checking activity reminders 
[2026-03-19 16:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-19 16:18:26] [INFO] Checking activity reminders 
[2026-03-19 16:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:18:37] [INFO] Checking activity reminders 
[2026-03-19 16:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:18:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14485","person_id":"3937"}
[2026-03-19 16:19:07] [INFO] Checking activity reminders 
[2026-03-19 16:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:19:25] [INFO] Checking activity reminders 
[2026-03-19 16:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20997","person_id":"4447"}
[2026-03-19 16:19:49] [INFO] Checking activity reminders 
[2026-03-19 16:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15643","person_id":"2360"}
[2026-03-19 16:20:15] [INFO] Checking activity reminders 
[2026-03-19 16:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:20:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15667","person_id":"8492"}
[2026-03-19 16:20:42] [INFO] Checking activity reminders 
[2026-03-19 16:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:20:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8989","person_id":"14019"}
[2026-03-19 16:21:07] [INFO] Checking activity reminders 
[2026-03-19 16:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:23:40] [WARNING] Auth check failed - not authenticated {"session_id":"tvfqljaasejpkk905dam4lk7c4","session_keys":[],"action":"log_client_event"}
[2026-03-19 16:23:40] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 16:23:40] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 16:23:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:23:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:23:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:23:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 16:23:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:23:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:23:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:24:11] [INFO] Checking activity reminders 
[2026-03-19 16:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:24:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:24:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:24:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9099","person_id":"12092"}
[2026-03-19 16:24:41] [INFO] Checking activity reminders 
[2026-03-19 16:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:25:11] [INFO] Checking activity reminders 
[2026-03-19 16:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-19 16:27:36] [INFO] Checking activity reminders 
[2026-03-19 16:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9099","person_id":"12092"}
[2026-03-19 16:28:07] [INFO] Checking activity reminders 
[2026-03-19 16:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:28:33] [INFO] Checking activity reminders 
[2026-03-19 16:28:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:28:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-19 16:29:03] [INFO] Checking activity reminders 
[2026-03-19 16:29:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:29:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"tvfqljaasejpkk905dam4lk7c4","session_keys":[],"action":"log_client_event"}
[2026-03-19 16:29:15] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-03-19 16:29:15] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-03-19 16:29:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 16:29:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-19 16:29:45] [INFO] Checking activity reminders 
[2026-03-19 16:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:30:16] [INFO] Checking activity reminders 
[2026-03-19 16:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:30:44] [WARNING] Auth check failed - not authenticated {"session_id":"tvfqljaasejpkk905dam4lk7c4","session_keys":[],"action":"log_client_event"}
[2026-03-19 16:30:44] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 16:30:44] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 16:30:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 16:30:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:30:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:30:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:31:14] [INFO] Checking activity reminders 
[2026-03-19 16:31:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:31:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:31:45] [INFO] Checking activity reminders 
[2026-03-19 16:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:32:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:32:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:32:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:32:15] [INFO] Checking activity reminders 
[2026-03-19 16:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 16:32:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 16:32:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 16:32:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 16:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-03-19 16:32:45] [INFO] Checking activity reminders 
[2026-03-19 16:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 16:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:11:24] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 17:11:24] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 17:11:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 17:11:54] [INFO] Checking activity reminders 
[2026-03-19 17:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:12:24] [INFO] Checking activity reminders 
[2026-03-19 17:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:12:55] [INFO] Checking activity reminders 
[2026-03-19 17:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:13:25] [INFO] Checking activity reminders 
[2026-03-19 17:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:13:55] [INFO] Checking activity reminders 
[2026-03-19 17:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:14:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:14:25] [INFO] Checking activity reminders 
[2026-03-19 17:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:14:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:14:55] [INFO] Checking activity reminders 
[2026-03-19 17:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:15:26] [INFO] Checking activity reminders 
[2026-03-19 17:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:15:40] [INFO] Activity save request {"post_data":{"contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت ۴۰۵ با پشتیبانی استاد  \r\nجهت واریز منتظر وصولی \r\n۲ مرحله نقد \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:15:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 17:15:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:15:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3481","note_was_empty":true}
[2026-03-19 17:15:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"3481","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:15:40] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-03-19 17:15:40] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-03-19 17:15:40] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-03-19 17:15:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb0c62ffbc6.46672277","stage":"تماس پیگیری","status_change":null}
[2026-03-19 17:15:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bbfe04885304.81761763","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:15:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69bbfe04885304.81761763"}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:15:40] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-03-19 17:15:40] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-03-19 17:15:40] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-03-19 17:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-19 17:17:01] [INFO] Checking activity reminders 
[2026-03-19 17:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:25:15] [INFO] Checking activity reminders 
[2026-03-19 17:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:25:45] [INFO] Checking activity reminders 
[2026-03-19 17:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:26:00] [INFO] Activity save request {"post_data":{"contact_id":"6956","deal_id":"local_69bbb05b68bcf5.43795629","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 17:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 17:26:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 17:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6956","note_was_empty":true}
[2026-03-19 17:26:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"6956","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 17:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:00] [INFO] Updating virtual stage {"contact_id":"6956","stage_name":"deal_registered","force":false}
[2026-03-19 17:26:00] [INFO] Virtual stage successfully saved {"contact_id":"6956","stage_name":"deal_registered"}
[2026-03-19 17:26:00] [INFO] Virtual stage updated after activity save {"contact_id":"6956"}
[2026-03-19 17:26:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb05b68bcf5.43795629","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 17:26:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bc0070ec8335.85822080","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 17:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69bc0070ec8335.85822080"}
[2026-03-19 17:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:01] [INFO] Updating virtual stage {"contact_id":"6956","stage_name":"deal_registered","force":false}
[2026-03-19 17:26:01] [INFO] Virtual stage successfully saved {"contact_id":"6956","stage_name":"deal_registered"}
[2026-03-19 17:26:01] [INFO] Virtual stage updated after activity save {"contact_id":"6956"}
[2026-03-19 17:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-19 17:26:16] [INFO] Checking activity reminders 
[2026-03-19 17:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:26:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 17:26:46] [INFO] Checking activity reminders 
[2026-03-19 17:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:27:45] [INFO] Checking activity reminders 
[2026-03-19 17:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 17:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 17:27:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 19:14:30] [WARNING] Auth check failed - not authenticated {"session_id":"l14b4204jkguvpsupn4djali4c","session_keys":[],"action":"log_client_event"}
[2026-03-19 19:14:30] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 19:14:30] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 19:14:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 19:14:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 19:14:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 19:14:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 19:14:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-19 19:15:01] [INFO] Checking activity reminders 
[2026-03-19 19:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:15:31] [INFO] Checking activity reminders 
[2026-03-19 19:15:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:15:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:16:01] [INFO] Checking activity reminders 
[2026-03-19 19:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:16:31] [INFO] Checking activity reminders 
[2026-03-19 19:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:17:01] [INFO] Checking activity reminders 
[2026-03-19 19:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:17:32] [INFO] Checking activity reminders 
[2026-03-19 19:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:18:02] [INFO] Checking activity reminders 
[2026-03-19 19:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:18:32] [INFO] Checking activity reminders 
[2026-03-19 19:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:19:02] [INFO] Checking activity reminders 
[2026-03-19 19:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-19 19:19:32] [INFO] Checking activity reminders 
[2026-03-19 19:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:20:02] [INFO] Checking activity reminders 
[2026-03-19 19:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:20:33] [INFO] Checking activity reminders 
[2026-03-19 19:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:21:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-19 19:21:03] [INFO] Checking activity reminders 
[2026-03-19 19:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:21:39] [WARNING] Auth check failed - not authenticated {"session_id":"l14b4204jkguvpsupn4djali4c","session_keys":[],"action":"log_client_event"}
[2026-03-19 19:21:39] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-19 19:21:39] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-19 19:21:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-19 19:21:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-19 19:21:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-19 19:21:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 19:22:10] [INFO] Checking activity reminders 
[2026-03-19 19:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:22:26] [INFO] Checking activity reminders 
[2026-03-19 19:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:22:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-19 19:22:56] [INFO] Checking activity reminders 
[2026-03-19 19:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:24:31] [INFO] Checking activity reminders 
[2026-03-19 19:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:25:13] [INFO] Checking activity reminders 
[2026-03-19 19:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:25:58] [INFO] Checking activity reminders 
[2026-03-19 19:25:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:25:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:26:29] [INFO] Checking activity reminders 
[2026-03-19 19:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 19:37:55] [INFO] Checking activity reminders 
[2026-03-19 19:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 19:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"check_reminders"}
[2026-03-19 21:02:12] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:13] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:15] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_field_configurations"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_deal"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:16] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:17] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:21] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:22] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:02:29] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 21:02:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 21:02:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:02:59] [INFO] Checking activity reminders 
[2026-03-19 21:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:03:23] [INFO] Activity save request {"post_data":{"contact_id":"12098","deal_id":"local_69bbafe4300401.30827081","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیام ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 21:03:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12098","note_was_empty":true}
[2026-03-19 21:03:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"12098","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:23] [INFO] Updating virtual stage {"contact_id":"12098","stage_name":"deal_registered","force":false}
[2026-03-19 21:03:23] [INFO] Virtual stage successfully saved {"contact_id":"12098","stage_name":"deal_registered"}
[2026-03-19 21:03:23] [INFO] Virtual stage updated after activity save {"contact_id":"12098"}
[2026-03-19 21:03:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbafe4300401.30827081","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 21:03:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bc3363403b52.37415218","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69bc3363403b52.37415218"}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:23] [INFO] Updating virtual stage {"contact_id":"12098","stage_name":"deal_registered","force":false}
[2026-03-19 21:03:23] [INFO] Virtual stage successfully saved {"contact_id":"12098","stage_name":"deal_registered"}
[2026-03-19 21:03:23] [INFO] Virtual stage updated after activity save {"contact_id":"12098"}
[2026-03-19 21:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-19 21:03:29] [INFO] Checking activity reminders 
[2026-03-19 21:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:03:59] [INFO] Checking activity reminders 
[2026-03-19 21:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 21:04:29] [INFO] Checking activity reminders 
[2026-03-19 21:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"check_reminders"}
[2026-03-19 21:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:45] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:48] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:48] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_field_configurations"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"get_deal"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:49] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:51] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:58] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:47:59] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:48:12] [WARNING] Auth check failed - not authenticated {"session_id":"46msraoqvsi8a1koceaifsf9rf","session_keys":[],"action":"log_client_event"}
[2026-03-19 21:48:12] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-19 21:48:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-19 21:48:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:56:36] [INFO] Checking activity reminders 
[2026-03-19 21:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:56:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:57:07] [INFO] Checking activity reminders 
[2026-03-19 21:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:57:37] [INFO] Checking activity reminders 
[2026-03-19 21:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:58:08] [INFO] Checking activity reminders 
[2026-03-19 21:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:58:16] [INFO] Activity save request {"post_data":{"contact_id":"3099","deal_id":"local_69bbaf7f8ae0a0.32954962","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پیامک \r\nبیپاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 21:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 21:58:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 21:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3099","note_was_empty":true}
[2026-03-19 21:58:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"3099","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 21:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:16] [INFO] Updating virtual stage {"contact_id":"3099","stage_name":"deal_registered","force":false}
[2026-03-19 21:58:16] [INFO] Virtual stage successfully saved {"contact_id":"3099","stage_name":"deal_registered"}
[2026-03-19 21:58:16] [INFO] Virtual stage updated after activity save {"contact_id":"3099"}
[2026-03-19 21:58:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaf7f8ae0a0.32954962","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-19 21:58:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bc4040dd6a86.01105355","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 21:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69bc4040dd6a86.01105355"}
[2026-03-19 21:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:16] [INFO] Updating virtual stage {"contact_id":"3099","stage_name":"deal_registered","force":false}
[2026-03-19 21:58:16] [INFO] Virtual stage successfully saved {"contact_id":"3099","stage_name":"deal_registered"}
[2026-03-19 21:58:16] [INFO] Virtual stage updated after activity save {"contact_id":"3099"}
[2026-03-19 21:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-19 21:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 21:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 21:58:39] [INFO] Checking activity reminders 
[2026-03-19 21:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:59:09] [INFO] Checking activity reminders 
[2026-03-19 21:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 21:59:39] [INFO] Checking activity reminders 
[2026-03-19 21:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 21:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:00:10] [INFO] Checking activity reminders 
[2026-03-19 22:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:00:40] [INFO] Checking activity reminders 
[2026-03-19 22:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:00:52] [INFO] Activity save request {"post_data":{"contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت ۴۰۵ \r\nمیگه من ۲۰ روز پیش از خانم بردبار برای کانال پیگیری کردم \r\nمجدد اطلاعات در بله ارسال \r\nشبا تجارت ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-19 22:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:00:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-19 22:00:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-19 22:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:00:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21144","note_was_empty":true}
[2026-03-19 22:00:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"21144","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-19 22:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:00:53] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-03-19 22:00:53] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-03-19 22:00:53] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-03-19 22:00:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad9deb0b36.57294370","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-19 22:00:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bc40dcf3d2b7.29326697","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-19 22:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:00:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69bc40dcf3d2b7.29326697"}
[2026-03-19 22:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:00:53] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-03-19 22:00:53] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-03-19 22:00:53] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-03-19 22:00:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:01:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-19 22:01:13] [INFO] Checking activity reminders 
[2026-03-19 22:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:01:43] [INFO] Checking activity reminders 
[2026-03-19 22:01:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:01:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:01:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:02:16] [INFO] Checking activity reminders 
[2026-03-19 22:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:02:56] [INFO] Checking activity reminders 
[2026-03-19 22:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:03:27] [INFO] Checking activity reminders 
[2026-03-19 22:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:03:58] [INFO] Checking activity reminders 
[2026-03-19 22:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:04:29] [INFO] Checking activity reminders 
[2026-03-19 22:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:06:54] [INFO] Checking activity reminders 
[2026-03-19 22:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:07:18] [INFO] Checking activity reminders 
[2026-03-19 22:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:07:51] [INFO] Checking activity reminders 
[2026-03-19 22:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:08:21] [INFO] Checking activity reminders 
[2026-03-19 22:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:08:38] [INFO] Checking activity reminders 
[2026-03-19 22:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:09:05] [INFO] Checking activity reminders 
[2026-03-19 22:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:09:39] [INFO] Checking activity reminders 
[2026-03-19 22:09:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:09:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:09:51] [INFO] Checking activity reminders 
[2026-03-19 22:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:10:01] [INFO] Checking activity reminders 
[2026-03-19 22:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:10:34] [INFO] Checking activity reminders 
[2026-03-19 22:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:10:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9457","deal_id":"local_69bbadce850936.82696792","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-19 22:10:50","session_id":"46msraoqvsi8a1koceaifsf9rf"}
[2026-03-19 22:10:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:10:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9457","is_new_deal":false}
[2026-03-19 22:10:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-19 22:10:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 22:10:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-19 22:10:50] [INFO] getContactPrimaryPhone called {"contact_id":"9457"}
[2026-03-19 22:10:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:10:50] [INFO] getContactPrimaryPhone result {"contact_id":"9457","person_found":true,"primary_phone":"9396818104"}
[2026-03-19 22:10:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396818104"}
[2026-03-19 22:10:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396818104","contact_id":"9457","deal_id":"local_69bbadce850936.82696792","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 22:10:50"}
[2026-03-19 22:10:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbadce850936.82696792","contact_id":"9457","existing_deal_found":true,"existing_contact_id":"9457","existing_title":"معامله سوم 9396818104 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-19 22:10:50"}
[2026-03-19 22:10:50] [INFO] DealController.save validated payments {"deal_id":"local_69bbadce850936.82696792","contact_id":"9457","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-19 22:10:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9457","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-19 22:10:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbadce850936.82696792","contact_didar_id":"9457","title":"معامله سوم 9396818104 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9396818104","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدرضا منصوری","existing_deal":"YES","existing_deal_id":"local_69bbadce850936.82696792","existing_deal_status":"Pending","server_time":"2026-03-19 22:10:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-19 22:10:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:10:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:10:50] [INFO] Deal success processed {"contact_id":"9457","person_name":"محمدرضا منصوری","products_count":1}
[2026-03-19 22:10:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbadce850936.82696792","contact_id":"9457","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9396818104 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-19 22:10:50","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-19 22:10:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-19 22:11:06] [INFO] Checking activity reminders 
[2026-03-19 22:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:17:55] [INFO] Checking activity reminders 
[2026-03-19 22:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:18:14] [INFO] Checking activity reminders 
[2026-03-19 22:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-19 22:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-19 22:18:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-20 00:23:38] [WARNING] Auth check failed - not authenticated {"session_id":"ht2ltdt0f97o2qggj4caegh19f","session_keys":[],"action":"log_client_event"}
[2026-03-20 00:23:38] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-20 00:23:38] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-20 00:23:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 00:23:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-20 00:23:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-20 00:23:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-20 00:23:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 00:23:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-20 00:23:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-20 00:23:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-20 00:25:32] [INFO] Checking activity reminders 
[2026-03-20 00:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 00:25:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-20 00:25:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-20 00:25:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-20 00:25:56] [INFO] Checking activity reminders 
[2026-03-20 00:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 00:26:05] [INFO] Checking activity reminders 
[2026-03-20 00:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 00:26:57] [INFO] Checking activity reminders 
[2026-03-20 00:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 00:27:28] [INFO] Checking activity reminders 
[2026-03-20 00:27:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:27:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 00:27:58] [INFO] Checking activity reminders 
[2026-03-20 00:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 00:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:50:56] [WARNING] Auth check failed - not authenticated {"session_id":"gpbk2og29jc4ik7bhomv2qr0f4","session_keys":[],"action":"log_client_event"}
[2026-03-20 11:50:56] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-20 11:50:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 11:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:51:22] [INFO] generateDealTitle result {"contact_id":"11224","person_name":"زارعی","mobile":"9367776843","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367776843"}
[2026-03-20 11:51:27] [INFO] Checking activity reminders 
[2026-03-20 11:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:51:57] [INFO] Checking activity reminders 
[2026-03-20 11:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:52:32] [INFO] Checking activity reminders 
[2026-03-20 11:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:52:59] [INFO] Checking activity reminders 
[2026-03-20 11:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:53:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11224","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-20 11:53:20","session_id":"gpbk2og29jc4ik7bhomv2qr0f4"}
[2026-03-20 11:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:53:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11224","is_new_deal":true}
[2026-03-20 11:53:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-20 11:53:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-20 11:53:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-20 11:53:20] [INFO] getContactPrimaryPhone called {"contact_id":"11224"}
[2026-03-20 11:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:53:20] [INFO] getContactPrimaryPhone result {"contact_id":"11224","person_found":true,"primary_phone":"9367776843"}
[2026-03-20 11:53:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9367776843"}
[2026-03-20 11:53:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9367776843","contact_id":"11224","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-20 11:53:20"}
[2026-03-20 11:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:53:20] [INFO] generateDealTitle result {"contact_id":"11224","person_name":"زارعی","mobile":"9367776843","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367776843"}
[2026-03-20 11:53:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11224","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-20 11:53:20] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11224","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-20 11:53:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11224","title":"معامله سوم 9367776843 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9367776843","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"زارعی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-20 11:53:20","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-20 11:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:53:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-20 11:53:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11224","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9367776843 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":10000000,"server_time":"2026-03-20 11:53:20","ip_address":"86.55.29.34","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-20 11:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-20 11:53:37] [INFO] Checking activity reminders 
[2026-03-20 11:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:53:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-03-20 11:54:07] [INFO] Checking activity reminders 
[2026-03-20 11:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:57:13] [INFO] Checking activity reminders 
[2026-03-20 11:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:57:52] [INFO] Checking activity reminders 
[2026-03-20 11:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:58:11] [INFO] Checking activity reminders 
[2026-03-20 11:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:58:41] [INFO] Checking activity reminders 
[2026-03-20 11:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 11:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 11:58:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8967","deal_id":"local_694a942326c3b2.34659195","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-20 11:58:44","session_id":"gpbk2og29jc4ik7bhomv2qr0f4"}
[2026-03-20 11:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-03-20 11:58:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8967","is_new_deal":false}
[2026-03-20 11:58:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-20 11:58:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-20 11:58:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-20 11:58:44] [INFO] getContactPrimaryPhone called {"contact_id":"8967"}
[2026-03-20 11:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-03-20 11:58:44] [INFO] getContactPrimaryPhone result {"contact_id":"8967","person_found":true,"primary_phone":"9129156300"}
[2026-03-20 11:58:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129156300"}
[2026-03-20 11:58:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129156300","contact_id":"8967","deal_id":"local_694a942326c3b2.34659195","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-20 11:58:44"}
[2026-03-20 11:58:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","existing_deal_found":true,"existing_contact_id":"8967","existing_title":"معامله اول 9129156300 | کانال VIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-20 11:58:44"}
[2026-03-20 11:58:44] [INFO] DealController.save validated payments {"deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-20 11:58:44] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-20 11:58:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a942326c3b2.34659195","contact_didar_id":"8967","title":"معامله اول 9129156300 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9129156300","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":69000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مجتبی کریمی","existing_deal":"YES","existing_deal_id":"local_694a942326c3b2.34659195","existing_deal_status":"Pending","server_time":"2026-03-20 11:58:44","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-20 11:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-03-20 11:58:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9129156300 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":69000000,"server_time":"2026-03-20 11:58:44","ip_address":"86.55.29.34","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-20 11:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-03-20 12:53:14] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 12:53:14] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-20 12:53:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 12:53:44] [INFO] Checking activity reminders 
[2026-03-20 12:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 12:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 12:54:14] [INFO] Checking activity reminders 
[2026-03-20 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 12:54:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-20 13:03:30] [INFO] Checking activity reminders 
[2026-03-20 13:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:08:12] [INFO] Checking activity reminders 
[2026-03-20 13:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:08:42] [INFO] Checking activity reminders 
[2026-03-20 13:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-20 13:11:26] [INFO] Checking activity reminders 
[2026-03-20 13:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:29:28] [INFO] Checking activity reminders 
[2026-03-20 13:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:29:59] [INFO] Checking activity reminders 
[2026-03-20 13:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:30:29] [INFO] Checking activity reminders 
[2026-03-20 13:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:30:59] [INFO] Checking activity reminders 
[2026-03-20 13:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:31:29] [INFO] Checking activity reminders 
[2026-03-20 13:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:31:43] [INFO] Activity save request {"post_data":{"contact_id":"15044","deal_id":"local_69bbae855dcc82.46702931","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل سرمایه درگیر ملک و خودرو هست که نمیتونه نقد کنه \r\nلوکیشن ملک نزدیک منطقه نظامیه مشتری نداره به همین جهت قفل شده \r\nدر صورت داشتن سرمایه در گردش تماس و وارد کانال می‌شود ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-20 13:31:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15044","note_was_empty":true}
[2026-03-20 13:31:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"15044","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:43] [INFO] Updating virtual stage {"contact_id":"15044","stage_name":"deal_registered","force":false}
[2026-03-20 13:31:43] [INFO] Virtual stage successfully saved {"contact_id":"15044","stage_name":"deal_registered"}
[2026-03-20 13:31:43] [INFO] Virtual stage updated after activity save {"contact_id":"15044"}
[2026-03-20 13:31:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbae855dcc82.46702931","stage":"تماس پیگیری","status_change":null}
[2026-03-20 13:31:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bd1b07b8b8e2.61306420","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69bd1b07b8b8e2.61306420"}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:43] [INFO] Updating virtual stage {"contact_id":"15044","stage_name":"deal_registered","force":false}
[2026-03-20 13:31:43] [INFO] Virtual stage successfully saved {"contact_id":"15044","stage_name":"deal_registered"}
[2026-03-20 13:31:43] [INFO] Virtual stage updated after activity save {"contact_id":"15044"}
[2026-03-20 13:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:31:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-20 13:32:00] [INFO] Checking activity reminders 
[2026-03-20 13:32:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:32:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:32:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:37:54] [INFO] Checking activity reminders 
[2026-03-20 13:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:38:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13250","deal_id":"local_69bbaf55735a64.15788950","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-20 13:38:17","session_id":"254kip6dib76vgmhmnsq21f0fr"}
[2026-03-20 13:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:38:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13250","is_new_deal":false}
[2026-03-20 13:38:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-20 13:38:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-20 13:38:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-20 13:38:17] [INFO] getContactPrimaryPhone called {"contact_id":"13250"}
[2026-03-20 13:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:38:17] [INFO] getContactPrimaryPhone result {"contact_id":"13250","person_found":true,"primary_phone":"9112443747"}
[2026-03-20 13:38:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112443747"}
[2026-03-20 13:38:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112443747","contact_id":"13250","deal_id":"local_69bbaf55735a64.15788950","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-20 13:38:17"}
[2026-03-20 13:38:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbaf55735a64.15788950","contact_id":"13250","existing_deal_found":true,"existing_contact_id":"13250","existing_title":"معامله دوم 9112443747 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-20 13:38:17"}
[2026-03-20 13:38:17] [INFO] DealController.save validated payments {"deal_id":"local_69bbaf55735a64.15788950","contact_id":"13250","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-20 13:38:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13250","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-20 13:38:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbaf55735a64.15788950","contact_didar_id":"13250","title":"معامله دوم 9112443747 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9112443747","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خالقی","existing_deal":"YES","existing_deal_id":"local_69bbaf55735a64.15788950","existing_deal_status":"Pending","server_time":"2026-03-20 13:38:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-20 13:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:38:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbaf55735a64.15788950","contact_id":"13250","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9112443747 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-20 13:38:17","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-20 13:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:38:24] [INFO] Checking activity reminders 
[2026-03-20 13:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:38:55] [INFO] Checking activity reminders 
[2026-03-20 13:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:39:25] [INFO] Checking activity reminders 
[2026-03-20 13:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:39:55] [INFO] Checking activity reminders 
[2026-03-20 13:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:40:25] [INFO] Checking activity reminders 
[2026-03-20 13:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:40:55] [INFO] Checking activity reminders 
[2026-03-20 13:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:41:25] [INFO] Checking activity reminders 
[2026-03-20 13:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:41:56] [INFO] Checking activity reminders 
[2026-03-20 13:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:42:26] [INFO] Checking activity reminders 
[2026-03-20 13:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:42:56] [INFO] Checking activity reminders 
[2026-03-20 13:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:43:26] [INFO] Checking activity reminders 
[2026-03-20 13:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:43:57] [INFO] Checking activity reminders 
[2026-03-20 13:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:44:36] [INFO] Checking activity reminders 
[2026-03-20 13:44:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:44:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:45:33] [INFO] Checking activity reminders 
[2026-03-20 13:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:46:03] [INFO] Checking activity reminders 
[2026-03-20 13:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:46:27] [INFO] Activity save request {"post_data":{"contact_id":"13250","deal_id":"local_69bbaf55735a64.15788950","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه در خرید طلا حدودا ۳ میلیارد متضرر شده \r\nدر تلگرام خصوصی هم استاد پیامشون رو پاسخ ندادند \r\nبرای ۴۰۵ فعلا برنامه ای نداره \r\nبخواد خودش اطلاع میده  ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-20 13:46:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13250","note_was_empty":true}
[2026-03-20 13:46:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"13250","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:27] [INFO] Updating virtual stage {"contact_id":"13250","stage_name":"deal_registered","force":false}
[2026-03-20 13:46:27] [INFO] Virtual stage successfully saved {"contact_id":"13250","stage_name":"deal_registered"}
[2026-03-20 13:46:27] [INFO] Virtual stage updated after activity save {"contact_id":"13250"}
[2026-03-20 13:46:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaf55735a64.15788950","stage":"تماس پیگیری","status_change":null}
[2026-03-20 13:46:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69bd1e7ba9a084.66019166","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69bd1e7ba9a084.66019166"}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:27] [INFO] Updating virtual stage {"contact_id":"13250","stage_name":"deal_registered","force":false}
[2026-03-20 13:46:27] [INFO] Virtual stage successfully saved {"contact_id":"13250","stage_name":"deal_registered"}
[2026-03-20 13:46:27] [INFO] Virtual stage updated after activity save {"contact_id":"13250"}
[2026-03-20 13:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-20 13:46:35] [INFO] Checking activity reminders 
[2026-03-20 13:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:47:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-20 13:47:06] [INFO] Checking activity reminders 
[2026-03-20 13:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 13:47:36] [INFO] Checking activity reminders 
[2026-03-20 13:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 13:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 19:56:17] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:17] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:17] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"check_reminders"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"get_field_configurations"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"get_deal"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:19] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:21] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:21] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:22] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:25] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:31] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 19:56:31] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-20 19:56:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 20:48:12] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"check_reminders"}
[2026-03-20 20:48:12] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 20:48:12] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 20:48:12] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 20:48:13] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 20:48:20] [WARNING] Auth check failed - not authenticated {"session_id":"254kip6dib76vgmhmnsq21f0fr","session_keys":[],"action":"log_client_event"}
[2026-03-20 20:48:20] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-20 20:48:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-20 20:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:48:50] [INFO] Checking activity reminders 
[2026-03-20 20:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:49:20] [INFO] Checking activity reminders 
[2026-03-20 20:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:49:50] [INFO] Checking activity reminders 
[2026-03-20 20:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:50:21] [INFO] Checking activity reminders 
[2026-03-20 20:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:50:51] [INFO] Checking activity reminders 
[2026-03-20 20:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:51:25] [INFO] Checking activity reminders 
[2026-03-20 20:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:51:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"2845","deal_id":"local_6953ae3b941344.43032898","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-20 20:51:47","session_id":"254kip6dib76vgmhmnsq21f0fr"}
[2026-03-20 20:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"2845","is_new_deal":false}
[2026-03-20 20:51:47] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-03-20 20:51:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-03-20 20:51:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-03-20 20:51:47] [INFO] getContactPrimaryPhone called {"contact_id":"2845"}
[2026-03-20 20:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:47] [INFO] getContactPrimaryPhone result {"contact_id":"2845","person_found":true,"primary_phone":"9107756002"}
[2026-03-20 20:51:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9107756002"}
[2026-03-20 20:51:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9107756002","contact_id":"2845","deal_id":"local_6953ae3b941344.43032898","is_new_deal":false,"incoming_title":"CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-20 20:51:47"}
[2026-03-20 20:51:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","existing_deal_found":true,"existing_contact_id":"2845","existing_title":"معامله چهارم 9107756002 | CIP، کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-20 20:51:47"}
[2026-03-20 20:51:47] [INFO] DealController.save validated payments {"deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","payments_count":5,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-20 20:51:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2845","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-20 20:51:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6953ae3b941344.43032898","contact_didar_id":"2845","title":"معامله چهارم 9107756002 | CIP، کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9107756002","services_text":"CIP، کانال VIP با پشتیبانی","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["CIP","کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حاجی لو","existing_deal":"YES","existing_deal_id":"local_6953ae3b941344.43032898","existing_deal_status":"Pending","server_time":"2026-03-20 20:51:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-20 20:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:47] [INFO] Deal success processed {"contact_id":"2845","person_name":"حاجی لو","products_count":2}
[2026-03-20 20:51:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6953ae3b941344.43032898","contact_id":"2845","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9107756002 | CIP، کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-20 20:51:47","ip_address":"5.116.42.209","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-20 20:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-03-20 20:51:56] [INFO] Checking activity reminders 
[2026-03-20 20:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:52:26] [INFO] Checking activity reminders 
[2026-03-20 20:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-20 20:52:56] [INFO] Checking activity reminders 
[2026-03-20 20:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:53:26] [INFO] Checking activity reminders 
[2026-03-20 20:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:53:58] [INFO] Checking activity reminders 
[2026-03-20 20:53:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:53:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:54:28] [INFO] Checking activity reminders 
[2026-03-20 20:54:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:54:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:55:04] [INFO] Checking activity reminders 
[2026-03-20 20:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:55:35] [INFO] Checking activity reminders 
[2026-03-20 20:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:56:09] [INFO] Checking activity reminders 
[2026-03-20 20:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:56:40] [INFO] Checking activity reminders 
[2026-03-20 20:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:57:11] [INFO] Checking activity reminders 
[2026-03-20 20:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:57:44] [INFO] Checking activity reminders 
[2026-03-20 20:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:58:16] [INFO] Checking activity reminders 
[2026-03-20 20:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:58:48] [INFO] Checking activity reminders 
[2026-03-20 20:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:59:18] [INFO] Checking activity reminders 
[2026-03-20 20:59:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:59:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 20:59:49] [INFO] Checking activity reminders 
[2026-03-20 20:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 20:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:00:20] [INFO] Checking activity reminders 
[2026-03-20 21:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:00:50] [INFO] Checking activity reminders 
[2026-03-20 21:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:01:22] [INFO] Checking activity reminders 
[2026-03-20 21:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:01:52] [INFO] Checking activity reminders 
[2026-03-20 21:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:02:22] [INFO] Checking activity reminders 
[2026-03-20 21:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:02:55] [INFO] Checking activity reminders 
[2026-03-20 21:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-20 21:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-20 21:15:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 13:09:45] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 13:09:45] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-22 13:09:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-22 13:10:15] [INFO] Checking activity reminders 
[2026-03-22 13:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:10:46] [INFO] Checking activity reminders 
[2026-03-22 13:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:11:32] [INFO] Checking activity reminders 
[2026-03-22 13:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:12:02] [INFO] Checking activity reminders 
[2026-03-22 13:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:12:32] [INFO] Checking activity reminders 
[2026-03-22 13:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:13:02] [INFO] Checking activity reminders 
[2026-03-22 13:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:13:16] [INFO] Checking activity reminders 
[2026-03-22 13:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:13:46] [INFO] Checking activity reminders 
[2026-03-22 13:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:14:16] [INFO] Checking activity reminders 
[2026-03-22 13:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:14:46] [INFO] Checking activity reminders 
[2026-03-22 13:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:15:16] [INFO] Checking activity reminders 
[2026-03-22 13:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:15:46] [INFO] Checking activity reminders 
[2026-03-22 13:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:16:17] [INFO] Checking activity reminders 
[2026-03-22 13:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:16:47] [INFO] Checking activity reminders 
[2026-03-22 13:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:17:17] [INFO] Checking activity reminders 
[2026-03-22 13:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:17:47] [INFO] Checking activity reminders 
[2026-03-22 13:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:18:17] [INFO] Checking activity reminders 
[2026-03-22 13:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:18:47] [INFO] Checking activity reminders 
[2026-03-22 13:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:19:18] [INFO] Checking activity reminders 
[2026-03-22 13:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:19:48] [INFO] Checking activity reminders 
[2026-03-22 13:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:20:18] [INFO] Checking activity reminders 
[2026-03-22 13:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:20:49] [INFO] Checking activity reminders 
[2026-03-22 13:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:21:19] [INFO] Checking activity reminders 
[2026-03-22 13:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:21:49] [INFO] Checking activity reminders 
[2026-03-22 13:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:32:34] [INFO] Checking activity reminders 
[2026-03-22 13:32:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:32:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:33:56] [INFO] Checking activity reminders 
[2026-03-22 13:33:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:33:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:34:42] [INFO] Checking activity reminders 
[2026-03-22 13:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:12] [INFO] generateDealTitle result {"contact_id":"16084","person_name":"ناد علی","mobile":"9213840683","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9213840683"}
[2026-03-22 13:35:12] [INFO] Checking activity reminders 
[2026-03-22 13:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:35:42] [INFO] Checking activity reminders 
[2026-03-22 13:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:35:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16084","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-22 13:35:44","session_id":"vm1qm9tip172l0u008sa5tasfg"}
[2026-03-22 13:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16084","is_new_deal":true}
[2026-03-22 13:35:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-22 13:35:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-22 13:35:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-22 13:35:44] [INFO] getContactPrimaryPhone called {"contact_id":"16084"}
[2026-03-22 13:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:44] [INFO] getContactPrimaryPhone result {"contact_id":"16084","person_found":true,"primary_phone":"9213840683"}
[2026-03-22 13:35:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213840683"}
[2026-03-22 13:35:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213840683","contact_id":"16084","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-22 13:35:44"}
[2026-03-22 13:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:44] [INFO] generateDealTitle result {"contact_id":"16084","person_name":"ناد علی","mobile":"9213840683","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9213840683"}
[2026-03-22 13:35:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16084","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-22 13:35:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16084","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-22 13:35:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16084","title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9213840683","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناد علی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-22 13:35:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-22 13:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:35:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-22 13:35:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16084","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-22 13:35:44","ip_address":"5.115.253.156","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-22 13:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:36:24] [INFO] Checking activity reminders 
[2026-03-22 13:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:36:54] [INFO] Checking activity reminders 
[2026-03-22 13:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:37:25] [INFO] Checking activity reminders 
[2026-03-22 13:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:37:46] [INFO] Checking activity reminders 
[2026-03-22 13:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:37:55] [INFO] Checking activity reminders 
[2026-03-22 13:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:38:08] [INFO] Checking activity reminders 
[2026-03-22 13:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 13:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 13:38:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-22 13:38:20","session_id":"vm1qm9tip172l0u008sa5tasfg"}
[2026-03-22 13:38:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:38:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16084","is_new_deal":false}
[2026-03-22 13:38:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-22 13:38:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-22 13:38:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-22 13:38:20] [INFO] getContactPrimaryPhone called {"contact_id":"16084"}
[2026-03-22 13:38:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:38:20] [INFO] getContactPrimaryPhone result {"contact_id":"16084","person_found":true,"primary_phone":"9213840683"}
[2026-03-22 13:38:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213840683"}
[2026-03-22 13:38:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213840683","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-22 13:38:20"}
[2026-03-22 13:38:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","existing_deal_found":true,"existing_contact_id":"16084","existing_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-22 13:38:20"}
[2026-03-22 13:38:20] [INFO] DealController.save validated payments {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-22 13:38:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16084","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-22 13:38:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bfbef872d3a2.94680596","contact_didar_id":"16084","title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9213840683","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناد علی","existing_deal":"YES","existing_deal_id":"local_69bfbef872d3a2.94680596","existing_deal_status":"Pending","server_time":"2026-03-22 13:38:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-22 13:38:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:38:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-22 13:38:20","ip_address":"5.115.253.156","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-22 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 13:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-22 18:36:19] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"check_reminders"}
[2026-03-22 18:36:19] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 18:36:19] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 18:36:23] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 18:36:24] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 18:36:50] [WARNING] Auth check failed - not authenticated {"session_id":"vm1qm9tip172l0u008sa5tasfg","session_keys":[],"action":"log_client_event"}
[2026-03-22 18:36:51] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-22 18:36:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-22 18:37:21] [INFO] Checking activity reminders 
[2026-03-22 18:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:37:51] [INFO] Checking activity reminders 
[2026-03-22 18:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:38:21] [INFO] Checking activity reminders 
[2026-03-22 18:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:38:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:38:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:41:20] [INFO] Checking activity reminders 
[2026-03-22 18:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:41:50] [INFO] Checking activity reminders 
[2026-03-22 18:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:42:20] [INFO] Checking activity reminders 
[2026-03-22 18:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:42:43] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_163","deal_id":"local_69bbb09ecf0bc6.36992222","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 18:42:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_163","note_was_empty":true}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:43] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_163","stage_name":"new","force":false}
[2026-03-22 18:42:43] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_163","stage_name":"new"}
[2026-03-22 18:42:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_163"}
[2026-03-22 18:42:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb09ecf0bc6.36992222","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-22 18:42:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c006eb4a05e6.59165308","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69c006eb4a05e6.59165308"}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:43] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_163","stage_name":"deal_registered","force":false}
[2026-03-22 18:42:43] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_163","stage_name":"deal_registered"}
[2026-03-22 18:42:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_163"}
[2026-03-22 18:42:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-22 18:42:50] [INFO] Checking activity reminders 
[2026-03-22 18:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:43:21] [INFO] Checking activity reminders 
[2026-03-22 18:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:44:51] [INFO] Checking activity reminders 
[2026-03-22 18:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:45:21] [INFO] Checking activity reminders 
[2026-03-22 18:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:45:51] [INFO] Checking activity reminders 
[2026-03-22 18:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:10] [INFO] Checking activity reminders 
[2026-03-22 18:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:58:24] [INFO] Activity save request {"post_data":{"contact_id":"15312","deal_id":"local_69bbaedd901635.57052076","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامگ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 18:58:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15312","note_was_empty":true}
[2026-03-22 18:58:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"15312","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:24] [INFO] Updating virtual stage {"contact_id":"15312","stage_name":"deal_registered","force":false}
[2026-03-22 18:58:24] [INFO] Virtual stage successfully saved {"contact_id":"15312","stage_name":"deal_registered"}
[2026-03-22 18:58:24] [INFO] Virtual stage updated after activity save {"contact_id":"15312"}
[2026-03-22 18:58:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaedd901635.57052076","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-22 18:58:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c00a981fbb59.35745698","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69c00a981fbb59.35745698"}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:24] [INFO] Updating virtual stage {"contact_id":"15312","stage_name":"deal_registered","force":false}
[2026-03-22 18:58:24] [INFO] Virtual stage successfully saved {"contact_id":"15312","stage_name":"deal_registered"}
[2026-03-22 18:58:24] [INFO] Virtual stage updated after activity save {"contact_id":"15312"}
[2026-03-22 18:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-22 18:58:41] [INFO] Checking activity reminders 
[2026-03-22 18:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:58:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 18:59:11] [INFO] Checking activity reminders 
[2026-03-22 18:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 18:59:41] [INFO] Checking activity reminders 
[2026-03-22 18:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 18:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:00:57] [INFO] Checking activity reminders 
[2026-03-22 19:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:01:04] [INFO] Activity save request {"post_data":{"contact_id":"7371","deal_id":"local_69bbaeb8c2a9f6.57498797","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 19:01:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7371","note_was_empty":true}
[2026-03-22 19:01:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"7371","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:04] [INFO] Updating virtual stage {"contact_id":"7371","stage_name":"deal_registered","force":false}
[2026-03-22 19:01:04] [INFO] Virtual stage successfully saved {"contact_id":"7371","stage_name":"deal_registered"}
[2026-03-22 19:01:04] [INFO] Virtual stage updated after activity save {"contact_id":"7371"}
[2026-03-22 19:01:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaeb8c2a9f6.57498797","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-22 19:01:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c00b38486d25.69183093","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69c00b38486d25.69183093"}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:04] [INFO] Updating virtual stage {"contact_id":"7371","stage_name":"deal_registered","force":false}
[2026-03-22 19:01:04] [INFO] Virtual stage successfully saved {"contact_id":"7371","stage_name":"deal_registered"}
[2026-03-22 19:01:04] [INFO] Virtual stage updated after activity save {"contact_id":"7371"}
[2026-03-22 19:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-22 19:01:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:01:27] [INFO] Checking activity reminders 
[2026-03-22 19:01:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:01:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:02:49] [INFO] Checking activity reminders 
[2026-03-22 19:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:03:06] [INFO] Activity save request {"post_data":{"contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 19:03:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"810","note_was_empty":true}
[2026-03-22 19:03:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"810","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:06] [INFO] Updating virtual stage {"contact_id":"810","stage_name":"deal_registered","force":false}
[2026-03-22 19:03:06] [INFO] Virtual stage successfully saved {"contact_id":"810","stage_name":"deal_registered"}
[2026-03-22 19:03:06] [INFO] Virtual stage updated after activity save {"contact_id":"810"}
[2026-03-22 19:03:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaf032730a8.00052863","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-22 19:03:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c00bb2777496.75021434","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69c00bb2777496.75021434"}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:06] [INFO] Updating virtual stage {"contact_id":"810","stage_name":"deal_registered","force":false}
[2026-03-22 19:03:06] [INFO] Virtual stage successfully saved {"contact_id":"810","stage_name":"deal_registered"}
[2026-03-22 19:03:06] [INFO] Virtual stage updated after activity save {"contact_id":"810"}
[2026-03-22 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-22 19:03:19] [INFO] Checking activity reminders 
[2026-03-22 19:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:03:50] [INFO] Checking activity reminders 
[2026-03-22 19:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:04:20] [INFO] Checking activity reminders 
[2026-03-22 19:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:04:50] [INFO] Checking activity reminders 
[2026-03-22 19:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:05:20] [INFO] Checking activity reminders 
[2026-03-22 19:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:05:51] [INFO] Checking activity reminders 
[2026-03-22 19:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:06:22] [INFO] Checking activity reminders 
[2026-03-22 19:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:06:33] [INFO] Activity save request {"post_data":{"contact_id":"2692","deal_id":"local_69bbad55185e12.51983067","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در عیار خیلی متضرر شده ۵۳ خریده و خیلی اومده پایین میگه نمیخوام دیگه استرس داشته باشم درسته استاد حنفی زحمت میکشه ولی من میخوام فعلا کاری انجام ندم خیلی از بابت قیمت هم چونه زد بهش کانال بدون پشتیبانی و شرایط پرداخت توضیح دادم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 19:06:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2692","note_was_empty":true}
[2026-03-22 19:06:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"2692","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:33] [INFO] Updating virtual stage {"contact_id":"2692","stage_name":"deal_registered","force":false}
[2026-03-22 19:06:33] [INFO] Virtual stage successfully saved {"contact_id":"2692","stage_name":"deal_registered"}
[2026-03-22 19:06:33] [INFO] Virtual stage updated after activity save {"contact_id":"2692"}
[2026-03-22 19:06:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad55185e12.51983067","stage":"تماس پیگیری","status_change":null}
[2026-03-22 19:06:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c00c814ae897.55170410","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69c00c814ae897.55170410"}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:33] [INFO] Updating virtual stage {"contact_id":"2692","stage_name":"deal_registered","force":false}
[2026-03-22 19:06:33] [INFO] Virtual stage successfully saved {"contact_id":"2692","stage_name":"deal_registered"}
[2026-03-22 19:06:33] [INFO] Virtual stage updated after activity save {"contact_id":"2692"}
[2026-03-22 19:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-22 19:06:52] [INFO] Checking activity reminders 
[2026-03-22 19:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:07:23] [INFO] Checking activity reminders 
[2026-03-22 19:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:07:53] [INFO] Checking activity reminders 
[2026-03-22 19:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:08:23] [INFO] Checking activity reminders 
[2026-03-22 19:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:08:53] [INFO] Checking activity reminders 
[2026-03-22 19:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:09:34] [INFO] Checking activity reminders 
[2026-03-22 19:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:10:04] [INFO] Checking activity reminders 
[2026-03-22 19:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:10:34] [INFO] Checking activity reminders 
[2026-03-22 19:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:11:04] [INFO] Checking activity reminders 
[2026-03-22 19:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:11:34] [INFO] Checking activity reminders 
[2026-03-22 19:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:11:50] [INFO] Activity save request {"post_data":{"contact_id":"21010","deal_id":"local_69bbad795a5727.48553580","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"به دلیل شرایط جنگ کسب و کار و درآمدش خیلی آسیب دیده و کلا تمام سرمایه،طلا که نمیخواد دست بزنه و جنس مغاره ست ‌ه فروش نداره فعلا منتظر میمونه اگر خودش،بخواد اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:11:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-22 19:11:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:11:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21010","note_was_empty":true}
[2026-03-22 19:11:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"21010","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:11:50] [INFO] Updating virtual stage {"contact_id":"21010","stage_name":"deal_registered","force":false}
[2026-03-22 19:11:50] [INFO] Virtual stage successfully saved {"contact_id":"21010","stage_name":"deal_registered"}
[2026-03-22 19:11:50] [INFO] Virtual stage updated after activity save {"contact_id":"21010"}
[2026-03-22 19:11:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad795a5727.48553580","stage":"تماس پیگیری","status_change":null}
[2026-03-22 19:11:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c00dbe849aa5.80671660","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:11:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69c00dbe849aa5.80671660"}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:11:50] [INFO] Updating virtual stage {"contact_id":"21010","stage_name":"deal_registered","force":false}
[2026-03-22 19:11:50] [INFO] Virtual stage successfully saved {"contact_id":"21010","stage_name":"deal_registered"}
[2026-03-22 19:11:50] [INFO] Virtual stage updated after activity save {"contact_id":"21010"}
[2026-03-22 19:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-22 19:12:05] [INFO] Checking activity reminders 
[2026-03-22 19:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:13:39] [INFO] Checking activity reminders 
[2026-03-22 19:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 19:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 19:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-22 22:00:03] [WARNING] Auth check failed - not authenticated {"session_id":"00vbm6o2mb51kopiglk027thfb","session_keys":[],"action":"log_client_event"}
[2026-03-22 22:00:04] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-22 22:00:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-22 22:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-03-22 22:00:34] [INFO] Checking activity reminders 
[2026-03-22 22:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 22:01:16] [INFO] Checking activity reminders 
[2026-03-22 22:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 22:01:35] [INFO] Checking activity reminders 
[2026-03-22 22:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 22:02:05] [INFO] Checking activity reminders 
[2026-03-22 22:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 22:02:18] [INFO] Checking activity reminders 
[2026-03-22 22:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-22 22:02:49] [INFO] Checking activity reminders 
[2026-03-22 22:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-22 22:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:17:20] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-23 16:17:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-23 16:17:51] [INFO] Checking activity reminders 
[2026-03-23 16:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:18:21] [INFO] Checking activity reminders 
[2026-03-23 16:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:18:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21201","person_id":"17212"}
[2026-03-23 16:18:48] [INFO] Checking activity reminders 
[2026-03-23 16:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-23 16:19:18] [INFO] Checking activity reminders 
[2026-03-23 16:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:20:07] [INFO] Checking activity reminders 
[2026-03-23 16:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:20:16] [INFO] Checking activity reminders 
[2026-03-23 16:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:20:46] [INFO] Checking activity reminders 
[2026-03-23 16:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-23 16:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-23 16:20:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17008","deal_id":"local_69b53a33778359.64290036","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-23 16:20:48","session_id":"rm9rrbmo7cfp3h91822hctnnfe"}
[2026-03-23 16:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-23 16:20:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17008","is_new_deal":false}
[2026-03-23 16:20:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-23 16:20:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-23 16:20:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-23 16:20:48] [INFO] getContactPrimaryPhone called {"contact_id":"17008"}
[2026-03-23 16:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-23 16:20:48] [INFO] getContactPrimaryPhone result {"contact_id":"17008","person_found":true,"primary_phone":"9124284088"}
[2026-03-23 16:20:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124284088"}
[2026-03-23 16:20:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124284088","contact_id":"17008","deal_id":"local_69b53a33778359.64290036","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-23 16:20:48"}
[2026-03-23 16:20:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53a33778359.64290036","contact_id":"17008","existing_deal_found":true,"existing_contact_id":"17008","existing_title":"معامله سوم 9124284088 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-23 16:20:48"}
[2026-03-23 16:20:48] [INFO] DealController.save validated payments {"deal_id":"local_69b53a33778359.64290036","contact_id":"17008","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-23 16:20:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17008","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-23 16:20:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53a33778359.64290036","contact_didar_id":"17008","title":"معامله سوم 9124284088 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9124284088","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسدی","existing_deal":"YES","existing_deal_id":"local_69b53a33778359.64290036","existing_deal_status":"Pending","server_time":"2026-03-23 16:20:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-23 16:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-23 16:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-23 16:20:48] [INFO] Deal success processed {"contact_id":"17008","person_name":"اسدی","products_count":1}
[2026-03-23 16:20:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53a33778359.64290036","contact_id":"17008","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9124284088 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-23 16:20:48","ip_address":"5.117.178.52","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-23 16:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-03-24 11:30:37] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 11:30:37] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-24 11:30:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-24 11:31:06] [INFO] Checking activity reminders 
[2026-03-24 11:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 11:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:55:54] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-24 14:55:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-24 14:56:12] [INFO] Checking activity reminders 
[2026-03-24 14:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:56:19] [INFO] Checking activity reminders 
[2026-03-24 14:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:56:25] [INFO] Checking activity reminders 
[2026-03-24 14:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:56:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:56:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:56:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:56:39] [INFO] generateDealTitle result {"contact_id":"14195","person_name":"محمدامین محمدی","mobile":"9190331926","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9190331926"}
[2026-03-24 14:56:55] [INFO] Checking activity reminders 
[2026-03-24 14:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:57:25] [INFO] Checking activity reminders 
[2026-03-24 14:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:57:37] [INFO] Checking activity reminders 
[2026-03-24 14:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 14:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 14:57:51] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14195","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-24 14:57:51","session_id":"bj5hej10v44vbrecfn6kmfo3ch"}
[2026-03-24 14:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:57:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14195","is_new_deal":true}
[2026-03-24 14:57:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-24 14:57:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-24 14:57:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-24 14:57:51] [INFO] getContactPrimaryPhone called {"contact_id":"14195"}
[2026-03-24 14:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:57:51] [INFO] getContactPrimaryPhone result {"contact_id":"14195","person_found":true,"primary_phone":"9190331926"}
[2026-03-24 14:57:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190331926"}
[2026-03-24 14:57:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190331926","contact_id":"14195","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-24 14:57:51"}
[2026-03-24 14:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:57:51] [INFO] generateDealTitle result {"contact_id":"14195","person_name":"محمدامین محمدی","mobile":"9190331926","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9190331926"}
[2026-03-24 14:57:51] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14195","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-24 14:57:51] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14195","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-24 14:57:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14195","title":"معامله سوم 9190331926 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9190331926","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدامین محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-24 14:57:51","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-24 14:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 14:57:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-24 14:57:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14195","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9190331926 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-24 14:57:52","ip_address":"5.210.74.65","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-24 14:57:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-03-24 15:41:24] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:24] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"check_reminders"}
[2026-03-24 15:41:24] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:24] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:25] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:25] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:25] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:26] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:47] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:47] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:47] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:47] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:57] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:57] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:57] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:57] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:58] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:58] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:41:58] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"get_leads"}
[2026-03-24 15:41:58] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:42:06] [WARNING] Auth check failed - not authenticated {"session_id":"iorpkr68c0e0cidr5fogqun0n8","session_keys":[],"action":"log_client_event"}
[2026-03-24 15:42:06] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-24 15:42:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-24 15:42:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-03-24 15:42:37] [INFO] Checking activity reminders 
[2026-03-24 15:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 15:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 15:45:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6811","deal_id":"local_69494730d2ec50.71270461","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-24 15:45:14","session_id":"iorpkr68c0e0cidr5fogqun0n8"}
[2026-03-24 15:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-03-24 15:45:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6811","is_new_deal":false}
[2026-03-24 15:45:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-24 15:45:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-24 15:45:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-24 15:45:14] [INFO] getContactPrimaryPhone called {"contact_id":"6811"}
[2026-03-24 15:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-03-24 15:45:14] [INFO] getContactPrimaryPhone result {"contact_id":"6811","person_found":true,"primary_phone":"9129279808"}
[2026-03-24 15:45:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129279808"}
[2026-03-24 15:45:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129279808","contact_id":"6811","deal_id":"local_69494730d2ec50.71270461","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-24 15:45:14"}
[2026-03-24 15:45:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69494730d2ec50.71270461","contact_id":"6811","existing_deal_found":true,"existing_contact_id":"6811","existing_title":"معامله اول 9129279808 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-24 15:45:14"}
[2026-03-24 15:45:14] [INFO] DealController.save validated payments {"deal_id":"local_69494730d2ec50.71270461","contact_id":"6811","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-24 15:45:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6811","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-24 15:45:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69494730d2ec50.71270461","contact_didar_id":"6811","title":"معامله اول 9129279808 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9129279808","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":45000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پرستو ورزکار","existing_deal":"YES","existing_deal_id":"local_69494730d2ec50.71270461","existing_deal_status":"Pending","server_time":"2026-03-24 15:45:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-24 15:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-03-24 15:45:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69494730d2ec50.71270461","contact_id":"6811","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9129279808 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":45000000,"server_time":"2026-03-24 15:45:14","ip_address":"5.117.4.239","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-24 15:45:14] [INFO] Checking activity reminders 
[2026-03-24 15:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 15:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 15:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-03-24 16:14:12] [INFO] Checking activity reminders 
[2026-03-24 16:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 16:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 16:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-03-24 16:14:42] [INFO] Checking activity reminders 
[2026-03-24 16:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 16:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 16:15:22] [INFO] Checking activity reminders 
[2026-03-24 16:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-24 16:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-24 16:15:36] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"21232","deal_id":"local_698723ef09e693.40690272","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-24 16:15:36","session_id":"iorpkr68c0e0cidr5fogqun0n8"}
[2026-03-24 16:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-03-24 16:15:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"21232","is_new_deal":false}
[2026-03-24 16:15:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-03-24 16:15:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-24 16:15:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-03-24 16:15:36] [INFO] getContactPrimaryPhone called {"contact_id":"21232"}
[2026-03-24 16:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-03-24 16:15:36] [INFO] getContactPrimaryPhone result {"contact_id":"21232","person_found":true,"primary_phone":"9188418762"}
[2026-03-24 16:15:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9188418762"}
[2026-03-24 16:15:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9188418762","contact_id":"21232","deal_id":"local_698723ef09e693.40690272","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-24 16:15:36"}
[2026-03-24 16:15:36] [INFO] DealController.save existing deal lookup {"deal_id":"local_698723ef09e693.40690272","contact_id":"21232","existing_deal_found":true,"existing_contact_id":"21232","existing_title":"معامله دوم 9188418762 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-24 16:15:36"}
[2026-03-24 16:15:36] [INFO] DealController.save validated payments {"deal_id":"local_698723ef09e693.40690272","contact_id":"21232","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-24 16:15:36] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21232","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-24 16:15:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_698723ef09e693.40690272","contact_didar_id":"21232","title":"معامله دوم 9188418762 | کانال VIP بدون پشتیبانی","base_title_used":"معامله دوم 9188418762","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یاران","existing_deal":"YES","existing_deal_id":"local_698723ef09e693.40690272","existing_deal_status":"Pending","server_time":"2026-03-24 16:15:36","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-24 16:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-03-24 16:15:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_698723ef09e693.40690272","contact_id":"21232","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9188418762 | کانال VIP بدون پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":20000000,"server_time":"2026-03-24 16:15:36","ip_address":"5.117.4.239","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-24 16:15:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-03-25 19:14:51] [WARNING] Auth check failed - not authenticated {"session_id":"90fn9teulsa23is86v1n55jkev","session_keys":[],"action":"log_client_event"}
[2026-03-25 19:14:51] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-25 19:14:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 19:15:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:15:22] [INFO] Checking activity reminders 
[2026-03-25 19:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:15:52] [INFO] Checking activity reminders 
[2026-03-25 19:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:16:04] [INFO] Checking activity reminders 
[2026-03-25 19:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:16:10] [INFO] Checking activity reminders 
[2026-03-25 19:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:16:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9650","deal_id":"local_699d92591ca001.49338768","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-25 19:16:32","session_id":"90fn9teulsa23is86v1n55jkev"}
[2026-03-25 19:16:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:16:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9650","is_new_deal":false}
[2026-03-25 19:16:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-25 19:16:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-25 19:16:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-25 19:16:32] [INFO] getContactPrimaryPhone called {"contact_id":"9650"}
[2026-03-25 19:16:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:16:32] [INFO] getContactPrimaryPhone result {"contact_id":"9650","person_found":true,"primary_phone":"9309207679"}
[2026-03-25 19:16:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9309207679"}
[2026-03-25 19:16:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9309207679","contact_id":"9650","deal_id":"local_699d92591ca001.49338768","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-25 19:16:32"}
[2026-03-25 19:16:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d92591ca001.49338768","contact_id":"9650","existing_deal_found":true,"existing_contact_id":"9650","existing_title":"معامله سوم 9309207679 | vip","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-25 19:16:32"}
[2026-03-25 19:16:32] [INFO] DealController.save validated payments {"deal_id":"local_699d92591ca001.49338768","contact_id":"9650","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-03-25 19:16:32] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"9650","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-25 19:16:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d92591ca001.49338768","contact_didar_id":"9650","title":"معامله سوم 9309207679 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9309207679","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"عبیداوی عبیداوی","existing_deal":"YES","existing_deal_id":"local_699d92591ca001.49338768","existing_deal_status":"Pending","server_time":"2026-03-25 19:16:32","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-25 19:16:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:16:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d92591ca001.49338768","contact_id":"9650","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9309207679 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-25 19:16:32","ip_address":"5.208.193.212","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-25 19:16:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:20:07] [INFO] Checking activity reminders 
[2026-03-25 19:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:32:21] [INFO] Checking activity reminders 
[2026-03-25 19:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:32:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:47:17] [WARNING] Auth check failed - not authenticated {"session_id":"pgv0cvsh3t50jh10ecreqsieh1","session_keys":[],"action":"log_client_event"}
[2026-03-25 19:47:17] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-25 19:47:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 19:47:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:47:48] [INFO] Checking activity reminders 
[2026-03-25 19:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:48:18] [INFO] Checking activity reminders 
[2026-03-25 19:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:48:48] [INFO] Checking activity reminders 
[2026-03-25 19:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:49:04] [WARNING] Auth check failed - not authenticated {"session_id":"ji1v9ufl66abc0m182dso09jq5","session_keys":[],"action":"log_client_event"}
[2026-03-25 19:49:05] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-25 19:49:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 19:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-03-25 19:49:35] [INFO] Checking activity reminders 
[2026-03-25 19:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 19:49:40] [INFO] Checking activity reminders 
[2026-03-25 19:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 19:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:09:59] [WARNING] Auth check failed - not authenticated {"session_id":"5jl7812ctu74ojqlc7269ijelc","session_keys":[],"action":"log_client_event"}
[2026-03-25 20:09:59] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-25 20:09:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 20:10:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 20:10:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-25 20:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:10:47] [INFO] Checking activity reminders 
[2026-03-25 20:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:11:14] [INFO] generateDealTitle result {"contact_id":"20220","person_name":"امیرعلی کاشانی","mobile":"9127507488","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127507488"}
[2026-03-25 20:11:17] [INFO] Checking activity reminders 
[2026-03-25 20:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:11:41] [INFO] Checking activity reminders 
[2026-03-25 20:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:12:12] [INFO] Checking activity reminders 
[2026-03-25 20:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:12:30] [INFO] Checking activity reminders 
[2026-03-25 20:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:13:01] [INFO] Checking activity reminders 
[2026-03-25 20:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:13:31] [INFO] Checking activity reminders 
[2026-03-25 20:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:14:01] [INFO] Checking activity reminders 
[2026-03-25 20:14:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:14:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:14:12] [INFO] Checking activity reminders 
[2026-03-25 20:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:15:00] [INFO] Checking activity reminders 
[2026-03-25 20:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:15:23] [INFO] Checking activity reminders 
[2026-03-25 20:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:15:53] [INFO] Checking activity reminders 
[2026-03-25 20:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:16:15] [INFO] Checking activity reminders 
[2026-03-25 20:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-25 20:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-25 20:16:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20220","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-25 20:16:31","session_id":"5jl7812ctu74ojqlc7269ijelc"}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:16:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20220","is_new_deal":true}
[2026-03-25 20:16:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-25 20:16:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-25 20:16:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-25 20:16:31] [INFO] getContactPrimaryPhone called {"contact_id":"20220"}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:16:31] [INFO] getContactPrimaryPhone result {"contact_id":"20220","person_found":true,"primary_phone":"9127507488"}
[2026-03-25 20:16:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127507488"}
[2026-03-25 20:16:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127507488","contact_id":"20220","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-25 20:16:31"}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:16:31] [INFO] generateDealTitle result {"contact_id":"20220","person_name":"امیرعلی کاشانی","mobile":"9127507488","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127507488"}
[2026-03-25 20:16:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20220","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-25 20:16:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20220","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-25 20:16:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20220","title":"معامله دوم 9127507488 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127507488","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیرعلی کاشانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-25 20:16:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-25 20:16:31] [INFO] Deal success processed {"contact_id":"20220","person_name":"امیرعلی کاشانی","products_count":1}
[2026-03-25 20:16:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-25 20:16:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20220","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9127507488 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-03-25 20:16:31","ip_address":"5.117.173.144","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-25 20:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20220","person_id":"20877"}
[2026-03-26 09:04:10] [WARNING] Auth check failed - not authenticated {"session_id":"2e687q3pl6msov610o1n8ihuc2","session_keys":[],"action":"log_client_event"}
[2026-03-26 09:04:10] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-26 09:04:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-26 09:04:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-26 09:04:41] [INFO] Checking activity reminders 
[2026-03-26 09:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-26 09:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-26 09:05:07] [INFO] Checking activity reminders 
[2026-03-26 09:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-26 09:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-26 09:05:37] [INFO] Checking activity reminders 
[2026-03-26 09:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-26 09:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-26 09:06:10] [INFO] Checking activity reminders 
[2026-03-26 09:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-26 09:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-26 09:06:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11224","deal_id":"local_69bd03f8b5e821.80397397","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-26 09:06:22","session_id":"2e687q3pl6msov610o1n8ihuc2"}
[2026-03-26 09:06:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-26 09:06:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11224","is_new_deal":false}
[2026-03-26 09:06:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-26 09:06:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-26 09:06:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-26 09:06:22] [INFO] getContactPrimaryPhone called {"contact_id":"11224"}
[2026-03-26 09:06:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-26 09:06:22] [INFO] getContactPrimaryPhone result {"contact_id":"11224","person_found":true,"primary_phone":"9367776843"}
[2026-03-26 09:06:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9367776843"}
[2026-03-26 09:06:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9367776843","contact_id":"11224","deal_id":"local_69bd03f8b5e821.80397397","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-26 09:06:22"}
[2026-03-26 09:06:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bd03f8b5e821.80397397","contact_id":"11224","existing_deal_found":true,"existing_contact_id":"11224","existing_title":"معامله سوم 9367776843 | کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-26 09:06:22"}
[2026-03-26 09:06:22] [INFO] DealController.save validated payments {"deal_id":"local_69bd03f8b5e821.80397397","contact_id":"11224","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-26 09:06:22] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11224","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-26 09:06:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bd03f8b5e821.80397397","contact_didar_id":"11224","title":"معامله سوم 9367776843 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9367776843","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"زارعی","existing_deal":"YES","existing_deal_id":"local_69bd03f8b5e821.80397397","existing_deal_status":"Pending","server_time":"2026-03-26 09:06:22","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-26 09:06:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-26 09:06:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bd03f8b5e821.80397397","contact_id":"11224","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9367776843 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":30000000,"server_time":"2026-03-26 09:06:22","ip_address":"5.208.193.212","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-26 09:06:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-03-26 23:35:06] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-26 23:35:07] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-26 23:35:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-27 17:28:56] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"check_reminders"}
[2026-03-27 17:28:56] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:28:56] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:28:58] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:28:59] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:03] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:05] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:06] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:08] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:29:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:11] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:18] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:19] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:22] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:23] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:29:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:25] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:25] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:30] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:31] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:34] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"check_reminders"}
[2026-03-27 17:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:50] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:52] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:57] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:29:58] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:02] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:02] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:03] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:03] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:04] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:04] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:05] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:06] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:06] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:06] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:30:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:07] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:30:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:09] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:12] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:13] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:14] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:14] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:16] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:17] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:17] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:18] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"check_reminders"}
[2026-03-27 17:30:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:24] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:26] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:26] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:26] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:27] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:27] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:28] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:28] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:29] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:29] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:30:29] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:29] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:29] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:30] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:30] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:30:30] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:30] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"check_reminders"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"get_leads"}
[2026-03-27 17:30:35] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:41] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:43] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:50] [WARNING] Auth check failed - not authenticated {"session_id":"uea12jt98dekt0eqnjd43iqtbf","session_keys":[],"action":"log_client_event"}
[2026-03-27 17:30:50] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-27 17:30:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-27 17:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-27 17:31:21] [INFO] Checking activity reminders 
[2026-03-27 17:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-27 17:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-27 17:31:57] [INFO] Checking activity reminders 
[2026-03-27 17:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-27 17:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-27 17:32:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4167","deal_id":"local_699d886e16e9d8.86139404","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-27 17:32:21","session_id":"uea12jt98dekt0eqnjd43iqtbf"}
[2026-03-27 17:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-27 17:32:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4167","is_new_deal":false}
[2026-03-27 17:32:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-27 17:32:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-27 17:32:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-27 17:32:21] [INFO] getContactPrimaryPhone called {"contact_id":"4167"}
[2026-03-27 17:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-27 17:32:21] [INFO] getContactPrimaryPhone result {"contact_id":"4167","person_found":true,"primary_phone":"9133125395"}
[2026-03-27 17:32:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133125395"}
[2026-03-27 17:32:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133125395","contact_id":"4167","deal_id":"local_699d886e16e9d8.86139404","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-27 17:32:21"}
[2026-03-27 17:32:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","existing_deal_found":true,"existing_contact_id":"4167","existing_title":"معامله سوم 9133125395 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-27 17:32:21"}
[2026-03-27 17:32:21] [INFO] DealController.save validated payments {"deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-27 17:32:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4167","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-27 17:32:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d886e16e9d8.86139404","contact_didar_id":"4167","title":"معامله سوم 9133125395 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9133125395","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینعلی محمدی","existing_deal":"YES","existing_deal_id":"local_699d886e16e9d8.86139404","existing_deal_status":"Pending","server_time":"2026-03-27 17:32:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-27 17:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-27 17:32:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d886e16e9d8.86139404","contact_id":"4167","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9133125395 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":50000000,"server_time":"2026-03-27 17:32:22","ip_address":"5.117.173.144","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-27 17:32:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-03-27 17:32:27] [INFO] Checking activity reminders 
[2026-03-27 17:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-27 17:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:41:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 11:41:23] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-28 11:41:23] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-28 11:41:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 11:41:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:41:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:41:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:41:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:41:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:41:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:41:53] [INFO] Checking activity reminders 
[2026-03-28 11:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:42:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:42:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:42:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:42:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:42:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:42:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:42:24] [INFO] Checking activity reminders 
[2026-03-28 11:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:42:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:42:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:42:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:42:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:42:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:42:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:42:55] [INFO] Checking activity reminders 
[2026-03-28 11:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:43:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:43:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:43:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:43:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:43:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:43:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:43:25] [INFO] Checking activity reminders 
[2026-03-28 11:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:43:55] [INFO] Checking activity reminders 
[2026-03-28 11:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:44:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 11:44:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 11:44:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 11:44:52] [INFO] Checking activity reminders 
[2026-03-28 11:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:45:14] [INFO] Checking activity reminders 
[2026-03-28 11:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:45:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 11:45:44] [INFO] Checking activity reminders 
[2026-03-28 11:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 11:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 11:45:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 11:46:08] [INFO] Lead update received {"contact_id":"468","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 11:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 11:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 11:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 11:46:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"468"}
[2026-03-28 11:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-28 12:58:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 12:58:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 12:58:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 12:59:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 12:59:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 12:59:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 13:27:46] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 13:27:46] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 13:27:46] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 13:40:32] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"log_client_event"}
[2026-03-28 13:40:32] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-28 13:40:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 13:41:03] [INFO] Checking activity reminders 
[2026-03-28 13:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 13:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 13:41:32] [INFO] Checking activity reminders 
[2026-03-28 13:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 13:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 13:48:51] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 13:48:51] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 13:48:51] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:36] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:37] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:37] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-28 14:18:37] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:38] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:38] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:38] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-28 14:18:38] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:48] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 14:18:49] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-28 14:18:49] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-28 14:18:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 14:18:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 14:18:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 14:18:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 14:32:01] [INFO] Checking activity reminders 
[2026-03-28 14:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:32:33] [INFO] Checking activity reminders 
[2026-03-28 14:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:33:03] [INFO] Checking activity reminders 
[2026-03-28 14:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:33:33] [INFO] Checking activity reminders 
[2026-03-28 14:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:34:08] [INFO] Checking activity reminders 
[2026-03-28 14:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:35:26] [INFO] Checking activity reminders 
[2026-03-28 14:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:35:56] [INFO] Checking activity reminders 
[2026-03-28 14:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:36:30] [INFO] Checking activity reminders 
[2026-03-28 14:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:37:00] [INFO] Checking activity reminders 
[2026-03-28 14:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:37:30] [INFO] Checking activity reminders 
[2026-03-28 14:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:38:00] [INFO] Checking activity reminders 
[2026-03-28 14:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:38:34] [INFO] Checking activity reminders 
[2026-03-28 14:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:39:05] [INFO] Checking activity reminders 
[2026-03-28 14:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:39:35] [INFO] Checking activity reminders 
[2026-03-28 14:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:40:30] [INFO] Checking activity reminders 
[2026-03-28 14:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:41:00] [INFO] Checking activity reminders 
[2026-03-28 14:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:41:39] [INFO] Checking activity reminders 
[2026-03-28 14:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:42:09] [INFO] Checking activity reminders 
[2026-03-28 14:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:42:39] [INFO] Checking activity reminders 
[2026-03-28 14:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:43:09] [INFO] Checking activity reminders 
[2026-03-28 14:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 14:50:52] [INFO] Checking activity reminders 
[2026-03-28 14:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 14:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:45:00] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 15:45:00] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 15:45:06] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 15:45:06] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-28 15:45:06] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-28 15:45:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 15:45:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:45:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:45:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:45:37] [INFO] Checking activity reminders 
[2026-03-28 15:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:46:07] [INFO] Checking activity reminders 
[2026-03-28 15:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:46:37] [INFO] Checking activity reminders 
[2026-03-28 15:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:46:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:46:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:46:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:47:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:47:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:47:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:47:07] [INFO] Checking activity reminders 
[2026-03-28 15:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:47:37] [INFO] Checking activity reminders 
[2026-03-28 15:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:48:07] [INFO] Checking activity reminders 
[2026-03-28 15:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:48:37] [INFO] Checking activity reminders 
[2026-03-28 15:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:49:07] [INFO] Checking activity reminders 
[2026-03-28 15:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:49:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:49:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:49:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:49:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:49:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:49:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:49:38] [INFO] Checking activity reminders 
[2026-03-28 15:49:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:49:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:49:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:49:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:49:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:49:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:49:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:49:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:50:08] [INFO] Checking activity reminders 
[2026-03-28 15:50:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:50:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:50:38] [INFO] Checking activity reminders 
[2026-03-28 15:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:51:08] [INFO] Checking activity reminders 
[2026-03-28 15:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:51:34] [INFO] Checking activity reminders 
[2026-03-28 15:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:52:04] [INFO] Checking activity reminders 
[2026-03-28 15:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:52:35] [INFO] Checking activity reminders 
[2026-03-28 15:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:53:05] [INFO] Checking activity reminders 
[2026-03-28 15:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:53:35] [INFO] Checking activity reminders 
[2026-03-28 15:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:54:05] [INFO] Checking activity reminders 
[2026-03-28 15:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:54:35] [INFO] Checking activity reminders 
[2026-03-28 15:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:55:05] [INFO] Checking activity reminders 
[2026-03-28 15:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:55:35] [INFO] Checking activity reminders 
[2026-03-28 15:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:56:06] [INFO] Checking activity reminders 
[2026-03-28 15:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:56:36] [INFO] Checking activity reminders 
[2026-03-28 15:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:57:06] [INFO] Checking activity reminders 
[2026-03-28 15:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:57:40] [INFO] Checking activity reminders 
[2026-03-28 15:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:58:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:58:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:58:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:58:10] [INFO] Checking activity reminders 
[2026-03-28 15:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:58:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 15:58:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 15:58:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 15:58:40] [INFO] Checking activity reminders 
[2026-03-28 15:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 15:59:10] [INFO] Checking activity reminders 
[2026-03-28 15:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 15:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:25:49] [INFO] Checking activity reminders 
[2026-03-28 16:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:25:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-03-28 16:26:19] [INFO] Checking activity reminders 
[2026-03-28 16:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:26:49] [INFO] Checking activity reminders 
[2026-03-28 16:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:27:20] [INFO] Checking activity reminders 
[2026-03-28 16:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:27:30] [INFO] Checking activity reminders 
[2026-03-28 16:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:28:00] [INFO] Checking activity reminders 
[2026-03-28 16:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:28:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-03-28 16:28:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:28:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:28:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:28:31] [INFO] Checking activity reminders 
[2026-03-28 16:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:29:00] [INFO] Checking activity reminders 
[2026-03-28 16:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:29:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:29:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:29:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:29:30] [INFO] Checking activity reminders 
[2026-03-28 16:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:29:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:29:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:29:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:29:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:29:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:29:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:29:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:29:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:29:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:30:00] [INFO] Checking activity reminders 
[2026-03-28 16:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:30:30] [INFO] Checking activity reminders 
[2026-03-28 16:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:31:00] [INFO] Checking activity reminders 
[2026-03-28 16:31:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:31:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:31:30] [INFO] Checking activity reminders 
[2026-03-28 16:31:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:31:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:32:00] [INFO] Checking activity reminders 
[2026-03-28 16:32:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:32:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:32:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:32:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:32:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:32:30] [INFO] Checking activity reminders 
[2026-03-28 16:32:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:32:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:32:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:32:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:32:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:33:00] [INFO] Checking activity reminders 
[2026-03-28 16:33:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:33:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:33:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 16:33:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 16:33:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 16:33:30] [INFO] Checking activity reminders 
[2026-03-28 16:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:34:01] [INFO] Checking activity reminders 
[2026-03-28 16:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:34:31] [INFO] Checking activity reminders 
[2026-03-28 16:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:35:01] [INFO] Checking activity reminders 
[2026-03-28 16:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:35:31] [INFO] Checking activity reminders 
[2026-03-28 16:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:36:01] [INFO] Checking activity reminders 
[2026-03-28 16:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:36:31] [INFO] Checking activity reminders 
[2026-03-28 16:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:37:01] [INFO] Checking activity reminders 
[2026-03-28 16:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:37:31] [INFO] Checking activity reminders 
[2026-03-28 16:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:38:01] [INFO] Checking activity reminders 
[2026-03-28 16:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:38:31] [INFO] Checking activity reminders 
[2026-03-28 16:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:39:01] [INFO] Checking activity reminders 
[2026-03-28 16:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:39:31] [INFO] Checking activity reminders 
[2026-03-28 16:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:40:01] [INFO] Checking activity reminders 
[2026-03-28 16:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 16:40:32] [INFO] Checking activity reminders 
[2026-03-28 16:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 16:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 17:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 17:56:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:22] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-28 17:57:22] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:22] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-28 17:57:23] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_products"}
[2026-03-28 17:57:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-28 17:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:34] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-28 17:57:34] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-28 17:57:34] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-28 17:57:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 17:57:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 17:57:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 17:57:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 17:58:05] [INFO] Checking activity reminders 
[2026-03-28 17:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 17:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 17:58:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 17:59:04] [INFO] Checking activity reminders 
[2026-03-28 17:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 17:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 17:59:34] [INFO] Checking activity reminders 
[2026-03-28 17:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 17:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 17:59:46] [INFO] Lead update received {"contact_id":"13081","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 17:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 17:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 17:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 17:59:47] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13081"}
[2026-03-28 17:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:00:04] [INFO] Checking activity reminders 
[2026-03-28 18:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:00:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:00:34] [INFO] Checking activity reminders 
[2026-03-28 18:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:00:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:00:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:00:51] [INFO] generateDealTitle result {"contact_id":"13081","person_name":"میرزا زاده","mobile":"9044035253","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9044035253"}
[2026-03-28 18:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:04] [INFO] generateDealTitle result {"contact_id":"13081","person_name":"میرزا زاده","mobile":"9044035253","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9044035253"}
[2026-03-28 18:01:04] [INFO] Checking activity reminders 
[2026-03-28 18:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:01:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13081","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:01:30","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13081","is_new_deal":true}
[2026-03-28 18:01:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:01:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:01:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:01:30] [INFO] getContactPrimaryPhone called {"contact_id":"13081"}
[2026-03-28 18:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:30] [INFO] getContactPrimaryPhone result {"contact_id":"13081","person_found":true,"primary_phone":"9044035253"}
[2026-03-28 18:01:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9044035253"}
[2026-03-28 18:01:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9044035253","contact_id":"13081","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:01:30"}
[2026-03-28 18:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:30] [INFO] generateDealTitle result {"contact_id":"13081","person_name":"میرزا زاده","mobile":"9044035253","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9044035253"}
[2026-03-28 18:01:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13081","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:01:30] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13081","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:01:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13081","title":"معامله چهارم 9044035253 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9044035253","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"میرزا زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:01:30","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:01:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13081","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9044035253 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:01:30","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:01:35] [INFO] Checking activity reminders 
[2026-03-28 18:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:02:05] [INFO] Checking activity reminders 
[2026-03-28 18:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:02:35] [INFO] Checking activity reminders 
[2026-03-28 18:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:02:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 18:02:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 18:02:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 18:03:05] [INFO] Checking activity reminders 
[2026-03-28 18:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:03:35] [INFO] Checking activity reminders 
[2026-03-28 18:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:04:05] [INFO] Checking activity reminders 
[2026-03-28 18:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:04:38] [INFO] Checking activity reminders 
[2026-03-28 18:04:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:04:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:13:13] [INFO] Checking activity reminders 
[2026-03-28 18:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:13:43] [INFO] Checking activity reminders 
[2026-03-28 18:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:13:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-03-28 18:14:32] [INFO] Checking activity reminders 
[2026-03-28 18:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:14:36] [INFO] Checking activity reminders 
[2026-03-28 18:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:16:02] [INFO] Checking activity reminders 
[2026-03-28 18:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:16:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:25] [INFO] Lead update received {"contact_id":"5381","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:16:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5381"}
[2026-03-28 18:16:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:30] [INFO] generateDealTitle result {"contact_id":"5381","person_name":"مصباح وحیدی","mobile":"9123135882","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123135882"}
[2026-03-28 18:16:32] [INFO] Checking activity reminders 
[2026-03-28 18:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:16:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5381","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:16:43","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5381","is_new_deal":true}
[2026-03-28 18:16:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:16:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:16:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:16:43] [INFO] getContactPrimaryPhone called {"contact_id":"5381"}
[2026-03-28 18:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:43] [INFO] getContactPrimaryPhone result {"contact_id":"5381","person_found":true,"primary_phone":"9123135882"}
[2026-03-28 18:16:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123135882"}
[2026-03-28 18:16:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123135882","contact_id":"5381","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:16:43"}
[2026-03-28 18:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:43] [INFO] generateDealTitle result {"contact_id":"5381","person_name":"مصباح وحیدی","mobile":"9123135882","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123135882"}
[2026-03-28 18:16:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5381","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:16:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5381","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:16:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5381","title":"معامله دوم 9123135882 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123135882","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مصباح وحیدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:16:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:16:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:16:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5381","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123135882 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:16:43","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-28 18:17:03] [INFO] Checking activity reminders 
[2026-03-28 18:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:17:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15891","person_id":"19180"}
[2026-03-28 18:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15891","person_id":"19180"}
[2026-03-28 18:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15891","person_id":"19180"}
[2026-03-28 18:17:08] [INFO] generateDealTitle result {"contact_id":"15891","person_name":"اقای حسینی","mobile":"9123530969","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123530969"}
[2026-03-28 18:17:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 18:17:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 18:17:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 18:17:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 18:17:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15891","person_id":"19180"}
[2026-03-28 18:18:04] [INFO] Checking activity reminders 
[2026-03-28 18:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:18:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:34] [INFO] Checking activity reminders 
[2026-03-28 18:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:18:39] [INFO] Lead update received {"contact_id":"4165","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:39] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4165"}
[2026-03-28 18:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:18:43] [INFO] generateDealTitle result {"contact_id":"4165","person_name":"اردهالی اردهالی","mobile":"9124433072","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124433072"}
[2026-03-28 18:19:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4165","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:19:01","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:19:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:19:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4165","is_new_deal":true}
[2026-03-28 18:19:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:19:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:19:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:19:01] [INFO] getContactPrimaryPhone called {"contact_id":"4165"}
[2026-03-28 18:19:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:19:01] [INFO] getContactPrimaryPhone result {"contact_id":"4165","person_found":true,"primary_phone":"9124433072"}
[2026-03-28 18:19:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124433072"}
[2026-03-28 18:19:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124433072","contact_id":"4165","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:19:01"}
[2026-03-28 18:19:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:19:01] [INFO] generateDealTitle result {"contact_id":"4165","person_name":"اردهالی اردهالی","mobile":"9124433072","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124433072"}
[2026-03-28 18:19:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4165","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:19:01] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4165","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:19:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4165","title":"معامله دوم 9124433072 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124433072","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اردهالی اردهالی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:19:01","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:19:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:19:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:19:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4165","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9124433072 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:19:01","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:19:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-28 18:19:05] [INFO] Checking activity reminders 
[2026-03-28 18:19:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:19:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20466","person_id":"19376"}
[2026-03-28 18:19:36] [INFO] Checking activity reminders 
[2026-03-28 18:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:19:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-28 18:20:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7672","person_id":"18531"}
[2026-03-28 18:20:06] [INFO] Checking activity reminders 
[2026-03-28 18:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:20:16] [INFO] Checking activity reminders 
[2026-03-28 18:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:20:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7672","person_id":"18531"}
[2026-03-28 18:20:25] [INFO] Checking activity reminders 
[2026-03-28 18:20:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:20:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:20:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:32] [INFO] generateDealTitle result {"contact_id":"652","person_name":"نعمت صدری","mobile":"9125483467","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125483467"}
[2026-03-28 18:20:42] [INFO] Lead update received {"contact_id":"652","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"652"}
[2026-03-28 18:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:20:49] [INFO] generateDealTitle result {"contact_id":"652","person_name":"نعمت صدری","mobile":"9125483467","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125483467"}
[2026-03-28 18:20:55] [INFO] Checking activity reminders 
[2026-03-28 18:20:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:20:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:21:04] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"652","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:21:04","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:21:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"652","is_new_deal":true}
[2026-03-28 18:21:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:21:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:21:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:21:04] [INFO] getContactPrimaryPhone called {"contact_id":"652"}
[2026-03-28 18:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:21:04] [INFO] getContactPrimaryPhone result {"contact_id":"652","person_found":true,"primary_phone":"9125483467"}
[2026-03-28 18:21:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125483467"}
[2026-03-28 18:21:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125483467","contact_id":"652","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:21:04"}
[2026-03-28 18:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:21:04] [INFO] generateDealTitle result {"contact_id":"652","person_name":"نعمت صدری","mobile":"9125483467","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125483467"}
[2026-03-28 18:21:04] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"652","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:21:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"652","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:21:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"652","title":"معامله دوم 9125483467 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9125483467","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نعمت صدری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:21:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:21:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:21:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"652","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9125483467 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:21:04","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:21:20] [INFO] Checking activity reminders 
[2026-03-28 18:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:21:36] [INFO] Checking activity reminders 
[2026-03-28 18:21:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:21:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7672","person_id":"18531"}
[2026-03-28 18:21:53] [INFO] Checking activity reminders 
[2026-03-28 18:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:21:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:22:23] [INFO] Checking activity reminders 
[2026-03-28 18:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:22:33] [INFO] Checking activity reminders 
[2026-03-28 18:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:22:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-28 18:23:04] [INFO] Checking activity reminders 
[2026-03-28 18:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16051","person_id":"18968"}
[2026-03-28 18:23:20] [INFO] Checking activity reminders 
[2026-03-28 18:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:23:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:36] [INFO] generateDealTitle result {"contact_id":"11501","person_name":"چرمچی","mobile":"9126212594","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126212594"}
[2026-03-28 18:23:50] [INFO] Checking activity reminders 
[2026-03-28 18:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:23:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11501","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:23:52","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11501","is_new_deal":true}
[2026-03-28 18:23:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:23:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:23:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:23:52] [INFO] getContactPrimaryPhone called {"contact_id":"11501"}
[2026-03-28 18:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:52] [INFO] getContactPrimaryPhone result {"contact_id":"11501","person_found":true,"primary_phone":"9126212594"}
[2026-03-28 18:23:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126212594"}
[2026-03-28 18:23:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126212594","contact_id":"11501","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:23:52"}
[2026-03-28 18:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:52] [INFO] generateDealTitle result {"contact_id":"11501","person_name":"چرمچی","mobile":"9126212594","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126212594"}
[2026-03-28 18:23:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11501","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:23:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"11501","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:23:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11501","title":"معامله سوم 9126212594 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9126212594","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"چرمچی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:23:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:23:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:23:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11501","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9126212594 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:23:52","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:23:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:24:12] [INFO] Checking activity reminders 
[2026-03-28 18:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:24:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:20] [INFO] generateDealTitle result {"contact_id":"21227","person_name":"خانم صالحی","mobile":"9126228165","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126228165"}
[2026-03-28 18:24:31] [INFO] Lead update received {"contact_id":"21227","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:31] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21227"}
[2026-03-28 18:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:36] [INFO] generateDealTitle result {"contact_id":"21227","person_name":"خانم صالحی","mobile":"9126228165","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126228165"}
[2026-03-28 18:24:42] [INFO] Checking activity reminders 
[2026-03-28 18:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:24:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21227","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:24:53","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21227","is_new_deal":true}
[2026-03-28 18:24:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:24:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:24:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:24:53] [INFO] getContactPrimaryPhone called {"contact_id":"21227"}
[2026-03-28 18:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:53] [INFO] getContactPrimaryPhone result {"contact_id":"21227","person_found":true,"primary_phone":"9126228165"}
[2026-03-28 18:24:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126228165"}
[2026-03-28 18:24:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126228165","contact_id":"21227","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:24:53"}
[2026-03-28 18:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:53] [INFO] generateDealTitle result {"contact_id":"21227","person_name":"خانم صالحی","mobile":"9126228165","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126228165"}
[2026-03-28 18:24:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21227","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:24:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21227","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:24:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21227","title":"معامله دوم 9126228165 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126228165","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خانم صالحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:24:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:24:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:24:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21227","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126228165 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:24:53","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-28 18:25:10] [INFO] Checking activity reminders 
[2026-03-28 18:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:25:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:25:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:25:40] [INFO] Checking activity reminders 
[2026-03-28 18:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:25:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:03] [INFO] Lead update received {"contact_id":"11501","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:03] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11501"}
[2026-03-28 18:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:08] [INFO] generateDealTitle result {"contact_id":"11501","person_name":"چرمچی چرمچی","mobile":"9126212594","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126212594"}
[2026-03-28 18:26:11] [INFO] Checking activity reminders 
[2026-03-28 18:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:26:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11501","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:26:26","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11501","is_new_deal":true}
[2026-03-28 18:26:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:26:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:26:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:26:26] [INFO] getContactPrimaryPhone called {"contact_id":"11501"}
[2026-03-28 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:26] [INFO] getContactPrimaryPhone result {"contact_id":"11501","person_found":true,"primary_phone":"9126212594"}
[2026-03-28 18:26:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126212594"}
[2026-03-28 18:26:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126212594","contact_id":"11501","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:26:26"}
[2026-03-28 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:26] [INFO] generateDealTitle result {"contact_id":"11501","person_name":"چرمچی چرمچی","mobile":"9126212594","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126212594"}
[2026-03-28 18:26:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11501","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:26:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11501","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:26:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11501","title":"معامله سوم 9126212594 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9126212594","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"چرمچی چرمچی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:26:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:26:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11501","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9126212594 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:26:26","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:26:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-28 18:26:41] [INFO] Checking activity reminders 
[2026-03-28 18:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:28:21] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"log_client_event"}
[2026-03-28 18:28:21] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"check_reminders"}
[2026-03-28 18:28:21] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"log_client_event"}
[2026-03-28 18:29:39] [INFO] Checking activity reminders 
[2026-03-28 18:29:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:29:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:30:21] [INFO] Checking activity reminders 
[2026-03-28 18:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:30:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-03-28 18:30:51] [INFO] Checking activity reminders 
[2026-03-28 18:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:31:20] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"log_client_event"}
[2026-03-28 18:31:20] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-28 18:31:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 18:31:21] [INFO] Checking activity reminders 
[2026-03-28 18:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-28 18:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-03-28 18:31:50] [INFO] Checking activity reminders 
[2026-03-28 18:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:31:51] [INFO] Checking activity reminders 
[2026-03-28 18:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:32:08] [INFO] Checking activity reminders 
[2026-03-28 18:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:32:22] [INFO] Checking activity reminders 
[2026-03-28 18:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:32:43] [INFO] Checking activity reminders 
[2026-03-28 18:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:32:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 18:32:52] [INFO] Checking activity reminders 
[2026-03-28 18:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:33:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 18:33:14] [INFO] Checking activity reminders 
[2026-03-28 18:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:33:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 18:33:22] [INFO] Checking activity reminders 
[2026-03-28 18:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 18:33:50] [INFO] Checking activity reminders 
[2026-03-28 18:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:33:52] [INFO] Checking activity reminders 
[2026-03-28 18:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:34:40] [INFO] Checking activity reminders 
[2026-03-28 18:34:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:34:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:36:25] [INFO] Checking activity reminders 
[2026-03-28 18:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:36:52] [INFO] Checking activity reminders 
[2026-03-28 18:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:36:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:07] [INFO] Lead update received {"contact_id":"7168","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:07] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7168"}
[2026-03-28 18:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:11] [INFO] generateDealTitle result {"contact_id":"7168","person_name":"بهشاد بهشاد","mobile":"9126881171","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126881171"}
[2026-03-28 18:37:22] [INFO] Checking activity reminders 
[2026-03-28 18:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:37:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7168","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:37:31","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7168","is_new_deal":true}
[2026-03-28 18:37:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:37:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:37:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:37:31] [INFO] getContactPrimaryPhone called {"contact_id":"7168"}
[2026-03-28 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:31] [INFO] getContactPrimaryPhone result {"contact_id":"7168","person_found":true,"primary_phone":"9126881171"}
[2026-03-28 18:37:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126881171"}
[2026-03-28 18:37:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126881171","contact_id":"7168","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:37:31"}
[2026-03-28 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:31] [INFO] generateDealTitle result {"contact_id":"7168","person_name":"بهشاد بهشاد","mobile":"9126881171","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126881171"}
[2026-03-28 18:37:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7168","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:37:31] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7168","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:37:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7168","title":"معامله دوم 9126881171 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126881171","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"بهشاد بهشاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:37:31","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:37:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7168","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126881171 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:37:31","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-28 18:37:51] [INFO] Checking activity reminders 
[2026-03-28 18:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:06] [INFO] Lead update received {"contact_id":"15898","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15898"}
[2026-03-28 18:38:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:10] [INFO] generateDealTitle result {"contact_id":"15898","person_name":"کنگاوری کنگاوری","mobile":"9126973972","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126973972"}
[2026-03-28 18:38:21] [INFO] Checking activity reminders 
[2026-03-28 18:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:38:27] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15898","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:38:27","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15898","is_new_deal":true}
[2026-03-28 18:38:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:38:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:38:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:38:27] [INFO] getContactPrimaryPhone called {"contact_id":"15898"}
[2026-03-28 18:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:27] [INFO] getContactPrimaryPhone result {"contact_id":"15898","person_found":true,"primary_phone":"9126973972"}
[2026-03-28 18:38:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126973972"}
[2026-03-28 18:38:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126973972","contact_id":"15898","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:38:27"}
[2026-03-28 18:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:27] [INFO] generateDealTitle result {"contact_id":"15898","person_name":"کنگاوری کنگاوری","mobile":"9126973972","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126973972"}
[2026-03-28 18:38:27] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15898","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:38:27] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15898","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:38:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15898","title":"معامله دوم 9126973972 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126973972","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"کنگاوری کنگاوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:38:27","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:27] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:38:27] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15898","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126973972 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:38:27","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:38:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-28 18:38:41] [INFO] Checking activity reminders 
[2026-03-28 18:38:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:38:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:38:44] [INFO] Checking activity reminders 
[2026-03-28 18:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:38:51] [INFO] Checking activity reminders 
[2026-03-28 18:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:38:58] [INFO] Checking activity reminders 
[2026-03-28 18:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:39:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21191","person_id":"20890"}
[2026-03-28 18:39:14] [INFO] Checking activity reminders 
[2026-03-28 18:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:39:17] [INFO] Checking activity reminders 
[2026-03-28 18:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:39:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:27] [INFO] Lead update received {"contact_id":"3931","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:27] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"3931"}
[2026-03-28 18:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:31] [INFO] generateDealTitle result {"contact_id":"3931","person_name":"رضا حاتمی راد","mobile":"9127744633","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127744633"}
[2026-03-28 18:39:44] [INFO] Checking activity reminders 
[2026-03-28 18:39:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:39:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:39:47] [INFO] Checking activity reminders 
[2026-03-28 18:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:39:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3931","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:39:53","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:39:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3931","is_new_deal":true}
[2026-03-28 18:39:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:39:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:39:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:39:53] [INFO] getContactPrimaryPhone called {"contact_id":"3931"}
[2026-03-28 18:39:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:53] [INFO] getContactPrimaryPhone result {"contact_id":"3931","person_found":true,"primary_phone":"9127744633"}
[2026-03-28 18:39:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127744633"}
[2026-03-28 18:39:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127744633","contact_id":"3931","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:39:53"}
[2026-03-28 18:39:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:53] [INFO] generateDealTitle result {"contact_id":"3931","person_name":"رضا حاتمی راد","mobile":"9127744633","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127744633"}
[2026-03-28 18:39:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3931","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:39:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"3931","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:39:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3931","title":"معامله دوم 9127744633 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127744633","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رضا حاتمی راد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:39:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:39:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:39:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:39:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3931","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127744633 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:39:53","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:39:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-28 18:40:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 18:40:15] [INFO] Checking activity reminders 
[2026-03-28 18:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:40:38] [INFO] Checking activity reminders 
[2026-03-28 18:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:40:45] [INFO] Checking activity reminders 
[2026-03-28 18:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:41:15] [INFO] Checking activity reminders 
[2026-03-28 18:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:41:38] [INFO] Checking activity reminders 
[2026-03-28 18:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:41:48] [INFO] Checking activity reminders 
[2026-03-28 18:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:41:56] [INFO] Checking activity reminders 
[2026-03-28 18:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:41:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:15] [INFO] Lead update received {"contact_id":"15170","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:15] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15170"}
[2026-03-28 18:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:20] [INFO] generateDealTitle result {"contact_id":"15170","person_name":"نریمان نجفی","mobile":"9128191945","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128191945"}
[2026-03-28 18:42:26] [INFO] Checking activity reminders 
[2026-03-28 18:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:42:39] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15170","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:42:39","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15170","is_new_deal":true}
[2026-03-28 18:42:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:42:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:42:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:42:39] [INFO] getContactPrimaryPhone called {"contact_id":"15170"}
[2026-03-28 18:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:39] [INFO] getContactPrimaryPhone result {"contact_id":"15170","person_found":true,"primary_phone":"9128191945"}
[2026-03-28 18:42:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128191945"}
[2026-03-28 18:42:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128191945","contact_id":"15170","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:42:39"}
[2026-03-28 18:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:39] [INFO] generateDealTitle result {"contact_id":"15170","person_name":"نریمان نجفی","mobile":"9128191945","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128191945"}
[2026-03-28 18:42:39] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15170","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:42:39] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15170","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:42:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15170","title":"معامله دوم 9128191945 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128191945","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نریمان نجفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:42:39","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:42:39] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:42:39] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15170","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9128191945 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:42:39","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-28 18:43:02] [INFO] Checking activity reminders 
[2026-03-28 18:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:43:11] [INFO] Checking activity reminders 
[2026-03-28 18:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:43:21] [INFO] Checking activity reminders 
[2026-03-28 18:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:43:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:37] [INFO] Lead update received {"contact_id":"4030","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-28 18:43:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:37] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4030"}
[2026-03-28 18:43:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:43:43] [INFO] generateDealTitle result {"contact_id":"4030","person_name":"نورپور نورپور","mobile":"9128328935","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128328935"}
[2026-03-28 18:43:51] [INFO] Checking activity reminders 
[2026-03-28 18:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:44:02] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4030","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 18:44:02","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 18:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:44:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4030","is_new_deal":true}
[2026-03-28 18:44:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 18:44:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:44:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 18:44:02] [INFO] getContactPrimaryPhone called {"contact_id":"4030"}
[2026-03-28 18:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:44:02] [INFO] getContactPrimaryPhone result {"contact_id":"4030","person_found":true,"primary_phone":"9128328935"}
[2026-03-28 18:44:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128328935"}
[2026-03-28 18:44:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128328935","contact_id":"4030","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 18:44:02"}
[2026-03-28 18:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:44:02] [INFO] generateDealTitle result {"contact_id":"4030","person_name":"نورپور نورپور","mobile":"9128328935","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128328935"}
[2026-03-28 18:44:02] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4030","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 18:44:02] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4030","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 18:44:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4030","title":"معامله دوم 9128328935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128328935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نورپور نورپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 18:44:02","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 18:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:44:02] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 18:44:02] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4030","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9128328935 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 18:44:02","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 18:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-28 18:44:28] [INFO] Checking activity reminders 
[2026-03-28 18:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:44:58] [INFO] Checking activity reminders 
[2026-03-28 18:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:45:28] [INFO] Checking activity reminders 
[2026-03-28 18:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:45:59] [INFO] Checking activity reminders 
[2026-03-28 18:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:46:29] [INFO] Checking activity reminders 
[2026-03-28 18:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:46:59] [INFO] Checking activity reminders 
[2026-03-28 18:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:47:29] [INFO] Checking activity reminders 
[2026-03-28 18:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:47:59] [INFO] Checking activity reminders 
[2026-03-28 18:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:48:29] [INFO] Checking activity reminders 
[2026-03-28 18:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:48:59] [INFO] Checking activity reminders 
[2026-03-28 18:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:49:29] [INFO] Checking activity reminders 
[2026-03-28 18:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:49:59] [INFO] Checking activity reminders 
[2026-03-28 18:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:50:30] [INFO] Checking activity reminders 
[2026-03-28 18:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:51:00] [INFO] Checking activity reminders 
[2026-03-28 18:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:51:42] [INFO] Checking activity reminders 
[2026-03-28 18:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:52:12] [INFO] Checking activity reminders 
[2026-03-28 18:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:53:39] [INFO] Checking activity reminders 
[2026-03-28 18:53:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:53:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 18:53:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 18:53:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 18:53:57] [INFO] generateDealTitle result {"contact_id":"12882","person_name":"خانم همتی","mobile":"9981114654","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9981114654"}
[2026-03-28 18:54:09] [INFO] Checking activity reminders 
[2026-03-28 18:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:54:43] [INFO] Checking activity reminders 
[2026-03-28 18:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:55:13] [INFO] Checking activity reminders 
[2026-03-28 18:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:55:43] [INFO] Checking activity reminders 
[2026-03-28 18:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:56:14] [INFO] Checking activity reminders 
[2026-03-28 18:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 18:56:47] [INFO] Checking activity reminders 
[2026-03-28 18:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 18:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:00:06] [INFO] Checking activity reminders 
[2026-03-28 19:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:01:28] [INFO] Checking activity reminders 
[2026-03-28 19:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:01:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-28 19:01:58] [INFO] Checking activity reminders 
[2026-03-28 19:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:02:20] [INFO] Checking activity reminders 
[2026-03-28 19:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:02:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:02:50] [INFO] Checking activity reminders 
[2026-03-28 19:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:03:20] [INFO] Checking activity reminders 
[2026-03-28 19:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:03:50] [INFO] Checking activity reminders 
[2026-03-28 19:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:04:21] [INFO] Checking activity reminders 
[2026-03-28 19:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:05:12] [WARNING] Auth check failed - not authenticated {"session_id":"dhjvjl5fvrc3rojtudl9lfoi1s","session_keys":[],"action":"log_client_event"}
[2026-03-28 19:05:12] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-28 19:05:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 19:05:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:05:42] [INFO] Checking activity reminders 
[2026-03-28 19:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:06:12] [INFO] Checking activity reminders 
[2026-03-28 19:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:06:43] [INFO] Checking activity reminders 
[2026-03-28 19:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:07:13] [INFO] Checking activity reminders 
[2026-03-28 19:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:07:43] [INFO] Checking activity reminders 
[2026-03-28 19:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:08:54] [INFO] Checking activity reminders 
[2026-03-28 19:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:09:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2692","deal_id":"local_69bbad55185e12.51983067","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:09:03","session_id":"dhjvjl5fvrc3rojtudl9lfoi1s"}
[2026-03-28 19:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2692","is_new_deal":false}
[2026-03-28 19:09:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-28 19:09:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-28 19:09:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-28 19:09:03] [INFO] getContactPrimaryPhone called {"contact_id":"2692"}
[2026-03-28 19:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:03] [INFO] getContactPrimaryPhone result {"contact_id":"2692","person_found":true,"primary_phone":"9013305433"}
[2026-03-28 19:09:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013305433"}
[2026-03-28 19:09:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013305433","contact_id":"2692","deal_id":"local_69bbad55185e12.51983067","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-28 19:09:03"}
[2026-03-28 19:09:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbad55185e12.51983067","contact_id":"2692","existing_deal_found":true,"existing_contact_id":"2692","existing_title":"معامله دوم 9013305433 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-28 19:09:03"}
[2026-03-28 19:09:03] [INFO] DealController.save validated payments {"deal_id":"local_69bbad55185e12.51983067","contact_id":"2692","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-28 19:09:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2692","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-28 19:09:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbad55185e12.51983067","contact_didar_id":"2692","title":"معامله دوم 9013305433 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9013305433","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر تقوی","existing_deal":"YES","existing_deal_id":"local_69bbad55185e12.51983067","existing_deal_status":"Pending","server_time":"2026-03-28 19:09:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-28 19:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:03] [INFO] Deal success processed {"contact_id":"2692","person_name":"امیر تقوی","products_count":1}
[2026-03-28 19:09:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbad55185e12.51983067","contact_id":"2692","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9013305433 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-03-28 19:09:03","ip_address":"2.147.47.60","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-28 19:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-28 19:09:14] [INFO] Checking activity reminders 
[2026-03-28 19:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:09:45] [INFO] Checking activity reminders 
[2026-03-28 19:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:09:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:10:15] [INFO] Checking activity reminders 
[2026-03-28 19:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:10:45] [INFO] Checking activity reminders 
[2026-03-28 19:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:11:16] [INFO] Checking activity reminders 
[2026-03-28 19:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:11:46] [INFO] Checking activity reminders 
[2026-03-28 19:11:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:11:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:12:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 19:12:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:12:45] [INFO] Checking activity reminders 
[2026-03-28 19:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:13:16] [INFO] Checking activity reminders 
[2026-03-28 19:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:13:46] [INFO] Checking activity reminders 
[2026-03-28 19:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:14:16] [INFO] Checking activity reminders 
[2026-03-28 19:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:15:16] [INFO] Checking activity reminders 
[2026-03-28 19:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:15:32] [INFO] Checking activity reminders 
[2026-03-28 19:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:15:47] [INFO] Checking activity reminders 
[2026-03-28 19:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:02] [INFO] Checking activity reminders 
[2026-03-28 19:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:08] [INFO] Checking activity reminders 
[2026-03-28 19:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:28] [INFO] Checking activity reminders 
[2026-03-28 19:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:32] [INFO] Checking activity reminders 
[2026-03-28 19:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:42] [INFO] Checking activity reminders 
[2026-03-28 19:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:16:53] [INFO] Checking activity reminders 
[2026-03-28 19:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:17:02] [INFO] Checking activity reminders 
[2026-03-28 19:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:17:03] [INFO] Checking activity reminders 
[2026-03-28 19:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:17:33] [INFO] Checking activity reminders 
[2026-03-28 19:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:17:46] [INFO] Checking activity reminders 
[2026-03-28 19:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:18:03] [INFO] Checking activity reminders 
[2026-03-28 19:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:18:17] [INFO] Checking activity reminders 
[2026-03-28 19:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:18:33] [INFO] Checking activity reminders 
[2026-03-28 19:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:00] [INFO] Checking activity reminders 
[2026-03-28 19:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:03] [INFO] Checking activity reminders 
[2026-03-28 19:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:13] [INFO] Checking activity reminders 
[2026-03-28 19:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:34] [INFO] Checking activity reminders 
[2026-03-28 19:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:44] [INFO] Checking activity reminders 
[2026-03-28 19:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:19:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6812","deal_id":"local_699ac28b15d6d5.44917183","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:19:46","session_id":"dhjvjl5fvrc3rojtudl9lfoi1s"}
[2026-03-28 19:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:19:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6812","is_new_deal":false}
[2026-03-28 19:19:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:19:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:19:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:19:46] [INFO] getContactPrimaryPhone called {"contact_id":"6812"}
[2026-03-28 19:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:19:46] [INFO] getContactPrimaryPhone result {"contact_id":"6812","person_found":true,"primary_phone":"9123167280"}
[2026-03-28 19:19:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123167280"}
[2026-03-28 19:19:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123167280","contact_id":"6812","deal_id":"local_699ac28b15d6d5.44917183","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-28 19:19:46"}
[2026-03-28 19:19:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ac28b15d6d5.44917183","contact_id":"6812","existing_deal_found":true,"existing_contact_id":"6812","existing_title":"معامله سوم 9123167280 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-28 19:19:46"}
[2026-03-28 19:19:46] [INFO] DealController.save validated payments {"deal_id":"local_699ac28b15d6d5.44917183","contact_id":"6812","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-28 19:19:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6812","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-28 19:19:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ac28b15d6d5.44917183","contact_didar_id":"6812","title":"معامله سوم 9123167280 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123167280","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":78000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا عابدی","existing_deal":"YES","existing_deal_id":"local_699ac28b15d6d5.44917183","existing_deal_status":"Pending","server_time":"2026-03-28 19:19:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-28 19:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:19:46] [INFO] Deal success processed {"contact_id":"6812","person_name":"علیرضا عابدی","products_count":1}
[2026-03-28 19:19:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ac28b15d6d5.44917183","contact_id":"6812","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9123167280 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":78000000,"server_time":"2026-03-28 19:19:46","ip_address":"2.147.47.60","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-28 19:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-28 19:20:04] [INFO] Checking activity reminders 
[2026-03-28 19:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:20:34] [INFO] Checking activity reminders 
[2026-03-28 19:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:21:04] [INFO] Checking activity reminders 
[2026-03-28 19:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:21:34] [INFO] Checking activity reminders 
[2026-03-28 19:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:22:01] [INFO] Checking activity reminders 
[2026-03-28 19:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:22:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12882","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:22:06","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 19:22:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12882","is_new_deal":true}
[2026-03-28 19:22:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:22:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:22:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:22:06] [INFO] getContactPrimaryPhone called {"contact_id":"12882"}
[2026-03-28 19:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 19:22:06] [INFO] getContactPrimaryPhone result {"contact_id":"12882","person_found":true,"primary_phone":"9981114654"}
[2026-03-28 19:22:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9981114654"}
[2026-03-28 19:22:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9981114654","contact_id":"12882","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:22:06"}
[2026-03-28 19:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 19:22:06] [INFO] generateDealTitle result {"contact_id":"12882","person_name":"خانم همتی","mobile":"9981114654","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9981114654"}
[2026-03-28 19:22:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12882","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:22:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12882","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:22:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12882","title":"معامله دوم 9981114654 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9981114654","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم همتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:22:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 19:22:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:22:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12882","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9981114654 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:22:06","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-28 19:23:19] [INFO] Checking activity reminders 
[2026-03-28 19:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:23:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:30] [INFO] generateDealTitle result {"contact_id":"13350","person_name":"محمدی","mobile":"9964990191","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9964990191"}
[2026-03-28 19:23:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13350","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:23:49","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13350","is_new_deal":true}
[2026-03-28 19:23:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:23:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:23:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:23:49] [INFO] getContactPrimaryPhone called {"contact_id":"13350"}
[2026-03-28 19:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:49] [INFO] getContactPrimaryPhone result {"contact_id":"13350","person_found":true,"primary_phone":"9964990191"}
[2026-03-28 19:23:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9964990191"}
[2026-03-28 19:23:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9964990191","contact_id":"13350","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:23:49"}
[2026-03-28 19:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:49] [INFO] generateDealTitle result {"contact_id":"13350","person_name":"محمدی","mobile":"9964990191","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9964990191"}
[2026-03-28 19:23:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13350","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:23:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13350","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:23:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13350","title":"معامله دوم 9964990191 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9964990191","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:23:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:23:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:23:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13350","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9964990191 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:23:49","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:23:49] [INFO] Checking activity reminders 
[2026-03-28 19:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-28 19:24:01] [INFO] Checking activity reminders 
[2026-03-28 19:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-03-28 19:24:19] [INFO] Checking activity reminders 
[2026-03-28 19:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:27] [INFO] generateDealTitle result {"contact_id":"9978","person_name":"ابوالقیصی","mobile":"9122232815","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9122232815"}
[2026-03-28 19:24:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9978","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:24:41","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9978","is_new_deal":true}
[2026-03-28 19:24:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:24:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:24:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:24:41] [INFO] getContactPrimaryPhone called {"contact_id":"9978"}
[2026-03-28 19:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:41] [INFO] getContactPrimaryPhone result {"contact_id":"9978","person_found":true,"primary_phone":"9122232815"}
[2026-03-28 19:24:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122232815"}
[2026-03-28 19:24:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122232815","contact_id":"9978","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:24:41"}
[2026-03-28 19:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:41] [INFO] generateDealTitle result {"contact_id":"9978","person_name":"ابوالقیصی","mobile":"9122232815","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9122232815"}
[2026-03-28 19:24:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9978","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:24:41] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9978","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:24:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9978","title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9122232815","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالقیصی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:24:41","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:24:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9978","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:24:41","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:24:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-28 19:24:51] [INFO] Checking activity reminders 
[2026-03-28 19:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:24:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:00] [INFO] generateDealTitle result {"contact_id":"7918","person_name":"حامد رضایی","mobile":"9904415700","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9904415700"}
[2026-03-28 19:25:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7918","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:25:17","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7918","is_new_deal":true}
[2026-03-28 19:25:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:17] [INFO] getContactPrimaryPhone called {"contact_id":"7918"}
[2026-03-28 19:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:17] [INFO] getContactPrimaryPhone result {"contact_id":"7918","person_found":true,"primary_phone":"9904415700"}
[2026-03-28 19:25:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9904415700"}
[2026-03-28 19:25:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9904415700","contact_id":"7918","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:25:17"}
[2026-03-28 19:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:17] [INFO] generateDealTitle result {"contact_id":"7918","person_name":"حامد رضایی","mobile":"9904415700","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9904415700"}
[2026-03-28 19:25:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7918","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:25:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7918","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:25:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7918","title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9904415700","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد رضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:25:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:25:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7918","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:25:17","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-28 19:25:28] [INFO] Checking activity reminders 
[2026-03-28 19:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:36] [INFO] generateDealTitle result {"contact_id":"2002","person_name":"صادقی روزبهانی","mobile":"9901563138","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9901563138"}
[2026-03-28 19:25:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2002","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:25:52","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:25:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2002","is_new_deal":true}
[2026-03-28 19:25:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:25:52] [INFO] getContactPrimaryPhone called {"contact_id":"2002"}
[2026-03-28 19:25:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:52] [INFO] getContactPrimaryPhone result {"contact_id":"2002","person_found":true,"primary_phone":"9901563138"}
[2026-03-28 19:25:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9901563138"}
[2026-03-28 19:25:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9901563138","contact_id":"2002","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:25:52"}
[2026-03-28 19:25:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:52] [INFO] generateDealTitle result {"contact_id":"2002","person_name":"صادقی روزبهانی","mobile":"9901563138","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9901563138"}
[2026-03-28 19:25:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2002","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:25:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2002","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:25:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2002","title":"معامله چهارم 9901563138 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9901563138","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صادقی روزبهانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:25:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:25:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:25:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:25:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2002","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9901563138 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:25:52","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-28 19:26:01] [INFO] Checking activity reminders 
[2026-03-28 19:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:26:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-03-28 19:26:17] [INFO] Checking activity reminders 
[2026-03-28 19:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:26:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:23] [INFO] generateDealTitle result {"contact_id":"15885","person_name":"علیپور علیپور","mobile":"9387898137","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9387898137"}
[2026-03-28 19:26:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15885","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:26:37","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15885","is_new_deal":true}
[2026-03-28 19:26:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:26:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:26:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:26:37] [INFO] getContactPrimaryPhone called {"contact_id":"15885"}
[2026-03-28 19:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:37] [INFO] getContactPrimaryPhone result {"contact_id":"15885","person_found":true,"primary_phone":"9387898137"}
[2026-03-28 19:26:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387898137"}
[2026-03-28 19:26:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387898137","contact_id":"15885","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:26:37"}
[2026-03-28 19:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:37] [INFO] generateDealTitle result {"contact_id":"15885","person_name":"علیپور علیپور","mobile":"9387898137","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9387898137"}
[2026-03-28 19:26:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15885","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:26:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15885","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:26:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15885","title":"معامله سوم 9387898137 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9387898137","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیپور علیپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:26:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:26:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15885","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9387898137 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:26:37","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-28 19:26:48] [INFO] Checking activity reminders 
[2026-03-28 19:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:26:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:26:55] [INFO] generateDealTitle result {"contact_id":"12744","person_name":"محمدحسین معتمدی","mobile":"9387121570","existing_deals":0,"ordinal":"اول","title":"معامله اول 9387121570"}
[2026-03-28 19:27:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12744","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:27:10","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:27:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:27:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12744","is_new_deal":true}
[2026-03-28 19:27:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:27:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:27:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:27:10] [INFO] getContactPrimaryPhone called {"contact_id":"12744"}
[2026-03-28 19:27:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:27:10] [INFO] getContactPrimaryPhone result {"contact_id":"12744","person_found":true,"primary_phone":"9387121570"}
[2026-03-28 19:27:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387121570"}
[2026-03-28 19:27:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387121570","contact_id":"12744","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:27:10"}
[2026-03-28 19:27:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:27:10] [INFO] generateDealTitle result {"contact_id":"12744","person_name":"محمدحسین معتمدی","mobile":"9387121570","existing_deals":0,"ordinal":"اول","title":"معامله اول 9387121570"}
[2026-03-28 19:27:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12744","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:27:10] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12744","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:27:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12744","title":"معامله اول 9387121570 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9387121570","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین معتمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:27:10","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:27:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:27:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:27:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12744","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9387121570 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:27:10","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:27:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:27:18] [INFO] Checking activity reminders 
[2026-03-28 19:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:28:01] [INFO] Checking activity reminders 
[2026-03-28 19:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:28:31] [INFO] Checking activity reminders 
[2026-03-28 19:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:29:01] [INFO] Checking activity reminders 
[2026-03-28 19:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:29:31] [INFO] Checking activity reminders 
[2026-03-28 19:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:30:01] [INFO] Checking activity reminders 
[2026-03-28 19:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:30:31] [INFO] Checking activity reminders 
[2026-03-28 19:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:31:01] [INFO] Checking activity reminders 
[2026-03-28 19:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:31:31] [INFO] Checking activity reminders 
[2026-03-28 19:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:32:02] [INFO] Checking activity reminders 
[2026-03-28 19:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:32:32] [INFO] Checking activity reminders 
[2026-03-28 19:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:33:02] [INFO] Checking activity reminders 
[2026-03-28 19:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:33:32] [INFO] Checking activity reminders 
[2026-03-28 19:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:34:02] [INFO] Checking activity reminders 
[2026-03-28 19:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:34:32] [INFO] Checking activity reminders 
[2026-03-28 19:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:35:02] [INFO] Checking activity reminders 
[2026-03-28 19:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:35:32] [INFO] Checking activity reminders 
[2026-03-28 19:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:36:02] [INFO] Checking activity reminders 
[2026-03-28 19:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:36:33] [INFO] Checking activity reminders 
[2026-03-28 19:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:37:03] [INFO] Checking activity reminders 
[2026-03-28 19:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:45:11] [INFO] Checking activity reminders 
[2026-03-28 19:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:50:54] [INFO] Checking activity reminders 
[2026-03-28 19:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:55:08] [INFO] Checking activity reminders 
[2026-03-28 19:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:55:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-28 19:55:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-28 19:55:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-28 19:55:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-28 19:55:40] [INFO] Checking activity reminders 
[2026-03-28 19:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:56:10] [INFO] Checking activity reminders 
[2026-03-28 19:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:56:30] [INFO] Checking activity reminders 
[2026-03-28 19:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-28 19:57:27] [INFO] Checking activity reminders 
[2026-03-28 19:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:44] [INFO] generateDealTitle result {"contact_id":"12198","person_name":"ابوالفضل اسفندیار","mobile":"9386800593","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9386800593"}
[2026-03-28 19:57:57] [INFO] Checking activity reminders 
[2026-03-28 19:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:57:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12198","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:57:59","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12198","is_new_deal":true}
[2026-03-28 19:57:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:57:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:57:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:57:59] [INFO] getContactPrimaryPhone called {"contact_id":"12198"}
[2026-03-28 19:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:59] [INFO] getContactPrimaryPhone result {"contact_id":"12198","person_found":true,"primary_phone":"9386800593"}
[2026-03-28 19:57:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9386800593"}
[2026-03-28 19:57:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9386800593","contact_id":"12198","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:57:59"}
[2026-03-28 19:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:59] [INFO] generateDealTitle result {"contact_id":"12198","person_name":"ابوالفضل اسفندیار","mobile":"9386800593","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9386800593"}
[2026-03-28 19:57:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12198","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:57:59] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12198","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:57:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12198","title":"معامله چهارم 9386800593 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9386800593","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالفضل اسفندیار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:57:59","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:57:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:57:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12198","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9386800593 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:57:59","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:57:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-28 19:58:10] [INFO] Checking activity reminders 
[2026-03-28 19:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:58:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:17] [INFO] generateDealTitle result {"contact_id":"20694","person_name":"بهزاد داراب","mobile":"9198979618","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9198979618"}
[2026-03-28 19:58:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20694","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:58:31","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20694","is_new_deal":true}
[2026-03-28 19:58:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:58:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:58:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:58:31] [INFO] getContactPrimaryPhone called {"contact_id":"20694"}
[2026-03-28 19:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:31] [INFO] getContactPrimaryPhone result {"contact_id":"20694","person_found":true,"primary_phone":"9198979618"}
[2026-03-28 19:58:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198979618"}
[2026-03-28 19:58:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198979618","contact_id":"20694","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:58:31"}
[2026-03-28 19:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:31] [INFO] generateDealTitle result {"contact_id":"20694","person_name":"بهزاد داراب","mobile":"9198979618","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9198979618"}
[2026-03-28 19:58:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20694","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:58:31] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20694","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:58:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20694","title":"معامله دوم 9198979618 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9198979618","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهزاد داراب","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:58:31","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:58:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20694","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9198979618 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:58:31","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:58:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-28 19:58:44] [INFO] Checking activity reminders 
[2026-03-28 19:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:59:14] [INFO] Checking activity reminders 
[2026-03-28 19:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:38] [INFO] generateDealTitle result {"contact_id":"16694","person_name":"محمد مولایی","mobile":"9380562188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9380562188"}
[2026-03-28 19:59:44] [INFO] Checking activity reminders 
[2026-03-28 19:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 19:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 19:59:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16694","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-28 19:59:52","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-28 19:59:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16694","is_new_deal":true}
[2026-03-28 19:59:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-28 19:59:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:59:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-28 19:59:52] [INFO] getContactPrimaryPhone called {"contact_id":"16694"}
[2026-03-28 19:59:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:52] [INFO] getContactPrimaryPhone result {"contact_id":"16694","person_found":true,"primary_phone":"9380562188"}
[2026-03-28 19:59:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9380562188"}
[2026-03-28 19:59:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9380562188","contact_id":"16694","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-28 19:59:52"}
[2026-03-28 19:59:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:52] [INFO] generateDealTitle result {"contact_id":"16694","person_name":"محمد مولایی","mobile":"9380562188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9380562188"}
[2026-03-28 19:59:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16694","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-28 19:59:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16694","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-28 19:59:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16694","title":"معامله دوم 9380562188 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9380562188","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد مولایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-28 19:59:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-28 19:59:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 19:59:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-28 19:59:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16694","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9380562188 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-28 19:59:52","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-28 19:59:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-28 20:00:16] [INFO] Checking activity reminders 
[2026-03-28 20:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 20:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 20:05:12] [INFO] Checking activity reminders 
[2026-03-28 20:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 20:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 20:05:42] [INFO] Checking activity reminders 
[2026-03-28 20:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 20:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-28 20:06:12] [INFO] Checking activity reminders 
[2026-03-28 20:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-28 20:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 01:52:44] [WARNING] Auth check failed - not authenticated {"session_id":"ghl705decpq9ip62flrt6h9rsq","session_keys":[],"action":"log_client_event"}
[2026-03-29 01:52:44] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-29 01:52:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 01:53:15] [INFO] Checking activity reminders 
[2026-03-29 01:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 01:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 01:53:45] [INFO] Checking activity reminders 
[2026-03-29 01:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 01:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 01:54:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 01:54:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 02:05:20] [INFO] Checking activity reminders 
[2026-03-29 02:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:05:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 02:06:06] [INFO] Checking activity reminders 
[2026-03-29 02:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:06:59] [INFO] Checking activity reminders 
[2026-03-29 02:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:07:29] [INFO] Checking activity reminders 
[2026-03-29 02:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:07:59] [INFO] Checking activity reminders 
[2026-03-29 02:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:08:30] [INFO] Checking activity reminders 
[2026-03-29 02:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:09:00] [INFO] Checking activity reminders 
[2026-03-29 02:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:09:30] [INFO] Checking activity reminders 
[2026-03-29 02:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:10:00] [INFO] Checking activity reminders 
[2026-03-29 02:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:10:31] [INFO] Checking activity reminders 
[2026-03-29 02:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:11:01] [INFO] Checking activity reminders 
[2026-03-29 02:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:11:29] [INFO] Checking activity reminders 
[2026-03-29 02:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:11:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b98812684d53.79123214","person_id":"21897"}
[2026-03-29 02:12:00] [INFO] Checking activity reminders 
[2026-03-29 02:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:12:30] [INFO] Checking activity reminders 
[2026-03-29 02:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 02:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 02:12:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 02:12:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 09:27:41] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 09:27:41] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 09:27:46] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 09:27:47] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 09:27:47] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 09:27:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 09:27:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 09:27:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 09:27:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 09:28:03] [INFO] Checking activity reminders 
[2026-03-29 09:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:28:12] [INFO] Checking activity reminders 
[2026-03-29 09:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 09:28:41] [INFO] Checking activity reminders 
[2026-03-29 09:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:29:11] [INFO] Checking activity reminders 
[2026-03-29 09:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:30:07] [INFO] Checking activity reminders 
[2026-03-29 09:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:30:29] [INFO] Checking activity reminders 
[2026-03-29 09:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:30:50] [INFO] Checking activity reminders 
[2026-03-29 09:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 09:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 09:30:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 15:03:30] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:03:30] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-29 15:03:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:03:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-03-29 15:04:01] [INFO] Checking activity reminders 
[2026-03-29 15:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:22:36] [INFO] Checking activity reminders 
[2026-03-29 15:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:23:06] [INFO] Checking activity reminders 
[2026-03-29 15:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:23:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-03-29 15:43:09] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 15:43:09] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 15:43:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:43:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 15:43:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 15:43:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 15:43:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 15:43:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 15:43:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 15:43:36] [WARNING] Auth check failed - not authenticated {"session_id":"utr1qjm1agiblnfsde5jhsc409","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:43:36] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-03-29 15:43:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-03-29 15:43:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:43:55] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 15:43:55] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:43:55] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:00] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:00] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:03] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:44:10] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-03-29 15:44:10] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-03-29 15:44:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:44:23] [INFO] Checking activity reminders 
[2026-03-29 15:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:44:40] [INFO] Checking activity reminders 
[2026-03-29 15:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:45:10] [INFO] Checking activity reminders 
[2026-03-29 15:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:45:40] [INFO] Checking activity reminders 
[2026-03-29 15:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:46:11] [INFO] Checking activity reminders 
[2026-03-29 15:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:46:41] [INFO] Checking activity reminders 
[2026-03-29 15:46:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:46:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:46:43] [WARNING] Auth check failed - not authenticated {"session_id":"utr1qjm1agiblnfsde5jhsc409","session_keys":[],"action":"log_client_event"}
[2026-03-29 15:46:43] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 15:46:43] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 15:46:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:46:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 15:46:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 15:46:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 15:47:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 15:47:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 15:47:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 15:47:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 15:47:11] [INFO] Checking activity reminders 
[2026-03-29 15:47:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:47:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:47:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 15:47:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 15:47:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 15:47:38] [INFO] Checking activity reminders 
[2026-03-29 15:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:47:41] [INFO] Checking activity reminders 
[2026-03-29 15:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 15:48:11] [INFO] Checking activity reminders 
[2026-03-29 15:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 15:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:11:31] [INFO] Checking activity reminders 
[2026-03-29 16:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:50:44] [INFO] Checking activity reminders 
[2026-03-29 16:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:53:01] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 16:53:01] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 16:53:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 16:53:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 16:53:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":11,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"}]}
[2026-03-29 16:53:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":11,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1}]}
[2026-03-29 16:53:31] [INFO] Checking activity reminders 
[2026-03-29 16:53:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:53:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:53:37] [INFO] Checking activity reminders 
[2026-03-29 16:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:53:48] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 16:53:48] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 16:53:48] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 16:53:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 16:53:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 16:53:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 16:53:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 16:53:49] [WARNING] Auth check failed - not authenticated {"session_id":"np50avm6anpulis3gaal394qbf","session_keys":[],"action":"log_client_event"}
[2026-03-29 16:53:50] [INFO] User logged in {"user_id":"1713","email":"test@test.com","role":"agent","via_master":false}
[2026-03-29 16:53:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 16:53:55] [INFO] Checking activity reminders 
[2026-03-29 16:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:54:15] [INFO] Checking activity reminders 
[2026-03-29 16:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:58:15] [INFO] Checking activity reminders 
[2026-03-29 16:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:58:45] [INFO] Checking activity reminders 
[2026-03-29 16:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:59:15] [INFO] Checking activity reminders 
[2026-03-29 16:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 16:59:45] [INFO] Checking activity reminders 
[2026-03-29 16:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 16:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:00:16] [INFO] Checking activity reminders 
[2026-03-29 17:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:00:46] [INFO] Checking activity reminders 
[2026-03-29 17:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:01:16] [INFO] Checking activity reminders 
[2026-03-29 17:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:01:46] [INFO] Checking activity reminders 
[2026-03-29 17:01:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:01:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:02:16] [INFO] Checking activity reminders 
[2026-03-29 17:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:02:46] [INFO] Checking activity reminders 
[2026-03-29 17:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:03:16] [INFO] Checking activity reminders 
[2026-03-29 17:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:03:46] [INFO] Checking activity reminders 
[2026-03-29 17:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:04:16] [INFO] Checking activity reminders 
[2026-03-29 17:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:04:46] [INFO] Checking activity reminders 
[2026-03-29 17:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:05:17] [INFO] Checking activity reminders 
[2026-03-29 17:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:05:47] [INFO] Checking activity reminders 
[2026-03-29 17:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:06:17] [INFO] Checking activity reminders 
[2026-03-29 17:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:06:47] [INFO] Checking activity reminders 
[2026-03-29 17:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:07:17] [INFO] Checking activity reminders 
[2026-03-29 17:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:07:47] [INFO] Checking activity reminders 
[2026-03-29 17:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:08:17] [INFO] Checking activity reminders 
[2026-03-29 17:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 17:41:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 17:41:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:24] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 17:41:24] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 17:41:24] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 17:41:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 17:41:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 17:41:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 17:41:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 17:41:55] [INFO] Checking activity reminders 
[2026-03-29 17:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:42:25] [INFO] Checking activity reminders 
[2026-03-29 17:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:42:55] [INFO] Checking activity reminders 
[2026-03-29 17:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:43:25] [INFO] Checking activity reminders 
[2026-03-29 17:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:43:55] [INFO] Checking activity reminders 
[2026-03-29 17:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:47:27] [INFO] Checking activity reminders 
[2026-03-29 17:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:47:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 17:47:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 17:47:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 17:48:31] [INFO] Checking activity reminders 
[2026-03-29 17:48:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:48:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:49:17] [INFO] Checking activity reminders 
[2026-03-29 17:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:49:33] [INFO] Checking activity reminders 
[2026-03-29 17:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:49:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 17:49:58] [INFO] Checking activity reminders 
[2026-03-29 17:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:50:26] [INFO] Checking activity reminders 
[2026-03-29 17:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:50:50] [INFO] Checking activity reminders 
[2026-03-29 17:50:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:50:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:51:14] [INFO] Checking activity reminders 
[2026-03-29 17:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:51:46] [INFO] Checking activity reminders 
[2026-03-29 17:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:53:06] [INFO] Checking activity reminders 
[2026-03-29 17:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:54:04] [INFO] Checking activity reminders 
[2026-03-29 17:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:54:37] [INFO] Checking activity reminders 
[2026-03-29 17:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:54:59] [INFO] Checking activity reminders 
[2026-03-29 17:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:55:56] [INFO] Checking activity reminders 
[2026-03-29 17:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:56:30] [INFO] Checking activity reminders 
[2026-03-29 17:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:56:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 17:56:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 17:56:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 17:56:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 17:56:51] [INFO] Checking activity reminders 
[2026-03-29 17:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 17:57:46] [INFO] Checking activity reminders 
[2026-03-29 17:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:57:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-29 17:58:16] [INFO] Checking activity reminders 
[2026-03-29 17:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:58:46] [INFO] Checking activity reminders 
[2026-03-29 17:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 17:59:29] [INFO] Checking activity reminders 
[2026-03-29 17:59:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 17:59:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:00:35] [INFO] Checking activity reminders 
[2026-03-29 18:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:00:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:00:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 18:00:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 18:00:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 18:00:51] [INFO] Checking activity reminders 
[2026-03-29 18:00:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:00:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-29 18:01:22] [INFO] Checking activity reminders 
[2026-03-29 18:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:01:58] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:01:58] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-03-29 18:01:58] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-03-29 18:01:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:02:12] [INFO] Checking activity reminders 
[2026-03-29 18:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:02:42] [INFO] Checking activity reminders 
[2026-03-29 18:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:03:12] [INFO] Checking activity reminders 
[2026-03-29 18:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:03:16] [INFO] Checking activity reminders 
[2026-03-29 18:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:03:21] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-03-29 18:03:21] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-03-29 18:03:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:03:30] [INFO] Checking activity reminders 
[2026-03-29 18:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:04:00] [INFO] Checking activity reminders 
[2026-03-29 18:04:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:04:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:04:30] [INFO] Checking activity reminders 
[2026-03-29 18:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:06:43] [INFO] Checking activity reminders 
[2026-03-29 18:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:22:25] [INFO] Checking activity reminders 
[2026-03-29 18:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:26:40] [INFO] Checking activity reminders 
[2026-03-29 18:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:39:37] [INFO] Checking activity reminders 
[2026-03-29 18:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:40:09] [INFO] Checking activity reminders 
[2026-03-29 18:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"ipur298kdeplgfgnbn7muk88jl","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:42:27] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 18:42:27] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 18:42:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:42:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 18:42:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 18:42:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 18:42:57] [INFO] Checking activity reminders 
[2026-03-29 18:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:43:27] [INFO] Checking activity reminders 
[2026-03-29 18:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:43:57] [INFO] Checking activity reminders 
[2026-03-29 18:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:44:28] [INFO] Checking activity reminders 
[2026-03-29 18:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:44:58] [INFO] Checking activity reminders 
[2026-03-29 18:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:45:28] [INFO] Checking activity reminders 
[2026-03-29 18:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:45:58] [INFO] Checking activity reminders 
[2026-03-29 18:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:46:28] [INFO] Checking activity reminders 
[2026-03-29 18:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:46:58] [INFO] Checking activity reminders 
[2026-03-29 18:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:47:29] [INFO] Checking activity reminders 
[2026-03-29 18:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:48:00] [INFO] Checking activity reminders 
[2026-03-29 18:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:48:30] [INFO] Checking activity reminders 
[2026-03-29 18:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:49:00] [INFO] Checking activity reminders 
[2026-03-29 18:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:49:30] [INFO] Checking activity reminders 
[2026-03-29 18:49:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:49:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:50:00] [INFO] Checking activity reminders 
[2026-03-29 18:50:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:50:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:58:00] [INFO] Checking activity reminders 
[2026-03-29 18:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:58:53] [INFO] Checking activity reminders 
[2026-03-29 18:58:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:58:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:59:13] [INFO] Checking activity reminders 
[2026-03-29 18:59:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:59:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:59:15] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:59:15] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"check_reminders"}
[2026-03-29 18:59:15] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:59:16] [WARNING] Auth check failed - not authenticated {"session_id":"6dric8tbdt2jmqd6gknctplonq","session_keys":[],"action":"log_client_event"}
[2026-03-29 18:59:22] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-03-29 18:59:22] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-03-29 18:59:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 18:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 18:59:39] [INFO] Checking activity reminders 
[2026-03-29 18:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:59:48] [INFO] Checking activity reminders 
[2026-03-29 18:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 18:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 18:59:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 18:59:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 18:59:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:00:25] [INFO] Checking activity reminders 
[2026-03-29 19:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:00:55] [INFO] Checking activity reminders 
[2026-03-29 19:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:01:30] [INFO] Checking activity reminders 
[2026-03-29 19:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:02:00] [INFO] Checking activity reminders 
[2026-03-29 19:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:02:31] [INFO] Checking activity reminders 
[2026-03-29 19:02:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:02:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:02:47] [INFO] Checking activity reminders 
[2026-03-29 19:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:02:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 19:02:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 19:02:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 19:03:17] [INFO] Checking activity reminders 
[2026-03-29 19:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:03:47] [INFO] Checking activity reminders 
[2026-03-29 19:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:04:17] [INFO] Checking activity reminders 
[2026-03-29 19:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:04:47] [INFO] Checking activity reminders 
[2026-03-29 19:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:05:17] [INFO] Checking activity reminders 
[2026-03-29 19:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:05:48] [INFO] Checking activity reminders 
[2026-03-29 19:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:06:18] [INFO] Checking activity reminders 
[2026-03-29 19:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:06:48] [INFO] Checking activity reminders 
[2026-03-29 19:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:07:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 19:07:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 19:07:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 19:07:18] [INFO] Checking activity reminders 
[2026-03-29 19:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:07:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 19:07:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 19:07:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 19:07:48] [INFO] Checking activity reminders 
[2026-03-29 19:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:08:18] [INFO] Checking activity reminders 
[2026-03-29 19:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-03-29 19:08:48] [INFO] Checking activity reminders 
[2026-03-29 19:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:09:12] [INFO] Checking activity reminders 
[2026-03-29 19:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:09:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-03-29 19:09:43] [INFO] Checking activity reminders 
[2026-03-29 19:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:10:05] [INFO] Checking activity reminders 
[2026-03-29 19:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:10:18] [INFO] Checking activity reminders 
[2026-03-29 19:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:10:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 19:10:48] [INFO] Checking activity reminders 
[2026-03-29 19:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:11:18] [INFO] Checking activity reminders 
[2026-03-29 19:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:11:48] [INFO] Checking activity reminders 
[2026-03-29 19:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:12:18] [INFO] Checking activity reminders 
[2026-03-29 19:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:12:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 19:12:49] [INFO] Checking activity reminders 
[2026-03-29 19:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:13:19] [INFO] Checking activity reminders 
[2026-03-29 19:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:13:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:13:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:13:28] [INFO] generateDealTitle result {"contact_id":"local_69b55a52bd5039.96016486","person_name":"لید جدید","mobile":"9662683496","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9662683496"}
[2026-03-29 19:13:49] [INFO] Checking activity reminders 
[2026-03-29 19:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:14:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-29 19:14:18","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":true}
[2026-03-29 19:14:18] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-03-29 19:14:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-03-29 19:14:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-03-29 19:14:18] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:18] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-03-29 19:14:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-03-29 19:14:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-29 19:14:18"}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:18] [INFO] generateDealTitle result {"contact_id":"local_69b55a52bd5039.96016486","person_name":"لید جدید","mobile":"9662683496","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9662683496"}
[2026-03-29 19:14:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69b55a52bd5039.96016486","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-29 19:14:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-29 19:14:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | CIP","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":200000000,"payment_amount":0,"payments_present":false,"requested_services":["CIP"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-29 19:14:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-29 19:14:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | CIP","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":200000000,"payment_amount":0,"server_time":"2026-03-29 19:14:18","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:14:24] [INFO] Checking activity reminders 
[2026-03-29 19:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:14:55] [INFO] Checking activity reminders 
[2026-03-29 19:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:15:25] [INFO] Checking activity reminders 
[2026-03-29 19:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:15:55] [INFO] Checking activity reminders 
[2026-03-29 19:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:16:25] [INFO] Checking activity reminders 
[2026-03-29 19:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:16:55] [INFO] Checking activity reminders 
[2026-03-29 19:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:17:26] [INFO] Checking activity reminders 
[2026-03-29 19:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:17:56] [INFO] Checking activity reminders 
[2026-03-29 19:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:18:26] [INFO] Checking activity reminders 
[2026-03-29 19:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:18:56] [INFO] Checking activity reminders 
[2026-03-29 19:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:19:05] [INFO] Activity save request {"post_data":{"contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مم","activity_duration":"10","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-29 19:19:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","database_didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_email":"hanaficar.HR@gmail.com","user_name":" ","ids_match":"yes","found_by":"didar_id"}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69b55a52bd5039.96016486","note_was_empty":true}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:05] [INFO] Updating virtual stage {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"new","force":false}
[2026-03-29 19:19:05] [INFO] Virtual stage successfully saved {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"new"}
[2026-03-29 19:19:05] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:19:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c948d239b1b3.66116538","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-29 19:19:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c949f17f84c9.65288267","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:05] [INFO] Notification created {"notification_id":"610","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"activity_new","show_popup":true}
[2026-03-29 19:19:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69c949f17f84c9.65288267"}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:05] [INFO] Updating virtual stage {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered","force":false}
[2026-03-29 19:19:05] [INFO] Virtual stage successfully saved {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered"}
[2026-03-29 19:19:05] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:19:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:26] [INFO] Checking activity reminders 
[2026-03-29 19:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:19:37] [INFO] Activity save request {"post_data":{"contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"1","due_date":"2026-03-28 03:00:00","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-29 19:19:37] [INFO] Formatted due date for Didar {"original":"2026-03-28 03:00:00","formatted":"2026-03-27T23:30:00.000Z"}
[2026-03-29 19:19:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","database_didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_email":"hanaficar.HR@gmail.com","user_name":" ","ids_match":"yes","found_by":"didar_id"}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69b55a52bd5039.96016486","note_was_empty":true}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:37] [INFO] Updating virtual stage {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered","force":false}
[2026-03-29 19:19:37] [INFO] Virtual stage successfully saved {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered"}
[2026-03-29 19:19:37] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:19:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c948d239b1b3.66116538","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-29 19:19:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c94a112f46d8.98630670","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:37] [INFO] Notification created {"notification_id":"611","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"activity_new","show_popup":true}
[2026-03-29 19:19:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69c94a112f46d8.98630670"}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:37] [INFO] Updating virtual stage {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered","force":false}
[2026-03-29 19:19:37] [INFO] Virtual stage successfully saved {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered"}
[2026-03-29 19:19:37] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:19:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:19:55] [ERROR] Failed to get support logs {"contact_id":"local_69b55a52bd5039.96016486","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-29 19:19:55] [ERROR] Error getting support logs {"contact_id":"local_69b55a52bd5039.96016486","exception":{"message":"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'hanafiv1_cr.crm_support_logs' doesn't exist","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php","line":103,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/SupportRepository.php(103): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/SupportService.php(153): App\\Repositories\\SupportRepository->getByContactId()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/SupportController.php(152): App\\Services\\SupportService->getByContactId()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(988): App\\Controllers\\SupportController->getByContactId()\n#4 {main}"}}
[2026-03-29 19:19:57] [INFO] Checking activity reminders 
[2026-03-29 19:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:20:27] [INFO] Checking activity reminders 
[2026-03-29 19:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-03-29 19:20:57] [INFO] Checking activity reminders 
[2026-03-29 19:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:21:28] [INFO] Checking activity reminders 
[2026-03-29 19:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:21:58] [INFO] Checking activity reminders 
[2026-03-29 19:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:22:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69b55a52bd5039.96016486","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اا","activity_duration":"15","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-29 19:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:22:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-29 19:22:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","database_didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_email":"hanaficar.HR@gmail.com","user_name":" ","ids_match":"yes","found_by":"didar_id"}
[2026-03-29 19:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:22:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69b55a52bd5039.96016486","note_was_empty":true}
[2026-03-29 19:22:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69c94aa7e38e89.38034597","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-29 19:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:22:07] [INFO] Notification created {"notification_id":"612","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"activity_new","show_popup":true}
[2026-03-29 19:22:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69c94aa7e38e89.38034597"}
[2026-03-29 19:22:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:22:07] [INFO] Updating virtual stage {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered","force":false}
[2026-03-29 19:22:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69b55a52bd5039.96016486","stage_name":"deal_registered"}
[2026-03-29 19:22:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-03-29 19:22:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-03-29 19:22:28] [INFO] Checking activity reminders 
[2026-03-29 19:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 19:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 19:53:12] [WARNING] Auth check failed - not authenticated {"session_id":"ipur298kdeplgfgnbn7muk88jl","session_keys":[],"action":"log_client_event"}
[2026-03-29 19:53:12] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 19:53:12] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 19:53:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 19:53:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 19:53:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 19:53:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 20:04:59] [INFO] Checking activity reminders 
[2026-03-29 20:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:10:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 20:10:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 20:10:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 20:10:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 20:11:03] [INFO] Checking activity reminders 
[2026-03-29 20:11:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:11:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:11:33] [INFO] Checking activity reminders 
[2026-03-29 20:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:12:03] [INFO] Checking activity reminders 
[2026-03-29 20:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:12:33] [INFO] Checking activity reminders 
[2026-03-29 20:12:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:12:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:13:03] [INFO] Checking activity reminders 
[2026-03-29 20:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:13:33] [INFO] Checking activity reminders 
[2026-03-29 20:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:14:04] [INFO] Checking activity reminders 
[2026-03-29 20:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:14:34] [INFO] Checking activity reminders 
[2026-03-29 20:14:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:14:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:15:04] [INFO] Checking activity reminders 
[2026-03-29 20:15:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:15:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:15:34] [INFO] Checking activity reminders 
[2026-03-29 20:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:20:00] [INFO] Checking activity reminders 
[2026-03-29 20:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:20:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:20:27] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:20:28] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:24:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:24:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:47] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:24:47] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:24:47] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:25:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:14] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_products"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-29 20:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:25:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:01] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:03] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:03] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 20:26:03] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-29 20:26:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:07] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:11] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-29 20:26:11] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-29 20:26:11] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-29 20:26:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-29 20:26:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-29 20:26:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-29 20:26:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-29 20:26:28] [INFO] Checking activity reminders 
[2026-03-29 20:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:27:00] [INFO] Checking activity reminders 
[2026-03-29 20:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:27:30] [INFO] Checking activity reminders 
[2026-03-29 20:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:28:00] [INFO] Checking activity reminders 
[2026-03-29 20:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:28:31] [INFO] Checking activity reminders 
[2026-03-29 20:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:29:01] [INFO] Checking activity reminders 
[2026-03-29 20:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:36:08] [INFO] Checking activity reminders 
[2026-03-29 20:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:36:38] [INFO] Checking activity reminders 
[2026-03-29 20:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 20:37:08] [INFO] Checking activity reminders 
[2026-03-29 20:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-29 20:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-29 22:45:49] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"check_reminders"}
[2026-03-29 22:45:49] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-29 22:45:49] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:29] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:29] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"check_reminders"}
[2026-03-30 00:22:29] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:37] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:37] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:38] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:39] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:45] [WARNING] Auth check failed - not authenticated {"session_id":"g9pv6qk401aa6cctvjop9m603l","session_keys":[],"action":"log_client_event"}
[2026-03-30 00:22:45] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-30 00:22:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 00:23:16] [INFO] Checking activity reminders 
[2026-03-30 00:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 00:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 00:23:46] [INFO] Checking activity reminders 
[2026-03-30 00:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 00:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 08:55:01] [WARNING] Auth check failed - not authenticated {"session_id":"k6hanrav04tprvkaphko1hab51","session_keys":[],"action":"log_client_event"}
[2026-03-30 08:55:01] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 08:55:01] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 08:55:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 08:55:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 08:55:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 08:55:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 09:23:30] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 09:23:30] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 09:23:30] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 09:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 09:23:39] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 09:23:39] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 09:23:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 09:23:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 09:23:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 09:23:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 09:23:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 09:23:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 09:23:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 09:23:52] [INFO] Checking activity reminders 
[2026-03-30 09:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:24:02] [INFO] Checking activity reminders 
[2026-03-30 09:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:24:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-03-30 09:24:23] [INFO] Checking activity reminders 
[2026-03-30 09:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:24:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-03-30 09:24:39] [INFO] Checking activity reminders 
[2026-03-30 09:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:24:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-03-30 09:24:54] [INFO] Checking activity reminders 
[2026-03-30 09:24:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:24:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-03-30 09:25:08] [INFO] Checking activity reminders 
[2026-03-30 09:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:25:15] [INFO] Checking activity reminders 
[2026-03-30 09:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:25:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-03-30 09:25:28] [INFO] Checking activity reminders 
[2026-03-30 09:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:25:38] [INFO] Checking activity reminders 
[2026-03-30 09:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:25:47] [INFO] Checking activity reminders 
[2026-03-30 09:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:26:17] [INFO] Checking activity reminders 
[2026-03-30 09:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:26:47] [INFO] Checking activity reminders 
[2026-03-30 09:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:27:17] [INFO] Checking activity reminders 
[2026-03-30 09:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:27:47] [INFO] Checking activity reminders 
[2026-03-30 09:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:28:20] [INFO] Checking activity reminders 
[2026-03-30 09:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:28:50] [INFO] Checking activity reminders 
[2026-03-30 09:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:29:21] [INFO] Checking activity reminders 
[2026-03-30 09:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:29:51] [INFO] Checking activity reminders 
[2026-03-30 09:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:30:21] [INFO] Checking activity reminders 
[2026-03-30 09:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:30:51] [INFO] Checking activity reminders 
[2026-03-30 09:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:31:21] [INFO] Checking activity reminders 
[2026-03-30 09:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:31:51] [INFO] Checking activity reminders 
[2026-03-30 09:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:32:21] [INFO] Checking activity reminders 
[2026-03-30 09:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:32:51] [INFO] Checking activity reminders 
[2026-03-30 09:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:33:22] [INFO] Checking activity reminders 
[2026-03-30 09:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:33:52] [INFO] Checking activity reminders 
[2026-03-30 09:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:34:22] [INFO] Checking activity reminders 
[2026-03-30 09:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:34:52] [INFO] Checking activity reminders 
[2026-03-30 09:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:35:22] [INFO] Checking activity reminders 
[2026-03-30 09:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:41:14] [INFO] Checking activity reminders 
[2026-03-30 09:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:41:51] [INFO] Checking activity reminders 
[2026-03-30 09:41:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:41:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:42:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 09:42:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 09:42:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 09:42:21] [INFO] Checking activity reminders 
[2026-03-30 09:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:42:52] [INFO] Checking activity reminders 
[2026-03-30 09:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:43:22] [INFO] Checking activity reminders 
[2026-03-30 09:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:43:52] [INFO] Checking activity reminders 
[2026-03-30 09:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:44:22] [INFO] Checking activity reminders 
[2026-03-30 09:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:44:57] [INFO] Checking activity reminders 
[2026-03-30 09:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:45:16] [INFO] Checking activity reminders 
[2026-03-30 09:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 09:46:22] [INFO] Checking activity reminders 
[2026-03-30 09:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 09:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:14:30] [INFO] Checking activity reminders 
[2026-03-30 10:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:16:13] [INFO] Checking activity reminders 
[2026-03-30 10:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:16:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 10:16:26] [INFO] Master password used for login {"user_id":"10","identifier":"خانم  بردبار","role":"agent"}
[2026-03-30 10:16:26] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":true}
[2026-03-30 10:16:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 10:16:56] [INFO] Checking activity reminders 
[2026-03-30 10:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:17:26] [INFO] Checking activity reminders 
[2026-03-30 10:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:17:56] [INFO] Checking activity reminders 
[2026-03-30 10:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:18:27] [INFO] Checking activity reminders 
[2026-03-30 10:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:18:57] [INFO] Checking activity reminders 
[2026-03-30 10:18:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:18:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:19:27] [INFO] Checking activity reminders 
[2026-03-30 10:19:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:19:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:19:57] [INFO] Checking activity reminders 
[2026-03-30 10:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:20:27] [INFO] Checking activity reminders 
[2026-03-30 10:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:20:57] [INFO] Checking activity reminders 
[2026-03-30 10:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:21:27] [INFO] Checking activity reminders 
[2026-03-30 10:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:21:57] [INFO] Checking activity reminders 
[2026-03-30 10:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:22:27] [INFO] Checking activity reminders 
[2026-03-30 10:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:22:57] [INFO] Checking activity reminders 
[2026-03-30 10:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:23:27] [INFO] Checking activity reminders 
[2026-03-30 10:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:23:57] [INFO] Checking activity reminders 
[2026-03-30 10:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:24:27] [INFO] Checking activity reminders 
[2026-03-30 10:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:24:57] [INFO] Checking activity reminders 
[2026-03-30 10:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:25:27] [INFO] Checking activity reminders 
[2026-03-30 10:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:25:58] [INFO] Checking activity reminders 
[2026-03-30 10:25:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:25:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:26:28] [INFO] Checking activity reminders 
[2026-03-30 10:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:33:09] [INFO] Checking activity reminders 
[2026-03-30 10:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:33:39] [INFO] Checking activity reminders 
[2026-03-30 10:33:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:33:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:34:09] [INFO] Checking activity reminders 
[2026-03-30 10:34:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:34:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:34:39] [INFO] Checking activity reminders 
[2026-03-30 10:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:35:13] [INFO] Checking activity reminders 
[2026-03-30 10:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:35:43] [INFO] Checking activity reminders 
[2026-03-30 10:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:36:13] [INFO] Checking activity reminders 
[2026-03-30 10:36:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:36:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:36:43] [INFO] Checking activity reminders 
[2026-03-30 10:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:37:13] [INFO] Checking activity reminders 
[2026-03-30 10:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:37:44] [INFO] Checking activity reminders 
[2026-03-30 10:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:38:14] [INFO] Checking activity reminders 
[2026-03-30 10:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:38:49] [INFO] Checking activity reminders 
[2026-03-30 10:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:39:19] [INFO] Checking activity reminders 
[2026-03-30 10:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:39:52] [INFO] Checking activity reminders 
[2026-03-30 10:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:40:22] [INFO] Checking activity reminders 
[2026-03-30 10:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:40:52] [INFO] Checking activity reminders 
[2026-03-30 10:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:41:22] [INFO] Checking activity reminders 
[2026-03-30 10:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:41:52] [INFO] Checking activity reminders 
[2026-03-30 10:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:42:22] [INFO] Checking activity reminders 
[2026-03-30 10:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:42:53] [INFO] Checking activity reminders 
[2026-03-30 10:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:43:23] [INFO] Checking activity reminders 
[2026-03-30 10:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:43:53] [INFO] Checking activity reminders 
[2026-03-30 10:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:44:23] [INFO] Checking activity reminders 
[2026-03-30 10:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:44:53] [INFO] Checking activity reminders 
[2026-03-30 10:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:45:23] [INFO] Checking activity reminders 
[2026-03-30 10:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:45:53] [INFO] Checking activity reminders 
[2026-03-30 10:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:46:23] [INFO] Checking activity reminders 
[2026-03-30 10:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:46:53] [INFO] Checking activity reminders 
[2026-03-30 10:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:47:23] [INFO] Checking activity reminders 
[2026-03-30 10:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:47:53] [INFO] Checking activity reminders 
[2026-03-30 10:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:48:23] [INFO] Checking activity reminders 
[2026-03-30 10:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:48:53] [INFO] Checking activity reminders 
[2026-03-30 10:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:48:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 10:49:16] [INFO] Checking activity reminders 
[2026-03-30 10:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:49:26] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 10:49:31] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 10:49:31] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 10:49:31] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 10:49:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 10:49:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 10:49:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 10:49:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 10:50:02] [INFO] Checking activity reminders 
[2026-03-30 10:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:50:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-03-30 10:50:32] [INFO] Checking activity reminders 
[2026-03-30 10:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:51:02] [INFO] Checking activity reminders 
[2026-03-30 10:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:51:32] [INFO] Checking activity reminders 
[2026-03-30 10:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 10:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 10:59:56] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 10:59:57] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-30 10:59:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 11:00:28] [INFO] Checking activity reminders 
[2026-03-30 11:00:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:00:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:00:59] [INFO] Checking activity reminders 
[2026-03-30 11:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:01:29] [INFO] Checking activity reminders 
[2026-03-30 11:01:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:01:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:02:38] [INFO] Checking activity reminders 
[2026-03-30 11:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:02:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 11:02:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 11:02:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 11:02:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 11:02:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 11:02:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 11:03:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 11:03:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 11:03:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 11:03:08] [INFO] Checking activity reminders 
[2026-03-30 11:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:03:41] [INFO] Checking activity reminders 
[2026-03-30 11:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:03:45] [INFO] Checking activity reminders 
[2026-03-30 11:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-03-30 11:03:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:04:11] [INFO] Checking activity reminders 
[2026-03-30 11:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:04:15] [INFO] Checking activity reminders 
[2026-03-30 11:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:04:41] [INFO] Checking activity reminders 
[2026-03-30 11:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:04:45] [INFO] Checking activity reminders 
[2026-03-30 11:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:04:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-03-30 11:05:11] [INFO] Checking activity reminders 
[2026-03-30 11:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:05:15] [INFO] Checking activity reminders 
[2026-03-30 11:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:05:17] [INFO] Activity save request {"post_data":{"contact_id":"8325","deal_id":"local_69bbe908eaca33.79359282","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فعلا شرایط نداره کار نداره با اسنپ تو جنگ و موشک داره به زور کار مینوه ماهی ۶۰ ت اقساط مییده شرایطش اوکی شد خودش اطلاع میده","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:05:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8325","note_was_empty":true}
[2026-03-30 11:05:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"8325","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:17] [INFO] Updating virtual stage {"contact_id":"8325","stage_name":"deal_registered","force":false}
[2026-03-30 11:05:17] [INFO] Virtual stage successfully saved {"contact_id":"8325","stage_name":"deal_registered"}
[2026-03-30 11:05:17] [INFO] Virtual stage updated after activity save {"contact_id":"8325"}
[2026-03-30 11:05:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe908eaca33.79359282","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:05:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca27b517daf9.50664959","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca27b517daf9.50664959"}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:17] [INFO] Updating virtual stage {"contact_id":"8325","stage_name":"deal_registered","force":false}
[2026-03-30 11:05:17] [INFO] Virtual stage successfully saved {"contact_id":"8325","stage_name":"deal_registered"}
[2026-03-30 11:05:17] [INFO] Virtual stage updated after activity save {"contact_id":"8325"}
[2026-03-30 11:05:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-03-30 11:05:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:05:45] [INFO] Checking activity reminders 
[2026-03-30 11:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:06:55] [INFO] Checking activity reminders 
[2026-03-30 11:06:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:06:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:07:28] [INFO] Checking activity reminders 
[2026-03-30 11:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:07:58] [INFO] Checking activity reminders 
[2026-03-30 11:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:08:02] [INFO] Activity save request {"post_data":{"contact_id":"15700","deal_id":"local_69bbeb4d963670.52610202","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"درگیر کنکور هست ذهنش از اینورم جنگ شده \r\nارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:08:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:08:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:08:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15700","note_was_empty":true}
[2026-03-30 11:08:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"15700","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:08:02] [INFO] Updating virtual stage {"contact_id":"15700","stage_name":"deal_registered","force":false}
[2026-03-30 11:08:02] [INFO] Virtual stage successfully saved {"contact_id":"15700","stage_name":"deal_registered"}
[2026-03-30 11:08:02] [INFO] Virtual stage updated after activity save {"contact_id":"15700"}
[2026-03-30 11:08:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeb4d963670.52610202","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:08:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca285a758aa2.23978904","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:08:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca285a758aa2.23978904"}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:08:02] [INFO] Updating virtual stage {"contact_id":"15700","stage_name":"deal_registered","force":false}
[2026-03-30 11:08:02] [INFO] Virtual stage successfully saved {"contact_id":"15700","stage_name":"deal_registered"}
[2026-03-30 11:08:02] [INFO] Virtual stage updated after activity save {"contact_id":"15700"}
[2026-03-30 11:08:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:13:20] [INFO] Checking activity reminders 
[2026-03-30 11:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:13:33] [INFO] Checking activity reminders 
[2026-03-30 11:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:13:50] [INFO] Checking activity reminders 
[2026-03-30 11:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:14:03] [INFO] Checking activity reminders 
[2026-03-30 11:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:14:11] [INFO] Checking activity reminders 
[2026-03-30 11:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:14:33] [INFO] Checking activity reminders 
[2026-03-30 11:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:14:41] [INFO] Checking activity reminders 
[2026-03-30 11:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:15:03] [INFO] Checking activity reminders 
[2026-03-30 11:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:15:12] [INFO] Activity save request {"post_data":{"contact_id":"8737","deal_id":"local_69bbe809131387.80505634","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"قبل عیدم صحبت کردم امروزم صحبت کردم ۶ماهه گفتم \r\nشرایط نداره کار نداشته ۲ ماهه از جیب میخوره میگه میخوام باشم اما پولی ندارم\r\n۲ ساعت دیگه اطلاع بده ۶ ماهه ۳۹ ت اقساط انجام میده یا نه فعلا","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:15:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8737","note_was_empty":true}
[2026-03-30 11:15:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"8737","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:12] [INFO] Updating virtual stage {"contact_id":"8737","stage_name":"deal_registered","force":false}
[2026-03-30 11:15:12] [INFO] Virtual stage successfully saved {"contact_id":"8737","stage_name":"deal_registered"}
[2026-03-30 11:15:12] [INFO] Virtual stage updated after activity save {"contact_id":"8737"}
[2026-03-30 11:15:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe809131387.80505634","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:15:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2a0808ffd8.36095463","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2a0808ffd8.36095463"}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:12] [INFO] Updating virtual stage {"contact_id":"8737","stage_name":"deal_registered","force":false}
[2026-03-30 11:15:12] [INFO] Virtual stage successfully saved {"contact_id":"8737","stage_name":"deal_registered"}
[2026-03-30 11:15:12] [INFO] Virtual stage updated after activity save {"contact_id":"8737"}
[2026-03-30 11:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:15:34] [INFO] Checking activity reminders 
[2026-03-30 11:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:15:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8737","person_id":"2769"}
[2026-03-30 11:15:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-03-30 11:16:04] [INFO] Checking activity reminders 
[2026-03-30 11:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:16:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:34] [INFO] Checking activity reminders 
[2026-03-30 11:16:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:16:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:16:59] [INFO] Activity save request {"post_data":{"contact_id":"5640","deal_id":"local_69bbeae3f07ac1.58786004","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خونه خریده خالی هست شرایط جنگی بهم ریخته هست ۶ماهه فعلا نمیتوته باشه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:16:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:16:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:16:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5640","note_was_empty":true}
[2026-03-30 11:16:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"5640","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:16:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:59] [INFO] Updating virtual stage {"contact_id":"5640","stage_name":"deal_registered","force":false}
[2026-03-30 11:16:59] [INFO] Virtual stage successfully saved {"contact_id":"5640","stage_name":"deal_registered"}
[2026-03-30 11:16:59] [INFO] Virtual stage updated after activity save {"contact_id":"5640"}
[2026-03-30 11:16:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeae3f07ac1.58786004","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:16:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2a73e42324.85297583","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:16:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2a73e42324.85297583"}
[2026-03-30 11:16:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:16:59] [INFO] Updating virtual stage {"contact_id":"5640","stage_name":"deal_registered","force":false}
[2026-03-30 11:16:59] [INFO] Virtual stage successfully saved {"contact_id":"5640","stage_name":"deal_registered"}
[2026-03-30 11:16:59] [INFO] Virtual stage updated after activity save {"contact_id":"5640"}
[2026-03-30 11:17:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5640","person_id":"6322"}
[2026-03-30 11:17:04] [INFO] Checking activity reminders 
[2026-03-30 11:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:17:24] [INFO] Checking activity reminders 
[2026-03-30 11:17:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:17:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:17:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-03-30 11:17:54] [INFO] Checking activity reminders 
[2026-03-30 11:17:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:17:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:18:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:18:24] [INFO] Checking activity reminders 
[2026-03-30 11:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 11:18:55] [INFO] Checking activity reminders 
[2026-03-30 11:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:18:59] [INFO] Checking activity reminders 
[2026-03-30 11:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:19:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12500","person_id":"1309"}
[2026-03-30 11:19:25] [INFO] Checking activity reminders 
[2026-03-30 11:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:19:29] [INFO] Checking activity reminders 
[2026-03-30 11:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20362","person_id":"7036"}
[2026-03-30 11:19:50] [INFO] Activity save request {"post_data":{"contact_id":"21663","deal_id":"local_69bbeaae569565.94495590","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چندین بار به صورت انلاین پشتیبانی خرید طلا و عیار \r\nو تلفنی \r\nامروز تماس تمدید پشت خطی ارسال پیام پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:19:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21663","note_was_empty":true}
[2026-03-30 11:19:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"21663","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:50] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-03-30 11:19:50] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-03-30 11:19:50] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-03-30 11:19:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeaae569565.94495590","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:19:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2b1e775628.16770802","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2b1e775628.16770802"}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:50] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-03-30 11:19:50] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-03-30 11:19:50] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-03-30 11:19:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 11:19:57] [INFO] Checking activity reminders 
[2026-03-30 11:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:19:59] [INFO] Checking activity reminders 
[2026-03-30 11:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:20:30] [INFO] Checking activity reminders 
[2026-03-30 11:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:21:00] [INFO] Checking activity reminders 
[2026-03-30 11:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:21:11] [INFO] Activity save request {"post_data":{"contact_id":"7330","deal_id":"local_69bbea3612eca9.17050463","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت واریزی همش میپیچونه دوروغ میگه نمیزنه \r\nالانم که شرایط نداره جنگ هست و همه پولش فعلا بزر کاشته ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:21:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7330","note_was_empty":true}
[2026-03-30 11:21:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"7330","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:11] [INFO] Updating virtual stage {"contact_id":"7330","stage_name":"deal_registered","force":false}
[2026-03-30 11:21:11] [INFO] Virtual stage successfully saved {"contact_id":"7330","stage_name":"deal_registered"}
[2026-03-30 11:21:11] [INFO] Virtual stage updated after activity save {"contact_id":"7330"}
[2026-03-30 11:21:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbea3612eca9.17050463","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:21:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2b6fca6521.66569444","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2b6fca6521.66569444"}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:11] [INFO] Updating virtual stage {"contact_id":"7330","stage_name":"deal_registered","force":false}
[2026-03-30 11:21:11] [INFO] Virtual stage successfully saved {"contact_id":"7330","stage_name":"deal_registered"}
[2026-03-30 11:21:11] [INFO] Virtual stage updated after activity save {"contact_id":"7330"}
[2026-03-30 11:21:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7330","person_id":"8247"}
[2026-03-30 11:21:57] [INFO] Checking activity reminders 
[2026-03-30 11:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:22:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:24:04] [INFO] Checking activity reminders 
[2026-03-30 11:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:24:25] [INFO] Checking activity reminders 
[2026-03-30 11:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:24:37] [INFO] Checking activity reminders 
[2026-03-30 11:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:24:47] [INFO] Checking activity reminders 
[2026-03-30 11:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:25:07] [INFO] Checking activity reminders 
[2026-03-30 11:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:25:17] [INFO] Checking activity reminders 
[2026-03-30 11:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:25:20] [INFO] Activity save request {"post_data":{"contact_id":"2039","deal_id":"local_69bbe9ce1b3470.52993208","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بابت تمدید کانال ۴۰۵ گفت اطلاع میده بعد سال \r\nپیگیری عضویت و شرایط ۶ ماهه ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:25:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2039","note_was_empty":true}
[2026-03-30 11:25:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"2039","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:20] [INFO] Updating virtual stage {"contact_id":"2039","stage_name":"deal_registered","force":false}
[2026-03-30 11:25:20] [INFO] Virtual stage successfully saved {"contact_id":"2039","stage_name":"deal_registered"}
[2026-03-30 11:25:20] [INFO] Virtual stage updated after activity save {"contact_id":"2039"}
[2026-03-30 11:25:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe9ce1b3470.52993208","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:25:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2c68e44cf1.06657397","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2c68e44cf1.06657397"}
[2026-03-30 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:20] [INFO] Updating virtual stage {"contact_id":"2039","stage_name":"deal_registered","force":false}
[2026-03-30 11:25:20] [INFO] Virtual stage successfully saved {"contact_id":"2039","stage_name":"deal_registered"}
[2026-03-30 11:25:20] [INFO] Virtual stage updated after activity save {"contact_id":"2039"}
[2026-03-30 11:25:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2039","person_id":"8688"}
[2026-03-30 11:25:29] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9153701404","09153701404"]}
[2026-03-30 11:25:29] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9153701404","09153701404"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-03-30 11:25:29] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9153701404","full_name":"لید جدید"}
[2026-03-30 11:25:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:25:29] [INFO] Notification created {"notification_id":"613","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-03-30 11:25:37] [INFO] Checking activity reminders 
[2026-03-30 11:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:26:08] [INFO] Checking activity reminders 
[2026-03-30 11:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:26:17] [INFO] Checking activity reminders 
[2026-03-30 11:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:26:38] [INFO] Checking activity reminders 
[2026-03-30 11:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:26:47] [INFO] Checking activity reminders 
[2026-03-30 11:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:27:08] [INFO] Checking activity reminders 
[2026-03-30 11:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:27:38] [INFO] Checking activity reminders 
[2026-03-30 11:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:28:08] [INFO] Checking activity reminders 
[2026-03-30 11:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:28:16] [INFO] Activity save request {"post_data":{"contact_id":"21227","deal_id":"local_69c7ebbd4c47b4.23050363","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"با توجه به فعالیت قبل و اینکه کنار شایسته بودم موقع دعوا و درگیری با ایشون حتی با سروش دعوا تلفنی کرده بود تماس گرفتا بود باهاش و از کانال حذف شد میدونم اوکی نسیت با این حساب\r\nتماس گرفتم اما پاسخ نداد ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:28:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21227","note_was_empty":true}
[2026-03-30 11:28:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"21227","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Updating virtual stage {"contact_id":"21227","stage_name":"deal_registered","force":false}
[2026-03-30 11:28:16] [INFO] Virtual stage successfully saved {"contact_id":"21227","stage_name":"deal_registered"}
[2026-03-30 11:28:16] [INFO] Virtual stage updated after activity save {"contact_id":"21227"}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ebbd4c47b4.23050363","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-30 11:28:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2d188b9a53.98030999","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2d188b9a53.98030999"}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:28:16] [INFO] Updating virtual stage {"contact_id":"21227","stage_name":"deal_registered","force":false}
[2026-03-30 11:28:16] [INFO] Virtual stage successfully saved {"contact_id":"21227","stage_name":"deal_registered"}
[2026-03-30 11:28:16] [INFO] Virtual stage updated after activity save {"contact_id":"21227"}
[2026-03-30 11:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 11:29:07] [INFO] Checking activity reminders 
[2026-03-30 11:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:29:37] [INFO] Checking activity reminders 
[2026-03-30 11:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:30:08] [INFO] Checking activity reminders 
[2026-03-30 11:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:30:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:30:38] [INFO] Checking activity reminders 
[2026-03-30 11:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:31:08] [INFO] Checking activity reminders 
[2026-03-30 11:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:33:40] [INFO] Checking activity reminders 
[2026-03-30 11:33:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:33:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:33:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 11:33:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 11:33:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 11:34:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 11:34:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 11:34:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 11:34:11] [INFO] Checking activity reminders 
[2026-03-30 11:34:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:34:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:34:44] [INFO] Checking activity reminders 
[2026-03-30 11:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:35:14] [INFO] Checking activity reminders 
[2026-03-30 11:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:35:44] [INFO] Checking activity reminders 
[2026-03-30 11:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:35:44] [INFO] Checking activity reminders 
[2026-03-30 11:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:36:14] [INFO] Checking activity reminders 
[2026-03-30 11:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:36:15] [INFO] Checking activity reminders 
[2026-03-30 11:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:36:44] [INFO] Checking activity reminders 
[2026-03-30 11:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:36:45] [INFO] Checking activity reminders 
[2026-03-30 11:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:37:14] [INFO] Checking activity reminders 
[2026-03-30 11:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:37:15] [INFO] Checking activity reminders 
[2026-03-30 11:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:37:24] [INFO] Activity save request {"post_data":{"contact_id":"11501","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تمام سرمایه رو طلا کرده میگه چیزی ندارم دیگه و تصمیم به تمدید فعلا ندارم به شایسته هم گفته بودم ۶ ماهه گفتم مجدد نخواست \r\nبه علت شرایط میگه اصلا نمیخوام ریسکی کنم","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:37:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11501","note_was_empty":true}
[2026-03-30 11:37:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"11501","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:37:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2f3c894510.29341798","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2f3c894510.29341798"}
[2026-03-30 11:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:24] [INFO] Updating virtual stage {"contact_id":"11501","stage_name":"deal_registered","force":false}
[2026-03-30 11:37:24] [INFO] Virtual stage successfully saved {"contact_id":"11501","stage_name":"deal_registered"}
[2026-03-30 11:37:24] [INFO] Virtual stage updated after activity save {"contact_id":"11501"}
[2026-03-30 11:37:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:44] [INFO] Checking activity reminders 
[2026-03-30 11:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:37:45] [INFO] Activity save request {"post_data":{"contact_id":"11501","deal_id":"local_69c7ec1ae3af15.92709012","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تمام سرمایه رو طلا کرده میگه چیزی ندارم دیگه و تصمیم به تمدید فعلا ندارم به شایسته هم گفته بودم ۶ ماهه گفتم مجدد نخواست \r\nبه علت شرایط میگه اصلا نمیخوام ریسکی کنم","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:37:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11501","note_was_empty":true}
[2026-03-30 11:37:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"11501","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Updating virtual stage {"contact_id":"11501","stage_name":"deal_registered","force":false}
[2026-03-30 11:37:45] [INFO] Virtual stage successfully saved {"contact_id":"11501","stage_name":"deal_registered"}
[2026-03-30 11:37:45] [INFO] Virtual stage updated after activity save {"contact_id":"11501"}
[2026-03-30 11:37:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ec1ae3af15.92709012","stage":"تماس پیگیری","status_change":null}
[2026-03-30 11:37:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca2f5121ee40.89270430","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca2f5121ee40.89270430"}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Updating virtual stage {"contact_id":"11501","stage_name":"deal_registered","force":false}
[2026-03-30 11:37:45] [INFO] Virtual stage successfully saved {"contact_id":"11501","stage_name":"deal_registered"}
[2026-03-30 11:37:45] [INFO] Virtual stage updated after activity save {"contact_id":"11501"}
[2026-03-30 11:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 11:37:45] [INFO] Checking activity reminders 
[2026-03-30 11:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:38:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:38:15] [INFO] Checking activity reminders 
[2026-03-30 11:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:38:15] [INFO] Checking activity reminders 
[2026-03-30 11:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:38:45] [INFO] Checking activity reminders 
[2026-03-30 11:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:38:46] [INFO] Checking activity reminders 
[2026-03-30 11:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:38:59] [INFO] Checking activity reminders 
[2026-03-30 11:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:39:13] [INFO] Checking activity reminders 
[2026-03-30 11:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:39:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:39:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:39:43] [INFO] Checking activity reminders 
[2026-03-30 11:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:40:09] [INFO] Checking activity reminders 
[2026-03-30 11:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:41:35] [INFO] Checking activity reminders 
[2026-03-30 11:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:42:05] [INFO] Checking activity reminders 
[2026-03-30 11:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:42:15] [INFO] Lead update received {"contact_id":"local_69ca2c719fdad2.33815261","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 11:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:42:15] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69ca2c719fdad2.33815261"}
[2026-03-30 11:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:42:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:43:14] [INFO] Checking activity reminders 
[2026-03-30 11:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:43:20] [INFO] Checking activity reminders 
[2026-03-30 11:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:43:50] [INFO] Checking activity reminders 
[2026-03-30 11:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:44:21] [INFO] Checking activity reminders 
[2026-03-30 11:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:44:51] [INFO] Checking activity reminders 
[2026-03-30 11:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"693","person_id":"8700"}
[2026-03-30 11:45:21] [INFO] Checking activity reminders 
[2026-03-30 11:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:45:51] [INFO] Checking activity reminders 
[2026-03-30 11:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:46:21] [INFO] Checking activity reminders 
[2026-03-30 11:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:46:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"693","person_id":"8700"}
[2026-03-30 11:46:51] [INFO] Checking activity reminders 
[2026-03-30 11:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:47:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"693","person_id":"8700"}
[2026-03-30 11:47:21] [INFO] Checking activity reminders 
[2026-03-30 11:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:47:52] [INFO] Checking activity reminders 
[2026-03-30 11:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:48:22] [INFO] Checking activity reminders 
[2026-03-30 11:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:48:52] [INFO] Checking activity reminders 
[2026-03-30 11:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:49:22] [INFO] Checking activity reminders 
[2026-03-30 11:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:49:52] [INFO] Checking activity reminders 
[2026-03-30 11:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:50:22] [INFO] Checking activity reminders 
[2026-03-30 11:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:50:53] [INFO] Checking activity reminders 
[2026-03-30 11:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:51:23] [INFO] Checking activity reminders 
[2026-03-30 11:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:51:53] [INFO] Checking activity reminders 
[2026-03-30 11:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:52:59] [INFO] Checking activity reminders 
[2026-03-30 11:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:53:30] [INFO] Checking activity reminders 
[2026-03-30 11:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:54:00] [INFO] Checking activity reminders 
[2026-03-30 11:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:54:19] [INFO] Activity save request {"post_data":{"contact_id":"4030","deal_id":"local_69c7f03a5c3385.76956491","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"گفت میخوام لاشم شرایطم ا کی نیست چک ها پلس نمیشن ۱۲ ماهه میخواد گفت کاش قبل عید شایسته گفت انجام میدددم هی صبر کردم ، ارسال ش کارت ۲۰ ت امروز الباقی تا اخر اردیبهشت کم کم تسویه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:54:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4030","note_was_empty":true}
[2026-03-30 11:54:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"4030","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:19] [INFO] Updating virtual stage {"contact_id":"4030","stage_name":"deal_registered","force":false}
[2026-03-30 11:54:19] [INFO] Virtual stage successfully saved {"contact_id":"4030","stage_name":"deal_registered"}
[2026-03-30 11:54:19] [INFO] Virtual stage updated after activity save {"contact_id":"4030"}
[2026-03-30 11:54:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f03a5c3385.76956491","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-30 11:54:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca333373cf46.83327471","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca333373cf46.83327471"}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:19] [INFO] Updating virtual stage {"contact_id":"4030","stage_name":"deal_registered","force":false}
[2026-03-30 11:54:19] [INFO] Virtual stage successfully saved {"contact_id":"4030","stage_name":"deal_registered"}
[2026-03-30 11:54:19] [INFO] Virtual stage updated after activity save {"contact_id":"4030"}
[2026-03-30 11:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 11:54:56] [INFO] Checking activity reminders 
[2026-03-30 11:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:55:26] [INFO] Checking activity reminders 
[2026-03-30 11:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:55:56] [INFO] Checking activity reminders 
[2026-03-30 11:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:56:26] [INFO] Checking activity reminders 
[2026-03-30 11:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:58:14] [INFO] Checking activity reminders 
[2026-03-30 11:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:58:44] [INFO] Checking activity reminders 
[2026-03-30 11:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:58:47] [INFO] Activity save request {"post_data":{"contact_id":"3931","deal_id":"local_69c7ef41a484b8.32439840","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:58:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 11:58:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:58:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3931","note_was_empty":true}
[2026-03-30 11:58:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"3931","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:58:47] [INFO] Updating virtual stage {"contact_id":"3931","stage_name":"deal_registered","force":false}
[2026-03-30 11:58:47] [INFO] Virtual stage successfully saved {"contact_id":"3931","stage_name":"deal_registered"}
[2026-03-30 11:58:47] [INFO] Virtual stage updated after activity save {"contact_id":"3931"}
[2026-03-30 11:58:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ef41a484b8.32439840","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 11:58:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca343fca08f2.22891331","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:58:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca343fca08f2.22891331"}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:58:47] [INFO] Updating virtual stage {"contact_id":"3931","stage_name":"deal_registered","force":false}
[2026-03-30 11:58:47] [INFO] Virtual stage successfully saved {"contact_id":"3931","stage_name":"deal_registered"}
[2026-03-30 11:58:47] [INFO] Virtual stage updated after activity save {"contact_id":"3931"}
[2026-03-30 11:58:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 11:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 11:59:14] [INFO] Checking activity reminders 
[2026-03-30 11:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 11:59:45] [INFO] Checking activity reminders 
[2026-03-30 11:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 11:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:00:15] [INFO] Checking activity reminders 
[2026-03-30 12:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:00:45] [INFO] Checking activity reminders 
[2026-03-30 12:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:01:14] [INFO] Checking activity reminders 
[2026-03-30 12:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:01:44] [INFO] Checking activity reminders 
[2026-03-30 12:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:02:14] [INFO] Checking activity reminders 
[2026-03-30 12:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:02:44] [INFO] Checking activity reminders 
[2026-03-30 12:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:03:14] [INFO] Checking activity reminders 
[2026-03-30 12:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 12:03:45] [INFO] Checking activity reminders 
[2026-03-30 12:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:04:15] [INFO] Checking activity reminders 
[2026-03-30 12:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:04:19] [INFO] Checking activity reminders 
[2026-03-30 12:04:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:04:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:04:45] [INFO] Checking activity reminders 
[2026-03-30 12:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:04:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-30 12:05:15] [INFO] Checking activity reminders 
[2026-03-30 12:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:05:45] [INFO] Checking activity reminders 
[2026-03-30 12:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 12:06:16] [INFO] Checking activity reminders 
[2026-03-30 12:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:06:46] [INFO] Checking activity reminders 
[2026-03-30 12:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:07:16] [INFO] Checking activity reminders 
[2026-03-30 12:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:07:46] [INFO] Checking activity reminders 
[2026-03-30 12:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:08:16] [INFO] Checking activity reminders 
[2026-03-30 12:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:27:42] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:27:42] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-30 12:27:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 12:27:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:28:13] [INFO] Checking activity reminders 
[2026-03-30 12:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:30:16] [INFO] Checking activity reminders 
[2026-03-30 12:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:30:46] [INFO] Checking activity reminders 
[2026-03-30 12:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:31:16] [INFO] Checking activity reminders 
[2026-03-30 12:31:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:31:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:31:46] [INFO] Checking activity reminders 
[2026-03-30 12:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:31:55] [INFO] Activity save request {"post_data":{"contact_id":"15898","deal_id":"local_69c7eeebbde523.18295147","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ناراحت بود از عدم پاسخ شایسته گفت با بردبارم صحبت کردم بهش گفتم مشاورم جواب نمیده میخوام کانال باشم \r\nرفته کانال مطلبی ۳ ماهه\r\nگفت ببینیم چطوره اوکی بودم باهاتون تماس میگیرم \r\nکل سرمایه ۱۵۰۰","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:31:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 12:31:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:31:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15898","note_was_empty":true}
[2026-03-30 12:31:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"15898","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:31:55] [INFO] Updating virtual stage {"contact_id":"15898","stage_name":"deal_registered","force":false}
[2026-03-30 12:31:55] [INFO] Virtual stage successfully saved {"contact_id":"15898","stage_name":"deal_registered"}
[2026-03-30 12:31:55] [INFO] Virtual stage updated after activity save {"contact_id":"15898"}
[2026-03-30 12:31:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7eeebbde523.18295147","stage":"تماس پیگیری","status_change":null}
[2026-03-30 12:31:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca3c031f5e10.35834483","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:31:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca3c031f5e10.35834483"}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:31:55] [INFO] Updating virtual stage {"contact_id":"15898","stage_name":"deal_registered","force":false}
[2026-03-30 12:31:55] [INFO] Virtual stage successfully saved {"contact_id":"15898","stage_name":"deal_registered"}
[2026-03-30 12:31:55] [INFO] Virtual stage updated after activity save {"contact_id":"15898"}
[2026-03-30 12:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:32:22] [INFO] Checking activity reminders 
[2026-03-30 12:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:32:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 12:32:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 12:32:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:32:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 12:33:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_didar_users"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_users_list"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_kpi_products"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_performance_dashboard"}
[2026-03-30 12:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:33:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:06] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 12:35:06] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:06] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_products"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:56] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:57] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:57] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-30 12:35:57] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:35:57] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:11] [INFO] Checking activity reminders 
[2026-03-30 12:37:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:37:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:37:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 12:37:52] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 12:37:58] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:37:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-30 12:37:59] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_leads"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_products"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:05] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:10] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_products"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_deals"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_deals"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:12] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:16] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_deals"}
[2026-03-30 12:38:17] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:17] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:17] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:19] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 12:38:25] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 12:38:25] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 12:38:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 12:38:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 12:38:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 12:38:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 12:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:44] [INFO] Lead update received {"contact_id":"local_69ca2c719fdad2.33815261","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 12:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69ca2c719fdad2.33815261"}
[2026-03-30 12:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 12:38:56] [INFO] Checking activity reminders 
[2026-03-30 12:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:42:07] [INFO] Checking activity reminders 
[2026-03-30 12:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:42:36] [INFO] Checking activity reminders 
[2026-03-30 12:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:42:38] [INFO] Checking activity reminders 
[2026-03-30 12:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:43:08] [INFO] Checking activity reminders 
[2026-03-30 12:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:43:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16694","deal_id":"local_69c802001a10f1.92045277","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 12:43:16","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 12:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:43:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16694","is_new_deal":false}
[2026-03-30 12:43:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 12:43:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 12:43:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 12:43:16] [INFO] getContactPrimaryPhone called {"contact_id":"16694"}
[2026-03-30 12:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:43:16] [INFO] getContactPrimaryPhone result {"contact_id":"16694","person_found":true,"primary_phone":"9380562188"}
[2026-03-30 12:43:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9380562188"}
[2026-03-30 12:43:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9380562188","contact_id":"16694","deal_id":"local_69c802001a10f1.92045277","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 12:43:16"}
[2026-03-30 12:43:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c802001a10f1.92045277","contact_id":"16694","existing_deal_found":true,"existing_contact_id":"16694","existing_title":"معامله دوم 9380562188 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 12:43:16"}
[2026-03-30 12:43:16] [INFO] DealController.save validated payments {"deal_id":"local_69c802001a10f1.92045277","contact_id":"16694","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 12:43:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16694","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 12:43:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c802001a10f1.92045277","contact_didar_id":"16694","title":"معامله دوم 9380562188 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9380562188","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد مولایی","existing_deal":"YES","existing_deal_id":"local_69c802001a10f1.92045277","existing_deal_status":"Pending","server_time":"2026-03-30 12:43:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 12:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:43:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c802001a10f1.92045277","contact_id":"16694","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9380562188 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-03-30 12:43:16","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 12:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:43:38] [INFO] Checking activity reminders 
[2026-03-30 12:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:44:08] [INFO] Checking activity reminders 
[2026-03-30 12:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:44:17] [INFO] Checking activity reminders 
[2026-03-30 12:44:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:44:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-30 12:44:38] [INFO] Checking activity reminders 
[2026-03-30 12:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:44:42] [INFO] Activity save request {"post_data":{"contact_id":"16694","deal_id":"local_69c802001a10f1.92045277","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل سرمایه در خرید ملک شخصی گذاشته سرمایه مازاد برای استفاده از کانال نداره \r\nنوسان گیری بورس و صندوق هارو بهش گفتم درآمدزایی داشته باشه \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 12:44:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16694","note_was_empty":true}
[2026-03-30 12:44:42] [INFO] Didar write disabled; saving activity locally {"contact_id":"16694","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:42] [INFO] Updating virtual stage {"contact_id":"16694","stage_name":"deal_registered","force":false}
[2026-03-30 12:44:42] [INFO] Virtual stage successfully saved {"contact_id":"16694","stage_name":"deal_registered"}
[2026-03-30 12:44:42] [INFO] Virtual stage updated after activity save {"contact_id":"16694"}
[2026-03-30 12:44:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c802001a10f1.92045277","stage":"تماس پیگیری","status_change":null}
[2026-03-30 12:44:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca3f02a82c97.88826395","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca3f02a82c97.88826395"}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:42] [INFO] Updating virtual stage {"contact_id":"16694","stage_name":"deal_registered","force":false}
[2026-03-30 12:44:42] [INFO] Virtual stage successfully saved {"contact_id":"16694","stage_name":"deal_registered"}
[2026-03-30 12:44:42] [INFO] Virtual stage updated after activity save {"contact_id":"16694"}
[2026-03-30 12:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-03-30 12:44:55] [INFO] Checking activity reminders 
[2026-03-30 12:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:44:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 12:45:08] [INFO] Checking activity reminders 
[2026-03-30 12:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:45:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:45:25] [INFO] Checking activity reminders 
[2026-03-30 12:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:45:53] [INFO] Checking activity reminders 
[2026-03-30 12:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:46:13] [INFO] Checking activity reminders 
[2026-03-30 12:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:46:23] [INFO] Checking activity reminders 
[2026-03-30 12:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:46:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 12:46:29] [INFO] Checking activity reminders 
[2026-03-30 12:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:46:54] [INFO] Checking activity reminders 
[2026-03-30 12:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:47:05] [INFO] Checking activity reminders 
[2026-03-30 12:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 12:47:35] [INFO] Checking activity reminders 
[2026-03-30 12:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:48:00] [INFO] Checking activity reminders 
[2026-03-30 12:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 12:48:52] [INFO] Checking activity reminders 
[2026-03-30 12:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:48:52] [INFO] Checking activity reminders 
[2026-03-30 12:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:48:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 12:49:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20694","deal_id":"local_69c801afe80261.48651328","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 12:49:15","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 12:49:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20694","is_new_deal":false}
[2026-03-30 12:49:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 12:49:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 12:49:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 12:49:15] [INFO] getContactPrimaryPhone called {"contact_id":"20694"}
[2026-03-30 12:49:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:15] [INFO] getContactPrimaryPhone result {"contact_id":"20694","person_found":true,"primary_phone":"9198979618"}
[2026-03-30 12:49:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198979618"}
[2026-03-30 12:49:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198979618","contact_id":"20694","deal_id":"local_69c801afe80261.48651328","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 12:49:15"}
[2026-03-30 12:49:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c801afe80261.48651328","contact_id":"20694","existing_deal_found":true,"existing_contact_id":"20694","existing_title":"معامله دوم 9198979618 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 12:49:15"}
[2026-03-30 12:49:15] [INFO] DealController.save validated payments {"deal_id":"local_69c801afe80261.48651328","contact_id":"20694","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 12:49:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20694","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 12:49:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c801afe80261.48651328","contact_didar_id":"20694","title":"معامله دوم 9198979618 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9198979618","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهزاد داراب","existing_deal":"YES","existing_deal_id":"local_69c801afe80261.48651328","existing_deal_status":"Pending","server_time":"2026-03-30 12:49:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 12:49:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c801afe80261.48651328","contact_id":"20694","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9198979618 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 12:49:15","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 12:49:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:22] [INFO] Checking activity reminders 
[2026-03-30 12:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:49:22] [INFO] Checking activity reminders 
[2026-03-30 12:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:49:41] [INFO] Activity save request {"post_data":{"contact_id":"20694","deal_id":"local_69c801afe80261.48651328","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 12:49:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20694","note_was_empty":true}
[2026-03-30 12:49:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"20694","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:41] [INFO] Updating virtual stage {"contact_id":"20694","stage_name":"deal_registered","force":false}
[2026-03-30 12:49:41] [INFO] Virtual stage successfully saved {"contact_id":"20694","stage_name":"deal_registered"}
[2026-03-30 12:49:41] [INFO] Virtual stage updated after activity save {"contact_id":"20694"}
[2026-03-30 12:49:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c801afe80261.48651328","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 12:49:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca402d1c7e03.53564324","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca402d1c7e03.53564324"}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:41] [INFO] Updating virtual stage {"contact_id":"20694","stage_name":"deal_registered","force":false}
[2026-03-30 12:49:41] [INFO] Virtual stage successfully saved {"contact_id":"20694","stage_name":"deal_registered"}
[2026-03-30 12:49:41] [INFO] Virtual stage updated after activity save {"contact_id":"20694"}
[2026-03-30 12:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-03-30 12:49:52] [INFO] Checking activity reminders 
[2026-03-30 12:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:49:57] [INFO] Checking activity reminders 
[2026-03-30 12:49:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:49:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 12:50:23] [INFO] Checking activity reminders 
[2026-03-30 12:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:50:27] [INFO] Checking activity reminders 
[2026-03-30 12:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:50:57] [INFO] Checking activity reminders 
[2026-03-30 12:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:51:27] [INFO] Checking activity reminders 
[2026-03-30 12:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 12:51:57] [INFO] Checking activity reminders 
[2026-03-30 12:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 12:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:00:04] [INFO] Checking activity reminders 
[2026-03-30 13:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:01:48] [INFO] Checking activity reminders 
[2026-03-30 13:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:02:00] [INFO] Checking activity reminders 
[2026-03-30 13:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:02:23] [INFO] Checking activity reminders 
[2026-03-30 13:02:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:02:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3931","person_id":"20844"}
[2026-03-30 13:02:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:02:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"check_reminders"}
[2026-03-30 13:02:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:02:47] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:02:47] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:03:04] [INFO] Checking activity reminders 
[2026-03-30 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:03:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:03:34] [INFO] Checking activity reminders 
[2026-03-30 13:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:03:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"check_reminders"}
[2026-03-30 13:03:45] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:02] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:02] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:02] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"save_activity"}
[2026-03-30 13:04:02] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:05] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:22] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:25] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:25] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:25] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"save_activity"}
[2026-03-30 13:04:25] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:26] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:29] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:29] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:29] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"get_field_configurations"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"get_deal"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:32] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:33] [WARNING] Auth check failed - not authenticated {"session_id":"4r933i7mhr0tf2a09ceg27oiqc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:53] [WARNING] Auth check failed - not authenticated {"session_id":"ave5pnc06l44j4grv6cococ9cc","session_keys":[],"action":"log_client_event"}
[2026-03-30 13:04:53] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-30 13:04:53] [INFO] Checking activity reminders 
[2026-03-30 13:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:04:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 13:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:05:23] [INFO] Checking activity reminders 
[2026-03-30 13:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:05:29] [INFO] Checking activity reminders 
[2026-03-30 13:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21227","person_id":"18679"}
[2026-03-30 13:05:54] [INFO] Checking activity reminders 
[2026-03-30 13:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:06:04] [INFO] Checking activity reminders 
[2026-03-30 13:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:06:09] [INFO] Activity save request {"post_data":{"contact_id":"21663","deal_id":"local_69bbeaae569565.94495590","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"هی نق میزنه میگع لستاد به نظرم عرزشی هست بله بالا نمیاد متقاعد کردمش بله اصلی بریزه\r\n۷۹ت کانال شرایطی بزنه \r\nداشت میرفت جلیی بررسی کنه پرداخت اولیه انجام بده تسویه تا اخر اردیبهشت","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:06:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21663","note_was_empty":true}
[2026-03-30 13:06:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"21663","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:09] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-03-30 13:06:09] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-03-30 13:06:09] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-03-30 13:06:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeaae569565.94495590","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-30 13:06:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca4409141120.08697217","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca4409141120.08697217"}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:09] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-03-30 13:06:09] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-03-30 13:06:09] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-03-30 13:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-03-30 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-03-30 13:06:24] [INFO] Checking activity reminders 
[2026-03-30 13:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:06:37] [INFO] Checking activity reminders 
[2026-03-30 13:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:06:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-03-30 13:06:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 13:06:54] [INFO] Checking activity reminders 
[2026-03-30 13:06:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:06:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:11] [INFO] Checking activity reminders 
[2026-03-30 13:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:22] [INFO] Checking activity reminders 
[2026-03-30 13:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:24] [INFO] Checking activity reminders 
[2026-03-30 13:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:32] [INFO] Checking activity reminders 
[2026-03-30 13:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:47] [INFO] Checking activity reminders 
[2026-03-30 13:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-30 13:07:54] [INFO] Checking activity reminders 
[2026-03-30 13:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:08:03] [INFO] Checking activity reminders 
[2026-03-30 13:08:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:08:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:08:24] [INFO] Checking activity reminders 
[2026-03-30 13:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:08:31] [INFO] Checking activity reminders 
[2026-03-30 13:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:08:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-03-30 13:09:22] [INFO] Checking activity reminders 
[2026-03-30 13:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:09:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 13:09:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 13:09:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 13:09:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 13:19:13] [INFO] Checking activity reminders 
[2026-03-30 13:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:19:19] [INFO] Checking activity reminders 
[2026-03-30 13:19:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:19:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:19:29] [INFO] Checking activity reminders 
[2026-03-30 13:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:19:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 13:19:46","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 13:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:19:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7918","is_new_deal":false}
[2026-03-30 13:19:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-30 13:19:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-30 13:19:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-30 13:19:46] [INFO] getContactPrimaryPhone called {"contact_id":"7918"}
[2026-03-30 13:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:19:46] [INFO] getContactPrimaryPhone result {"contact_id":"7918","person_found":true,"primary_phone":"9904415700"}
[2026-03-30 13:19:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9904415700"}
[2026-03-30 13:19:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9904415700","contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 13:19:46"}
[2026-03-30 13:19:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","existing_deal_found":true,"existing_contact_id":"7918","existing_title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 13:19:46"}
[2026-03-30 13:19:46] [INFO] DealController.save validated payments {"deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-03-30 13:19:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7918","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 13:19:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f9e549b7b3.48363944","contact_didar_id":"7918","title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله پنجم 9904415700","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد رضایی","existing_deal":"YES","existing_deal_id":"local_69c7f9e549b7b3.48363944","existing_deal_status":"Pending","server_time":"2026-03-30 13:19:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 13:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:19:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-03-30 13:19:46","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 13:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:19:49] [INFO] Checking activity reminders 
[2026-03-30 13:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:19:59] [INFO] Checking activity reminders 
[2026-03-30 13:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:20:20] [INFO] Checking activity reminders 
[2026-03-30 13:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:20:31] [INFO] Checking activity reminders 
[2026-03-30 13:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:20:50] [INFO] Checking activity reminders 
[2026-03-30 13:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:21:01] [INFO] Checking activity reminders 
[2026-03-30 13:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:21:02] [INFO] Activity save request {"post_data":{"contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خانه خریده خیلی درگیر وام و قرضه \r\nکافه جمع کرده فقط کار کناف\r\nقرار شد ۱۰ نقد \r\nمابقی ی‌ فقره چک ارسال کنه ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:21:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7918","note_was_empty":true}
[2026-03-30 13:21:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"7918","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:02] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-03-30 13:21:02] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-03-30 13:21:02] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-03-30 13:21:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9e549b7b3.48363944","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-30 13:21:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca4786a8af81.77541058","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca4786a8af81.77541058"}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:02] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-03-30 13:21:02] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-03-30 13:21:02] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-03-30 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:21:32] [INFO] Checking activity reminders 
[2026-03-30 13:21:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:21:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:22:02] [INFO] Checking activity reminders 
[2026-03-30 13:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:22:11] [INFO] Activity save request {"post_data":{"contact_id":"15898","deal_id":"local_69c7eeebbde523.18295147","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رفته کانال مطلبی نمیخواد باشه هی غر میزنه میگه استاد درست سیگنال نمیدن سهم بیشتر بگن \r\nطلا۸۰ گرم داشتم همونه \r\nدید دادم بهش ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:22:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15898","note_was_empty":true}
[2026-03-30 13:22:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"15898","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:11] [INFO] Updating virtual stage {"contact_id":"15898","stage_name":"deal_registered","force":false}
[2026-03-30 13:22:11] [INFO] Virtual stage successfully saved {"contact_id":"15898","stage_name":"deal_registered"}
[2026-03-30 13:22:11] [INFO] Virtual stage updated after activity save {"contact_id":"15898"}
[2026-03-30 13:22:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7eeebbde523.18295147","stage":"تماس پیگیری","status_change":null}
[2026-03-30 13:22:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca47cb69fdd9.39707177","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca47cb69fdd9.39707177"}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:11] [INFO] Updating virtual stage {"contact_id":"15898","stage_name":"deal_registered","force":false}
[2026-03-30 13:22:11] [INFO] Virtual stage successfully saved {"contact_id":"15898","stage_name":"deal_registered"}
[2026-03-30 13:22:11] [INFO] Virtual stage updated after activity save {"contact_id":"15898"}
[2026-03-30 13:22:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15898","person_id":"20608"}
[2026-03-30 13:22:32] [INFO] Checking activity reminders 
[2026-03-30 13:22:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:22:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:00] [INFO] Checking activity reminders 
[2026-03-30 13:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:24:30] [INFO] Checking activity reminders 
[2026-03-30 13:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:24:41] [INFO] Activity save request {"post_data":{"contact_id":"7168","deal_id":"local_69c7eeb31547c2.91087157","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کلا بیزی ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:24:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7168","note_was_empty":true}
[2026-03-30 13:24:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"7168","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:41] [INFO] Updating virtual stage {"contact_id":"7168","stage_name":"deal_registered","force":false}
[2026-03-30 13:24:41] [INFO] Virtual stage successfully saved {"contact_id":"7168","stage_name":"deal_registered"}
[2026-03-30 13:24:41] [INFO] Virtual stage updated after activity save {"contact_id":"7168"}
[2026-03-30 13:24:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7eeb31547c2.91087157","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 13:24:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca486149cd55.30653101","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca486149cd55.30653101"}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:24:41] [INFO] Updating virtual stage {"contact_id":"7168","stage_name":"deal_registered","force":false}
[2026-03-30 13:24:41] [INFO] Virtual stage successfully saved {"contact_id":"7168","stage_name":"deal_registered"}
[2026-03-30 13:24:41] [INFO] Virtual stage updated after activity save {"contact_id":"7168"}
[2026-03-30 13:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7168","person_id":"20612"}
[2026-03-30 13:25:00] [INFO] Checking activity reminders 
[2026-03-30 13:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:25:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:25:31] [INFO] Checking activity reminders 
[2026-03-30 13:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:26:01] [INFO] Checking activity reminders 
[2026-03-30 13:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:26:18] [INFO] Activity save request {"post_data":{"contact_id":"7057","deal_id":"local_69bbe828ef1477.31269093","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فعلا شرایط نداره باشه معامله دیگه که ثبت هست نوشته بودم اطلاع میده همیشه دیر میاد خرداد احتمالا","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:26:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7057","note_was_empty":true}
[2026-03-30 13:26:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"7057","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:18] [INFO] Updating virtual stage {"contact_id":"7057","stage_name":"deal_registered","force":false}
[2026-03-30 13:26:18] [INFO] Virtual stage successfully saved {"contact_id":"7057","stage_name":"deal_registered"}
[2026-03-30 13:26:18] [INFO] Virtual stage updated after activity save {"contact_id":"7057"}
[2026-03-30 13:26:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe828ef1477.31269093","stage":"تماس پیگیری","status_change":null}
[2026-03-30 13:26:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca48c231fb46.72814936","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca48c231fb46.72814936"}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:18] [INFO] Updating virtual stage {"contact_id":"7057","stage_name":"deal_registered","force":false}
[2026-03-30 13:26:18] [INFO] Virtual stage successfully saved {"contact_id":"7057","stage_name":"deal_registered"}
[2026-03-30 13:26:18] [INFO] Virtual stage updated after activity save {"contact_id":"7057"}
[2026-03-30 13:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7057","person_id":"3037"}
[2026-03-30 13:26:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:26:31] [INFO] Checking activity reminders 
[2026-03-30 13:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:27:01] [INFO] Checking activity reminders 
[2026-03-30 13:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:27:31] [INFO] Checking activity reminders 
[2026-03-30 13:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:28:02] [INFO] Checking activity reminders 
[2026-03-30 13:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:28:32] [INFO] Checking activity reminders 
[2026-03-30 13:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:28:58] [INFO] Checking activity reminders 
[2026-03-30 13:28:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:28:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:29:02] [INFO] Checking activity reminders 
[2026-03-30 13:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:29:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 13:29:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 13:29:28] [INFO] Checking activity reminders 
[2026-03-30 13:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:29:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-30 13:29:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 13:29:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 13:29:59] [INFO] Checking activity reminders 
[2026-03-30 13:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:30:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-30 13:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 13:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 13:30:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 13:30:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 13:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-30 13:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-30 13:30:26] [INFO] Checking activity reminders 
[2026-03-30 13:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:30:29] [INFO] Checking activity reminders 
[2026-03-30 13:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:30:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 13:30:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 13:30:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 13:30:49] [INFO] Activity save request {"post_data":{"contact_id":"4165","deal_id":"local_69c7ea5d278a99.39030379","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در دسترس نسیت ارسال پیامک پیگری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:30:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4165","note_was_empty":true}
[2026-03-30 13:30:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"4165","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:49] [INFO] Updating virtual stage {"contact_id":"4165","stage_name":"deal_registered","force":false}
[2026-03-30 13:30:49] [INFO] Virtual stage successfully saved {"contact_id":"4165","stage_name":"deal_registered"}
[2026-03-30 13:30:49] [INFO] Virtual stage updated after activity save {"contact_id":"4165"}
[2026-03-30 13:30:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ea5d278a99.39030379","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 13:30:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca49d14b4672.06450770","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca49d14b4672.06450770"}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:49] [INFO] Updating virtual stage {"contact_id":"4165","stage_name":"deal_registered","force":false}
[2026-03-30 13:30:49] [INFO] Virtual stage successfully saved {"contact_id":"4165","stage_name":"deal_registered"}
[2026-03-30 13:30:49] [INFO] Virtual stage updated after activity save {"contact_id":"4165"}
[2026-03-30 13:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:30:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:30:56] [INFO] Checking activity reminders 
[2026-03-30 13:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:31:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4165","person_id":"19650"}
[2026-03-30 13:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:31:27] [INFO] Checking activity reminders 
[2026-03-30 13:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:33:10] [INFO] Checking activity reminders 
[2026-03-30 13:33:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:33:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:33:12] [INFO] Checking activity reminders 
[2026-03-30 13:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:33:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 13:33:31] [INFO] Activity save request {"post_data":{"contact_id":"15170","deal_id":"local_69c7efe75e57d9.27739999","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:33:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15170","note_was_empty":true}
[2026-03-30 13:33:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"15170","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:31] [INFO] Updating virtual stage {"contact_id":"15170","stage_name":"deal_registered","force":false}
[2026-03-30 13:33:31] [INFO] Virtual stage successfully saved {"contact_id":"15170","stage_name":"deal_registered"}
[2026-03-30 13:33:31] [INFO] Virtual stage updated after activity save {"contact_id":"15170"}
[2026-03-30 13:33:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7efe75e57d9.27739999","stage":"تماس پیگیری","status_change":null}
[2026-03-30 13:33:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca4a737e6126.75022419","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca4a737e6126.75022419"}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:31] [INFO] Updating virtual stage {"contact_id":"15170","stage_name":"deal_registered","force":false}
[2026-03-30 13:33:31] [INFO] Virtual stage successfully saved {"contact_id":"15170","stage_name":"deal_registered"}
[2026-03-30 13:33:31] [INFO] Virtual stage updated after activity save {"contact_id":"15170"}
[2026-03-30 13:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15170","person_id":"20677"}
[2026-03-30 13:33:41] [INFO] Checking activity reminders 
[2026-03-30 13:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:33:43] [INFO] Checking activity reminders 
[2026-03-30 13:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-30 13:34:13] [INFO] Checking activity reminders 
[2026-03-30 13:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:34:43] [INFO] Checking activity reminders 
[2026-03-30 13:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:35:52] [INFO] Checking activity reminders 
[2026-03-30 13:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:36:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 13:36:16","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9978","is_new_deal":false}
[2026-03-30 13:36:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 13:36:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 13:36:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 13:36:16] [INFO] getContactPrimaryPhone called {"contact_id":"9978"}
[2026-03-30 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:16] [INFO] getContactPrimaryPhone result {"contact_id":"9978","person_found":true,"primary_phone":"9122232815"}
[2026-03-30 13:36:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122232815"}
[2026-03-30 13:36:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122232815","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 13:36:16"}
[2026-03-30 13:36:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","existing_deal_found":true,"existing_contact_id":"9978","existing_title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 13:36:16"}
[2026-03-30 13:36:16] [INFO] DealController.save validated payments {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 13:36:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9978","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 13:36:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f9c1e95066.72087931","contact_didar_id":"9978","title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9122232815","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالقیصی","existing_deal":"YES","existing_deal_id":"local_69c7f9c1e95066.72087931","existing_deal_status":"Pending","server_time":"2026-03-30 13:36:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 13:36:16","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:22] [INFO] Checking activity reminders 
[2026-03-30 13:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:36:37] [INFO] Activity save request {"post_data":{"contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:36:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9978","note_was_empty":true}
[2026-03-30 13:36:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"9978","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:37] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-03-30 13:36:37] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-03-30 13:36:37] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-03-30 13:36:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9c1e95066.72087931","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 13:36:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca4b2da54751.71211302","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca4b2da54751.71211302"}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:37] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-03-30 13:36:37] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-03-30 13:36:37] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-03-30 13:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:36:52] [INFO] Checking activity reminders 
[2026-03-30 13:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:37:22] [INFO] Checking activity reminders 
[2026-03-30 13:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:50:43] [INFO] Checking activity reminders 
[2026-03-30 13:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:51:13] [INFO] Checking activity reminders 
[2026-03-30 13:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:51:31] [INFO] Activity save request {"post_data":{"contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک داد شرایط صحبت ندارم خودم تماس،میگیرم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 13:51:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9978","note_was_empty":true}
[2026-03-30 13:51:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"9978","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:31] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-03-30 13:51:31] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-03-30 13:51:31] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-03-30 13:51:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9c1e95066.72087931","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 13:51:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca4eaba1b901.74853572","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca4eaba1b901.74853572"}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:31] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-03-30 13:51:31] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-03-30 13:51:31] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-03-30 13:51:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-03-30 13:51:43] [INFO] Checking activity reminders 
[2026-03-30 13:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:51:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 13:54:07] [INFO] Checking activity reminders 
[2026-03-30 13:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 13:57:14] [INFO] Checking activity reminders 
[2026-03-30 13:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 13:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:00:14] [INFO] Checking activity reminders 
[2026-03-30 14:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:01:22] [INFO] Checking activity reminders 
[2026-03-30 14:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:01:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:01:54] [INFO] Checking activity reminders 
[2026-03-30 14:01:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:01:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:02:24] [INFO] Checking activity reminders 
[2026-03-30 14:02:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:02:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:02:28] [INFO] Checking activity reminders 
[2026-03-30 14:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:02:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 14:02:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 14:02:54] [INFO] Activity save request {"post_data":{"contact_id":"5803","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چه مسخره که هیچ کدوم از فعالیت هام نیست انگار ۲ سال کاری انجام نشده خنده دارا واقعا\r\nعرفان ۲ سال پشت هم پروژه مربی داره \r\nهوش داره\r\nبودجه اومده\r\nکانال ۴۰۵ دسترسی داده شد","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 14:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:02:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 14:02:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 14:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:02:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5803","note_was_empty":true}
[2026-03-30 14:02:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"5803","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 14:02:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca515672a1c7.27464141","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 14:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:02:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca515672a1c7.27464141"}
[2026-03-30 14:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:02:54] [INFO] Updating virtual stage {"contact_id":"5803","stage_name":"deal_registered","force":false}
[2026-03-30 14:02:54] [INFO] Virtual stage successfully saved {"contact_id":"5803","stage_name":"deal_registered"}
[2026-03-30 14:02:54] [INFO] Virtual stage updated after activity save {"contact_id":"5803"}
[2026-03-30 14:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-30 14:02:54] [INFO] Checking activity reminders 
[2026-03-30 14:02:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:02:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:02:58] [INFO] Checking activity reminders 
[2026-03-30 14:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:03:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-30 14:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 14:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 14:03:28] [INFO] Checking activity reminders 
[2026-03-30 14:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 14:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 14:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-30 14:03:59] [INFO] Checking activity reminders 
[2026-03-30 14:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:04:29] [INFO] Checking activity reminders 
[2026-03-30 14:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:04:59] [INFO] Checking activity reminders 
[2026-03-30 14:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:05:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 14:05:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 14:05:29] [INFO] Checking activity reminders 
[2026-03-30 14:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:05:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 14:34:23] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:23] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"check_reminders"}
[2026-03-30 14:34:23] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:35] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:37] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:43] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:46] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_field_configurations"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deal"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:47] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:48] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_field_configurations"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deal"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_field_configurations"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deal"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:55] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:57] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:34:59] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:35:07] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:35:07] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-30 14:35:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 14:35:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:35:38] [INFO] Checking activity reminders 
[2026-03-30 14:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:36:08] [INFO] Checking activity reminders 
[2026-03-30 14:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:36:11] [INFO] Activity save request {"post_data":{"contact_id":"12744","deal_id":"local_69c7fa564ab056.29171629","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کار خودرو \r\n۳۰ نقد \r\nچک نداره \r\nمابقی تا آخر ۲ تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 14:36:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12744","note_was_empty":true}
[2026-03-30 14:36:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"12744","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:11] [INFO] Updating virtual stage {"contact_id":"12744","stage_name":"deal_registered","force":false}
[2026-03-30 14:36:11] [INFO] Virtual stage successfully saved {"contact_id":"12744","stage_name":"deal_registered"}
[2026-03-30 14:36:11] [INFO] Virtual stage updated after activity save {"contact_id":"12744"}
[2026-03-30 14:36:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7fa564ab056.29171629","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-30 14:36:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca59236475c8.79545986","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca59236475c8.79545986"}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:11] [INFO] Updating virtual stage {"contact_id":"12744","stage_name":"deal_registered","force":false}
[2026-03-30 14:36:11] [INFO] Virtual stage successfully saved {"contact_id":"12744","stage_name":"deal_registered"}
[2026-03-30 14:36:11] [INFO] Virtual stage updated after activity save {"contact_id":"12744"}
[2026-03-30 14:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:36:38] [INFO] Checking activity reminders 
[2026-03-30 14:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:37:03] [INFO] Checking activity reminders 
[2026-03-30 14:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:37:19] [INFO] Checking activity reminders 
[2026-03-30 14:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:37:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12744","deal_id":"local_69c7fa564ab056.29171629","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 14:37:31","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 14:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:37:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12744","is_new_deal":false}
[2026-03-30 14:37:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 14:37:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:37:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:37:31] [INFO] getContactPrimaryPhone called {"contact_id":"12744"}
[2026-03-30 14:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:37:31] [INFO] getContactPrimaryPhone result {"contact_id":"12744","person_found":true,"primary_phone":"9387121570"}
[2026-03-30 14:37:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387121570"}
[2026-03-30 14:37:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387121570","contact_id":"12744","deal_id":"local_69c7fa564ab056.29171629","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:37:31"}
[2026-03-30 14:37:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7fa564ab056.29171629","contact_id":"12744","existing_deal_found":true,"existing_contact_id":"12744","existing_title":"معامله اول 9387121570 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:37:31"}
[2026-03-30 14:37:31] [INFO] DealController.save validated payments {"deal_id":"local_69c7fa564ab056.29171629","contact_id":"12744","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 14:37:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12744","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 14:37:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7fa564ab056.29171629","contact_didar_id":"12744","title":"معامله اول 9387121570 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9387121570","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین معتمدی","existing_deal":"YES","existing_deal_id":"local_69c7fa564ab056.29171629","existing_deal_status":"Pending","server_time":"2026-03-30 14:37:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 14:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:37:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7fa564ab056.29171629","contact_id":"12744","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9387121570 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-03-30 14:37:31","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 14:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:37:49] [INFO] Checking activity reminders 
[2026-03-30 14:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:37:55] [INFO] Checking activity reminders 
[2026-03-30 14:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:38:54] [INFO] Checking activity reminders 
[2026-03-30 14:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:39:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-30 14:39:24] [INFO] Checking activity reminders 
[2026-03-30 14:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:39:54] [INFO] Checking activity reminders 
[2026-03-30 14:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:40:14] [INFO] Checking activity reminders 
[2026-03-30 14:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:40:45] [INFO] Checking activity reminders 
[2026-03-30 14:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:41:14] [INFO] Checking activity reminders 
[2026-03-30 14:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:41:32] [INFO] Checking activity reminders 
[2026-03-30 14:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:41:41] [INFO] Checking activity reminders 
[2026-03-30 14:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:42:02] [INFO] Checking activity reminders 
[2026-03-30 14:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:42:11] [INFO] Checking activity reminders 
[2026-03-30 14:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:42:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11595","deal_id":"local_69b986ff6de6a1.37972034","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 14:42:28","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 14:42:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11595","is_new_deal":false}
[2026-03-30 14:42:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-30 14:42:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-30 14:42:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-30 14:42:28] [INFO] getContactPrimaryPhone called {"contact_id":"11595"}
[2026-03-30 14:42:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:28] [INFO] getContactPrimaryPhone result {"contact_id":"11595","person_found":true,"primary_phone":"9122871815"}
[2026-03-30 14:42:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122871815"}
[2026-03-30 14:42:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122871815","contact_id":"11595","deal_id":"local_69b986ff6de6a1.37972034","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:42:28"}
[2026-03-30 14:42:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","existing_deal_found":true,"existing_contact_id":"11595","existing_title":"معامله چهارم 9122871815 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:42:28"}
[2026-03-30 14:42:28] [INFO] DealController.save validated payments {"deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-03-30 14:42:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11595","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 14:42:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b986ff6de6a1.37972034","contact_didar_id":"11595","title":"معامله چهارم 9122871815 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9122871815","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سلیمانی","existing_deal":"YES","existing_deal_id":"local_69b986ff6de6a1.37972034","existing_deal_status":"Pending","server_time":"2026-03-30 14:42:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 14:42:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:28] [INFO] Deal success processed {"contact_id":"11595","person_name":"سلیمانی","products_count":1}
[2026-03-30 14:42:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b986ff6de6a1.37972034","contact_id":"11595","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9122871815 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-03-30 14:42:28","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 14:42:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:37] [INFO] Checking activity reminders 
[2026-03-30 14:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 14:42:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:07] [INFO] Checking activity reminders 
[2026-03-30 14:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:43:21] [INFO] Activity save request {"post_data":{"contact_id":"795","deal_id":"local_695a6def503b20.08264464","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۲۰ تقد \r\nیک فقره چک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 14:43:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"795","note_was_empty":true}
[2026-03-30 14:43:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"795","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:21] [INFO] Updating virtual stage {"contact_id":"795","stage_name":"deal_registered","force":false}
[2026-03-30 14:43:21] [INFO] Virtual stage successfully saved {"contact_id":"795","stage_name":"deal_registered"}
[2026-03-30 14:43:21] [INFO] Virtual stage updated after activity save {"contact_id":"795"}
[2026-03-30 14:43:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6def503b20.08264464","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-30 14:43:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca5ad166ceb3.75672309","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca5ad166ceb3.75672309"}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:21] [INFO] Updating virtual stage {"contact_id":"795","stage_name":"deal_registered","force":false}
[2026-03-30 14:43:21] [INFO] Virtual stage successfully saved {"contact_id":"795","stage_name":"deal_registered"}
[2026-03-30 14:43:21] [INFO] Virtual stage updated after activity save {"contact_id":"795"}
[2026-03-30 14:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:43:37] [INFO] Checking activity reminders 
[2026-03-30 14:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:47:39] [INFO] Checking activity reminders 
[2026-03-30 14:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:47:55] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 14:47:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 14:47:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 14:47:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 14:47:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 14:47:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 14:47:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 14:48:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16501","person_id":"10333"}
[2026-03-30 14:48:26] [INFO] Checking activity reminders 
[2026-03-30 14:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:48:59] [INFO] Checking activity reminders 
[2026-03-30 14:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:49:28] [INFO] Checking activity reminders 
[2026-03-30 14:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:49:50] [INFO] Checking activity reminders 
[2026-03-30 14:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:52:35] [INFO] Checking activity reminders 
[2026-03-30 14:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:53:01] [INFO] Checking activity reminders 
[2026-03-30 14:53:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:53:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:53:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"795","deal_id":"local_695a6def503b20.08264464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 14:53:18","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 14:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:53:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"795","is_new_deal":false}
[2026-03-30 14:53:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 14:53:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:53:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:53:18] [INFO] getContactPrimaryPhone called {"contact_id":"795"}
[2026-03-30 14:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:53:18] [INFO] getContactPrimaryPhone result {"contact_id":"795","person_found":true,"primary_phone":"9138167593"}
[2026-03-30 14:53:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138167593"}
[2026-03-30 14:53:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138167593","contact_id":"795","deal_id":"local_695a6def503b20.08264464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:53:18"}
[2026-03-30 14:53:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","existing_deal_found":true,"existing_contact_id":"795","existing_title":"معامله سوم 9138167593 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:53:18"}
[2026-03-30 14:53:18] [INFO] DealController.save validated payments {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 14:53:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"795","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 14:53:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6def503b20.08264464","contact_didar_id":"795","title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9138167593","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینی زاده","existing_deal":"YES","existing_deal_id":"local_695a6def503b20.08264464","existing_deal_status":"Pending","server_time":"2026-03-30 14:53:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 14:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:53:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6def503b20.08264464","contact_id":"795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-30 14:53:18","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 14:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-03-30 14:53:37] [INFO] Checking activity reminders 
[2026-03-30 14:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:16] [INFO] Checking activity reminders 
[2026-03-30 14:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:55:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2002","deal_id":"local_69c7fa08a47d14.38917900","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 14:55:38","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2002","is_new_deal":false}
[2026-03-30 14:55:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 14:55:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:55:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 14:55:38] [INFO] getContactPrimaryPhone called {"contact_id":"2002"}
[2026-03-30 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:38] [INFO] getContactPrimaryPhone result {"contact_id":"2002","person_found":true,"primary_phone":"9901563138"}
[2026-03-30 14:55:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9901563138"}
[2026-03-30 14:55:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9901563138","contact_id":"2002","deal_id":"local_69c7fa08a47d14.38917900","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:55:38"}
[2026-03-30 14:55:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7fa08a47d14.38917900","contact_id":"2002","existing_deal_found":true,"existing_contact_id":"2002","existing_title":"معامله چهارم 9901563138 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 14:55:38"}
[2026-03-30 14:55:39] [INFO] DealController.save validated payments {"deal_id":"local_69c7fa08a47d14.38917900","contact_id":"2002","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 14:55:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2002","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 14:55:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7fa08a47d14.38917900","contact_didar_id":"2002","title":"معامله چهارم 9901563138 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9901563138","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صادقی روزبهانی","existing_deal":"YES","existing_deal_id":"local_69c7fa08a47d14.38917900","existing_deal_status":"Pending","server_time":"2026-03-30 14:55:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 14:55:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7fa08a47d14.38917900","contact_id":"2002","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9901563138 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 14:55:39","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 14:55:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:46] [INFO] Checking activity reminders 
[2026-03-30 14:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:55:56] [INFO] Checking activity reminders 
[2026-03-30 14:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:55:57] [INFO] Activity save request {"post_data":{"contact_id":"2002","deal_id":"local_69c7fa08a47d14.38917900","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 14:55:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2002","note_was_empty":true}
[2026-03-30 14:55:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"2002","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:57] [INFO] Updating virtual stage {"contact_id":"2002","stage_name":"deal_registered","force":false}
[2026-03-30 14:55:57] [INFO] Virtual stage successfully saved {"contact_id":"2002","stage_name":"deal_registered"}
[2026-03-30 14:55:57] [INFO] Virtual stage updated after activity save {"contact_id":"2002"}
[2026-03-30 14:55:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7fa08a47d14.38917900","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 14:55:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca5dc569b624.26487540","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca5dc569b624.26487540"}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:57] [INFO] Updating virtual stage {"contact_id":"2002","stage_name":"deal_registered","force":false}
[2026-03-30 14:55:57] [INFO] Virtual stage successfully saved {"contact_id":"2002","stage_name":"deal_registered"}
[2026-03-30 14:55:57] [INFO] Virtual stage updated after activity save {"contact_id":"2002"}
[2026-03-30 14:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-03-30 14:55:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 14:55:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 14:55:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 14:56:03] [INFO] Checking activity reminders 
[2026-03-30 14:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:56:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 14:56:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 14:56:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 14:56:26] [INFO] Checking activity reminders 
[2026-03-30 14:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:56:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 14:56:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 14:56:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 14:56:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 14:56:33] [INFO] Checking activity reminders 
[2026-03-30 14:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:56:56] [INFO] Checking activity reminders 
[2026-03-30 14:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:57:27] [INFO] Checking activity reminders 
[2026-03-30 14:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:57:57] [INFO] Checking activity reminders 
[2026-03-30 14:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:58:27] [INFO] Checking activity reminders 
[2026-03-30 14:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:58:57] [INFO] Checking activity reminders 
[2026-03-30 14:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:59:27] [INFO] Checking activity reminders 
[2026-03-30 14:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 14:59:57] [INFO] Checking activity reminders 
[2026-03-30 14:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 14:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:00:18] [INFO] Checking activity reminders 
[2026-03-30 15:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:00:28] [INFO] Checking activity reminders 
[2026-03-30 15:00:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:00:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:00:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12882","deal_id":"local_69c7f926a302a0.79542227","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 15:00:42","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 15:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:00:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12882","is_new_deal":false}
[2026-03-30 15:00:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 15:00:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:00:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:00:42] [INFO] getContactPrimaryPhone called {"contact_id":"12882"}
[2026-03-30 15:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:00:42] [INFO] getContactPrimaryPhone result {"contact_id":"12882","person_found":true,"primary_phone":"9981114654"}
[2026-03-30 15:00:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9981114654"}
[2026-03-30 15:00:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9981114654","contact_id":"12882","deal_id":"local_69c7f926a302a0.79542227","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:00:42"}
[2026-03-30 15:00:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f926a302a0.79542227","contact_id":"12882","existing_deal_found":true,"existing_contact_id":"12882","existing_title":"معامله دوم 9981114654 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:00:42"}
[2026-03-30 15:00:42] [INFO] DealController.save validated payments {"deal_id":"local_69c7f926a302a0.79542227","contact_id":"12882","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 15:00:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12882","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 15:00:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f926a302a0.79542227","contact_didar_id":"12882","title":"معامله دوم 9981114654 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9981114654","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم همتی","existing_deal":"YES","existing_deal_id":"local_69c7f926a302a0.79542227","existing_deal_status":"Pending","server_time":"2026-03-30 15:00:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 15:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:00:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f926a302a0.79542227","contact_id":"12882","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9981114654 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 15:00:42","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 15:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:00:48] [INFO] Checking activity reminders 
[2026-03-30 15:00:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:00:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:00:58] [INFO] Checking activity reminders 
[2026-03-30 15:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:01:06] [INFO] Activity save request {"post_data":{"contact_id":"12882","deal_id":"local_69c7f926a302a0.79542227","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 15:01:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12882","note_was_empty":true}
[2026-03-30 15:01:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"12882","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:06] [INFO] Updating virtual stage {"contact_id":"12882","stage_name":"deal_registered","force":false}
[2026-03-30 15:01:06] [INFO] Virtual stage successfully saved {"contact_id":"12882","stage_name":"deal_registered"}
[2026-03-30 15:01:06] [INFO] Virtual stage updated after activity save {"contact_id":"12882"}
[2026-03-30 15:01:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f926a302a0.79542227","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 15:01:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca5efa2db4d0.17320692","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca5efa2db4d0.17320692"}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:06] [INFO] Updating virtual stage {"contact_id":"12882","stage_name":"deal_registered","force":false}
[2026-03-30 15:01:06] [INFO] Virtual stage successfully saved {"contact_id":"12882","stage_name":"deal_registered"}
[2026-03-30 15:01:06] [INFO] Virtual stage updated after activity save {"contact_id":"12882"}
[2026-03-30 15:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12882","person_id":"14020"}
[2026-03-30 15:01:18] [INFO] Checking activity reminders 
[2026-03-30 15:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:01:28] [INFO] Checking activity reminders 
[2026-03-30 15:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:01:48] [INFO] Checking activity reminders 
[2026-03-30 15:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:01:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:01:58] [INFO] Checking activity reminders 
[2026-03-30 15:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:02:19] [INFO] Checking activity reminders 
[2026-03-30 15:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:02:28] [INFO] Checking activity reminders 
[2026-03-30 15:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:02:58] [INFO] Checking activity reminders 
[2026-03-30 15:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:03:28] [INFO] Checking activity reminders 
[2026-03-30 15:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:03:59] [INFO] Checking activity reminders 
[2026-03-30 15:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:04:29] [INFO] Checking activity reminders 
[2026-03-30 15:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:07:37] [INFO] Checking activity reminders 
[2026-03-30 15:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:07:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7335","deal_id":"local_69bbae582f3562.35010219","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 15:07:54","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 15:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:07:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7335","is_new_deal":false}
[2026-03-30 15:07:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 15:07:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:07:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:07:54] [INFO] getContactPrimaryPhone called {"contact_id":"7335"}
[2026-03-30 15:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:07:54] [INFO] getContactPrimaryPhone result {"contact_id":"7335","person_found":true,"primary_phone":"9102789964"}
[2026-03-30 15:07:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102789964"}
[2026-03-30 15:07:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102789964","contact_id":"7335","deal_id":"local_69bbae582f3562.35010219","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:07:54"}
[2026-03-30 15:07:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbae582f3562.35010219","contact_id":"7335","existing_deal_found":true,"existing_contact_id":"7335","existing_title":"معامله سوم 9102789964 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:07:54"}
[2026-03-30 15:07:54] [INFO] DealController.save validated payments {"deal_id":"local_69bbae582f3562.35010219","contact_id":"7335","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 15:07:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7335","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 15:07:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbae582f3562.35010219","contact_didar_id":"7335","title":"معامله سوم 9102789964 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9102789964","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سجاد داودی","existing_deal":"YES","existing_deal_id":"local_69bbae582f3562.35010219","existing_deal_status":"Pending","server_time":"2026-03-30 15:07:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 15:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:07:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbae582f3562.35010219","contact_id":"7335","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9102789964 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 15:07:54","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 15:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:07] [INFO] Checking activity reminders 
[2026-03-30 15:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:08:09] [INFO] Activity save request {"post_data":{"contact_id":"7335","deal_id":"local_69bbae582f3562.35010219","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 15:08:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7335","note_was_empty":true}
[2026-03-30 15:08:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"7335","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:09] [INFO] Updating virtual stage {"contact_id":"7335","stage_name":"deal_registered","force":false}
[2026-03-30 15:08:09] [INFO] Virtual stage successfully saved {"contact_id":"7335","stage_name":"deal_registered"}
[2026-03-30 15:08:09] [INFO] Virtual stage updated after activity save {"contact_id":"7335"}
[2026-03-30 15:08:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbae582f3562.35010219","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 15:08:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca60a1b1fa46.25671732","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca60a1b1fa46.25671732"}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:08:09] [INFO] Updating virtual stage {"contact_id":"7335","stage_name":"deal_registered","force":false}
[2026-03-30 15:08:09] [INFO] Virtual stage successfully saved {"contact_id":"7335","stage_name":"deal_registered"}
[2026-03-30 15:08:09] [INFO] Virtual stage updated after activity save {"contact_id":"7335"}
[2026-03-30 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:10] [INFO] Checking activity reminders 
[2026-03-30 15:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:09:33] [INFO] Activity save request {"post_data":{"contact_id":"7335","deal_id":"local_69bbae582f3562.35010219","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 15:09:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7335","note_was_empty":true}
[2026-03-30 15:09:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"7335","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:33] [INFO] Updating virtual stage {"contact_id":"7335","stage_name":"deal_registered","force":false}
[2026-03-30 15:09:33] [INFO] Virtual stage successfully saved {"contact_id":"7335","stage_name":"deal_registered"}
[2026-03-30 15:09:33] [INFO] Virtual stage updated after activity save {"contact_id":"7335"}
[2026-03-30 15:09:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbae582f3562.35010219","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 15:09:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca60f57bba96.73689540","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca60f57bba96.73689540"}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:33] [INFO] Updating virtual stage {"contact_id":"7335","stage_name":"deal_registered","force":false}
[2026-03-30 15:09:33] [INFO] Virtual stage successfully saved {"contact_id":"7335","stage_name":"deal_registered"}
[2026-03-30 15:09:33] [INFO] Virtual stage updated after activity save {"contact_id":"7335"}
[2026-03-30 15:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7335","person_id":"14293"}
[2026-03-30 15:09:41] [INFO] Checking activity reminders 
[2026-03-30 15:09:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:09:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:09:54] [INFO] Checking activity reminders 
[2026-03-30 15:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:10:24] [INFO] Checking activity reminders 
[2026-03-30 15:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:16:05] [INFO] Checking activity reminders 
[2026-03-30 15:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:16:35] [INFO] Checking activity reminders 
[2026-03-30 15:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:17:06] [INFO] Checking activity reminders 
[2026-03-30 15:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:17:37] [INFO] Checking activity reminders 
[2026-03-30 15:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:18:07] [INFO] Checking activity reminders 
[2026-03-30 15:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:21:19] [INFO] Checking activity reminders 
[2026-03-30 15:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:21:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1808","deal_id":"local_69bbae15a4a406.04316186","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 15:21:31","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 15:21:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1808","is_new_deal":false}
[2026-03-30 15:21:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 15:21:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:21:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:21:31] [INFO] getContactPrimaryPhone called {"contact_id":"1808"}
[2026-03-30 15:21:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:31] [INFO] getContactPrimaryPhone result {"contact_id":"1808","person_found":true,"primary_phone":"9059526568"}
[2026-03-30 15:21:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9059526568"}
[2026-03-30 15:21:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9059526568","contact_id":"1808","deal_id":"local_69bbae15a4a406.04316186","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:21:31"}
[2026-03-30 15:21:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbae15a4a406.04316186","contact_id":"1808","existing_deal_found":true,"existing_contact_id":"1808","existing_title":"معامله سوم 9059526568 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:21:31"}
[2026-03-30 15:21:31] [INFO] DealController.save validated payments {"deal_id":"local_69bbae15a4a406.04316186","contact_id":"1808","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-03-30 15:21:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1808","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 15:21:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbae15a4a406.04316186","contact_didar_id":"1808","title":"معامله سوم 9059526568 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9059526568","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رامین ساعد","existing_deal":"YES","existing_deal_id":"local_69bbae15a4a406.04316186","existing_deal_status":"Pending","server_time":"2026-03-30 15:21:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 15:21:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbae15a4a406.04316186","contact_id":"1808","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9059526568 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 15:21:31","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 15:21:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Checking activity reminders 
[2026-03-30 15:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:21:50] [INFO] Activity save request {"post_data":{"contact_id":"1808","deal_id":"local_69bbae15a4a406.04316186","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 15:21:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1808","note_was_empty":true}
[2026-03-30 15:21:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"1808","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Updating virtual stage {"contact_id":"1808","stage_name":"deal_registered","force":false}
[2026-03-30 15:21:50] [INFO] Virtual stage successfully saved {"contact_id":"1808","stage_name":"deal_registered"}
[2026-03-30 15:21:50] [INFO] Virtual stage updated after activity save {"contact_id":"1808"}
[2026-03-30 15:21:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbae15a4a406.04316186","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-30 15:21:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca63d65c5136.18697228","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca63d65c5136.18697228"}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:21:50] [INFO] Updating virtual stage {"contact_id":"1808","stage_name":"deal_registered","force":false}
[2026-03-30 15:21:50] [INFO] Virtual stage successfully saved {"contact_id":"1808","stage_name":"deal_registered"}
[2026-03-30 15:21:50] [INFO] Virtual stage updated after activity save {"contact_id":"1808"}
[2026-03-30 15:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 15:22:35] [INFO] Checking activity reminders 
[2026-03-30 15:22:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:22:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:23:06] [INFO] Checking activity reminders 
[2026-03-30 15:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 15:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 15:25:08] [INFO] Checking activity reminders 
[2026-03-30 15:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:25:38] [INFO] Checking activity reminders 
[2026-03-30 15:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:26:08] [INFO] Checking activity reminders 
[2026-03-30 15:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:26:39] [INFO] Checking activity reminders 
[2026-03-30 15:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:27:09] [INFO] Checking activity reminders 
[2026-03-30 15:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:33:18] [INFO] Checking activity reminders 
[2026-03-30 15:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:45:07] [INFO] Checking activity reminders 
[2026-03-30 15:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:53:10] [INFO] Checking activity reminders 
[2026-03-30 15:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:53:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:54:11] [INFO] Checking activity reminders 
[2026-03-30 15:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:54:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:54:41] [INFO] Checking activity reminders 
[2026-03-30 15:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:55:12] [INFO] Checking activity reminders 
[2026-03-30 15:55:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:55:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:55:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20620","deal_id":"local_69bbae382844d7.46459374","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 15:55:27","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 15:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:55:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20620","is_new_deal":false}
[2026-03-30 15:55:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 15:55:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:55:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:55:27] [INFO] getContactPrimaryPhone called {"contact_id":"20620"}
[2026-03-30 15:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:55:27] [INFO] getContactPrimaryPhone result {"contact_id":"20620","person_found":true,"primary_phone":"9100420103"}
[2026-03-30 15:55:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9100420103"}
[2026-03-30 15:55:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9100420103","contact_id":"20620","deal_id":"local_69bbae382844d7.46459374","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:55:27"}
[2026-03-30 15:55:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbae382844d7.46459374","contact_id":"20620","existing_deal_found":true,"existing_contact_id":"20620","existing_title":"معامله دوم 9100420103 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:55:27"}
[2026-03-30 15:55:27] [INFO] DealController.save validated payments {"deal_id":"local_69bbae382844d7.46459374","contact_id":"20620","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 15:55:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20620","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 15:55:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbae382844d7.46459374","contact_didar_id":"20620","title":"معامله دوم 9100420103 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9100420103","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم محمدی","existing_deal":"YES","existing_deal_id":"local_69bbae382844d7.46459374","existing_deal_status":"Pending","server_time":"2026-03-30 15:55:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 15:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:55:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbae382844d7.46459374","contact_id":"20620","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9100420103 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 15:55:27","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 15:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:55:42] [INFO] Checking activity reminders 
[2026-03-30 15:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:56:04] [INFO] Activity save request {"post_data":{"contact_id":"20620","deal_id":"local_69bbae382844d7.46459374","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت \r\nمجدد تماس \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 15:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 15:56:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 15:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20620","note_was_empty":true}
[2026-03-30 15:56:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"20620","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 15:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:04] [INFO] Updating virtual stage {"contact_id":"20620","stage_name":"deal_registered","force":false}
[2026-03-30 15:56:04] [INFO] Virtual stage successfully saved {"contact_id":"20620","stage_name":"deal_registered"}
[2026-03-30 15:56:04] [INFO] Virtual stage updated after activity save {"contact_id":"20620"}
[2026-03-30 15:56:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbae382844d7.46459374","stage":"تماس پیگیری","status_change":null}
[2026-03-30 15:56:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca6bdcbf4a38.26031795","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 15:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca6bdcbf4a38.26031795"}
[2026-03-30 15:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:04] [INFO] Updating virtual stage {"contact_id":"20620","stage_name":"deal_registered","force":false}
[2026-03-30 15:56:04] [INFO] Virtual stage successfully saved {"contact_id":"20620","stage_name":"deal_registered"}
[2026-03-30 15:56:04] [INFO] Virtual stage updated after activity save {"contact_id":"20620"}
[2026-03-30 15:56:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 15:56:12] [INFO] Checking activity reminders 
[2026-03-30 15:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:56:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-30 15:56:42] [INFO] Checking activity reminders 
[2026-03-30 15:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 15:56:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12198","deal_id":"local_69c8018f0f7f79.20952226","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 15:56:45","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 15:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-30 15:56:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12198","is_new_deal":false}
[2026-03-30 15:56:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 15:56:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:56:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 15:56:45] [INFO] getContactPrimaryPhone called {"contact_id":"12198"}
[2026-03-30 15:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-30 15:56:45] [INFO] getContactPrimaryPhone result {"contact_id":"12198","person_found":true,"primary_phone":"9386800593"}
[2026-03-30 15:56:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9386800593"}
[2026-03-30 15:56:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9386800593","contact_id":"12198","deal_id":"local_69c8018f0f7f79.20952226","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:56:45"}
[2026-03-30 15:56:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c8018f0f7f79.20952226","contact_id":"12198","existing_deal_found":true,"existing_contact_id":"12198","existing_title":"معامله چهارم 9386800593 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 15:56:45"}
[2026-03-30 15:56:45] [INFO] DealController.save validated payments {"deal_id":"local_69c8018f0f7f79.20952226","contact_id":"12198","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 15:56:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12198","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 15:56:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c8018f0f7f79.20952226","contact_didar_id":"12198","title":"معامله چهارم 9386800593 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9386800593","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالفضل اسفندیار","existing_deal":"YES","existing_deal_id":"local_69c8018f0f7f79.20952226","existing_deal_status":"Pending","server_time":"2026-03-30 15:56:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 15:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-30 15:56:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c8018f0f7f79.20952226","contact_id":"12198","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9386800593 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 15:56:45","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 15:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-03-30 15:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 15:57:13] [INFO] Checking activity reminders 
[2026-03-30 15:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 15:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:15:44] [INFO] Checking activity reminders 
[2026-03-30 16:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:15:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"713","deal_id":"local_69bbaf273c01d9.27256271","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:15:55","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:15:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:15:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"713","is_new_deal":false}
[2026-03-30 16:15:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 16:15:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:15:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:15:55] [INFO] getContactPrimaryPhone called {"contact_id":"713"}
[2026-03-30 16:15:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:15:55] [INFO] getContactPrimaryPhone result {"contact_id":"713","person_found":true,"primary_phone":"9111189429"}
[2026-03-30 16:15:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111189429"}
[2026-03-30 16:15:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111189429","contact_id":"713","deal_id":"local_69bbaf273c01d9.27256271","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:15:55"}
[2026-03-30 16:15:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","existing_deal_found":true,"existing_contact_id":"713","existing_title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:15:55"}
[2026-03-30 16:15:55] [INFO] DealController.save validated payments {"deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 16:15:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"713","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:15:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbaf273c01d9.27256271","contact_didar_id":"713","title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9111189429","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"وحید احمدی","existing_deal":"YES","existing_deal_id":"local_69bbaf273c01d9.27256271","existing_deal_status":"Pending","server_time":"2026-03-30 16:15:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:15:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:15:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 16:15:55","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:15:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:16:14] [INFO] Checking activity reminders 
[2026-03-30 16:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:16:44] [INFO] Checking activity reminders 
[2026-03-30 16:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:17:15] [INFO] Checking activity reminders 
[2026-03-30 16:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:17:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"713","deal_id":"local_69bbaf273c01d9.27256271","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:17:15","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:17:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"713","is_new_deal":false}
[2026-03-30 16:17:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 16:17:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:17:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:17:15] [INFO] getContactPrimaryPhone called {"contact_id":"713"}
[2026-03-30 16:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:17:15] [INFO] getContactPrimaryPhone result {"contact_id":"713","person_found":true,"primary_phone":"9111189429"}
[2026-03-30 16:17:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111189429"}
[2026-03-30 16:17:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111189429","contact_id":"713","deal_id":"local_69bbaf273c01d9.27256271","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:17:15"}
[2026-03-30 16:17:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","existing_deal_found":true,"existing_contact_id":"713","existing_title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:17:15"}
[2026-03-30 16:17:15] [INFO] DealController.save validated payments {"deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 16:17:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"713","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:17:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbaf273c01d9.27256271","contact_didar_id":"713","title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9111189429","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"وحید احمدی","existing_deal":"YES","existing_deal_id":"local_69bbaf273c01d9.27256271","existing_deal_status":"Pending","server_time":"2026-03-30 16:17:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:17:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbaf273c01d9.27256271","contact_id":"713","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9111189429 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 16:17:15","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:17:45] [INFO] Checking activity reminders 
[2026-03-30 16:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:18:15] [INFO] Checking activity reminders 
[2026-03-30 16:18:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:18:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:18:45] [INFO] Checking activity reminders 
[2026-03-30 16:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:19:15] [INFO] Checking activity reminders 
[2026-03-30 16:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:19:46] [INFO] Checking activity reminders 
[2026-03-30 16:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:20:16] [INFO] Checking activity reminders 
[2026-03-30 16:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:20:33] [INFO] Activity save request {"post_data":{"contact_id":"713","deal_id":"local_69bbaf273c01d9.27256271","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"از کار خودرو اومده بیرون طلا فروشی زده \r\nمیگه کل سرمایه ام برای طلا گذاشتم \r\nبراش اطلاعات کانال و صندوق ها و سیگنال هارو توضیح دادم \r\nمیگه پارسال به دلیل عدم پرداخت به موقع از کانال حذف شدم \r\nبهش،شرایط کامل توضیح دادم \r\nلینک کانال عمومی ارسال کردم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 16:20:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"713","note_was_empty":true}
[2026-03-30 16:20:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"713","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:33] [INFO] Updating virtual stage {"contact_id":"713","stage_name":"deal_registered","force":false}
[2026-03-30 16:20:33] [INFO] Virtual stage successfully saved {"contact_id":"713","stage_name":"deal_registered"}
[2026-03-30 16:20:33] [INFO] Virtual stage updated after activity save {"contact_id":"713"}
[2026-03-30 16:20:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaf273c01d9.27256271","stage":"تماس پیگیری","status_change":null}
[2026-03-30 16:20:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca7199a4ff51.71355907","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca7199a4ff51.71355907"}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:33] [INFO] Updating virtual stage {"contact_id":"713","stage_name":"deal_registered","force":false}
[2026-03-30 16:20:33] [INFO] Virtual stage successfully saved {"contact_id":"713","stage_name":"deal_registered"}
[2026-03-30 16:20:33] [INFO] Virtual stage updated after activity save {"contact_id":"713"}
[2026-03-30 16:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 16:20:46] [INFO] Checking activity reminders 
[2026-03-30 16:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:21:16] [INFO] Checking activity reminders 
[2026-03-30 16:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:24:21] [INFO] Checking activity reminders 
[2026-03-30 16:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:24:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-30 16:24:51] [INFO] Checking activity reminders 
[2026-03-30 16:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:25:32] [INFO] Checking activity reminders 
[2026-03-30 16:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:26:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20719","deal_id":"local_699b29aa1b9b11.53311677","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:26:00","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-30 16:26:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20719","is_new_deal":false}
[2026-03-30 16:26:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 16:26:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:26:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:26:00] [INFO] getContactPrimaryPhone called {"contact_id":"20719"}
[2026-03-30 16:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-30 16:26:00] [INFO] getContactPrimaryPhone result {"contact_id":"20719","person_found":true,"primary_phone":"9124887993"}
[2026-03-30 16:26:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124887993"}
[2026-03-30 16:26:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124887993","contact_id":"20719","deal_id":"local_699b29aa1b9b11.53311677","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:26:00"}
[2026-03-30 16:26:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b29aa1b9b11.53311677","contact_id":"20719","existing_deal_found":true,"existing_contact_id":"20719","existing_title":"معامله دوم 9124887993 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:26:00"}
[2026-03-30 16:26:00] [INFO] DealController.save validated payments {"deal_id":"local_699b29aa1b9b11.53311677","contact_id":"20719","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 16:26:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:26:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b29aa1b9b11.53311677","contact_didar_id":"20719","title":"معامله دوم 9124887993 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124887993","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهاد سرمستی","existing_deal":"YES","existing_deal_id":"local_699b29aa1b9b11.53311677","existing_deal_status":"Pending","server_time":"2026-03-30 16:26:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-30 16:26:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b29aa1b9b11.53311677","contact_id":"20719","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124887993 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":29000000,"server_time":"2026-03-30 16:26:00","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-30 16:30:19] [INFO] Checking activity reminders 
[2026-03-30 16:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:30:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:31:57] [INFO] Checking activity reminders 
[2026-03-30 16:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:32:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15885","deal_id":"local_69c7fa35e829a6.29274215","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:32:20","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:32:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15885","is_new_deal":false}
[2026-03-30 16:32:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 16:32:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:32:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:32:20] [INFO] getContactPrimaryPhone called {"contact_id":"15885"}
[2026-03-30 16:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:32:20] [INFO] getContactPrimaryPhone result {"contact_id":"15885","person_found":true,"primary_phone":"9387898137"}
[2026-03-30 16:32:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387898137"}
[2026-03-30 16:32:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387898137","contact_id":"15885","deal_id":"local_69c7fa35e829a6.29274215","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:32:20"}
[2026-03-30 16:32:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7fa35e829a6.29274215","contact_id":"15885","existing_deal_found":true,"existing_contact_id":"15885","existing_title":"معامله سوم 9387898137 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:32:20"}
[2026-03-30 16:32:20] [INFO] DealController.save validated payments {"deal_id":"local_69c7fa35e829a6.29274215","contact_id":"15885","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 16:32:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15885","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:32:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7fa35e829a6.29274215","contact_didar_id":"15885","title":"معامله سوم 9387898137 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9387898137","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیپور علیپور","existing_deal":"YES","existing_deal_id":"local_69c7fa35e829a6.29274215","existing_deal_status":"Pending","server_time":"2026-03-30 16:32:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:32:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7fa35e829a6.29274215","contact_id":"15885","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9387898137 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 16:32:20","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:32:27] [INFO] Checking activity reminders 
[2026-03-30 16:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:32:57] [INFO] Checking activity reminders 
[2026-03-30 16:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:33:27] [INFO] Checking activity reminders 
[2026-03-30 16:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:33:58] [INFO] Checking activity reminders 
[2026-03-30 16:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:34:21] [INFO] Checking activity reminders 
[2026-03-30 16:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:34:51] [INFO] Checking activity reminders 
[2026-03-30 16:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:34:54] [INFO] Activity save request {"post_data":{"contact_id":"15885","deal_id":"local_69c7fa35e829a6.29274215","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل سرمایه جهت خرید مغازه \r\nبرای نقدینگی و سرمایه جهت نوسان گیری آنقدر نیست \r\nخودش پیگیری میکنه ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:34:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 16:34:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:34:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15885","note_was_empty":true}
[2026-03-30 16:34:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"15885","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:34:54] [INFO] Updating virtual stage {"contact_id":"15885","stage_name":"deal_registered","force":false}
[2026-03-30 16:34:54] [INFO] Virtual stage successfully saved {"contact_id":"15885","stage_name":"deal_registered"}
[2026-03-30 16:34:54] [INFO] Virtual stage updated after activity save {"contact_id":"15885"}
[2026-03-30 16:34:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7fa35e829a6.29274215","stage":"تماس پیگیری","status_change":null}
[2026-03-30 16:34:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca74f640c1a5.93818658","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:34:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca74f640c1a5.93818658"}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:34:54] [INFO] Updating virtual stage {"contact_id":"15885","stage_name":"deal_registered","force":false}
[2026-03-30 16:34:54] [INFO] Virtual stage successfully saved {"contact_id":"15885","stage_name":"deal_registered"}
[2026-03-30 16:34:54] [INFO] Virtual stage updated after activity save {"contact_id":"15885"}
[2026-03-30 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-03-30 16:35:21] [INFO] Checking activity reminders 
[2026-03-30 16:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:35:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:38:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"check_reminders"}
[2026-03-30 16:38:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:15] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:17] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:18] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:25] [WARNING] Auth check failed - not authenticated {"session_id":"fv1atcij1e51lfgtefdtpneq1o","session_keys":[],"action":"log_client_event"}
[2026-03-30 16:38:25] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-30 16:38:25] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-30 16:38:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 16:38:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 16:38:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 16:38:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 16:38:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 16:38:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 16:38:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 16:38:56] [INFO] Checking activity reminders 
[2026-03-30 16:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:39:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 16:39:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 16:39:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 16:39:26] [INFO] Checking activity reminders 
[2026-03-30 16:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:39:56] [INFO] Checking activity reminders 
[2026-03-30 16:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:40:27] [INFO] Checking activity reminders 
[2026-03-30 16:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:40:57] [INFO] Checking activity reminders 
[2026-03-30 16:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:41:27] [INFO] Checking activity reminders 
[2026-03-30 16:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:41:57] [INFO] Checking activity reminders 
[2026-03-30 16:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:41:58] [INFO] Checking activity reminders 
[2026-03-30 16:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:42:27] [INFO] Checking activity reminders 
[2026-03-30 16:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:42:29] [INFO] Checking activity reminders 
[2026-03-30 16:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:42:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2926","deal_id":"local_69bbb0354de712.05829281","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:42:29","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:42:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2926","is_new_deal":false}
[2026-03-30 16:42:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-30 16:42:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-30 16:42:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-30 16:42:29] [INFO] getContactPrimaryPhone called {"contact_id":"2926"}
[2026-03-30 16:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:42:29] [INFO] getContactPrimaryPhone result {"contact_id":"2926","person_found":true,"primary_phone":"9114493610"}
[2026-03-30 16:42:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114493610"}
[2026-03-30 16:42:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114493610","contact_id":"2926","deal_id":"local_69bbb0354de712.05829281","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:42:29"}
[2026-03-30 16:42:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbb0354de712.05829281","contact_id":"2926","existing_deal_found":true,"existing_contact_id":"2926","existing_title":"معامله سوم 9114493610 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:42:29"}
[2026-03-30 16:42:29] [INFO] DealController.save validated payments {"deal_id":"local_69bbb0354de712.05829281","contact_id":"2926","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-03-30 16:42:29] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2926","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:42:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbb0354de712.05829281","contact_didar_id":"2926","title":"معامله سوم 9114493610 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9114493610","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسن زاده","existing_deal":"YES","existing_deal_id":"local_69bbb0354de712.05829281","existing_deal_status":"Pending","server_time":"2026-03-30 16:42:29","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:42:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbb0354de712.05829281","contact_id":"2926","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9114493610 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-03-30 16:42:29","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:42:58] [INFO] Checking activity reminders 
[2026-03-30 16:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:42:59] [INFO] Checking activity reminders 
[2026-03-30 16:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:43:28] [INFO] Checking activity reminders 
[2026-03-30 16:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:43:29] [INFO] Checking activity reminders 
[2026-03-30 16:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:43:30] [INFO] Activity save request {"post_data":{"contact_id":"2926","deal_id":"local_69bbb0354de712.05829281","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای کانال پرزنت شد \r\n۶ ماهه ۳۹ \r\nمیگه ۱۰ بزنم عضو کانال بشم \r\nشرایط پرداخت بهش گفتم \r\nقرار شد اطلاع بده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 16:43:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2926","note_was_empty":true}
[2026-03-30 16:43:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"2926","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:30] [INFO] Updating virtual stage {"contact_id":"2926","stage_name":"deal_registered","force":false}
[2026-03-30 16:43:30] [INFO] Virtual stage successfully saved {"contact_id":"2926","stage_name":"deal_registered"}
[2026-03-30 16:43:30] [INFO] Virtual stage updated after activity save {"contact_id":"2926"}
[2026-03-30 16:43:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb0354de712.05829281","stage":"تماس پیگیری","status_change":null}
[2026-03-30 16:43:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca76fab2cbd9.71117924","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca76fab2cbd9.71117924"}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:30] [INFO] Updating virtual stage {"contact_id":"2926","stage_name":"deal_registered","force":false}
[2026-03-30 16:43:30] [INFO] Virtual stage successfully saved {"contact_id":"2926","stage_name":"deal_registered"}
[2026-03-30 16:43:30] [INFO] Virtual stage updated after activity save {"contact_id":"2926"}
[2026-03-30 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 16:43:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:43:58] [INFO] Checking activity reminders 
[2026-03-30 16:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:44:26] [INFO] Checking activity reminders 
[2026-03-30 16:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:44:28] [INFO] Checking activity reminders 
[2026-03-30 16:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:44:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:44:56] [INFO] Checking activity reminders 
[2026-03-30 16:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:44:58] [INFO] Checking activity reminders 
[2026-03-30 16:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:45:27] [INFO] Checking activity reminders 
[2026-03-30 16:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:45:28] [INFO] Checking activity reminders 
[2026-03-30 16:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:45:57] [INFO] Checking activity reminders 
[2026-03-30 16:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:45:58] [INFO] Checking activity reminders 
[2026-03-30 16:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:46:27] [INFO] Checking activity reminders 
[2026-03-30 16:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:46:29] [INFO] Checking activity reminders 
[2026-03-30 16:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:46:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13350","deal_id":"local_69c7f98d6bc720.18798439","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 16:46:39","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 16:46:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:46:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13350","is_new_deal":false}
[2026-03-30 16:46:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 16:46:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:46:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 16:46:39] [INFO] getContactPrimaryPhone called {"contact_id":"13350"}
[2026-03-30 16:46:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:46:39] [INFO] getContactPrimaryPhone result {"contact_id":"13350","person_found":true,"primary_phone":"9964990191"}
[2026-03-30 16:46:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9964990191"}
[2026-03-30 16:46:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9964990191","contact_id":"13350","deal_id":"local_69c7f98d6bc720.18798439","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:46:39"}
[2026-03-30 16:46:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f98d6bc720.18798439","contact_id":"13350","existing_deal_found":true,"existing_contact_id":"13350","existing_title":"معامله دوم 9964990191 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 16:46:39"}
[2026-03-30 16:46:39] [INFO] DealController.save validated payments {"deal_id":"local_69c7f98d6bc720.18798439","contact_id":"13350","payments_count":0,"status":"lost","pipeline_stage":"معامله ناموفق"}
[2026-03-30 16:46:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13350","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 16:46:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f98d6bc720.18798439","contact_didar_id":"13350","title":"معامله دوم 9964990191 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9964990191","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله ناموفق","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدی","existing_deal":"YES","existing_deal_id":"local_69c7f98d6bc720.18798439","existing_deal_status":"Pending","server_time":"2026-03-30 16:46:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 16:46:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:46:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f98d6bc720.18798439","contact_id":"13350","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9964990191 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله ناموفق","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 16:46:39","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 16:46:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:46:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-03-30 16:46:57] [INFO] Checking activity reminders 
[2026-03-30 16:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:46:59] [INFO] Checking activity reminders 
[2026-03-30 16:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:47:29] [INFO] Checking activity reminders 
[2026-03-30 16:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:47:59] [INFO] Checking activity reminders 
[2026-03-30 16:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:48:29] [INFO] Checking activity reminders 
[2026-03-30 16:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:48:59] [INFO] Checking activity reminders 
[2026-03-30 16:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:49:29] [INFO] Checking activity reminders 
[2026-03-30 16:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:49:59] [INFO] Checking activity reminders 
[2026-03-30 16:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 16:50:30] [INFO] Checking activity reminders 
[2026-03-30 16:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 16:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:11:29] [INFO] Checking activity reminders 
[2026-03-30 17:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:11:43] [INFO] Checking activity reminders 
[2026-03-30 17:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:12:01] [INFO] Checking activity reminders 
[2026-03-30 17:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 17:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 17:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 17:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69ca2c719fdad2.33815261","person_id":"21922"}
[2026-03-30 17:12:40] [INFO] Checking activity reminders 
[2026-03-30 17:12:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:12:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:16:30] [INFO] Checking activity reminders 
[2026-03-30 17:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:16:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 17:16:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 17:16:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 17:16:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 17:16:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 17:16:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 17:16:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 17:16:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 17:16:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 17:17:00] [INFO] Checking activity reminders 
[2026-03-30 17:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:17:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-30 17:17:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-30 17:17:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-30 17:41:44] [INFO] Checking activity reminders 
[2026-03-30 17:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:41:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20295","person_id":"20192"}
[2026-03-30 17:42:14] [INFO] Checking activity reminders 
[2026-03-30 17:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:42:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1771","person_id":"20295"}
[2026-03-30 17:42:44] [INFO] Checking activity reminders 
[2026-03-30 17:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:42:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20295","person_id":"20192"}
[2026-03-30 17:42:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20295","person_id":"20192"}
[2026-03-30 17:42:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20295","person_id":"20192"}
[2026-03-30 17:43:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-03-30 17:43:14] [INFO] Checking activity reminders 
[2026-03-30 17:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:43:30] [INFO] Checking activity reminders 
[2026-03-30 17:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:00] [INFO] Checking activity reminders 
[2026-03-30 17:44:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:44:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:44:02] [INFO] Lead update received {"contact_id":"15330","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 17:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:02] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15330"}
[2026-03-30 17:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:20] [INFO] generateDealTitle result {"contact_id":"15330","person_name":"الیاس بخشی","mobile":"9013146790","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013146790"}
[2026-03-30 17:44:31] [INFO] Checking activity reminders 
[2026-03-30 17:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:44:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15330","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 17:44:34","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 17:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15330","is_new_deal":true}
[2026-03-30 17:44:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 17:44:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 17:44:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 17:44:34] [INFO] getContactPrimaryPhone called {"contact_id":"15330"}
[2026-03-30 17:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:34] [INFO] getContactPrimaryPhone result {"contact_id":"15330","person_found":true,"primary_phone":"9013146790"}
[2026-03-30 17:44:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013146790"}
[2026-03-30 17:44:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013146790","contact_id":"15330","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 17:44:34"}
[2026-03-30 17:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:34] [INFO] generateDealTitle result {"contact_id":"15330","person_name":"الیاس بخشی","mobile":"9013146790","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9013146790"}
[2026-03-30 17:44:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15330","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 17:44:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15330","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 17:44:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15330","title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9013146790","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"الیاس بخشی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 17:44:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 17:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:44:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 17:44:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15330","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 17:44:34","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 17:44:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-03-30 17:45:55] [INFO] Checking activity reminders 
[2026-03-30 17:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:45:58] [INFO] Checking activity reminders 
[2026-03-30 17:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:45:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-03-30 17:46:42] [INFO] Checking activity reminders 
[2026-03-30 17:46:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:46:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:46:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21010","person_id":"13071"}
[2026-03-30 17:47:03] [INFO] Checking activity reminders 
[2026-03-30 17:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:47:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-03-30 17:47:18] [INFO] Checking activity reminders 
[2026-03-30 17:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:47:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:48] [INFO] Checking activity reminders 
[2026-03-30 17:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:47:49] [INFO] Lead update received {"contact_id":"14402","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 17:47:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"14402"}
[2026-03-30 17:47:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:47:59] [INFO] generateDealTitle result {"contact_id":"14402","person_name":"نادر فضلی","mobile":"9037459106","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9037459106"}
[2026-03-30 17:48:18] [INFO] Checking activity reminders 
[2026-03-30 17:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:48:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14402","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 17:48:28","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 17:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:48:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14402","is_new_deal":true}
[2026-03-30 17:48:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 17:48:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 17:48:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 17:48:28] [INFO] getContactPrimaryPhone called {"contact_id":"14402"}
[2026-03-30 17:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:48:28] [INFO] getContactPrimaryPhone result {"contact_id":"14402","person_found":true,"primary_phone":"9037459106"}
[2026-03-30 17:48:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9037459106"}
[2026-03-30 17:48:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9037459106","contact_id":"14402","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 17:48:28"}
[2026-03-30 17:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:48:28] [INFO] generateDealTitle result {"contact_id":"14402","person_name":"نادر فضلی","mobile":"9037459106","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9037459106"}
[2026-03-30 17:48:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14402","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 17:48:28] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14402","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 17:48:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14402","title":"معامله دوم 9037459106 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9037459106","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نادر فضلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 17:48:28","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 17:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:48:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 17:48:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14402","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9037459106 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 17:48:28","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 17:48:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-03-30 17:48:49] [INFO] Checking activity reminders 
[2026-03-30 17:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:49:17] [WARNING] Auth check failed - not authenticated {"session_id":"mj45l1p8eu8962k5uh4g25h9ar","session_keys":[],"action":"log_client_event"}
[2026-03-30 17:49:17] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-30 17:49:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 17:49:19] [INFO] Checking activity reminders 
[2026-03-30 17:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:49:33] [INFO] Checking activity reminders 
[2026-03-30 17:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:49:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-03-30 17:50:07] [INFO] Checking activity reminders 
[2026-03-30 17:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:50:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-03-30 17:50:27] [INFO] Checking activity reminders 
[2026-03-30 17:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:50:28] [INFO] Checking activity reminders 
[2026-03-30 17:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:50:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10303","person_id":"33"}
[2026-03-30 17:50:46] [INFO] Checking activity reminders 
[2026-03-30 17:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:50:57] [INFO] Checking activity reminders 
[2026-03-30 17:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:51:09] [INFO] Checking activity reminders 
[2026-03-30 17:51:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:51:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:51:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1808","person_id":"15523"}
[2026-03-30 17:51:27] [INFO] Checking activity reminders 
[2026-03-30 17:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:51:38] [INFO] Activity save request {"post_data":{"contact_id":"14944","deal_id":"local_69bbe9a064ebb6.55099157","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تو کانال نبوده سرمایه ای نداره شرایط نداره باشه \r\nکل سرمایه ۲۵۰ت ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 17:51:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14944","note_was_empty":true}
[2026-03-30 17:51:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"14944","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Updating virtual stage {"contact_id":"14944","stage_name":"deal_registered","force":false}
[2026-03-30 17:51:38] [INFO] Virtual stage successfully saved {"contact_id":"14944","stage_name":"deal_registered"}
[2026-03-30 17:51:38] [INFO] Virtual stage updated after activity save {"contact_id":"14944"}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe9a064ebb6.55099157","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-30 17:51:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca86f27ae413.62205632","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca86f27ae413.62205632"}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:38] [INFO] Updating virtual stage {"contact_id":"14944","stage_name":"deal_registered","force":false}
[2026-03-30 17:51:38] [INFO] Virtual stage successfully saved {"contact_id":"14944","stage_name":"deal_registered"}
[2026-03-30 17:51:38] [INFO] Virtual stage updated after activity save {"contact_id":"14944"}
[2026-03-30 17:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14944","person_id":"6990"}
[2026-03-30 17:51:39] [INFO] Checking activity reminders 
[2026-03-30 17:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:51:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-03-30 17:51:57] [INFO] Checking activity reminders 
[2026-03-30 17:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:52:11] [INFO] Checking activity reminders 
[2026-03-30 17:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:52:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20620","person_id":"14602"}
[2026-03-30 17:52:27] [INFO] Checking activity reminders 
[2026-03-30 17:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:52:27] [INFO] Checking activity reminders 
[2026-03-30 17:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:52:57] [INFO] Checking activity reminders 
[2026-03-30 17:52:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:52:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:53:17] [INFO] Checking activity reminders 
[2026-03-30 17:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-03-30 17:53:36] [INFO] Checking activity reminders 
[2026-03-30 17:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15044","person_id":"13929"}
[2026-03-30 17:54:09] [INFO] Checking activity reminders 
[2026-03-30 17:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12282","person_id":"2088"}
[2026-03-30 17:54:31] [INFO] Checking activity reminders 
[2026-03-30 17:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:54:49] [INFO] Checking activity reminders 
[2026-03-30 17:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:54:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7371","person_id":"14772"}
[2026-03-30 17:55:25] [INFO] Checking activity reminders 
[2026-03-30 17:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:55:46] [INFO] Checking activity reminders 
[2026-03-30 17:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:55:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-03-30 17:56:03] [INFO] Checking activity reminders 
[2026-03-30 17:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:56:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-03-30 17:56:27] [INFO] Checking activity reminders 
[2026-03-30 17:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:56:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 17:56:56] [INFO] Checking activity reminders 
[2026-03-30 17:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:57:26] [INFO] Checking activity reminders 
[2026-03-30 17:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:58:49] [INFO] Checking activity reminders 
[2026-03-30 17:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"713","person_id":"11252"}
[2026-03-30 17:59:20] [INFO] Checking activity reminders 
[2026-03-30 17:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 17:59:50] [INFO] Checking activity reminders 
[2026-03-30 17:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 17:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:00:20] [INFO] Checking activity reminders 
[2026-03-30 18:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:04:35] [INFO] Checking activity reminders 
[2026-03-30 18:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:02] [INFO] Lead update received {"contact_id":"16031","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:02] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16031"}
[2026-03-30 18:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:05] [INFO] Checking activity reminders 
[2026-03-30 18:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:13] [INFO] generateDealTitle result {"contact_id":"16031","person_name":"حسین نیک رفتار","mobile":"9111203702","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111203702"}
[2026-03-30 18:05:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16031","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:05:33","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16031","is_new_deal":true}
[2026-03-30 18:05:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:05:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:05:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:05:33] [INFO] getContactPrimaryPhone called {"contact_id":"16031"}
[2026-03-30 18:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:33] [INFO] getContactPrimaryPhone result {"contact_id":"16031","person_found":true,"primary_phone":"9111203702"}
[2026-03-30 18:05:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111203702"}
[2026-03-30 18:05:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111203702","contact_id":"16031","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:05:33"}
[2026-03-30 18:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:33] [INFO] generateDealTitle result {"contact_id":"16031","person_name":"حسین نیک رفتار","mobile":"9111203702","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9111203702"}
[2026-03-30 18:05:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16031","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:05:33] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16031","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:05:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16031","title":"معامله دوم 9111203702 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9111203702","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین نیک رفتار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:05:33","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:05:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:05:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16031","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9111203702 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:05:33","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:05:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-03-30 18:05:39] [INFO] Checking activity reminders 
[2026-03-30 18:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:06:09] [INFO] Checking activity reminders 
[2026-03-30 18:06:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:06:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:06:39] [INFO] Checking activity reminders 
[2026-03-30 18:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:07:09] [INFO] Checking activity reminders 
[2026-03-30 18:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:07:40] [INFO] Checking activity reminders 
[2026-03-30 18:07:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:07:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:08:10] [INFO] Checking activity reminders 
[2026-03-30 18:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:08:40] [INFO] Checking activity reminders 
[2026-03-30 18:08:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:08:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:09:10] [INFO] Checking activity reminders 
[2026-03-30 18:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:09:40] [INFO] Checking activity reminders 
[2026-03-30 18:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:10:10] [INFO] Checking activity reminders 
[2026-03-30 18:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:10:41] [INFO] Checking activity reminders 
[2026-03-30 18:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:11:11] [INFO] Checking activity reminders 
[2026-03-30 18:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:11:41] [INFO] Checking activity reminders 
[2026-03-30 18:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:12:11] [INFO] Checking activity reminders 
[2026-03-30 18:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:12:41] [INFO] Checking activity reminders 
[2026-03-30 18:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:13:11] [INFO] Checking activity reminders 
[2026-03-30 18:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:13:13] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"check_reminders"}
[2026-03-30 18:13:13] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:13] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:15] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:16] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_products"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 18:13:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_products"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 18:13:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:25] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:25] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:25] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 18:13:25] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:27] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_products"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_leads"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:28] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:31] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:32] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:32] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:32] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:33] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:33] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:33] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:34] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:34] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:34] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_leads"}
[2026-03-30 18:13:34] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:34] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:41] [INFO] Checking activity reminders 
[2026-03-30 18:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:13:43] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:44] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:54] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:13:54] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-30 18:13:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 18:14:12] [INFO] Checking activity reminders 
[2026-03-30 18:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:14:25] [INFO] Checking activity reminders 
[2026-03-30 18:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:14:42] [INFO] Checking activity reminders 
[2026-03-30 18:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:14:55] [INFO] Checking activity reminders 
[2026-03-30 18:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:15:12] [INFO] Checking activity reminders 
[2026-03-30 18:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:15:12] [INFO] Checking activity reminders 
[2026-03-30 18:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:15:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:15:42] [INFO] Checking activity reminders 
[2026-03-30 18:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:15:42] [INFO] Checking activity reminders 
[2026-03-30 18:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:16:12] [INFO] Checking activity reminders 
[2026-03-30 18:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:16:12] [INFO] Checking activity reminders 
[2026-03-30 18:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:16:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:16:42","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 18:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:16:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","is_new_deal":false}
[2026-03-30 18:16:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 18:16:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 18:16:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-30 18:16:42] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-30 18:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:16:42] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-30 18:16:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-30 18:16:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 18:16:42"}
[2026-03-30 18:16:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 18:16:42"}
[2026-03-30 18:16:42] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 18:16:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 18:16:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-30 18:16:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 18:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:16:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":0,"server_time":"2026-03-30 18:16:42","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 18:16:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:16:42] [INFO] Checking activity reminders 
[2026-03-30 18:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:16:42] [INFO] Checking activity reminders 
[2026-03-30 18:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:17:12] [INFO] Checking activity reminders 
[2026-03-30 18:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:17:14] [INFO] Checking activity reminders 
[2026-03-30 18:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:17:42] [INFO] Checking activity reminders 
[2026-03-30 18:17:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:17:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:18:13] [INFO] Checking activity reminders 
[2026-03-30 18:18:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:18:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:18:31] [INFO] Checking activity reminders 
[2026-03-30 18:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:18:43] [INFO] Checking activity reminders 
[2026-03-30 18:18:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:18:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:18:43] [INFO] Checking activity reminders 
[2026-03-30 18:18:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:18:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:18:55] [INFO] Checking activity reminders 
[2026-03-30 18:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:19:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:19:08","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 18:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:19:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17001","is_new_deal":false}
[2026-03-30 18:19:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:19:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:19:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:19:08] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-30 18:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:19:08] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-30 18:19:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-30 18:19:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 18:19:08"}
[2026-03-30 18:19:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 18:19:08"}
[2026-03-30 18:19:08] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 18:19:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 18:19:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-30 18:19:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 18:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:19:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-03-30 18:19:08","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 18:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:19:13] [INFO] Checking activity reminders 
[2026-03-30 18:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:19:25] [INFO] Checking activity reminders 
[2026-03-30 18:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:19:43] [INFO] Checking activity reminders 
[2026-03-30 18:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:19:56] [INFO] Checking activity reminders 
[2026-03-30 18:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:20:00] [INFO] Activity save request {"post_data":{"contact_id":"17001","deal_id":"local_699ed482204c51.63145890","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"به دلیل شرایط جنگ خیلی به چالش خورده میخواد که عضویت داشته باشه در ۲ مرحله پرداخت \r\n۱۰ خرداد تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 18:20:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17001","note_was_empty":true}
[2026-03-30 18:20:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"17001","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:00] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-03-30 18:20:00] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-03-30 18:20:00] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-03-30 18:20:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ed482204c51.63145890","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-30 18:20:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca8d980c6cc0.02828245","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca8d980c6cc0.02828245"}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:00] [INFO] Updating virtual stage {"contact_id":"17001","stage_name":"deal_registered","force":false}
[2026-03-30 18:20:00] [INFO] Virtual stage successfully saved {"contact_id":"17001","stage_name":"deal_registered"}
[2026-03-30 18:20:00] [INFO] Virtual stage updated after activity save {"contact_id":"17001"}
[2026-03-30 18:20:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-30 18:20:15] [INFO] Checking activity reminders 
[2026-03-30 18:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:20:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13250","person_id":"11110"}
[2026-03-30 18:20:40] [INFO] Checking activity reminders 
[2026-03-30 18:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3099","person_id":"11635"}
[2026-03-30 18:20:53] [INFO] Checking activity reminders 
[2026-03-30 18:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:20:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-03-30 18:21:10] [INFO] Checking activity reminders 
[2026-03-30 18:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:21:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12098","person_id":"11453"}
[2026-03-30 18:21:26] [INFO] Checking activity reminders 
[2026-03-30 18:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:21:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2926","person_id":"11484"}
[2026-03-30 18:21:50] [INFO] Checking activity reminders 
[2026-03-30 18:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6956","person_id":"10610"}
[2026-03-30 18:22:04] [INFO] Checking activity reminders 
[2026-03-30 18:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:22:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"846","person_id":"10682"}
[2026-03-30 18:22:19] [INFO] Checking activity reminders 
[2026-03-30 18:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:22:33] [INFO] Checking activity reminders 
[2026-03-30 18:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_163","person_id":"21238"}
[2026-03-30 18:22:53] [INFO] Checking activity reminders 
[2026-03-30 18:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-03-30 18:23:06] [INFO] Checking activity reminders 
[2026-03-30 18:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:17] [INFO] generateDealTitle result {"contact_id":"7952","person_name":"خانم نعمت زاده","mobile":"9120124434","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120124434"}
[2026-03-30 18:23:36] [INFO] Checking activity reminders 
[2026-03-30 18:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:23:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7952","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:23:42","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7952","is_new_deal":true}
[2026-03-30 18:23:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:23:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:23:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:23:42] [INFO] getContactPrimaryPhone called {"contact_id":"7952"}
[2026-03-30 18:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:42] [INFO] getContactPrimaryPhone result {"contact_id":"7952","person_found":true,"primary_phone":"9120124434"}
[2026-03-30 18:23:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120124434"}
[2026-03-30 18:23:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120124434","contact_id":"7952","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:23:42"}
[2026-03-30 18:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:42] [INFO] generateDealTitle result {"contact_id":"7952","person_name":"خانم نعمت زاده","mobile":"9120124434","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120124434"}
[2026-03-30 18:23:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7952","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:23:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7952","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:23:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7952","title":"معامله سوم 9120124434 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120124434","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم نعمت زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:23:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:23:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:23:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:23:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7952","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120124434 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:23:42","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:23:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-03-30 18:24:13] [INFO] Checking activity reminders 
[2026-03-30 18:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:24:36] [INFO] Checking activity reminders 
[2026-03-30 18:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:24:51] [INFO] Checking activity reminders 
[2026-03-30 18:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:25:28] [INFO] Checking activity reminders 
[2026-03-30 18:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:47] [INFO] Lead update received {"contact_id":"5347","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:25:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:47] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5347"}
[2026-03-30 18:25:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:50] [INFO] generateDealTitle result {"contact_id":"5347","person_name":"حمید صفائی فر","mobile":"9120252672","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120252672"}
[2026-03-30 18:25:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:25:58] [INFO] Checking activity reminders 
[2026-03-30 18:25:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:25:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:01] [INFO] generateDealTitle result {"contact_id":"5347","person_name":"حمید صفائی فر","mobile":"9120252672","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120252672"}
[2026-03-30 18:26:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5347","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:26:26","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5347","is_new_deal":true}
[2026-03-30 18:26:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:26:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:26:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:26:26] [INFO] getContactPrimaryPhone called {"contact_id":"5347"}
[2026-03-30 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:26] [INFO] getContactPrimaryPhone result {"contact_id":"5347","person_found":true,"primary_phone":"9120252672"}
[2026-03-30 18:26:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120252672"}
[2026-03-30 18:26:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120252672","contact_id":"5347","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:26:26"}
[2026-03-30 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:26] [INFO] generateDealTitle result {"contact_id":"5347","person_name":"حمید صفائی فر","mobile":"9120252672","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120252672"}
[2026-03-30 18:26:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5347","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:26:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5347","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:26:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5347","title":"معامله سوم 9120252672 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120252672","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید صفائی فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:26:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:26:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5347","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120252672 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:26:26","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-03-30 18:26:28] [INFO] Checking activity reminders 
[2026-03-30 18:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:26:51] [INFO] Checking activity reminders 
[2026-03-30 18:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:26:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:26:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:26:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:26:57] [INFO] generateDealTitle result {"contact_id":"21180","person_name":"مجتبی اسماعیلی","mobile":"9120338072","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120338072"}
[2026-03-30 18:27:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21180","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:27:14","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:27:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:27:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21180","is_new_deal":true}
[2026-03-30 18:27:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:14] [INFO] getContactPrimaryPhone called {"contact_id":"21180"}
[2026-03-30 18:27:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:27:14] [INFO] getContactPrimaryPhone result {"contact_id":"21180","person_found":true,"primary_phone":"9120338072"}
[2026-03-30 18:27:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120338072"}
[2026-03-30 18:27:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120338072","contact_id":"21180","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:27:14"}
[2026-03-30 18:27:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:27:14] [INFO] generateDealTitle result {"contact_id":"21180","person_name":"مجتبی اسماعیلی","mobile":"9120338072","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120338072"}
[2026-03-30 18:27:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21180","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:27:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21180","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:27:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21180","title":"معامله دوم 9120338072 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120338072","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی اسماعیلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:27:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:27:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:27:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:27:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21180","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120338072 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:27:14","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:27:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-03-30 18:27:22] [INFO] Checking activity reminders 
[2026-03-30 18:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:27:33] [INFO] Checking activity reminders 
[2026-03-30 18:27:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:27:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:38] [INFO] generateDealTitle result {"contact_id":"2232","person_name":"فضایی","mobile":"9120753716","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120753716"}
[2026-03-30 18:27:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2232","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:27:55","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2232","is_new_deal":true}
[2026-03-30 18:27:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:27:55] [INFO] getContactPrimaryPhone called {"contact_id":"2232"}
[2026-03-30 18:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:55] [INFO] getContactPrimaryPhone result {"contact_id":"2232","person_found":true,"primary_phone":"9120753716"}
[2026-03-30 18:27:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120753716"}
[2026-03-30 18:27:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120753716","contact_id":"2232","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:27:55"}
[2026-03-30 18:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:55] [INFO] generateDealTitle result {"contact_id":"2232","person_name":"فضایی","mobile":"9120753716","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9120753716"}
[2026-03-30 18:27:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2232","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:27:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2232","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:27:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2232","title":"معامله سوم 9120753716 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120753716","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:27:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:27:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:27:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2232","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120753716 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:27:55","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-03-30 18:28:07] [INFO] Checking activity reminders 
[2026-03-30 18:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:13] [INFO] generateDealTitle result {"contact_id":"7645","person_name":"پالیزبان","mobile":"9120755224","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120755224"}
[2026-03-30 18:28:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7645","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:28:32","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:28:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7645","is_new_deal":true}
[2026-03-30 18:28:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:28:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:28:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:28:32] [INFO] getContactPrimaryPhone called {"contact_id":"7645"}
[2026-03-30 18:28:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:32] [INFO] getContactPrimaryPhone result {"contact_id":"7645","person_found":true,"primary_phone":"9120755224"}
[2026-03-30 18:28:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120755224"}
[2026-03-30 18:28:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120755224","contact_id":"7645","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:28:32"}
[2026-03-30 18:28:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:32] [INFO] generateDealTitle result {"contact_id":"7645","person_name":"پالیزبان","mobile":"9120755224","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9120755224"}
[2026-03-30 18:28:32] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7645","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:28:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7645","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:28:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7645","title":"معامله دوم 9120755224 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120755224","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پالیزبان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:28:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:28:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:32] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:28:32] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7645","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9120755224 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:28:32","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:28:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-03-30 18:28:44] [INFO] Checking activity reminders 
[2026-03-30 18:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:28:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-03-30 18:29:12] [INFO] Checking activity reminders 
[2026-03-30 18:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:29:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:23] [INFO] generateDealTitle result {"contact_id":"3879","person_name":"علی سپهری","mobile":"9121003495","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121003495"}
[2026-03-30 18:29:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3879","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:29:40","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3879","is_new_deal":true}
[2026-03-30 18:29:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:29:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:29:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:29:40] [INFO] getContactPrimaryPhone called {"contact_id":"3879"}
[2026-03-30 18:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:40] [INFO] getContactPrimaryPhone result {"contact_id":"3879","person_found":true,"primary_phone":"9121003495"}
[2026-03-30 18:29:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121003495"}
[2026-03-30 18:29:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121003495","contact_id":"3879","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:29:40"}
[2026-03-30 18:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:40] [INFO] generateDealTitle result {"contact_id":"3879","person_name":"علی سپهری","mobile":"9121003495","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121003495"}
[2026-03-30 18:29:40] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3879","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:29:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3879","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:29:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3879","title":"معامله سوم 9121003495 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121003495","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی سپهری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:29:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:40] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:29:40] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3879","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9121003495 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:29:40","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:29:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-03-30 18:29:42] [INFO] Checking activity reminders 
[2026-03-30 18:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:29:51] [INFO] Checking activity reminders 
[2026-03-30 18:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:29:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:02] [INFO] generateDealTitle result {"contact_id":"1467","person_name":"ناصرزاده","mobile":"9121035422","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121035422"}
[2026-03-30 18:30:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1467","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:30:18","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1467","is_new_deal":true}
[2026-03-30 18:30:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:30:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:30:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:30:18] [INFO] getContactPrimaryPhone called {"contact_id":"1467"}
[2026-03-30 18:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:18] [INFO] getContactPrimaryPhone result {"contact_id":"1467","person_found":true,"primary_phone":"9121035422"}
[2026-03-30 18:30:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121035422"}
[2026-03-30 18:30:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121035422","contact_id":"1467","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:30:18"}
[2026-03-30 18:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:18] [INFO] generateDealTitle result {"contact_id":"1467","person_name":"ناصرزاده","mobile":"9121035422","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121035422"}
[2026-03-30 18:30:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1467","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:30:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1467","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:30:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1467","title":"معامله دوم 9121035422 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121035422","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصرزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:30:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:30:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1467","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121035422 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:30:18","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-03-30 18:30:22] [INFO] Checking activity reminders 
[2026-03-30 18:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:30:31] [INFO] Checking activity reminders 
[2026-03-30 18:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:30:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:30:37] [INFO] generateDealTitle result {"contact_id":"2947","person_name":"حسین صنعتی","mobile":"9121211748","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9121211748"}
[2026-03-30 18:31:01] [INFO] Checking activity reminders 
[2026-03-30 18:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:31:31] [INFO] Checking activity reminders 
[2026-03-30 18:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:32:01] [INFO] Checking activity reminders 
[2026-03-30 18:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:32:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2947","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:32:14","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:32:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2947","is_new_deal":true}
[2026-03-30 18:32:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:32:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:32:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:32:14] [INFO] getContactPrimaryPhone called {"contact_id":"2947"}
[2026-03-30 18:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:32:14] [INFO] getContactPrimaryPhone result {"contact_id":"2947","person_found":true,"primary_phone":"9121211748"}
[2026-03-30 18:32:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121211748"}
[2026-03-30 18:32:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121211748","contact_id":"2947","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:32:14"}
[2026-03-30 18:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:32:14] [INFO] generateDealTitle result {"contact_id":"2947","person_name":"حسین صنعتی","mobile":"9121211748","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9121211748"}
[2026-03-30 18:32:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2947","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:32:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2947","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:32:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2947","title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9121211748","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین صنعتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:32:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:32:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:32:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2947","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:32:14","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-03-30 18:32:21] [INFO] Checking activity reminders 
[2026-03-30 18:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:32:40] [INFO] Checking activity reminders 
[2026-03-30 18:32:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:32:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:32:46] [INFO] generateDealTitle result {"contact_id":"16977","person_name":"فرهمند","mobile":"9121425205","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121425205"}
[2026-03-30 18:33:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16977","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:33:03","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:33:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:33:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16977","is_new_deal":true}
[2026-03-30 18:33:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:03] [INFO] getContactPrimaryPhone called {"contact_id":"16977"}
[2026-03-30 18:33:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:33:03] [INFO] getContactPrimaryPhone result {"contact_id":"16977","person_found":true,"primary_phone":"9121425205"}
[2026-03-30 18:33:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121425205"}
[2026-03-30 18:33:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121425205","contact_id":"16977","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:33:03"}
[2026-03-30 18:33:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:33:03] [INFO] generateDealTitle result {"contact_id":"16977","person_name":"فرهمند","mobile":"9121425205","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121425205"}
[2026-03-30 18:33:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16977","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:33:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16977","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:33:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16977","title":"معامله دوم 9121425205 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121425205","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهمند","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:33:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:33:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:33:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:33:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16977","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121425205 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:33:03","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:33:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-03-30 18:33:15] [INFO] Checking activity reminders 
[2026-03-30 18:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:33:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:22] [INFO] generateDealTitle result {"contact_id":"15620","person_name":"مقدمیان","mobile":"9121472202","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121472202"}
[2026-03-30 18:33:39] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15620","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:33:39","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15620","is_new_deal":true}
[2026-03-30 18:33:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:33:39] [INFO] getContactPrimaryPhone called {"contact_id":"15620"}
[2026-03-30 18:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:39] [INFO] getContactPrimaryPhone result {"contact_id":"15620","person_found":true,"primary_phone":"9121472202"}
[2026-03-30 18:33:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121472202"}
[2026-03-30 18:33:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121472202","contact_id":"15620","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:33:39"}
[2026-03-30 18:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:39] [INFO] generateDealTitle result {"contact_id":"15620","person_name":"مقدمیان","mobile":"9121472202","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121472202"}
[2026-03-30 18:33:39] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15620","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:33:39] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15620","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:33:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15620","title":"معامله دوم 9121472202 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121472202","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقدمیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:33:39","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:39] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:33:39] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15620","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121472202 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:33:39","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-03-30 18:33:49] [INFO] Checking activity reminders 
[2026-03-30 18:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:33:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:33:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:33:56] [INFO] generateDealTitle result {"contact_id":"12740","person_name":"قشلاقی","mobile":"9121571976","existing_deals":0,"ordinal":"اول","title":"معامله اول 9121571976"}
[2026-03-30 18:34:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12740","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:34:13","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:34:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12740","is_new_deal":true}
[2026-03-30 18:34:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:13] [INFO] getContactPrimaryPhone called {"contact_id":"12740"}
[2026-03-30 18:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:34:13] [INFO] getContactPrimaryPhone result {"contact_id":"12740","person_found":true,"primary_phone":"9121571976"}
[2026-03-30 18:34:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121571976"}
[2026-03-30 18:34:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121571976","contact_id":"12740","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:34:13"}
[2026-03-30 18:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:34:13] [INFO] generateDealTitle result {"contact_id":"12740","person_name":"قشلاقی","mobile":"9121571976","existing_deals":0,"ordinal":"اول","title":"معامله اول 9121571976"}
[2026-03-30 18:34:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12740","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:34:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12740","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:34:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12740","title":"معامله اول 9121571976 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9121571976","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قشلاقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:34:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:34:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:34:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12740","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:34:13","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-03-30 18:34:24] [INFO] Checking activity reminders 
[2026-03-30 18:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:32] [INFO] generateDealTitle result {"contact_id":"4120","person_name":"رضا خانی","mobile":"9121888212","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121888212"}
[2026-03-30 18:34:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4120","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:34:50","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4120","is_new_deal":true}
[2026-03-30 18:34:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:34:50] [INFO] getContactPrimaryPhone called {"contact_id":"4120"}
[2026-03-30 18:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:50] [INFO] getContactPrimaryPhone result {"contact_id":"4120","person_found":true,"primary_phone":"9121888212"}
[2026-03-30 18:34:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121888212"}
[2026-03-30 18:34:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121888212","contact_id":"4120","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:34:50"}
[2026-03-30 18:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:50] [INFO] generateDealTitle result {"contact_id":"4120","person_name":"رضا خانی","mobile":"9121888212","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9121888212"}
[2026-03-30 18:34:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4120","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:34:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4120","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:34:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4120","title":"معامله سوم 9121888212 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121888212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا خانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:34:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:34:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:34:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4120","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9121888212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:34:50","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-03-30 18:35:00] [INFO] Checking activity reminders 
[2026-03-30 18:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-03-30 18:35:21] [INFO] Checking activity reminders 
[2026-03-30 18:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13102","person_id":"1048"}
[2026-03-30 18:35:50] [INFO] Checking activity reminders 
[2026-03-30 18:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:35:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:35:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:35:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:35:55] [INFO] generateDealTitle result {"contact_id":"21457","person_name":"سحرخیز","mobile":"9122478371","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122478371"}
[2026-03-30 18:36:20] [INFO] Checking activity reminders 
[2026-03-30 18:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:36:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21457","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:36:26","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:36:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21457","is_new_deal":true}
[2026-03-30 18:36:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:36:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:36:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:36:26] [INFO] getContactPrimaryPhone called {"contact_id":"21457"}
[2026-03-30 18:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:36:26] [INFO] getContactPrimaryPhone result {"contact_id":"21457","person_found":true,"primary_phone":"9122478371"}
[2026-03-30 18:36:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122478371"}
[2026-03-30 18:36:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122478371","contact_id":"21457","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:36:26"}
[2026-03-30 18:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:36:26] [INFO] generateDealTitle result {"contact_id":"21457","person_name":"سحرخیز","mobile":"9122478371","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122478371"}
[2026-03-30 18:36:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21457","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:36:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21457","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:36:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21457","title":"معامله دوم 9122478371 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122478371","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سحرخیز","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:36:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:36:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:36:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21457","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9122478371 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:36:26","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:36:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-03-30 18:36:42] [INFO] Checking activity reminders 
[2026-03-30 18:36:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:36:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:36:49] [INFO] generateDealTitle result {"contact_id":"8214","person_name":"فرهاد فرهانی","mobile":"9122516393","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122516393"}
[2026-03-30 18:37:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8214","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:37:05","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:37:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:37:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8214","is_new_deal":true}
[2026-03-30 18:37:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:37:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:37:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:37:05] [INFO] getContactPrimaryPhone called {"contact_id":"8214"}
[2026-03-30 18:37:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:37:05] [INFO] getContactPrimaryPhone result {"contact_id":"8214","person_found":true,"primary_phone":"9122516393"}
[2026-03-30 18:37:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122516393"}
[2026-03-30 18:37:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122516393","contact_id":"8214","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:37:05"}
[2026-03-30 18:37:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:37:05] [INFO] generateDealTitle result {"contact_id":"8214","person_name":"فرهاد فرهانی","mobile":"9122516393","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122516393"}
[2026-03-30 18:37:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8214","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:37:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8214","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:37:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8214","title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9122516393","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهاد فرهانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:37:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:37:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:37:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:37:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8214","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:37:05","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:37:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-03-30 18:37:12] [INFO] Checking activity reminders 
[2026-03-30 18:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:37:28] [INFO] Checking activity reminders 
[2026-03-30 18:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-30 18:37:53] [INFO] Checking activity reminders 
[2026-03-30 18:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:38:11] [INFO] Checking activity reminders 
[2026-03-30 18:38:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:38:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:38:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:18] [INFO] generateDealTitle result {"contact_id":"11884","person_name":"آهنگر","mobile":"9122938221","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122938221"}
[2026-03-30 18:38:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11884","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:38:33","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11884","is_new_deal":true}
[2026-03-30 18:38:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:38:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:38:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:38:33] [INFO] getContactPrimaryPhone called {"contact_id":"11884"}
[2026-03-30 18:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:33] [INFO] getContactPrimaryPhone result {"contact_id":"11884","person_found":true,"primary_phone":"9122938221"}
[2026-03-30 18:38:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122938221"}
[2026-03-30 18:38:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122938221","contact_id":"11884","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:38:33"}
[2026-03-30 18:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:33] [INFO] generateDealTitle result {"contact_id":"11884","person_name":"آهنگر","mobile":"9122938221","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122938221"}
[2026-03-30 18:38:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11884","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:38:33] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11884","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:38:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11884","title":"معامله سوم 9122938221 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9122938221","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:38:33","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:38:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:38:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11884","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9122938221 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:38:33","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:38:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-03-30 18:38:44] [INFO] Checking activity reminders 
[2026-03-30 18:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:38:50] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_158","person_name":"فریماه اخوان","mobile":"9030743020","existing_deals":0,"ordinal":"اول","title":"معامله اول 9030743020"}
[2026-03-30 18:39:09] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_158","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:39:09","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_158","is_new_deal":true}
[2026-03-30 18:39:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:09] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_158"}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:09] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_158","person_found":true,"primary_phone":"9030743020"}
[2026-03-30 18:39:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9030743020"}
[2026-03-30 18:39:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9030743020","contact_id":"local_1403_09_26_158","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:39:09"}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:09] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_158","person_name":"فریماه اخوان","mobile":"9030743020","existing_deals":0,"ordinal":"اول","title":"معامله اول 9030743020"}
[2026-03-30 18:39:09] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_158","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:39:09] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_158","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:39:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_158","title":"معامله اول 9030743020 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9030743020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فریماه اخوان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:39:09","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:09] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:39:09] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_158","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9030743020 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:39:09","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-03-30 18:39:22] [INFO] Checking activity reminders 
[2026-03-30 18:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:32] [INFO] generateDealTitle result {"contact_id":"7993","person_name":"معتمدپور","mobile":"9123077796","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9123077796"}
[2026-03-30 18:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:32] [INFO] generateDealTitle result {"contact_id":"7993","person_name":"معتمدپور","mobile":"9123077796","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9123077796"}
[2026-03-30 18:39:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7993","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:39:49","session_id":"fv1atcij1e51lfgtefdtpneq1o"}
[2026-03-30 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7993","is_new_deal":true}
[2026-03-30 18:39:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:39:49] [INFO] getContactPrimaryPhone called {"contact_id":"7993"}
[2026-03-30 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:49] [INFO] getContactPrimaryPhone result {"contact_id":"7993","person_found":true,"primary_phone":"9123077796"}
[2026-03-30 18:39:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123077796"}
[2026-03-30 18:39:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123077796","contact_id":"7993","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-30 18:39:49"}
[2026-03-30 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:49] [INFO] generateDealTitle result {"contact_id":"7993","person_name":"معتمدپور","mobile":"9123077796","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9123077796"}
[2026-03-30 18:39:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7993","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-03-30 18:39:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7993","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-30 18:39:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7993","title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9123077796","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"معتمدپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-03-30 18:39:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-30 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-03-30 18:39:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7993","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-03-30 18:39:49","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-30 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-03-30 18:39:56] [INFO] Checking activity reminders 
[2026-03-30 18:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:40:11] [INFO] Checking activity reminders 
[2026-03-30 18:40:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:40:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:40:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:41] [INFO] Checking activity reminders 
[2026-03-30 18:40:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:40:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:40:55] [INFO] Lead update received {"contact_id":"local_69b81178870152.22109174","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:55] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b81178870152.22109174"}
[2026-03-30 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-03-30 18:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-30 18:41:11] [INFO] Checking activity reminders 
[2026-03-30 18:41:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:41:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:41] [INFO] Checking activity reminders 
[2026-03-30 18:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:41:56] [INFO] Lead update received {"contact_id":"local_69b719ec78bce8.83422873","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:56] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b719ec78bce8.83422873"}
[2026-03-30 18:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:41:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-03-30 18:42:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 18:42:12] [INFO] Checking activity reminders 
[2026-03-30 18:42:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:42:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:42:31] [INFO] Lead update received {"contact_id":"local_6995dc31cae7b3.59087531","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 18:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 18:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 18:42:31] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_6995dc31cae7b3.59087531"}
[2026-03-30 18:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-03-30 18:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:42] [INFO] Checking activity reminders 
[2026-03-30 18:42:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:42:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:42:58] [INFO] Lead update received {"contact_id":"local_69b53990872fd7.72637675","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:58] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b53990872fd7.72637675"}
[2026-03-30 18:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-03-30 18:43:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-30 18:43:12] [INFO] Checking activity reminders 
[2026-03-30 18:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-30 18:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-30 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:42] [INFO] Checking activity reminders 
[2026-03-30 18:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:43:58] [INFO] Lead update received {"contact_id":"local_69b5ccb29d5e93.43869677","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 18:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:58] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b5ccb29d5e93.43869677"}
[2026-03-30 18:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-03-30 18:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-03-30 18:44:12] [INFO] Checking activity reminders 
[2026-03-30 18:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:44:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-03-30 18:44:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-03-30 18:44:42] [INFO] Checking activity reminders 
[2026-03-30 18:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:45:12] [INFO] Checking activity reminders 
[2026-03-30 18:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:45:42] [INFO] Checking activity reminders 
[2026-03-30 18:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:46:12] [INFO] Checking activity reminders 
[2026-03-30 18:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:46:43] [INFO] Checking activity reminders 
[2026-03-30 18:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:49:33] [WARNING] Auth check failed - not authenticated {"session_id":"mj45l1p8eu8962k5uh4g25h9ar","session_keys":[],"action":"log_client_event"}
[2026-03-30 18:49:33] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-03-30 18:49:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 18:50:04] [INFO] Checking activity reminders 
[2026-03-30 18:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:50:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:34] [INFO] Checking activity reminders 
[2026-03-30 18:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:50:57] [INFO] Activity save request {"post_data":{"contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تغییر فاکتو. ۶ماهه میشه ۳۹ ت تا اخر فروردین تسویه","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 18:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 18:50:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 18:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20546","note_was_empty":true}
[2026-03-30 18:50:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"20546","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 18:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:57] [INFO] Updating virtual stage {"contact_id":"20546","stage_name":"deal_registered","force":false}
[2026-03-30 18:50:57] [INFO] Virtual stage successfully saved {"contact_id":"20546","stage_name":"deal_registered"}
[2026-03-30 18:50:57] [INFO] Virtual stage updated after activity save {"contact_id":"20546"}
[2026-03-30 18:50:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a9bf3a9a3b0.14870802","stage":"پیگیری مانده حساب","status_change":null}
[2026-03-30 18:50:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca94d9d0d9b2.10771493","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 18:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca94d9d0d9b2.10771493"}
[2026-03-30 18:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:50:57] [INFO] Updating virtual stage {"contact_id":"20546","stage_name":"deal_registered","force":false}
[2026-03-30 18:50:57] [INFO] Virtual stage successfully saved {"contact_id":"20546","stage_name":"deal_registered"}
[2026-03-30 18:50:57] [INFO] Virtual stage updated after activity save {"contact_id":"20546"}
[2026-03-30 18:50:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:51:04] [INFO] Checking activity reminders 
[2026-03-30 18:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:51:34] [INFO] Checking activity reminders 
[2026-03-30 18:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:51:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:51:45","session_id":"mj45l1p8eu8962k5uh4g25h9ar"}
[2026-03-30 18:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:51:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20546","is_new_deal":false}
[2026-03-30 18:51:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:51:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:51:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:51:45] [INFO] getContactPrimaryPhone called {"contact_id":"20546"}
[2026-03-30 18:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:51:45] [INFO] getContactPrimaryPhone result {"contact_id":"20546","person_found":true,"primary_phone":"9122718955"}
[2026-03-30 18:51:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122718955"}
[2026-03-30 18:51:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122718955","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-30 18:51:45"}
[2026-03-30 18:51:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","existing_deal_found":true,"existing_contact_id":"20546","existing_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-30 18:51:45"}
[2026-03-30 18:51:45] [INFO] DealController.save validated payments {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 18:51:45] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20546","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 18:51:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a9bf3a9a3b0.14870802","contact_didar_id":"20546","title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9122718955","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آزاد","existing_deal":"YES","existing_deal_id":"local_694a9bf3a9a3b0.14870802","existing_deal_status":"Pending","server_time":"2026-03-30 18:51:45","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-30 18:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:51:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":20000000,"server_time":"2026-03-30 18:51:45","ip_address":"31.2.140.209","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-30 18:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-03-30 18:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:04] [INFO] Checking activity reminders 
[2026-03-30 18:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:52:34] [INFO] Checking activity reminders 
[2026-03-30 18:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:52:39] [INFO] Activity save request {"post_data":{"contact_id":"4030","deal_id":"local_69c7f03a5c3385.76956491","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"۲۰ ت زو\r\nد ارسال کردم مالی چک کنه تایید بده تسویه اردیبهشت","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-03-30 18:52:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4030","note_was_empty":true}
[2026-03-30 18:52:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"4030","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:39] [INFO] Updating virtual stage {"contact_id":"4030","stage_name":"deal_registered","force":false}
[2026-03-30 18:52:39] [INFO] Virtual stage successfully saved {"contact_id":"4030","stage_name":"deal_registered"}
[2026-03-30 18:52:39] [INFO] Virtual stage updated after activity save {"contact_id":"4030"}
[2026-03-30 18:52:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f03a5c3385.76956491","stage":"ارسال لینک پرداخت","status_change":null}
[2026-03-30 18:52:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ca953f31d9c4.61115311","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69ca953f31d9c4.61115311"}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:52:39] [INFO] Updating virtual stage {"contact_id":"4030","stage_name":"deal_registered","force":false}
[2026-03-30 18:52:39] [INFO] Virtual stage successfully saved {"contact_id":"4030","stage_name":"deal_registered"}
[2026-03-30 18:52:39] [INFO] Virtual stage updated after activity save {"contact_id":"4030"}
[2026-03-30 18:52:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:53:05] [INFO] Checking activity reminders 
[2026-03-30 18:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:53:38] [INFO] Checking activity reminders 
[2026-03-30 18:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:54:08] [INFO] Checking activity reminders 
[2026-03-30 18:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 18:54:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4030","deal_id":"local_69c7f03a5c3385.76956491","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 18:54:28","session_id":"mj45l1p8eu8962k5uh4g25h9ar"}
[2026-03-30 18:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:54:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4030","is_new_deal":false}
[2026-03-30 18:54:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 18:54:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:54:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 18:54:28] [INFO] getContactPrimaryPhone called {"contact_id":"4030"}
[2026-03-30 18:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:54:28] [INFO] getContactPrimaryPhone result {"contact_id":"4030","person_found":true,"primary_phone":"9128328935"}
[2026-03-30 18:54:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128328935"}
[2026-03-30 18:54:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128328935","contact_id":"4030","deal_id":"local_69c7f03a5c3385.76956491","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-30 18:54:28"}
[2026-03-30 18:54:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f03a5c3385.76956491","contact_id":"4030","existing_deal_found":true,"existing_contact_id":"4030","existing_title":"معامله دوم 9128328935 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-03-30 18:54:28"}
[2026-03-30 18:54:28] [INFO] DealController.save validated payments {"deal_id":"local_69c7f03a5c3385.76956491","contact_id":"4030","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 18:54:28] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4030","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 18:54:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f03a5c3385.76956491","contact_didar_id":"4030","title":"معامله دوم 9128328935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128328935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نورپور نورپور","existing_deal":"YES","existing_deal_id":"local_69c7f03a5c3385.76956491","existing_deal_status":"Pending","server_time":"2026-03-30 18:54:28","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-03-30 18:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:54:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f03a5c3385.76956491","contact_id":"4030","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9128328935 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-03-30 18:54:28","ip_address":"31.2.140.209","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-03-30 18:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-30 18:54:38] [INFO] Checking activity reminders 
[2026-03-30 18:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 18:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 19:43:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"check_reminders"}
[2026-03-30 19:43:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:18] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:19] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_products"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_deals"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:21] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:22] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:22] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:22] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-30 19:43:22] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:24] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:37] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 19:43:37] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-03-30 19:43:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-30 19:44:08] [INFO] Checking activity reminders 
[2026-03-30 19:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 19:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:15:59] [INFO] Checking activity reminders 
[2026-03-30 20:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:16:30] [INFO] Checking activity reminders 
[2026-03-30 20:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:16:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 20:17:00] [INFO] Checking activity reminders 
[2026-03-30 20:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:17:30] [INFO] Checking activity reminders 
[2026-03-30 20:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:18:00] [INFO] Checking activity reminders 
[2026-03-30 20:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:18:30] [INFO] Checking activity reminders 
[2026-03-30 20:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:19:01] [INFO] Checking activity reminders 
[2026-03-30 20:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:19:31] [INFO] Checking activity reminders 
[2026-03-30 20:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:20:01] [INFO] Checking activity reminders 
[2026-03-30 20:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:20:31] [INFO] Checking activity reminders 
[2026-03-30 20:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:21:01] [INFO] Checking activity reminders 
[2026-03-30 20:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:21:37] [INFO] Checking activity reminders 
[2026-03-30 20:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:22:07] [INFO] Checking activity reminders 
[2026-03-30 20:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:24:59] [INFO] Checking activity reminders 
[2026-03-30 20:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:25:17] [INFO] Checking activity reminders 
[2026-03-30 20:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:25:33] [INFO] Checking activity reminders 
[2026-03-30 20:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:25:51] [INFO] Checking activity reminders 
[2026-03-30 20:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:26:15] [INFO] Checking activity reminders 
[2026-03-30 20:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:26:33] [INFO] Checking activity reminders 
[2026-03-30 20:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:26:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 20:26:38","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 20:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 20:26:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7918","is_new_deal":false}
[2026-03-30 20:26:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 20:26:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 20:26:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 20:26:38] [INFO] getContactPrimaryPhone called {"contact_id":"7918"}
[2026-03-30 20:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 20:26:38] [INFO] getContactPrimaryPhone result {"contact_id":"7918","person_found":true,"primary_phone":"9904415700"}
[2026-03-30 20:26:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9904415700"}
[2026-03-30 20:26:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9904415700","contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 20:26:38"}
[2026-03-30 20:26:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","existing_deal_found":true,"existing_contact_id":"7918","existing_title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 20:26:38"}
[2026-03-30 20:26:38] [INFO] DealController.save validated payments {"deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 20:26:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7918","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 20:26:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f9e549b7b3.48363944","contact_didar_id":"7918","title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله پنجم 9904415700","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":48000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد رضایی","existing_deal":"YES","existing_deal_id":"local_69c7f9e549b7b3.48363944","existing_deal_status":"Pending","server_time":"2026-03-30 20:26:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 20:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 20:26:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f9e549b7b3.48363944","contact_id":"7918","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9904415700 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":48000000,"server_time":"2026-03-30 20:26:38","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 20:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-03-30 20:27:04] [INFO] Checking activity reminders 
[2026-03-30 20:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:34:56] [INFO] Checking activity reminders 
[2026-03-30 20:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:39:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10523","person_id":"16549"}
[2026-03-30 20:40:43] [INFO] Checking activity reminders 
[2026-03-30 20:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:40:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:41:13] [INFO] Checking activity reminders 
[2026-03-30 20:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:41:43] [INFO] Checking activity reminders 
[2026-03-30 20:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:42:27] [INFO] Checking activity reminders 
[2026-03-30 20:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:42:47] [INFO] Checking activity reminders 
[2026-03-30 20:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:42:49] [INFO] Lead update received {"contact_id":"1407","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 20:42:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:42:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:42:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1407"}
[2026-03-30 20:42:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:43:17] [INFO] Checking activity reminders 
[2026-03-30 20:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:43:47] [INFO] Checking activity reminders 
[2026-03-30 20:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 20:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 20:43:49] [INFO] Lead update received {"contact_id":"1407","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-03-30 20:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 20:43:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1407"}
[2026-03-30 20:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 21:24:39] [INFO] Checking activity reminders 
[2026-03-30 21:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 21:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 21:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-03-30 21:25:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-30 21:25:09] [INFO] Checking activity reminders 
[2026-03-30 21:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 21:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 21:25:39] [INFO] Checking activity reminders 
[2026-03-30 21:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 21:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 21:25:56] [INFO] Checking activity reminders 
[2026-03-30 21:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-30 21:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-30 21:26:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-30 21:26:21","session_id":"tqhhqfd4qiqbu5u3qj239pkl6b"}
[2026-03-30 21:26:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-30 21:26:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16084","is_new_deal":false}
[2026-03-30 21:26:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-03-30 21:26:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 21:26:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-03-30 21:26:21] [INFO] getContactPrimaryPhone called {"contact_id":"16084"}
[2026-03-30 21:26:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-30 21:26:21] [INFO] getContactPrimaryPhone result {"contact_id":"16084","person_found":true,"primary_phone":"9213840683"}
[2026-03-30 21:26:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213840683"}
[2026-03-30 21:26:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213840683","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 21:26:21"}
[2026-03-30 21:26:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","existing_deal_found":true,"existing_contact_id":"16084","existing_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-03-30 21:26:21"}
[2026-03-30 21:26:21] [INFO] DealController.save validated payments {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-30 21:26:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16084","is_admin_or_crm":false,"permission_check_passed":true}
[2026-03-30 21:26:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bfbef872d3a2.94680596","contact_didar_id":"16084","title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9213840683","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناد علی","existing_deal":"YES","existing_deal_id":"local_69bfbef872d3a2.94680596","existing_deal_status":"Pending","server_time":"2026-03-30 21:26:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-03-30 21:26:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-30 21:26:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-03-30 21:26:21","ip_address":"2.147.104.166","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-03-30 21:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-30 22:04:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-30 22:04:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"check_reminders"}
[2026-03-30 22:04:49] [WARNING] Auth check failed - not authenticated {"session_id":"tqhhqfd4qiqbu5u3qj239pkl6b","session_keys":[],"action":"log_client_event"}
[2026-03-31 12:51:13] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-31 12:51:13] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-31 12:51:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 12:51:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 12:51:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 12:51:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 12:51:22] [INFO] Checking activity reminders 
[2026-03-31 12:51:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 12:51:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 12:51:31] [INFO] Checking activity reminders 
[2026-03-31 12:51:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 12:51:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 12:56:58] [INFO] Checking activity reminders 
[2026-03-31 12:56:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 12:56:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 12:57:11] [INFO] Checking activity reminders 
[2026-03-31 12:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 12:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"check_reminders"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"get_didar_users"}
[2026-03-31 13:51:49] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"get_users_list"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"get_kpi_products"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"get_performance_dashboard"}
[2026-03-31 13:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:51] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:53] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:59] [WARNING] Auth check failed - not authenticated {"session_id":"o9qft394p2ag62n73v77nvhcub","session_keys":[],"action":"log_client_event"}
[2026-03-31 13:51:59] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-31 13:51:59] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-31 13:51:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 13:51:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 13:51:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 13:51:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 13:52:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 13:52:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 13:52:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 13:52:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 13:52:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 13:52:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 13:52:29] [INFO] Checking activity reminders 
[2026-03-31 13:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:52:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 13:52:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 13:52:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 13:52:38] [INFO] KPI calculation started {"filters":{"date_from":"2026-03-21","date_to":"2026-04-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-03-21","person_date_to":"2026-04-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:52:38] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:52:41] [INFO] KPI calculation completed {"kpi_mode":"global","kpi_keys":["sales","settled","outstanding","lost_sales","won_sales","open_pipeline","deals_without_payments","product_sales","deal_conversion","lead_conversion","time_to_conversion","daily_sales","daily_operational","advanced_tables","target_achievement","kpi_mode"]}
[2026-03-31 13:52:41] [INFO] KPI calculation started {"filters":{"date_from":"2026-03-21","date_to":"2026-04-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-03-21","person_date_to":"2026-04-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:52:41] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:52:41] [INFO] KPI calculation started {"filters":{"date_from":"2026-03-21","date_to":"2026-04-20","owner_didar_id":"","owner_didar_ids":[],"owner_didar_ids_csv":"","product_id":"","product_ids":[],"product_ids_csv":"","deal_statuses":[],"deal_statuses_csv":"","deal_lead_types":[],"deal_lead_types_csv":"","person_date_from":"2026-03-21","person_date_to":"2026-04-20","kpi_sales_date_basis":"ui_payment_date","kpi_sales_count_rule":"first_payment_only","kpi_payment_date_basis":"ui_payment_date","kpi_payment_count_rule":"all_payments","kpi_payment_status_scope":"confirmed_only","legacy_deal_scope":"exclude"},"user_role":"admin","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:52:41] [INFO] KPI Mode Determined {"is_global_kpi":true,"is_user_specific_kpi":false,"is_self_kpi":false,"has_user_id_filter":false,"has_owner_filter":false,"filter_user_id":null,"filter_owner_id":"","session_didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4"}
[2026-03-31 13:53:00] [INFO] Checking activity reminders 
[2026-03-31 13:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:53:30] [INFO] Checking activity reminders 
[2026-03-31 13:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:54:01] [INFO] Checking activity reminders 
[2026-03-31 13:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:54:31] [INFO] Checking activity reminders 
[2026-03-31 13:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:55:01] [INFO] Checking activity reminders 
[2026-03-31 13:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:55:31] [INFO] Checking activity reminders 
[2026-03-31 13:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:56:02] [INFO] Checking activity reminders 
[2026-03-31 13:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:56:32] [INFO] Checking activity reminders 
[2026-03-31 13:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:57:02] [INFO] Checking activity reminders 
[2026-03-31 13:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:57:32] [INFO] Checking activity reminders 
[2026-03-31 13:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:58:02] [INFO] Checking activity reminders 
[2026-03-31 13:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:58:32] [INFO] Checking activity reminders 
[2026-03-31 13:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:59:02] [INFO] Checking activity reminders 
[2026-03-31 13:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 13:59:32] [INFO] Checking activity reminders 
[2026-03-31 13:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 13:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:00:03] [INFO] Checking activity reminders 
[2026-03-31 14:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:00:33] [INFO] Checking activity reminders 
[2026-03-31 14:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:01:03] [INFO] Checking activity reminders 
[2026-03-31 14:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:01:33] [INFO] Checking activity reminders 
[2026-03-31 14:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:02:03] [INFO] Checking activity reminders 
[2026-03-31 14:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:02:33] [INFO] Checking activity reminders 
[2026-03-31 14:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:03:03] [INFO] Checking activity reminders 
[2026-03-31 14:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:03:33] [INFO] Checking activity reminders 
[2026-03-31 14:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:04:03] [INFO] Checking activity reminders 
[2026-03-31 14:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:04:33] [INFO] Checking activity reminders 
[2026-03-31 14:04:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:04:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:05:03] [INFO] Checking activity reminders 
[2026-03-31 14:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:05:33] [INFO] Checking activity reminders 
[2026-03-31 14:05:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:05:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:06:04] [INFO] Checking activity reminders 
[2026-03-31 14:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:25:30] [INFO] Checking activity reminders 
[2026-03-31 14:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:26:31] [INFO] Checking activity reminders 
[2026-03-31 14:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:26:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 14:26:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 14:29:13] [INFO] Checking activity reminders 
[2026-03-31 14:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:29:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-31 14:29:53] [INFO] Checking activity reminders 
[2026-03-31 14:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:30:23] [INFO] Checking activity reminders 
[2026-03-31 14:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:30:53] [INFO] Checking activity reminders 
[2026-03-31 14:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:31:23] [INFO] Checking activity reminders 
[2026-03-31 14:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:31:54] [INFO] Checking activity reminders 
[2026-03-31 14:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:32:02] [INFO] Checking activity reminders 
[2026-03-31 14:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:32:45] [INFO] Checking activity reminders 
[2026-03-31 14:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:32:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-03-31 14:33:11] [INFO] Checking activity reminders 
[2026-03-31 14:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:33:18] [INFO] Checking activity reminders 
[2026-03-31 14:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:33:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-03-31 14:33:55] [INFO] Checking activity reminders 
[2026-03-31 14:33:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:33:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:33:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-03-31 14:34:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-03-31 14:34:34] [INFO] Checking activity reminders 
[2026-03-31 14:34:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:34:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-03-31 14:34:47] [INFO] Checking activity reminders 
[2026-03-31 14:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:34:55] [INFO] Checking activity reminders 
[2026-03-31 14:34:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:34:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:35:00] [INFO] Checking activity reminders 
[2026-03-31 14:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:35:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-03-31 14:35:14] [INFO] Checking activity reminders 
[2026-03-31 14:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:35:16] [INFO] Checking activity reminders 
[2026-03-31 14:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:35:23] [INFO] Checking activity reminders 
[2026-03-31 14:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:35:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:36:43] [INFO] Checking activity reminders 
[2026-03-31 14:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:36:55] [INFO] Checking activity reminders 
[2026-03-31 14:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-03-31 14:37:25] [INFO] Checking activity reminders 
[2026-03-31 14:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:37:55] [INFO] Checking activity reminders 
[2026-03-31 14:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:38:25] [INFO] Checking activity reminders 
[2026-03-31 14:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:39:05] [INFO] Checking activity reminders 
[2026-03-31 14:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:39:11] [INFO] Checking activity reminders 
[2026-03-31 14:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:39:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:40:13] [INFO] Checking activity reminders 
[2026-03-31 14:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-03-31 14:40:43] [INFO] Checking activity reminders 
[2026-03-31 14:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:41:13] [INFO] Checking activity reminders 
[2026-03-31 14:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:41:44] [INFO] Checking activity reminders 
[2026-03-31 14:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:42:14] [INFO] Checking activity reminders 
[2026-03-31 14:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:42:40] [INFO] Checking activity reminders 
[2026-03-31 14:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:42:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-03-31 14:43:10] [INFO] Checking activity reminders 
[2026-03-31 14:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:43:29] [INFO] Checking activity reminders 
[2026-03-31 14:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:43:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:43:59] [INFO] Checking activity reminders 
[2026-03-31 14:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:44:30] [INFO] Checking activity reminders 
[2026-03-31 14:44:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:44:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:44:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-31 14:44:33","session_id":"o9qft394p2ag62n73v77nvhcub"}
[2026-03-31 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:44:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17001","is_new_deal":false}
[2026-03-31 14:44:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-31 14:44:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-31 14:44:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-03-31 14:44:33] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-31 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:44:33] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-31 14:44:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-31 14:44:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:44:33"}
[2026-03-31 14:44:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:44:33"}
[2026-03-31 14:44:33] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-31 14:44:33] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-31 14:44:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","requested_services_count":3,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه","کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-31 14:44:33","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-31 14:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:44:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-03-31 14:44:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-31 14:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:45:00] [INFO] Checking activity reminders 
[2026-03-31 14:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:45:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-31 14:45:18","session_id":"o9qft394p2ag62n73v77nvhcub"}
[2026-03-31 14:45:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:45:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","is_new_deal":false}
[2026-03-31 14:45:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 14:45:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 14:45:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 14:45:18] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-31 14:45:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:45:18] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-31 14:45:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-31 14:45:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:45:18"}
[2026-03-31 14:45:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:45:18"}
[2026-03-31 14:45:18] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-31 14:45:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-31 14:45:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","requested_services_count":3,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه","کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-31 14:45:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-31 14:45:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:45:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-03-31 14:45:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-31 14:45:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:45:31] [INFO] Checking activity reminders 
[2026-03-31 14:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:46:01] [INFO] Checking activity reminders 
[2026-03-31 14:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:46:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-31 14:46:23","session_id":"o9qft394p2ag62n73v77nvhcub"}
[2026-03-31 14:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:46:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"17001","is_new_deal":false}
[2026-03-31 14:46:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-03-31 14:46:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-31 14:46:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-03-31 14:46:23] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-31 14:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:46:23] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-31 14:46:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-31 14:46:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:46:23"}
[2026-03-31 14:46:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 14:46:23"}
[2026-03-31 14:46:23] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-31 14:46:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-31 14:46:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","requested_services_count":4,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه","کانال VIP با پشتیبانی شش ماهه","کانال VIP بدون پشتیبان"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-31 14:46:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-31 14:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:46:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-03-31 14:46:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-31 14:46:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:46:31] [INFO] Checking activity reminders 
[2026-03-31 14:46:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:46:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:46:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 14:46:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 14:46:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 14:46:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 14:47:14] [INFO] Checking activity reminders 
[2026-03-31 14:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 14:47:44] [INFO] Checking activity reminders 
[2026-03-31 14:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:48:15] [INFO] Checking activity reminders 
[2026-03-31 14:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:48:45] [INFO] Checking activity reminders 
[2026-03-31 14:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:49:15] [INFO] Checking activity reminders 
[2026-03-31 14:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:49:45] [INFO] Checking activity reminders 
[2026-03-31 14:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:50:15] [INFO] Checking activity reminders 
[2026-03-31 14:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:50:46] [INFO] Checking activity reminders 
[2026-03-31 14:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:51:16] [INFO] Checking activity reminders 
[2026-03-31 14:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:51:46] [INFO] Checking activity reminders 
[2026-03-31 14:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:52:16] [INFO] Checking activity reminders 
[2026-03-31 14:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:52:46] [INFO] Checking activity reminders 
[2026-03-31 14:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:53:17] [INFO] Checking activity reminders 
[2026-03-31 14:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:53:47] [INFO] Checking activity reminders 
[2026-03-31 14:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:54:17] [INFO] Checking activity reminders 
[2026-03-31 14:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:54:47] [INFO] Checking activity reminders 
[2026-03-31 14:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:55:17] [INFO] Checking activity reminders 
[2026-03-31 14:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:55:48] [INFO] Checking activity reminders 
[2026-03-31 14:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:56:18] [INFO] Checking activity reminders 
[2026-03-31 14:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:56:48] [INFO] Checking activity reminders 
[2026-03-31 14:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:57:18] [INFO] Checking activity reminders 
[2026-03-31 14:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:57:48] [INFO] Checking activity reminders 
[2026-03-31 14:57:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:57:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:58:19] [INFO] Checking activity reminders 
[2026-03-31 14:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:58:49] [INFO] Checking activity reminders 
[2026-03-31 14:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:59:19] [INFO] Checking activity reminders 
[2026-03-31 14:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 14:59:49] [INFO] Checking activity reminders 
[2026-03-31 14:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 14:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:00:19] [INFO] Checking activity reminders 
[2026-03-31 15:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:00:50] [INFO] Checking activity reminders 
[2026-03-31 15:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:01:20] [INFO] Checking activity reminders 
[2026-03-31 15:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:01:50] [INFO] Checking activity reminders 
[2026-03-31 15:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:02:20] [INFO] Checking activity reminders 
[2026-03-31 15:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:02:51] [INFO] Checking activity reminders 
[2026-03-31 15:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:03:21] [INFO] Checking activity reminders 
[2026-03-31 15:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:03:51] [INFO] Checking activity reminders 
[2026-03-31 15:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:04:21] [INFO] Checking activity reminders 
[2026-03-31 15:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:04:51] [INFO] Checking activity reminders 
[2026-03-31 15:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:05:21] [INFO] Checking activity reminders 
[2026-03-31 15:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:05:51] [INFO] Checking activity reminders 
[2026-03-31 15:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:06:21] [INFO] Checking activity reminders 
[2026-03-31 15:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:06:51] [INFO] Checking activity reminders 
[2026-03-31 15:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:07:21] [INFO] Checking activity reminders 
[2026-03-31 15:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:07:51] [INFO] Checking activity reminders 
[2026-03-31 15:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:08:22] [INFO] Checking activity reminders 
[2026-03-31 15:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:08:52] [INFO] Checking activity reminders 
[2026-03-31 15:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:09:22] [INFO] Checking activity reminders 
[2026-03-31 15:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:09:52] [INFO] Checking activity reminders 
[2026-03-31 15:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:10:22] [INFO] Checking activity reminders 
[2026-03-31 15:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:10:52] [INFO] Checking activity reminders 
[2026-03-31 15:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:11:22] [INFO] Checking activity reminders 
[2026-03-31 15:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:11:52] [INFO] Checking activity reminders 
[2026-03-31 15:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:12:22] [INFO] Checking activity reminders 
[2026-03-31 15:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:12:52] [INFO] Checking activity reminders 
[2026-03-31 15:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:29:52] [INFO] Checking activity reminders 
[2026-03-31 15:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:30:22] [INFO] Checking activity reminders 
[2026-03-31 15:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:30:33] [INFO] Checking activity reminders 
[2026-03-31 15:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:30:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 15:31:03] [INFO] Checking activity reminders 
[2026-03-31 15:31:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:31:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:31:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-03-31 15:31:26","session_id":"o9qft394p2ag62n73v77nvhcub"}
[2026-03-31 15:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 15:31:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","is_new_deal":false}
[2026-03-31 15:31:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 15:31:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 15:31:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-03-31 15:31:26] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-03-31 15:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 15:31:26] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-03-31 15:31:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-03-31 15:31:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 15:31:26"}
[2026-03-31 15:31:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-03-31 15:31:26"}
[2026-03-31 15:31:26] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-03-31 15:31:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":true,"permission_check_passed":true}
[2026-03-31 15:31:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","requested_services_count":4,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه","کانال VIP با پشتیبانی شش ماهه","کانال VIP بدون پشتیبان"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-03-31 15:31:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-03-31 15:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 15:31:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-03-31 15:31:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-03-31 15:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-03-31 15:31:33] [INFO] Checking activity reminders 
[2026-03-31 15:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:31:51] [INFO] Checking activity reminders 
[2026-03-31 15:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:31:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-03-31 15:32:21] [INFO] Checking activity reminders 
[2026-03-31 15:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:32:46] [INFO] Checking activity reminders 
[2026-03-31 15:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-03-31 15:33:08] [INFO] Checking activity reminders 
[2026-03-31 15:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:33:18] [INFO] Checking activity reminders 
[2026-03-31 15:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:33:25] [INFO] Checking activity reminders 
[2026-03-31 15:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:33:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-03-31 15:35:10] [INFO] Checking activity reminders 
[2026-03-31 15:35:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:35:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:35:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-03-31 15:36:00] [INFO] Checking activity reminders 
[2026-03-31 15:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-03-31 15:36:30] [INFO] Checking activity reminders 
[2026-03-31 15:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:37:00] [INFO] Checking activity reminders 
[2026-03-31 15:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:37:40] [INFO] Checking activity reminders 
[2026-03-31 15:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:38:00] [INFO] Checking activity reminders 
[2026-03-31 15:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:38:30] [INFO] Checking activity reminders 
[2026-03-31 15:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:52:32] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 15:52:33] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-03-31 15:52:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 15:53:13] [INFO] Checking activity reminders 
[2026-03-31 15:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:53:44] [INFO] Checking activity reminders 
[2026-03-31 15:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:54:14] [INFO] Checking activity reminders 
[2026-03-31 15:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:54:44] [INFO] Checking activity reminders 
[2026-03-31 15:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:55:14] [INFO] Checking activity reminders 
[2026-03-31 15:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:55:45] [INFO] Checking activity reminders 
[2026-03-31 15:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:56:15] [INFO] Checking activity reminders 
[2026-03-31 15:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:59:19] [INFO] Checking activity reminders 
[2026-03-31 15:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 15:59:49] [INFO] Checking activity reminders 
[2026-03-31 15:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 15:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:00:19] [INFO] Checking activity reminders 
[2026-03-31 16:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:00:49] [INFO] Checking activity reminders 
[2026-03-31 16:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:01:19] [INFO] Checking activity reminders 
[2026-03-31 16:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:01:50] [INFO] Checking activity reminders 
[2026-03-31 16:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:02:20] [INFO] Checking activity reminders 
[2026-03-31 16:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:02:50] [INFO] Checking activity reminders 
[2026-03-31 16:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:03:12] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b9a8345a99.08589154","deal_id":"local_6999b9a83770d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"جواب داد بعداز معزفی مجموعه و خودم \r\nگفت من خیلی سرم شلوغه بعدا خودم خواستم باهاتون تماس میگیرم","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:03:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b9a8345a99.08589154","note_was_empty":true}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Updating virtual stage {"contact_id":"local_6999b9a8345a99.08589154","stage_name":"deal_registered","force":false}
[2026-03-31 16:03:12] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b9a8345a99.08589154","stage_name":"deal_registered"}
[2026-03-31 16:03:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b9a8345a99.08589154"}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b9a83770d","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:03:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbbf085e12d0.38261186","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbbf085e12d0.38261186"}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:12] [INFO] Updating virtual stage {"contact_id":"local_6999b9a8345a99.08589154","stage_name":"deal_registered","force":false}
[2026-03-31 16:03:12] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b9a8345a99.08589154","stage_name":"deal_registered"}
[2026-03-31 16:03:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b9a8345a99.08589154"}
[2026-03-31 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b9a8345a99.08589154","person_id":"21754"}
[2026-03-31 16:03:20] [INFO] Checking activity reminders 
[2026-03-31 16:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:03:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:03:50] [INFO] Checking activity reminders 
[2026-03-31 16:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:03:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 16:03:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:03:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:03:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:04:20] [INFO] Checking activity reminders 
[2026-03-31 16:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:04:50] [INFO] Checking activity reminders 
[2026-03-31 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:05:20] [INFO] Checking activity reminders 
[2026-03-31 16:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:05:50] [INFO] Checking activity reminders 
[2026-03-31 16:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:06:20] [INFO] Checking activity reminders 
[2026-03-31 16:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:06:50] [INFO] Checking activity reminders 
[2026-03-31 16:06:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:06:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:07:20] [INFO] Checking activity reminders 
[2026-03-31 16:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:07:52] [INFO] Checking activity reminders 
[2026-03-31 16:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:08:34] [INFO] Checking activity reminders 
[2026-03-31 16:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:08:34] [INFO] Checking activity reminders 
[2026-03-31 16:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:12:31] [INFO] Checking activity reminders 
[2026-03-31 16:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:12:37] [INFO] Checking activity reminders 
[2026-03-31 16:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:13:07] [INFO] Checking activity reminders 
[2026-03-31 16:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:13:37] [INFO] Checking activity reminders 
[2026-03-31 16:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:14:07] [INFO] Checking activity reminders 
[2026-03-31 16:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:14:37] [INFO] Checking activity reminders 
[2026-03-31 16:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:15:07] [INFO] Checking activity reminders 
[2026-03-31 16:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:17:25] [INFO] Checking activity reminders 
[2026-03-31 16:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:17:55] [INFO] Checking activity reminders 
[2026-03-31 16:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:18:25] [INFO] Checking activity reminders 
[2026-03-31 16:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:18:55] [INFO] Checking activity reminders 
[2026-03-31 16:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:19:25] [INFO] Checking activity reminders 
[2026-03-31 16:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:19:53] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b97d7efb47.54533896","deal_id":"local_6999b97d8169c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اقای نظری\/لرستان\/ از طریق پیج با ما اشناشده و قبلا با بچه های مجموعه ارتباطی نداشته \r\nکامل کانال 405 رو پرزنت کردم براش \r\nکه وسط تماس شارژ گوشی مجموعه تموم شد و با خط شخصی زنگ زدم خانم افراش برام شارژ بگیرن \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:19:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b97d7efb47.54533896","note_was_empty":true}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:53] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-03-31 16:19:53] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-03-31 16:19:53] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-03-31 16:19:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b97d8169c","stage":"تماس پیگیری","status_change":null}
[2026-03-31 16:19:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbc2f183cfa2.76148984","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbc2f183cfa2.76148984"}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:53] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-03-31 16:19:53] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-03-31 16:19:53] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-03-31 16:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:19:55] [INFO] Checking activity reminders 
[2026-03-31 16:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:19:58] [INFO] Checking activity reminders 
[2026-03-31 16:19:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:19:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:20:29] [INFO] Checking activity reminders 
[2026-03-31 16:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:20:39] [INFO] Checking activity reminders 
[2026-03-31 16:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:20:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:09] [INFO] Checking activity reminders 
[2026-03-31 16:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:21:39] [INFO] Checking activity reminders 
[2026-03-31 16:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:21:42] [INFO] Activity save request {"post_data":{"contact_id":"local_6999bd44cf0162.52913644","deal_id":"local_6999bd44d1dde","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"باهاش تماس گرفتم میگه فعلا قصد خرید نداره و داره از جیب میخوره ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:21:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999bd44cf0162.52913644","note_was_empty":true}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:21:42] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:21:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999bd44d1dde","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:21:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbc35e7a92a4.14109591","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbc35e7a92a4.14109591"}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:21:42] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:21:42] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:21:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:22:09] [INFO] Checking activity reminders 
[2026-03-31 16:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:22:39] [INFO] Checking activity reminders 
[2026-03-31 16:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:23:09] [INFO] Checking activity reminders 
[2026-03-31 16:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:23:32] [INFO] Checking activity reminders 
[2026-03-31 16:23:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:23:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:23:39] [INFO] Checking activity reminders 
[2026-03-31 16:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:24:09] [INFO] Checking activity reminders 
[2026-03-31 16:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:24:40] [INFO] Checking activity reminders 
[2026-03-31 16:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:24:48] [INFO] Checking activity reminders 
[2026-03-31 16:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:25:18] [INFO] Checking activity reminders 
[2026-03-31 16:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:25:48] [INFO] Checking activity reminders 
[2026-03-31 16:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:25:52] [INFO] Checking activity reminders 
[2026-03-31 16:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:25:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:25:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:25:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:26:15] [INFO] Activity save request {"post_data":{"contact_id":"local_6999bd44cf0162.52913644","deal_id":"local_6999bd142a4fa","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم نقدینگی کافی","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:26:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999bd44cf0162.52913644","note_was_empty":true}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:26:15] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:26:15] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999bd142a4fa","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:26:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbc46f573ce4.26900094","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbc46f573ce4.26900094"}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:26:15] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:26:15] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:26:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:26:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:26:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:26:18] [INFO] Checking activity reminders 
[2026-03-31 16:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:26:22] [INFO] Checking activity reminders 
[2026-03-31 16:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:26:48] [INFO] Checking activity reminders 
[2026-03-31 16:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:26:52] [INFO] Checking activity reminders 
[2026-03-31 16:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:27:18] [INFO] Checking activity reminders 
[2026-03-31 16:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:27:22] [INFO] Checking activity reminders 
[2026-03-31 16:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:27:49] [INFO] Checking activity reminders 
[2026-03-31 16:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:27:53] [INFO] Checking activity reminders 
[2026-03-31 16:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:28:19] [INFO] Checking activity reminders 
[2026-03-31 16:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:28:23] [INFO] Checking activity reminders 
[2026-03-31 16:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:28:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:28:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:28:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:28:49] [INFO] Checking activity reminders 
[2026-03-31 16:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:28:53] [INFO] Checking activity reminders 
[2026-03-31 16:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:29:24] [INFO] Checking activity reminders 
[2026-03-31 16:29:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:29:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:29:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:29:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:29:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:29:50] [INFO] Checking activity reminders 
[2026-03-31 16:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:30:09] [INFO] Checking activity reminders 
[2026-03-31 16:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:30:11] [INFO] Activity save request {"post_data":{"contact_id":"local_6999bd44cf0162.52913644","deal_id":"local_6999b838d7f2c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اقای فردوسی میگه منراستش تو این شرایط جنگ چون کاسبیم خوابیده و پولی ندارم ترجیح میدم  برای خانوادم خرج کنم تو ایام عید شاد باشن ","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:30:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999bd44cf0162.52913644","note_was_empty":true}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:30:11] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:30:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b838d7f2c","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:30:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbc55b8b1c32.97741999","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbc55b8b1c32.97741999"}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:11] [INFO] Updating virtual stage {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered","force":false}
[2026-03-31 16:30:11] [INFO] Virtual stage successfully saved {"contact_id":"local_6999bd44cf0162.52913644","stage_name":"deal_registered"}
[2026-03-31 16:30:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999bd44cf0162.52913644"}
[2026-03-31 16:30:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bd44cf0162.52913644","person_id":"21762"}
[2026-03-31 16:30:20] [INFO] Checking activity reminders 
[2026-03-31 16:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:30:39] [INFO] Checking activity reminders 
[2026-03-31 16:30:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:30:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:30:51] [INFO] Checking activity reminders 
[2026-03-31 16:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:31:09] [INFO] Checking activity reminders 
[2026-03-31 16:31:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:31:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:31:22] [INFO] Checking activity reminders 
[2026-03-31 16:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:31:40] [INFO] Checking activity reminders 
[2026-03-31 16:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:31:52] [INFO] Checking activity reminders 
[2026-03-31 16:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:32:10] [INFO] Checking activity reminders 
[2026-03-31 16:32:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:32:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:32:22] [INFO] Checking activity reminders 
[2026-03-31 16:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:32:40] [INFO] Checking activity reminders 
[2026-03-31 16:32:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:32:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:32:52] [INFO] Checking activity reminders 
[2026-03-31 16:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:33:10] [INFO] Checking activity reminders 
[2026-03-31 16:33:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:33:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:33:22] [INFO] Checking activity reminders 
[2026-03-31 16:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:33:40] [INFO] Checking activity reminders 
[2026-03-31 16:33:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:33:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:33:53] [INFO] Checking activity reminders 
[2026-03-31 16:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:34:10] [INFO] Checking activity reminders 
[2026-03-31 16:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:34:23] [INFO] Checking activity reminders 
[2026-03-31 16:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:34:41] [INFO] Checking activity reminders 
[2026-03-31 16:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:34:53] [INFO] Checking activity reminders 
[2026-03-31 16:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:35:11] [INFO] Checking activity reminders 
[2026-03-31 16:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:35:23] [INFO] Checking activity reminders 
[2026-03-31 16:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:35:41] [INFO] Checking activity reminders 
[2026-03-31 16:35:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:35:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:35:54] [INFO] Checking activity reminders 
[2026-03-31 16:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:36:11] [INFO] Checking activity reminders 
[2026-03-31 16:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:36:24] [INFO] Checking activity reminders 
[2026-03-31 16:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:36:41] [INFO] Checking activity reminders 
[2026-03-31 16:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:36:54] [INFO] Checking activity reminders 
[2026-03-31 16:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-03-31 16:37:11] [INFO] Checking activity reminders 
[2026-03-31 16:37:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:37:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11203","person_id":"788"}
[2026-03-31 16:37:26] [INFO] Checking activity reminders 
[2026-03-31 16:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:37:42] [INFO] Checking activity reminders 
[2026-03-31 16:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:37:56] [INFO] Checking activity reminders 
[2026-03-31 16:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:38:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:38:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:38:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:38:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:38:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:38:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:38:26] [INFO] Checking activity reminders 
[2026-03-31 16:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:38:56] [INFO] Checking activity reminders 
[2026-03-31 16:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:39:27] [INFO] Checking activity reminders 
[2026-03-31 16:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:39:57] [INFO] Checking activity reminders 
[2026-03-31 16:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:40:27] [INFO] Checking activity reminders 
[2026-03-31 16:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:40:57] [INFO] Checking activity reminders 
[2026-03-31 16:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:41:27] [INFO] Checking activity reminders 
[2026-03-31 16:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:45:03] [INFO] Checking activity reminders 
[2026-03-31 16:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:45:33] [INFO] Checking activity reminders 
[2026-03-31 16:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:46:03] [INFO] Checking activity reminders 
[2026-03-31 16:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:46:21] [INFO] Checking activity reminders 
[2026-03-31 16:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:46:23] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b81f66bf70.65320598","deal_id":"local_6999b81f74102","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خانم یوسفی \r\nمیگه من فقط میخواستم قیمت جاهای مختلف رو باهم مقایسه کنم ببینم کجا بیشتر میصرفه با توجه به خدماتش و اینکه فعلا قصد ندارم با این مبلغ ثبت نام کنم ","activity_duration":"11","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:46:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b81f66bf70.65320598","note_was_empty":true}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Updating virtual stage {"contact_id":"local_6999b81f66bf70.65320598","stage_name":"deal_registered","force":false}
[2026-03-31 16:46:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b81f66bf70.65320598","stage_name":"deal_registered"}
[2026-03-31 16:46:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b81f66bf70.65320598"}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b81f74102","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:46:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbc92753ac79.47508282","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbc92753ac79.47508282"}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:23] [INFO] Updating virtual stage {"contact_id":"local_6999b81f66bf70.65320598","stage_name":"deal_registered","force":false}
[2026-03-31 16:46:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b81f66bf70.65320598","stage_name":"deal_registered"}
[2026-03-31 16:46:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b81f66bf70.65320598"}
[2026-03-31 16:46:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b81f66bf70.65320598","person_id":"21746"}
[2026-03-31 16:46:33] [INFO] Checking activity reminders 
[2026-03-31 16:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:46:51] [INFO] Checking activity reminders 
[2026-03-31 16:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:47:03] [INFO] Checking activity reminders 
[2026-03-31 16:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:47:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-03-31 16:47:21] [INFO] Checking activity reminders 
[2026-03-31 16:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:47:33] [INFO] Checking activity reminders 
[2026-03-31 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:47:52] [INFO] Checking activity reminders 
[2026-03-31 16:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:48:04] [INFO] Checking activity reminders 
[2026-03-31 16:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:48:22] [INFO] Checking activity reminders 
[2026-03-31 16:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:48:34] [INFO] Checking activity reminders 
[2026-03-31 16:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:48:52] [INFO] Checking activity reminders 
[2026-03-31 16:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:49:04] [INFO] Checking activity reminders 
[2026-03-31 16:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:49:22] [INFO] Checking activity reminders 
[2026-03-31 16:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:49:34] [INFO] Checking activity reminders 
[2026-03-31 16:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:49:52] [INFO] Checking activity reminders 
[2026-03-31 16:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:50:04] [INFO] Checking activity reminders 
[2026-03-31 16:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:50:22] [INFO] Checking activity reminders 
[2026-03-31 16:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:50:34] [INFO] Checking activity reminders 
[2026-03-31 16:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:50:52] [INFO] Checking activity reminders 
[2026-03-31 16:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:51:04] [INFO] Checking activity reminders 
[2026-03-31 16:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:51:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:51:22] [INFO] Checking activity reminders 
[2026-03-31 16:51:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:51:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:51:35] [INFO] Checking activity reminders 
[2026-03-31 16:51:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:51:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:51:52] [INFO] Checking activity reminders 
[2026-03-31 16:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:52:05] [INFO] Checking activity reminders 
[2026-03-31 16:52:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:52:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:52:22] [INFO] Checking activity reminders 
[2026-03-31 16:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:52:35] [INFO] Checking activity reminders 
[2026-03-31 16:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:52:52] [INFO] Checking activity reminders 
[2026-03-31 16:52:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:52:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:53:05] [INFO] Checking activity reminders 
[2026-03-31 16:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:53:22] [INFO] Checking activity reminders 
[2026-03-31 16:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:53:35] [INFO] Checking activity reminders 
[2026-03-31 16:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:53:44] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b97d7efb47.54533896","deal_id":"local_6999b97d8169c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مجدد تماس گرفتم بعداز اینکه خانم افراش برام شارژ گرفتن گفت اکی من یذره باید دو دو تا چهار تا کنم ببینم با توجه به شرایط میتونم این مبلغو پرداخت کنم \r\nبهتوون خبر میدم ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:53:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b97d7efb47.54533896","note_was_empty":true}
[2026-03-31 16:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:45] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-03-31 16:53:45] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-03-31 16:53:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-03-31 16:53:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b97d8169c","stage":"تماس پیگیری","status_change":null}
[2026-03-31 16:53:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcae0f09c37.78105447","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcae0f09c37.78105447"}
[2026-03-31 16:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:45] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-03-31 16:53:45] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-03-31 16:53:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-03-31 16:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 16:53:51] [INFO] Checking activity reminders 
[2026-03-31 16:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:54:05] [INFO] Checking activity reminders 
[2026-03-31 16:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:54:21] [INFO] Checking activity reminders 
[2026-03-31 16:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:54:35] [INFO] Checking activity reminders 
[2026-03-31 16:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:54:51] [INFO] Checking activity reminders 
[2026-03-31 16:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:55:05] [INFO] Checking activity reminders 
[2026-03-31 16:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:55:22] [INFO] Checking activity reminders 
[2026-03-31 16:55:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:55:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:55:36] [INFO] Checking activity reminders 
[2026-03-31 16:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:55:52] [INFO] Checking activity reminders 
[2026-03-31 16:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:56:06] [INFO] Checking activity reminders 
[2026-03-31 16:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:56:22] [INFO] Checking activity reminders 
[2026-03-31 16:56:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:56:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:56:36] [INFO] Checking activity reminders 
[2026-03-31 16:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:56:44] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b95a245563.59122599","deal_id":"local_6999b95a29f92","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:56:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b95a245563.59122599","note_was_empty":true}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:44] [INFO] Updating virtual stage {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered","force":false}
[2026-03-31 16:56:44] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered"}
[2026-03-31 16:56:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b95a245563.59122599"}
[2026-03-31 16:56:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b95a29f92","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-31 16:56:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcb94aa37e1.49999677","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcb94aa37e1.49999677"}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:44] [INFO] Updating virtual stage {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered","force":false}
[2026-03-31 16:56:44] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered"}
[2026-03-31 16:56:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b95a245563.59122599"}
[2026-03-31 16:56:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:56:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:56:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:56:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:56:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:56:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:56:52] [INFO] Checking activity reminders 
[2026-03-31 16:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:57:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 16:57:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 16:57:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 16:57:15] [INFO] Checking activity reminders 
[2026-03-31 16:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:57:22] [INFO] Checking activity reminders 
[2026-03-31 16:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:57:39] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b95a245563.59122599","deal_id":"local_6999b95a29f92","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","note":"","result_note":"براش پیام گذاشتم که قبلا برای کانال vipمجموعه شماره گذاشته ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:57:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b95a245563.59122599","note_was_empty":true}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Updating virtual stage {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered","force":false}
[2026-03-31 16:57:39] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered"}
[2026-03-31 16:57:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b95a245563.59122599"}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b95a29f92","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 16:57:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcbcb887385.12213192","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcbcb887385.12213192"}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:39] [INFO] Updating virtual stage {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered","force":false}
[2026-03-31 16:57:39] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b95a245563.59122599","stage_name":"deal_registered"}
[2026-03-31 16:57:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b95a245563.59122599"}
[2026-03-31 16:57:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b95a245563.59122599","person_id":"21752"}
[2026-03-31 16:57:45] [INFO] Checking activity reminders 
[2026-03-31 16:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:57:52] [INFO] Checking activity reminders 
[2026-03-31 16:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:58:15] [INFO] Checking activity reminders 
[2026-03-31 16:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:58:22] [INFO] Checking activity reminders 
[2026-03-31 16:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:58:45] [INFO] Checking activity reminders 
[2026-03-31 16:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:58:52] [INFO] Checking activity reminders 
[2026-03-31 16:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:59:00] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b8a88db7f8.65058987","deal_id":"local_6999b8a88ec10","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 16:59:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b8a88db7f8.65058987","note_was_empty":true}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:00] [INFO] Updating virtual stage {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered","force":false}
[2026-03-31 16:59:00] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered"}
[2026-03-31 16:59:00] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b8a88db7f8.65058987"}
[2026-03-31 16:59:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b8a88ec10","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-31 16:59:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcc1c80a8c9.85925693","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcc1c80a8c9.85925693"}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:00] [INFO] Updating virtual stage {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered","force":false}
[2026-03-31 16:59:00] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered"}
[2026-03-31 16:59:00] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b8a88db7f8.65058987"}
[2026-03-31 16:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 16:59:15] [INFO] Checking activity reminders 
[2026-03-31 16:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:59:22] [INFO] Checking activity reminders 
[2026-03-31 16:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:59:45] [INFO] Checking activity reminders 
[2026-03-31 16:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 16:59:52] [INFO] Checking activity reminders 
[2026-03-31 16:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 16:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:00:15] [INFO] Checking activity reminders 
[2026-03-31 17:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:00:22] [INFO] Checking activity reminders 
[2026-03-31 17:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:00:45] [INFO] Checking activity reminders 
[2026-03-31 17:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:00:52] [INFO] Checking activity reminders 
[2026-03-31 17:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:01:10] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b8a88db7f8.65058987","deal_id":"local_6999b8a88ec10","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","note":"","result_note":"براش پیام گذاشتم که قبلا برای کانال 405 شمارشو گذاشته بوده","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 17:01:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b8a88db7f8.65058987","note_was_empty":true}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Updating virtual stage {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered","force":false}
[2026-03-31 17:01:10] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered"}
[2026-03-31 17:01:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b8a88db7f8.65058987"}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b8a88ec10","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 17:01:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcc9eb5d4f3.83729988","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcc9eb5d4f3.83729988"}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:10] [INFO] Updating virtual stage {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered","force":false}
[2026-03-31 17:01:10] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b8a88db7f8.65058987","stage_name":"deal_registered"}
[2026-03-31 17:01:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b8a88db7f8.65058987"}
[2026-03-31 17:01:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b8a88db7f8.65058987","person_id":"21751"}
[2026-03-31 17:01:15] [INFO] Checking activity reminders 
[2026-03-31 17:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:01:22] [INFO] Checking activity reminders 
[2026-03-31 17:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:01:46] [INFO] Checking activity reminders 
[2026-03-31 17:01:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:01:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:01:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-03-31 17:01:52] [INFO] Checking activity reminders 
[2026-03-31 17:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:01:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:02:16] [INFO] Checking activity reminders 
[2026-03-31 17:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:02:22] [INFO] Checking activity reminders 
[2026-03-31 17:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:02:46] [INFO] Checking activity reminders 
[2026-03-31 17:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:02:52] [INFO] Checking activity reminders 
[2026-03-31 17:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:03:16] [INFO] Checking activity reminders 
[2026-03-31 17:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:03:22] [INFO] Checking activity reminders 
[2026-03-31 17:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:03:23] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b86486abb2.67965898","deal_id":"local_6999b8648c269","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 17:03:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b86486abb2.67965898","note_was_empty":true}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:23] [INFO] Updating virtual stage {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered","force":false}
[2026-03-31 17:03:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered"}
[2026-03-31 17:03:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b86486abb2.67965898"}
[2026-03-31 17:03:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b8648c269","stage":"تماس عدم پاسخ","status_change":null}
[2026-03-31 17:03:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcd2329b1b5.48294159","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcd2329b1b5.48294159"}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:23] [INFO] Updating virtual stage {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered","force":false}
[2026-03-31 17:03:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered"}
[2026-03-31 17:03:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b86486abb2.67965898"}
[2026-03-31 17:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:03:46] [INFO] Checking activity reminders 
[2026-03-31 17:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:03:53] [INFO] Checking activity reminders 
[2026-03-31 17:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:04:16] [INFO] Checking activity reminders 
[2026-03-31 17:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:04:23] [INFO] Checking activity reminders 
[2026-03-31 17:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:04:39] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b86486abb2.67965898","deal_id":"local_6999b8648c269","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","note":"","result_note":"براش پیام گذاشتم که برای کانال 405 شماره گذاشته بوده ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 17:04:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b86486abb2.67965898","note_was_empty":true}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Updating virtual stage {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered","force":false}
[2026-03-31 17:04:39] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered"}
[2026-03-31 17:04:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b86486abb2.67965898"}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b8648c269","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 17:04:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbcd6f33cf17.73992852","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbcd6f33cf17.73992852"}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:39] [INFO] Updating virtual stage {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered","force":false}
[2026-03-31 17:04:39] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b86486abb2.67965898","stage_name":"deal_registered"}
[2026-03-31 17:04:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b86486abb2.67965898"}
[2026-03-31 17:04:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b86486abb2.67965898","person_id":"21749"}
[2026-03-31 17:04:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:04:46] [INFO] Checking activity reminders 
[2026-03-31 17:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:04:53] [INFO] Checking activity reminders 
[2026-03-31 17:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:05:16] [INFO] Checking activity reminders 
[2026-03-31 17:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:05:23] [INFO] Checking activity reminders 
[2026-03-31 17:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:05:46] [INFO] Checking activity reminders 
[2026-03-31 17:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:05:53] [INFO] Checking activity reminders 
[2026-03-31 17:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:06:16] [INFO] Checking activity reminders 
[2026-03-31 17:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:06:23] [INFO] Checking activity reminders 
[2026-03-31 17:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:06:47] [INFO] Checking activity reminders 
[2026-03-31 17:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:06:53] [INFO] Checking activity reminders 
[2026-03-31 17:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:07:17] [INFO] Checking activity reminders 
[2026-03-31 17:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:07:24] [INFO] Checking activity reminders 
[2026-03-31 17:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:07:47] [INFO] Checking activity reminders 
[2026-03-31 17:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:07:54] [INFO] Checking activity reminders 
[2026-03-31 17:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:08:17] [INFO] Checking activity reminders 
[2026-03-31 17:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:08:24] [INFO] Checking activity reminders 
[2026-03-31 17:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:08:30] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b84cd1ab06.55533787","deal_id":"local_6999b84cd4aaa","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خانم عزیزی میگه من با همسرم مشورت کردم \r\nتمایلی ندارن عضو بشیم تو این کانالا ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-03-31 17:08:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b84cd1ab06.55533787","note_was_empty":true}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Updating virtual stage {"contact_id":"local_6999b84cd1ab06.55533787","stage_name":"deal_registered","force":false}
[2026-03-31 17:08:30] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b84cd1ab06.55533787","stage_name":"deal_registered"}
[2026-03-31 17:08:30] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b84cd1ab06.55533787"}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b84cd4aaa","stage":"معامله ناموفق","status_change":"Lost"}
[2026-03-31 17:08:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cbce56a27872.31795644","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69cbce56a27872.31795644"}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:30] [INFO] Updating virtual stage {"contact_id":"local_6999b84cd1ab06.55533787","stage_name":"deal_registered","force":false}
[2026-03-31 17:08:30] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b84cd1ab06.55533787","stage_name":"deal_registered"}
[2026-03-31 17:08:30] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b84cd1ab06.55533787"}
[2026-03-31 17:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b84cd1ab06.55533787","person_id":"21748"}
[2026-03-31 17:08:47] [INFO] Checking activity reminders 
[2026-03-31 17:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:09:17] [INFO] Checking activity reminders 
[2026-03-31 17:09:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:09:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:09:47] [INFO] Checking activity reminders 
[2026-03-31 17:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:10:17] [INFO] Checking activity reminders 
[2026-03-31 17:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:10:47] [INFO] Checking activity reminders 
[2026-03-31 17:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:11:17] [INFO] Checking activity reminders 
[2026-03-31 17:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:11:47] [INFO] Checking activity reminders 
[2026-03-31 17:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:12:17] [INFO] Checking activity reminders 
[2026-03-31 17:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:12:47] [INFO] Checking activity reminders 
[2026-03-31 17:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:13:17] [INFO] Checking activity reminders 
[2026-03-31 17:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:13:48] [INFO] Checking activity reminders 
[2026-03-31 17:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:14:18] [INFO] Checking activity reminders 
[2026-03-31 17:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:14:48] [INFO] Checking activity reminders 
[2026-03-31 17:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:15:18] [INFO] Checking activity reminders 
[2026-03-31 17:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:15:48] [INFO] Checking activity reminders 
[2026-03-31 17:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:16:18] [INFO] Checking activity reminders 
[2026-03-31 17:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:16:48] [INFO] Checking activity reminders 
[2026-03-31 17:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:17:18] [INFO] Checking activity reminders 
[2026-03-31 17:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:17:48] [INFO] Checking activity reminders 
[2026-03-31 17:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:18:18] [INFO] Checking activity reminders 
[2026-03-31 17:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:18:48] [INFO] Checking activity reminders 
[2026-03-31 17:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:19:18] [INFO] Checking activity reminders 
[2026-03-31 17:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:19:48] [INFO] Checking activity reminders 
[2026-03-31 17:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:20:19] [INFO] Checking activity reminders 
[2026-03-31 17:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:20:49] [INFO] Checking activity reminders 
[2026-03-31 17:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:21:19] [INFO] Checking activity reminders 
[2026-03-31 17:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:21:49] [INFO] Checking activity reminders 
[2026-03-31 17:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:22:19] [INFO] Checking activity reminders 
[2026-03-31 17:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:22:49] [INFO] Checking activity reminders 
[2026-03-31 17:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:23:19] [INFO] Checking activity reminders 
[2026-03-31 17:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:23:49] [INFO] Checking activity reminders 
[2026-03-31 17:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:24:19] [INFO] Checking activity reminders 
[2026-03-31 17:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:24:49] [INFO] Checking activity reminders 
[2026-03-31 17:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:25:20] [INFO] Checking activity reminders 
[2026-03-31 17:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:25:50] [INFO] Checking activity reminders 
[2026-03-31 17:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:29:11] [INFO] Checking activity reminders 
[2026-03-31 17:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:37:06] [INFO] Checking activity reminders 
[2026-03-31 17:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:37:36] [INFO] Checking activity reminders 
[2026-03-31 17:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:37:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 17:37:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 17:37:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 17:38:06] [INFO] Checking activity reminders 
[2026-03-31 17:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:38:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 17:38:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 17:38:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 17:38:36] [INFO] Checking activity reminders 
[2026-03-31 17:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:39:06] [INFO] Checking activity reminders 
[2026-03-31 17:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:39:36] [INFO] Checking activity reminders 
[2026-03-31 17:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:40:07] [INFO] Checking activity reminders 
[2026-03-31 17:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:40:37] [INFO] Checking activity reminders 
[2026-03-31 17:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:41:07] [INFO] Checking activity reminders 
[2026-03-31 17:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:41:37] [INFO] Checking activity reminders 
[2026-03-31 17:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:42:07] [INFO] Checking activity reminders 
[2026-03-31 17:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:42:37] [INFO] Checking activity reminders 
[2026-03-31 17:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:43:07] [INFO] Checking activity reminders 
[2026-03-31 17:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:43:37] [INFO] Checking activity reminders 
[2026-03-31 17:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:44:07] [INFO] Checking activity reminders 
[2026-03-31 17:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:44:37] [INFO] Checking activity reminders 
[2026-03-31 17:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:45:07] [INFO] Checking activity reminders 
[2026-03-31 17:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:45:37] [INFO] Checking activity reminders 
[2026-03-31 17:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:46:07] [INFO] Checking activity reminders 
[2026-03-31 17:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:46:37] [INFO] Checking activity reminders 
[2026-03-31 17:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:47:08] [INFO] Checking activity reminders 
[2026-03-31 17:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:47:38] [INFO] Checking activity reminders 
[2026-03-31 17:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:48:08] [INFO] Checking activity reminders 
[2026-03-31 17:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:57:40] [INFO] Checking activity reminders 
[2026-03-31 17:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:59:55] [INFO] Checking activity reminders 
[2026-03-31 17:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 17:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 17:59:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 17:59:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 18:00:46] [WARNING] Auth check failed - not authenticated {"session_id":"5k3tok9pmod0516rhorf6pke6o","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:00:47] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-03-31 18:00:47] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-03-31 18:00:47] [WARNING] Auth check failed - not authenticated {"session_id":"0snh8tein40rqt4er8vcemajib","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:01:34] [WARNING] Auth check failed - not authenticated {"session_id":"utr1qjm1agiblnfsde5jhsc409","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:01:34] [INFO] Master password used for login {"user_id":"8","identifier":"خانم شکیبا","role":"agent"}
[2026-03-31 18:01:34] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":true}
[2026-03-31 18:01:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 18:04:18] [INFO] Checking activity reminders 
[2026-03-31 18:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:10:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 18:10:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 18:10:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 18:10:11] [INFO] Checking activity reminders 
[2026-03-31 18:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:10:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 18:10:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 18:10:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 18:10:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-03-31 18:10:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-03-31 18:10:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-03-31 18:10:41] [INFO] Checking activity reminders 
[2026-03-31 18:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:11:11] [INFO] Checking activity reminders 
[2026-03-31 18:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:11:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-31 18:11:41] [INFO] Checking activity reminders 
[2026-03-31 18:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"check_reminders"}
[2026-03-31 18:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"get_dashboard_stats"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"ech00po888j1os4ueira6cdeb6","session_keys":[],"action":"log_client_event"}
[2026-03-31 18:11:53] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-03-31 18:11:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-03-31 18:12:07] [INFO] Checking activity reminders 
[2026-03-31 18:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:12:11] [INFO] Checking activity reminders 
[2026-03-31 18:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:12:42] [INFO] Checking activity reminders 
[2026-03-31 18:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:13:12] [INFO] Checking activity reminders 
[2026-03-31 18:13:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:13:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:13:42] [INFO] Checking activity reminders 
[2026-03-31 18:13:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:13:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:18:48] [INFO] Checking activity reminders 
[2026-03-31 18:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:19:12] [INFO] Checking activity reminders 
[2026-03-31 18:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:19:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-03-31 18:19:42] [INFO] Checking activity reminders 
[2026-03-31 18:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:38:48] [INFO] Checking activity reminders 
[2026-03-31 18:38:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:38:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:40:18] [INFO] Checking activity reminders 
[2026-03-31 18:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:40:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-03-31 18:41:07] [INFO] Checking activity reminders 
[2026-03-31 18:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-03-31 18:41:57] [INFO] Checking activity reminders 
[2026-03-31 18:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:41:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-03-31 18:45:37] [INFO] Checking activity reminders 
[2026-03-31 18:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21357","person_id":"3122"}
[2026-03-31 18:46:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16886","person_id":"7286"}
[2026-03-31 18:46:07] [INFO] Checking activity reminders 
[2026-03-31 18:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:46:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9075","person_id":"1640"}
[2026-03-31 18:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-03-31 18:46:37] [INFO] Checking activity reminders 
[2026-03-31 18:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:47:07] [INFO] Checking activity reminders 
[2026-03-31 18:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:47:38] [INFO] Checking activity reminders 
[2026-03-31 18:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:48:09] [INFO] Checking activity reminders 
[2026-03-31 18:48:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:48:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 18:50:59] [INFO] Checking activity reminders 
[2026-03-31 18:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 18:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:10:10] [INFO] Checking activity reminders 
[2026-03-31 19:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:24:32] [INFO] Checking activity reminders 
[2026-03-31 19:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:25:02] [INFO] Checking activity reminders 
[2026-03-31 19:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:25:30] [INFO] Checking activity reminders 
[2026-03-31 19:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:37:12] [INFO] Checking activity reminders 
[2026-03-31 19:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:37:40] [INFO] Checking activity reminders 
[2026-03-31 19:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-03-31 19:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-03-31 19:38:47] [INFO] Checking activity reminders 
[2026-03-31 19:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-03-31 19:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 01:40:29] [WARNING] Auth check failed - not authenticated {"session_id":"qe5a4eu62ek0ktqgjogatp5vef","session_keys":[],"action":"log_client_event"}
[2026-04-01 01:40:29] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-01 01:40:29] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-01 01:40:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 01:40:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-01 01:40:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-01 01:40:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-01 01:41:01] [INFO] Checking activity reminders 
[2026-04-01 01:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 01:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 01:41:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 01:41:31] [INFO] Checking activity reminders 
[2026-04-01 01:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 01:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 01:42:01] [INFO] Checking activity reminders 
[2026-04-01 01:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 01:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:43:00] [WARNING] Auth check failed - not authenticated {"session_id":"ilh41e98to0cdp2u3lqh87lghf","session_keys":[],"action":"log_client_event"}
[2026-04-01 10:43:00] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-01 10:43:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 10:56:25] [INFO] Checking activity reminders 
[2026-04-01 10:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:56:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 10:56:57] [INFO] Checking activity reminders 
[2026-04-01 10:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:57:28] [INFO] Checking activity reminders 
[2026-04-01 10:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:57:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 10:57:58] [INFO] Checking activity reminders 
[2026-04-01 10:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:58:28] [INFO] Checking activity reminders 
[2026-04-01 10:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:58:58] [INFO] Checking activity reminders 
[2026-04-01 10:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:59:28] [INFO] Checking activity reminders 
[2026-04-01 10:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 10:59:53] [INFO] Checking activity reminders 
[2026-04-01 10:59:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 10:59:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:00:23] [INFO] Checking activity reminders 
[2026-04-01 11:00:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:00:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:00:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11172","deal_id":"local_69bbe8a438e555.86714702","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 11:00:24","session_id":"ilh41e98to0cdp2u3lqh87lghf"}
[2026-04-01 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11172","is_new_deal":false}
[2026-04-01 11:00:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 11:00:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 11:00:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 11:00:24] [INFO] getContactPrimaryPhone called {"contact_id":"11172"}
[2026-04-01 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:24] [INFO] getContactPrimaryPhone result {"contact_id":"11172","person_found":true,"primary_phone":"9183719675"}
[2026-04-01 11:00:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9183719675"}
[2026-04-01 11:00:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9183719675","contact_id":"11172","deal_id":"local_69bbe8a438e555.86714702","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 11:00:24"}
[2026-04-01 11:00:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbe8a438e555.86714702","contact_id":"11172","existing_deal_found":true,"existing_contact_id":"11172","existing_title":"معامله دوم 9183719675 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 11:00:24"}
[2026-04-01 11:00:24] [INFO] DealController.save validated payments {"deal_id":"local_69bbe8a438e555.86714702","contact_id":"11172","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 11:00:24] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11172","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 11:00:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbe8a438e555.86714702","contact_didar_id":"11172","title":"معامله دوم 9183719675 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9183719675","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ناصری","existing_deal":"YES","existing_deal_id":"local_69bbe8a438e555.86714702","existing_deal_status":"Pending","server_time":"2026-04-01 11:00:24","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-01 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbe8a438e555.86714702","contact_id":"11172","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9183719675 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":15000000,"server_time":"2026-04-01 11:00:24","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-01 11:00:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:42] [INFO] Lead update received {"contact_id":"11172","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 11:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11172"}
[2026-04-01 11:00:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 11:00:53] [INFO] Checking activity reminders 
[2026-04-01 11:00:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:00:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:38:56] [WARNING] Auth check failed - not authenticated {"session_id":"p8b792fk1gs6e2mgngslja45o7","session_keys":[],"action":"log_client_event"}
[2026-04-01 11:38:57] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-01 11:38:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 11:39:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:39:27] [INFO] Checking activity reminders 
[2026-04-01 11:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:41:17] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 11:41:17] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 11:41:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 11:44:48] [INFO] Checking activity reminders 
[2026-04-01 11:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:45:16] [INFO] Activity save request {"post_data":{"contact_id":"652","deal_id":"local_69c7ead8606ec4.39658702","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 11:45:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"652","note_was_empty":true}
[2026-04-01 11:45:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"652","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:16] [INFO] Updating virtual stage {"contact_id":"652","stage_name":"deal_registered","force":false}
[2026-04-01 11:45:16] [INFO] Virtual stage successfully saved {"contact_id":"652","stage_name":"deal_registered"}
[2026-04-01 11:45:16] [INFO] Virtual stage updated after activity save {"contact_id":"652"}
[2026-04-01 11:45:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ead8606ec4.39658702","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 11:45:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccd4140889c7.85400056","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccd4140889c7.85400056"}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:16] [INFO] Updating virtual stage {"contact_id":"652","stage_name":"deal_registered","force":false}
[2026-04-01 11:45:16] [INFO] Virtual stage successfully saved {"contact_id":"652","stage_name":"deal_registered"}
[2026-04-01 11:45:16] [INFO] Virtual stage updated after activity save {"contact_id":"652"}
[2026-04-01 11:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"652","person_id":"18377"}
[2026-04-01 11:45:18] [INFO] Checking activity reminders 
[2026-04-01 11:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:45:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:45:48] [INFO] Checking activity reminders 
[2026-04-01 11:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:46:18] [INFO] Checking activity reminders 
[2026-04-01 11:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:46:49] [INFO] Checking activity reminders 
[2026-04-01 11:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:48:32] [INFO] Checking activity reminders 
[2026-04-01 11:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:49:04] [INFO] Checking activity reminders 
[2026-04-01 11:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:49:34] [INFO] Checking activity reminders 
[2026-04-01 11:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:50:05] [INFO] Checking activity reminders 
[2026-04-01 11:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:50:36] [INFO] Checking activity reminders 
[2026-04-01 11:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:51:06] [INFO] Checking activity reminders 
[2026-04-01 11:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:51:36] [INFO] Checking activity reminders 
[2026-04-01 11:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:52:06] [INFO] Checking activity reminders 
[2026-04-01 11:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:52:37] [INFO] Checking activity reminders 
[2026-04-01 11:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:53:07] [INFO] Checking activity reminders 
[2026-04-01 11:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:53:38] [INFO] Checking activity reminders 
[2026-04-01 11:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:54:09] [INFO] Checking activity reminders 
[2026-04-01 11:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:54:40] [INFO] Checking activity reminders 
[2026-04-01 11:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:55:10] [INFO] Checking activity reminders 
[2026-04-01 11:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:55:40] [INFO] Checking activity reminders 
[2026-04-01 11:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:56:10] [INFO] Checking activity reminders 
[2026-04-01 11:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:56:40] [INFO] Checking activity reminders 
[2026-04-01 11:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:56:59] [INFO] Activity save request {"post_data":{"contact_id":"5381","deal_id":"local_69c7e9d396caa6.54005764","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمایشگاه دار چیتگر، تمدید میکنه کاتال رو ۱۲ ماهه ۷۹ ت فردا صبح بیعانه میزنه شنبه بخش دیگه تسویه یا اخر فروردین یا اردیبهشت \r\nاز ۴۰۲ کانال هست","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 11:56:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:56:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 11:56:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 11:56:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:56:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5381","note_was_empty":true}
[2026-04-01 11:56:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"5381","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-01 11:56:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:56:59] [INFO] Updating virtual stage {"contact_id":"5381","stage_name":"deal_registered","force":false}
[2026-04-01 11:56:59] [INFO] Virtual stage successfully saved {"contact_id":"5381","stage_name":"deal_registered"}
[2026-04-01 11:56:59] [INFO] Virtual stage updated after activity save {"contact_id":"5381"}
[2026-04-01 11:56:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7e9d396caa6.54005764","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-01 11:56:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccd6d3dc9a20.38060620","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 11:56:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:56:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccd6d3dc9a20.38060620"}
[2026-04-01 11:56:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:56:59] [INFO] Updating virtual stage {"contact_id":"5381","stage_name":"deal_registered","force":false}
[2026-04-01 11:56:59] [INFO] Virtual stage successfully saved {"contact_id":"5381","stage_name":"deal_registered"}
[2026-04-01 11:56:59] [INFO] Virtual stage updated after activity save {"contact_id":"5381"}
[2026-04-01 11:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-01 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:57:11] [INFO] Checking activity reminders 
[2026-04-01 11:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:58:16] [INFO] Checking activity reminders 
[2026-04-01 11:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:59:10] [INFO] Checking activity reminders 
[2026-04-01 11:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 11:59:32] [INFO] Activity save request {"post_data":{"contact_id":"20941","deal_id":"local_69bbeb2e353e99.67400010","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسار پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 11:59:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20941","note_was_empty":true}
[2026-04-01 11:59:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"20941","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:32] [INFO] Updating virtual stage {"contact_id":"20941","stage_name":"deal_registered","force":false}
[2026-04-01 11:59:32] [INFO] Virtual stage successfully saved {"contact_id":"20941","stage_name":"deal_registered"}
[2026-04-01 11:59:32] [INFO] Virtual stage updated after activity save {"contact_id":"20941"}
[2026-04-01 11:59:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeb2e353e99.67400010","stage":"تماس پیگیری","status_change":null}
[2026-04-01 11:59:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccd76c593726.84813431","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccd76c593726.84813431"}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:32] [INFO] Updating virtual stage {"contact_id":"20941","stage_name":"deal_registered","force":false}
[2026-04-01 11:59:32] [INFO] Virtual stage successfully saved {"contact_id":"20941","stage_name":"deal_registered"}
[2026-04-01 11:59:32] [INFO] Virtual stage updated after activity save {"contact_id":"20941"}
[2026-04-01 11:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20941","person_id":"7708"}
[2026-04-01 11:59:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 11:59:40] [INFO] Checking activity reminders 
[2026-04-01 11:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 11:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:01:02] [INFO] Checking activity reminders 
[2026-04-01 12:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:01:19] [INFO] Checking activity reminders 
[2026-04-01 12:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:01:49] [INFO] Checking activity reminders 
[2026-04-01 12:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:02:19] [INFO] Checking activity reminders 
[2026-04-01 12:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:02:49] [INFO] Checking activity reminders 
[2026-04-01 12:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:03:20] [INFO] Checking activity reminders 
[2026-04-01 12:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:03:50] [INFO] Checking activity reminders 
[2026-04-01 12:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:04:20] [INFO] Checking activity reminders 
[2026-04-01 12:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:04:51] [INFO] Checking activity reminders 
[2026-04-01 12:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:05:21] [INFO] Checking activity reminders 
[2026-04-01 12:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:05:51] [INFO] Checking activity reminders 
[2026-04-01 12:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:06:22] [INFO] Checking activity reminders 
[2026-04-01 12:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:06:52] [INFO] Checking activity reminders 
[2026-04-01 12:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:07:22] [INFO] Checking activity reminders 
[2026-04-01 12:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:07:52] [INFO] Checking activity reminders 
[2026-04-01 12:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:08:19] [INFO] Checking activity reminders 
[2026-04-01 12:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:08:49] [INFO] Checking activity reminders 
[2026-04-01 12:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:09:20] [INFO] Checking activity reminders 
[2026-04-01 12:09:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:09:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:09:30] [INFO] Checking activity reminders 
[2026-04-01 12:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:10:01] [INFO] Checking activity reminders 
[2026-04-01 12:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:10:31] [INFO] Checking activity reminders 
[2026-04-01 12:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:11:02] [INFO] Checking activity reminders 
[2026-04-01 12:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:11:32] [INFO] Checking activity reminders 
[2026-04-01 12:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:12:02] [INFO] Checking activity reminders 
[2026-04-01 12:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:12:28] [INFO] Checking activity reminders 
[2026-04-01 12:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:12:58] [INFO] Checking activity reminders 
[2026-04-01 12:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:14:02] [INFO] Checking activity reminders 
[2026-04-01 12:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:14:33] [INFO] Checking activity reminders 
[2026-04-01 12:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:15:03] [INFO] Checking activity reminders 
[2026-04-01 12:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:15:33] [INFO] Checking activity reminders 
[2026-04-01 12:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:15:34] [INFO] Activity save request {"post_data":{"contact_id":"468","deal_id":"local_69bbad11afd7d5.99256491","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"به علت جنگ کارش خوابیده از جیب میخوره پول کارگر میده ، بابا بدهی بالا اورده این پرداخت کرده خالی شده ۳ میلیارد، ملک گذاشته برای فروش برای پدرش بوده جایی طلب داده فروش بره شرایط بهتر میشه بعد خودش اطلاع میاد کانال ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 12:15:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"468","note_was_empty":true}
[2026-04-01 12:15:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"468","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:34] [INFO] Updating virtual stage {"contact_id":"468","stage_name":"deal_registered","force":false}
[2026-04-01 12:15:34] [INFO] Virtual stage successfully saved {"contact_id":"468","stage_name":"deal_registered"}
[2026-04-01 12:15:34] [INFO] Virtual stage updated after activity save {"contact_id":"468"}
[2026-04-01 12:15:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad11afd7d5.99256491","stage":"تماس پیگیری","status_change":null}
[2026-04-01 12:15:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccdb2e4743b7.38052164","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccdb2e4743b7.38052164"}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:34] [INFO] Updating virtual stage {"contact_id":"468","stage_name":"deal_registered","force":false}
[2026-04-01 12:15:34] [INFO] Virtual stage successfully saved {"contact_id":"468","stage_name":"deal_registered"}
[2026-04-01 12:15:34] [INFO] Virtual stage updated after activity save {"contact_id":"468"}
[2026-04-01 12:15:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-01 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:16:03] [INFO] Checking activity reminders 
[2026-04-01 12:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:16:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:16:31] [INFO] Lead update received {"contact_id":"20833","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 12:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:16:31] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20833"}
[2026-04-01 12:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:16:33] [INFO] Checking activity reminders 
[2026-04-01 12:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:18:23] [INFO] Checking activity reminders 
[2026-04-01 12:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:18:53] [INFO] Checking activity reminders 
[2026-04-01 12:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:19:24] [INFO] Checking activity reminders 
[2026-04-01 12:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:19:31] [INFO] Activity save request {"post_data":{"contact_id":"20833","deal_id":"local_69bbe84fa9e039.72345153","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"علت اینکه فعالیت هام با مشتری های قدیمیم نیست رو متوحه نمیشم خیلی بده واقعه\r\nبابت تمدید قبل سال صحبت کرده بودم نمیخواست شرایط نداشت درگبر بود \r\nامروز مجد. تمتس عدم پاسخ ارسال پیامک پیگیری ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 12:19:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20833","note_was_empty":true}
[2026-04-01 12:19:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"20833","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:31] [INFO] Updating virtual stage {"contact_id":"20833","stage_name":"deal_registered","force":false}
[2026-04-01 12:19:31] [INFO] Virtual stage successfully saved {"contact_id":"20833","stage_name":"deal_registered"}
[2026-04-01 12:19:31] [INFO] Virtual stage updated after activity save {"contact_id":"20833"}
[2026-04-01 12:19:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe84fa9e039.72345153","stage":"تماس پیگیری","status_change":null}
[2026-04-01 12:19:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccdc1ba48b61.36591496","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccdc1ba48b61.36591496"}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:31] [INFO] Updating virtual stage {"contact_id":"20833","stage_name":"deal_registered","force":false}
[2026-04-01 12:19:31] [INFO] Virtual stage successfully saved {"contact_id":"20833","stage_name":"deal_registered"}
[2026-04-01 12:19:31] [INFO] Virtual stage updated after activity save {"contact_id":"20833"}
[2026-04-01 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20833","person_id":"5263"}
[2026-04-01 12:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:06] [INFO] Checking activity reminders 
[2026-04-01 12:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:22:18] [INFO] Checking activity reminders 
[2026-04-01 12:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:22:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:40] [INFO] Lead update received {"contact_id":"local_69b81178870152.22109174","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 12:22:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:40] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b81178870152.22109174"}
[2026-04-01 12:22:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:22:48] [INFO] Checking activity reminders 
[2026-04-01 12:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:23:14] [INFO] Activity save request {"post_data":{"contact_id":"local_69b81178870152.22109174","deal_id":"local_69b811788b958","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت ساعت ۶ تماس \r\n۴۰۰ الی ۵۰۰ سرمایه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 12:23:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b81178870152.22109174","note_was_empty":true}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:14] [INFO] Updating virtual stage {"contact_id":"local_69b81178870152.22109174","stage_name":"new","force":false}
[2026-04-01 12:23:14] [INFO] Virtual stage successfully saved {"contact_id":"local_69b81178870152.22109174","stage_name":"new"}
[2026-04-01 12:23:14] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b81178870152.22109174"}
[2026-04-01 12:23:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b811788b958","stage":"تماس پیگیری","status_change":null}
[2026-04-01 12:23:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccdcfa648ce4.88005045","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccdcfa648ce4.88005045"}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:14] [INFO] Updating virtual stage {"contact_id":"local_69b81178870152.22109174","stage_name":"deal_registered","force":false}
[2026-04-01 12:23:14] [INFO] Virtual stage successfully saved {"contact_id":"local_69b81178870152.22109174","stage_name":"deal_registered"}
[2026-04-01 12:23:14] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b81178870152.22109174"}
[2026-04-01 12:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-01 12:23:19] [INFO] Checking activity reminders 
[2026-04-01 12:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:23:49] [INFO] Checking activity reminders 
[2026-04-01 12:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:24:19] [INFO] Checking activity reminders 
[2026-04-01 12:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:26:49] [INFO] Checking activity reminders 
[2026-04-01 12:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:27:04] [INFO] Lead update received {"contact_id":"local_69b719ec78bce8.83422873","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 12:27:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:04] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69b719ec78bce8.83422873"}
[2026-04-01 12:27:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:19] [INFO] Checking activity reminders 
[2026-04-01 12:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 12:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 12:27:25] [INFO] Activity save request {"post_data":{"contact_id":"local_69b719ec78bce8.83422873","deal_id":"local_69b719ec90b24","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ساعت ۱۷ تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 12:27:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b719ec78bce8.83422873","note_was_empty":true}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:25] [INFO] Updating virtual stage {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"new","force":false}
[2026-04-01 12:27:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"new"}
[2026-04-01 12:27:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b719ec78bce8.83422873"}
[2026-04-01 12:27:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b719ec90b24","stage":"تماس پیگیری","status_change":null}
[2026-04-01 12:27:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccddf5aa5192.15957311","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccddf5aa5192.15957311"}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 12:27:25] [INFO] Updating virtual stage {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered","force":false}
[2026-04-01 12:27:25] [INFO] Virtual stage successfully saved {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered"}
[2026-04-01 12:27:25] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b719ec78bce8.83422873"}
[2026-04-01 12:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"check_reminders"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_products"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_deals"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_deals"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:00] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:03] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:04] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_products"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_deals"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_deals"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:05] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:07] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:18] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 13:03:18] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 13:03:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 13:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:03:48] [INFO] Checking activity reminders 
[2026-04-01 13:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:05:03] [INFO] Checking activity reminders 
[2026-04-01 13:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:06:52] [INFO] Checking activity reminders 
[2026-04-01 13:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:07:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_158","deal_id":"local_69ca92151a7dc3.27901638","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 13:07:16","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 13:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_158","is_new_deal":false}
[2026-04-01 13:07:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 13:07:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:07:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:07:16] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_158"}
[2026-04-01 13:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:16] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_158","person_found":true,"primary_phone":"9030743020"}
[2026-04-01 13:07:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9030743020"}
[2026-04-01 13:07:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9030743020","contact_id":"local_1403_09_26_158","deal_id":"local_69ca92151a7dc3.27901638","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:07:16"}
[2026-04-01 13:07:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca92151a7dc3.27901638","contact_id":"local_1403_09_26_158","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_158","existing_title":"معامله اول 9030743020 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:07:16"}
[2026-04-01 13:07:16] [INFO] DealController.save validated payments {"deal_id":"local_69ca92151a7dc3.27901638","contact_id":"local_1403_09_26_158","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 13:07:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_158","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 13:07:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca92151a7dc3.27901638","contact_didar_id":"local_1403_09_26_158","title":"معامله اول 9030743020 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9030743020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فریماه اخوان","existing_deal":"YES","existing_deal_id":"local_69ca92151a7dc3.27901638","existing_deal_status":"Pending","server_time":"2026-04-01 13:07:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 13:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca92151a7dc3.27901638","contact_id":"local_1403_09_26_158","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9030743020 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 13:07:16","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 13:07:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:22] [INFO] Checking activity reminders 
[2026-04-01 13:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:07:52] [INFO] Checking activity reminders 
[2026-04-01 13:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:07:57] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_158","deal_id":"local_69ca92151a7dc3.27901638","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"با هر دو شماره تماس گرفتم بیپاسخ \r\nپیامک ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 13:07:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_158","note_was_empty":true}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:57] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_158","stage_name":"new","force":false}
[2026-04-01 13:07:57] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_158","stage_name":"new"}
[2026-04-01 13:07:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_158"}
[2026-04-01 13:07:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca92151a7dc3.27901638","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 13:07:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cce775b5eb54.82146100","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69cce775b5eb54.82146100"}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:07:57] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_158","stage_name":"deal_registered","force":false}
[2026-04-01 13:07:57] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_158","stage_name":"deal_registered"}
[2026-04-01 13:07:57] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_158"}
[2026-04-01 13:07:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_158","person_id":"21234"}
[2026-04-01 13:08:05] [INFO] Checking activity reminders 
[2026-04-01 13:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:08:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:15:48] [INFO] Checking activity reminders 
[2026-04-01 13:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:16:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11884","deal_id":"local_69ca91f1b24e55.74008369","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 13:16:04","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:16:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11884","is_new_deal":false}
[2026-04-01 13:16:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 13:16:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:16:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:16:04] [INFO] getContactPrimaryPhone called {"contact_id":"11884"}
[2026-04-01 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:16:04] [INFO] getContactPrimaryPhone result {"contact_id":"11884","person_found":true,"primary_phone":"9122938221"}
[2026-04-01 13:16:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122938221"}
[2026-04-01 13:16:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122938221","contact_id":"11884","deal_id":"local_69ca91f1b24e55.74008369","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:16:04"}
[2026-04-01 13:16:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca91f1b24e55.74008369","contact_id":"11884","existing_deal_found":true,"existing_contact_id":"11884","existing_title":"معامله سوم 9122938221 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:16:04"}
[2026-04-01 13:16:04] [INFO] DealController.save validated payments {"deal_id":"local_69ca91f1b24e55.74008369","contact_id":"11884","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 13:16:04] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11884","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 13:16:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca91f1b24e55.74008369","contact_didar_id":"11884","title":"معامله سوم 9122938221 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9122938221","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگر","existing_deal":"YES","existing_deal_id":"local_69ca91f1b24e55.74008369","existing_deal_status":"Pending","server_time":"2026-04-01 13:16:04","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:16:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca91f1b24e55.74008369","contact_id":"11884","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9122938221 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 13:16:04","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:16:19] [INFO] Checking activity reminders 
[2026-04-01 13:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:16:49] [INFO] Checking activity reminders 
[2026-04-01 13:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:17:19] [INFO] Checking activity reminders 
[2026-04-01 13:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:17:35] [INFO] Activity save request {"post_data":{"contact_id":"11884","deal_id":"local_69ca91f1b24e55.74008369","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"درگیر کسب و کارشه که راه اندازی،کرده \r\nقبلا از استاد مشاوره داشته \r\nویس استاد در بله ارسال کردم \r\nمجدد برای پیگیری تماس میگیرم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 13:17:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11884","note_was_empty":true}
[2026-04-01 13:17:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"11884","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:35] [INFO] Updating virtual stage {"contact_id":"11884","stage_name":"deal_registered","force":false}
[2026-04-01 13:17:35] [INFO] Virtual stage successfully saved {"contact_id":"11884","stage_name":"deal_registered"}
[2026-04-01 13:17:35] [INFO] Virtual stage updated after activity save {"contact_id":"11884"}
[2026-04-01 13:17:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca91f1b24e55.74008369","stage":"تماس پیگیری","status_change":null}
[2026-04-01 13:17:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cce9b753f3c9.71744714","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69cce9b753f3c9.71744714"}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:35] [INFO] Updating virtual stage {"contact_id":"11884","stage_name":"deal_registered","force":false}
[2026-04-01 13:17:35] [INFO] Virtual stage successfully saved {"contact_id":"11884","stage_name":"deal_registered"}
[2026-04-01 13:17:35] [INFO] Virtual stage updated after activity save {"contact_id":"11884"}
[2026-04-01 13:17:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11884","person_id":"12268"}
[2026-04-01 13:17:49] [INFO] Checking activity reminders 
[2026-04-01 13:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:18:52] [INFO] Checking activity reminders 
[2026-04-01 13:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:26:36] [INFO] Checking activity reminders 
[2026-04-01 13:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:26:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8214","deal_id":"local_69ca919989a086.51260370","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 13:26:52","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 13:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:26:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8214","is_new_deal":false}
[2026-04-01 13:26:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 13:26:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:26:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:26:52] [INFO] getContactPrimaryPhone called {"contact_id":"8214"}
[2026-04-01 13:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:26:52] [INFO] getContactPrimaryPhone result {"contact_id":"8214","person_found":true,"primary_phone":"9122516393"}
[2026-04-01 13:26:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122516393"}
[2026-04-01 13:26:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122516393","contact_id":"8214","deal_id":"local_69ca919989a086.51260370","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:26:52"}
[2026-04-01 13:26:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca919989a086.51260370","contact_id":"8214","existing_deal_found":true,"existing_contact_id":"8214","existing_title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:26:52"}
[2026-04-01 13:26:52] [INFO] DealController.save validated payments {"deal_id":"local_69ca919989a086.51260370","contact_id":"8214","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 13:26:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8214","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 13:26:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca919989a086.51260370","contact_didar_id":"8214","title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9122516393","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهاد فرهانی","existing_deal":"YES","existing_deal_id":"local_69ca919989a086.51260370","existing_deal_status":"Pending","server_time":"2026-04-01 13:26:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 13:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:26:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca919989a086.51260370","contact_id":"8214","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 13:26:52","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 13:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:27:07] [INFO] Checking activity reminders 
[2026-04-01 13:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:27:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8214","deal_id":"local_69ca919989a086.51260370","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 13:27:24","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 13:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:27:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8214","is_new_deal":false}
[2026-04-01 13:27:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 13:27:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 13:27:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 13:27:24] [INFO] getContactPrimaryPhone called {"contact_id":"8214"}
[2026-04-01 13:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:27:24] [INFO] getContactPrimaryPhone result {"contact_id":"8214","person_found":true,"primary_phone":"9122516393"}
[2026-04-01 13:27:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122516393"}
[2026-04-01 13:27:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122516393","contact_id":"8214","deal_id":"local_69ca919989a086.51260370","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:27:24"}
[2026-04-01 13:27:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca919989a086.51260370","contact_id":"8214","existing_deal_found":true,"existing_contact_id":"8214","existing_title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:27:24"}
[2026-04-01 13:27:24] [INFO] DealController.save validated payments {"deal_id":"local_69ca919989a086.51260370","contact_id":"8214","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 13:27:24] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8214","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 13:27:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca919989a086.51260370","contact_didar_id":"8214","title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9122516393","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهاد فرهانی","existing_deal":"YES","existing_deal_id":"local_69ca919989a086.51260370","existing_deal_status":"Pending","server_time":"2026-04-01 13:27:24","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 13:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:27:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca919989a086.51260370","contact_id":"8214","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9122516393 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-01 13:27:24","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 13:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:27:37] [INFO] Checking activity reminders 
[2026-04-01 13:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:28:07] [INFO] Checking activity reminders 
[2026-04-01 13:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:28:37] [INFO] Checking activity reminders 
[2026-04-01 13:28:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:28:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:29:08] [INFO] Checking activity reminders 
[2026-04-01 13:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:29:15] [INFO] Activity save request {"post_data":{"contact_id":"8214","deal_id":"local_69ca919989a086.51260370","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خط اول فروخته شده تماس گرفته نشود \r\n8ماهه درگیر بیماری و مراقبت از پدرش \r\nسرمایه داده کار در خودرو فقط سودش صرف هزینه ها میکنه \r\nپرزنت 405 و پیش،بینی \r\nسال 404 در کانال نبوده \r\nلیلا و روبیکا داره \r\nپیامک ارسال شنبه پیگیری ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 13:29:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8214","note_was_empty":true}
[2026-04-01 13:29:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"8214","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:15] [INFO] Updating virtual stage {"contact_id":"8214","stage_name":"deal_registered","force":false}
[2026-04-01 13:29:15] [INFO] Virtual stage successfully saved {"contact_id":"8214","stage_name":"deal_registered"}
[2026-04-01 13:29:15] [INFO] Virtual stage updated after activity save {"contact_id":"8214"}
[2026-04-01 13:29:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca919989a086.51260370","stage":"تماس پیگیری","status_change":null}
[2026-04-01 13:29:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccec732a1e77.36387780","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccec732a1e77.36387780"}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:15] [INFO] Updating virtual stage {"contact_id":"8214","stage_name":"deal_registered","force":false}
[2026-04-01 13:29:15] [INFO] Virtual stage successfully saved {"contact_id":"8214","stage_name":"deal_registered"}
[2026-04-01 13:29:15] [INFO] Virtual stage updated after activity save {"contact_id":"8214"}
[2026-04-01 13:29:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8214","person_id":"11789"}
[2026-04-01 13:29:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 13:29:38] [INFO] Checking activity reminders 
[2026-04-01 13:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:30:08] [INFO] Checking activity reminders 
[2026-04-01 13:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:35:40] [INFO] Checking activity reminders 
[2026-04-01 13:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:36:10] [INFO] Checking activity reminders 
[2026-04-01 13:36:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:36:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:36:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21457","deal_id":"local_69ca91724220a2.67653635","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 13:36:16","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 13:36:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21457","is_new_deal":false}
[2026-04-01 13:36:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 13:36:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:36:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 13:36:16] [INFO] getContactPrimaryPhone called {"contact_id":"21457"}
[2026-04-01 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 13:36:16] [INFO] getContactPrimaryPhone result {"contact_id":"21457","person_found":true,"primary_phone":"9122478371"}
[2026-04-01 13:36:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122478371"}
[2026-04-01 13:36:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122478371","contact_id":"21457","deal_id":"local_69ca91724220a2.67653635","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:36:16"}
[2026-04-01 13:36:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca91724220a2.67653635","contact_id":"21457","existing_deal_found":true,"existing_contact_id":"21457","existing_title":"معامله دوم 9122478371 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 13:36:16"}
[2026-04-01 13:36:16] [INFO] DealController.save validated payments {"deal_id":"local_69ca91724220a2.67653635","contact_id":"21457","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 13:36:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21457","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 13:36:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca91724220a2.67653635","contact_didar_id":"21457","title":"معامله دوم 9122478371 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122478371","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سحرخیز","existing_deal":"YES","existing_deal_id":"local_69ca91724220a2.67653635","existing_deal_status":"Pending","server_time":"2026-04-01 13:36:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 13:36:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca91724220a2.67653635","contact_id":"21457","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9122478371 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 13:36:16","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 13:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 13:36:40] [INFO] Checking activity reminders 
[2026-04-01 13:36:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:36:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:37:10] [INFO] Checking activity reminders 
[2026-04-01 13:37:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:37:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:37:41] [INFO] Checking activity reminders 
[2026-04-01 13:37:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:37:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:38:11] [INFO] Checking activity reminders 
[2026-04-01 13:38:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:38:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:38:42] [INFO] Checking activity reminders 
[2026-04-01 13:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:39:12] [INFO] Checking activity reminders 
[2026-04-01 13:39:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:39:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:39:42] [INFO] Checking activity reminders 
[2026-04-01 13:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:40:12] [INFO] Checking activity reminders 
[2026-04-01 13:40:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:40:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:40:42] [INFO] Checking activity reminders 
[2026-04-01 13:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:49:34] [INFO] Checking activity reminders 
[2026-04-01 13:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:49:53] [INFO] Checking activity reminders 
[2026-04-01 13:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:50:23] [INFO] Checking activity reminders 
[2026-04-01 13:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:50:54] [INFO] Checking activity reminders 
[2026-04-01 13:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:51:24] [INFO] Checking activity reminders 
[2026-04-01 13:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:51:54] [INFO] Checking activity reminders 
[2026-04-01 13:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:52:24] [INFO] Checking activity reminders 
[2026-04-01 13:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:52:54] [INFO] Checking activity reminders 
[2026-04-01 13:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:53:24] [INFO] Checking activity reminders 
[2026-04-01 13:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:53:55] [INFO] Checking activity reminders 
[2026-04-01 13:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:54:25] [INFO] Checking activity reminders 
[2026-04-01 13:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:54:55] [INFO] Checking activity reminders 
[2026-04-01 13:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:55:25] [INFO] Checking activity reminders 
[2026-04-01 13:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:55:55] [INFO] Checking activity reminders 
[2026-04-01 13:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:56:25] [INFO] Checking activity reminders 
[2026-04-01 13:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:56:56] [INFO] Checking activity reminders 
[2026-04-01 13:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:57:26] [INFO] Checking activity reminders 
[2026-04-01 13:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:57:56] [INFO] Checking activity reminders 
[2026-04-01 13:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:58:26] [INFO] Checking activity reminders 
[2026-04-01 13:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:58:56] [INFO] Checking activity reminders 
[2026-04-01 13:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:59:26] [INFO] Checking activity reminders 
[2026-04-01 13:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 13:59:57] [INFO] Checking activity reminders 
[2026-04-01 13:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 13:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:00:21] [INFO] Activity save request {"post_data":{"contact_id":"21457","deal_id":"local_69ca91724220a2.67653635","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 و دوره پیش بینی کل بازار مالی \r\nپیامک ارسال شد برای 6 ماهه و یکساله\r\nجایی بود راحت نمیتونست حرف بزنه مجدد تماس \r\n\r\n ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 14:00:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21457","note_was_empty":true}
[2026-04-01 14:00:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"21457","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:21] [INFO] Updating virtual stage {"contact_id":"21457","stage_name":"deal_registered","force":false}
[2026-04-01 14:00:21] [INFO] Virtual stage successfully saved {"contact_id":"21457","stage_name":"deal_registered"}
[2026-04-01 14:00:21] [INFO] Virtual stage updated after activity save {"contact_id":"21457"}
[2026-04-01 14:00:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca91724220a2.67653635","stage":"تماس پیگیری","status_change":null}
[2026-04-01 14:00:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccf3bd42c240.93218545","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccf3bd42c240.93218545"}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:21] [INFO] Updating virtual stage {"contact_id":"21457","stage_name":"deal_registered","force":false}
[2026-04-01 14:00:21] [INFO] Virtual stage successfully saved {"contact_id":"21457","stage_name":"deal_registered"}
[2026-04-01 14:00:21] [INFO] Virtual stage updated after activity save {"contact_id":"21457"}
[2026-04-01 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21457","person_id":"12007"}
[2026-04-01 14:00:27] [INFO] Checking activity reminders 
[2026-04-01 14:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:00:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:02:36] [INFO] Checking activity reminders 
[2026-04-01 14:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:02:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4120","deal_id":"local_69ca91120e83b1.49932522","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:02:59","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:02:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4120","is_new_deal":false}
[2026-04-01 14:02:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 14:02:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:02:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:02:59] [INFO] getContactPrimaryPhone called {"contact_id":"4120"}
[2026-04-01 14:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:02:59] [INFO] getContactPrimaryPhone result {"contact_id":"4120","person_found":true,"primary_phone":"9121888212"}
[2026-04-01 14:02:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121888212"}
[2026-04-01 14:02:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121888212","contact_id":"4120","deal_id":"local_69ca91120e83b1.49932522","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:02:59"}
[2026-04-01 14:02:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca91120e83b1.49932522","contact_id":"4120","existing_deal_found":true,"existing_contact_id":"4120","existing_title":"معامله سوم 9121888212 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:02:59"}
[2026-04-01 14:02:59] [INFO] DealController.save validated payments {"deal_id":"local_69ca91120e83b1.49932522","contact_id":"4120","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 14:02:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4120","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:02:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca91120e83b1.49932522","contact_didar_id":"4120","title":"معامله سوم 9121888212 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121888212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا خانی","existing_deal":"YES","existing_deal_id":"local_69ca91120e83b1.49932522","existing_deal_status":"Pending","server_time":"2026-04-01 14:02:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:02:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca91120e83b1.49932522","contact_id":"4120","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9121888212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 14:02:59","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:06] [INFO] Checking activity reminders 
[2026-04-01 14:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:03:15] [INFO] Activity save request {"post_data":{"contact_id":"4120","deal_id":"local_69ca91120e83b1.49932522","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 14:03:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4120","note_was_empty":true}
[2026-04-01 14:03:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"4120","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:15] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-04-01 14:03:15] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-04-01 14:03:15] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-04-01 14:03:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca91120e83b1.49932522","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 14:03:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccf46b2d96c6.33256302","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccf46b2d96c6.33256302"}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:15] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-04-01 14:03:15] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-04-01 14:03:15] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-04-01 14:03:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-01 14:03:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:03:36] [INFO] Checking activity reminders 
[2026-04-01 14:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:04:06] [INFO] Checking activity reminders 
[2026-04-01 14:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:07:01] [INFO] Checking activity reminders 
[2026-04-01 14:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:07:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:07:05","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:07:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:07:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"12740","is_new_deal":false}
[2026-04-01 14:07:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-01 14:07:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 14:07:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 14:07:05] [INFO] getContactPrimaryPhone called {"contact_id":"12740"}
[2026-04-01 14:07:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:07:05] [INFO] getContactPrimaryPhone result {"contact_id":"12740","person_found":true,"primary_phone":"9121571976"}
[2026-04-01 14:07:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121571976"}
[2026-04-01 14:07:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121571976","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:07:05"}
[2026-04-01 14:07:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","existing_deal_found":true,"existing_contact_id":"12740","existing_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:07:05"}
[2026-04-01 14:07:05] [INFO] DealController.save validated payments {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-01 14:07:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12740","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:07:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90ed2c2244.08949604","contact_didar_id":"12740","title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9121571976","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قشلاقی","existing_deal":"YES","existing_deal_id":"local_69ca90ed2c2244.08949604","existing_deal_status":"Pending","server_time":"2026-04-01 14:07:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:07:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:07:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-01 14:07:05","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:07:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:07:32] [INFO] Checking activity reminders 
[2026-04-01 14:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:08:02] [INFO] Checking activity reminders 
[2026-04-01 14:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:08:32] [INFO] Checking activity reminders 
[2026-04-01 14:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:08:39] [INFO] Activity save request {"post_data":{"contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل اموال مصادره و حساب هر مسدود \r\nدر اعتراضات دی ماه حضور داشته درگیر دادگاه \r\nبرلی یکساله بدون پشتیبانی و کانال \r\n20 واریز نقد \r\n34 چک خانمش ارسال ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:08:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 14:08:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:08:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12740","note_was_empty":true}
[2026-04-01 14:08:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"12740","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:08:39] [INFO] Updating virtual stage {"contact_id":"12740","stage_name":"deal_registered","force":false}
[2026-04-01 14:08:39] [INFO] Virtual stage successfully saved {"contact_id":"12740","stage_name":"deal_registered"}
[2026-04-01 14:08:39] [INFO] Virtual stage updated after activity save {"contact_id":"12740"}
[2026-04-01 14:08:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca90ed2c2244.08949604","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-01 14:08:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccf5afd05158.82349766","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:08:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccf5afd05158.82349766"}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:08:39] [INFO] Updating virtual stage {"contact_id":"12740","stage_name":"deal_registered","force":false}
[2026-04-01 14:08:39] [INFO] Virtual stage successfully saved {"contact_id":"12740","stage_name":"deal_registered"}
[2026-04-01 14:08:39] [INFO] Virtual stage updated after activity save {"contact_id":"12740"}
[2026-04-01 14:08:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:10:58] [INFO] Checking activity reminders 
[2026-04-01 14:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:11:28] [INFO] Checking activity reminders 
[2026-04-01 14:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:11:42] [INFO] Checking activity reminders 
[2026-04-01 14:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:12:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:12:04","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:12:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12740","is_new_deal":false}
[2026-04-01 14:12:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 14:12:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:12:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:12:04] [INFO] getContactPrimaryPhone called {"contact_id":"12740"}
[2026-04-01 14:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:12:04] [INFO] getContactPrimaryPhone result {"contact_id":"12740","person_found":true,"primary_phone":"9121571976"}
[2026-04-01 14:12:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121571976"}
[2026-04-01 14:12:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121571976","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:12:04"}
[2026-04-01 14:12:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","existing_deal_found":true,"existing_contact_id":"12740","existing_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:12:04"}
[2026-04-01 14:12:04] [INFO] DealController.save validated payments {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 14:12:04] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12740","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:12:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90ed2c2244.08949604","contact_didar_id":"12740","title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9121571976","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قشلاقی","existing_deal":"YES","existing_deal_id":"local_69ca90ed2c2244.08949604","existing_deal_status":"Pending","server_time":"2026-04-01 14:12:04","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:12:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":20000000,"server_time":"2026-04-01 14:12:04","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:12:11] [INFO] Checking activity reminders 
[2026-04-01 14:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:12:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-01 14:12:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-04-01 14:12:41] [INFO] Checking activity reminders 
[2026-04-01 14:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:13:14] [INFO] Checking activity reminders 
[2026-04-01 14:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:13:45] [INFO] Checking activity reminders 
[2026-04-01 14:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:13:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15620","deal_id":"local_69ca90cbb88cf0.99086016","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:13:50","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-04-01 14:13:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15620","is_new_deal":false}
[2026-04-01 14:13:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 14:13:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:13:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:13:50] [INFO] getContactPrimaryPhone called {"contact_id":"15620"}
[2026-04-01 14:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-04-01 14:13:50] [INFO] getContactPrimaryPhone result {"contact_id":"15620","person_found":true,"primary_phone":"9121472202"}
[2026-04-01 14:13:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121472202"}
[2026-04-01 14:13:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121472202","contact_id":"15620","deal_id":"local_69ca90cbb88cf0.99086016","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:13:50"}
[2026-04-01 14:13:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90cbb88cf0.99086016","contact_id":"15620","existing_deal_found":true,"existing_contact_id":"15620","existing_title":"معامله دوم 9121472202 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:13:50"}
[2026-04-01 14:13:50] [INFO] DealController.save validated payments {"deal_id":"local_69ca90cbb88cf0.99086016","contact_id":"15620","payments_count":0,"status":"lost","pipeline_stage":"معامله ناموفق"}
[2026-04-01 14:13:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15620","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:13:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90cbb88cf0.99086016","contact_didar_id":"15620","title":"معامله دوم 9121472202 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121472202","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله ناموفق","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقدمیان","existing_deal":"YES","existing_deal_id":"local_69ca90cbb88cf0.99086016","existing_deal_status":"Pending","server_time":"2026-04-01 14:13:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-04-01 14:13:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90cbb88cf0.99086016","contact_id":"15620","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9121472202 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله ناموفق","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 14:13:50","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15620","person_id":"12491"}
[2026-04-01 14:14:03] [INFO] Checking activity reminders 
[2026-04-01 14:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:14:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:24] [INFO] Checking activity reminders 
[2026-04-01 14:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:16:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16977","deal_id":"local_69ca90a716e326.41168596","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:16:34","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16977","is_new_deal":false}
[2026-04-01 14:16:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 14:16:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:16:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:16:34] [INFO] getContactPrimaryPhone called {"contact_id":"16977"}
[2026-04-01 14:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:34] [INFO] getContactPrimaryPhone result {"contact_id":"16977","person_found":true,"primary_phone":"9121425205"}
[2026-04-01 14:16:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121425205"}
[2026-04-01 14:16:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121425205","contact_id":"16977","deal_id":"local_69ca90a716e326.41168596","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:16:34"}
[2026-04-01 14:16:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90a716e326.41168596","contact_id":"16977","existing_deal_found":true,"existing_contact_id":"16977","existing_title":"معامله دوم 9121425205 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:16:34"}
[2026-04-01 14:16:34] [INFO] DealController.save validated payments {"deal_id":"local_69ca90a716e326.41168596","contact_id":"16977","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 14:16:34] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16977","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:16:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90a716e326.41168596","contact_didar_id":"16977","title":"معامله دوم 9121425205 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121425205","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرهمند","existing_deal":"YES","existing_deal_id":"local_69ca90a716e326.41168596","existing_deal_status":"Pending","server_time":"2026-04-01 14:16:34","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90a716e326.41168596","contact_id":"16977","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9121425205 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 14:16:34","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Activity save request {"post_data":{"contact_id":"16977","deal_id":"local_69ca90a716e326.41168596","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 14:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 14:16:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 14:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16977","note_was_empty":true}
[2026-04-01 14:16:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"16977","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 14:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Updating virtual stage {"contact_id":"16977","stage_name":"deal_registered","force":false}
[2026-04-01 14:16:49] [INFO] Virtual stage successfully saved {"contact_id":"16977","stage_name":"deal_registered"}
[2026-04-01 14:16:49] [INFO] Virtual stage updated after activity save {"contact_id":"16977"}
[2026-04-01 14:16:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca90a716e326.41168596","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 14:16:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccf799de4334.34204911","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 14:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccf799de4334.34204911"}
[2026-04-01 14:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:49] [INFO] Updating virtual stage {"contact_id":"16977","stage_name":"deal_registered","force":false}
[2026-04-01 14:16:49] [INFO] Virtual stage successfully saved {"contact_id":"16977","stage_name":"deal_registered"}
[2026-04-01 14:16:49] [INFO] Virtual stage updated after activity save {"contact_id":"16977"}
[2026-04-01 14:16:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16977","person_id":"12556"}
[2026-04-01 14:16:54] [INFO] Checking activity reminders 
[2026-04-01 14:16:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:16:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:20:53] [INFO] Checking activity reminders 
[2026-04-01 14:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:21:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 14:21:20","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 14:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:21:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2947","is_new_deal":false}
[2026-04-01 14:21:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 14:21:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:21:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 14:21:20] [INFO] getContactPrimaryPhone called {"contact_id":"2947"}
[2026-04-01 14:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:21:20] [INFO] getContactPrimaryPhone result {"contact_id":"2947","person_found":true,"primary_phone":"9121211748"}
[2026-04-01 14:21:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121211748"}
[2026-04-01 14:21:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121211748","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:21:20"}
[2026-04-01 14:21:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","existing_deal_found":true,"existing_contact_id":"2947","existing_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 14:21:20"}
[2026-04-01 14:21:20] [INFO] DealController.save validated payments {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 14:21:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2947","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 14:21:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90762afa17.07440898","contact_didar_id":"2947","title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9121211748","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین صنعتی","existing_deal":"YES","existing_deal_id":"local_69ca90762afa17.07440898","existing_deal_status":"Pending","server_time":"2026-04-01 14:21:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 14:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:21:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 14:21:20","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 14:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:21:23] [INFO] Checking activity reminders 
[2026-04-01 14:21:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:21:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:21:54] [INFO] Checking activity reminders 
[2026-04-01 14:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:22:24] [INFO] Checking activity reminders 
[2026-04-01 14:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:22:54] [INFO] Checking activity reminders 
[2026-04-01 14:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:23:03] [INFO] Activity save request {"post_data":{"contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 و پیش،بینی \r\nبرای کانال گفت شنبه تماس مجدد و واریز ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 14:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 14:23:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 14:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2947","note_was_empty":true}
[2026-04-01 14:23:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"2947","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 14:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:03] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-01 14:23:03] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-01 14:23:03] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-01 14:23:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca90762afa17.07440898","stage":"تماس پیگیری","status_change":null}
[2026-04-01 14:23:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69ccf90fd822a0.36285038","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 14:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69ccf90fd822a0.36285038"}
[2026-04-01 14:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:03] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-01 14:23:03] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-01 14:23:03] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-01 14:23:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-01 14:23:24] [INFO] Checking activity reminders 
[2026-04-01 14:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 14:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 14:23:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:05:52] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:52] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"check_reminders"}
[2026-04-01 15:05:52] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:53] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_deal"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:55] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:05:58] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:06:01] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:06:02] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:06:37] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 15:06:38] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 15:06:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 15:13:38] [INFO] Checking activity reminders 
[2026-04-01 15:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:13:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:14:09] [INFO] Checking activity reminders 
[2026-04-01 15:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:14:39] [INFO] Checking activity reminders 
[2026-04-01 15:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:14:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"11689","deal_id":"local_6947cec617d0d7.24900321","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:14:59","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:14:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"11689","is_new_deal":false}
[2026-04-01 15:14:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-01 15:14:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 15:14:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 15:14:59] [INFO] getContactPrimaryPhone called {"contact_id":"11689"}
[2026-04-01 15:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:14:59] [INFO] getContactPrimaryPhone result {"contact_id":"11689","person_found":true,"primary_phone":"9165112292"}
[2026-04-01 15:14:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9165112292"}
[2026-04-01 15:14:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9165112292","contact_id":"11689","deal_id":"local_6947cec617d0d7.24900321","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:14:59"}
[2026-04-01 15:14:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_6947cec617d0d7.24900321","contact_id":"11689","existing_deal_found":true,"existing_contact_id":"11689","existing_title":"معامله اول 9165112292 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:14:59"}
[2026-04-01 15:14:59] [INFO] DealController.save validated payments {"deal_id":"local_6947cec617d0d7.24900321","contact_id":"11689","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 15:14:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11689","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:14:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6947cec617d0d7.24900321","contact_didar_id":"11689","title":"معامله اول 9165112292 | CIP، کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9165112292","services_text":"CIP، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":50000000,"payments_present":true,"requested_services":["CIP","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لیمویی لیمویی","existing_deal":"YES","existing_deal_id":"local_6947cec617d0d7.24900321","existing_deal_status":"Pending","server_time":"2026-04-01 15:14:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:15:00] [INFO] Deal success processed {"contact_id":"11689","person_name":"لیمویی لیمویی","products_count":1}
[2026-04-01 15:15:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6947cec617d0d7.24900321","contact_id":"11689","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9165112292 | CIP، کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":50000000,"server_time":"2026-04-01 15:15:00","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-01 15:15:09] [INFO] Checking activity reminders 
[2026-04-01 15:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:15:43] [INFO] Checking activity reminders 
[2026-04-01 15:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:16:13] [INFO] Checking activity reminders 
[2026-04-01 15:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:16:43] [INFO] Checking activity reminders 
[2026-04-01 15:16:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:16:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:17:25] [INFO] Checking activity reminders 
[2026-04-01 15:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:17:56] [INFO] Checking activity reminders 
[2026-04-01 15:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:18:26] [INFO] Checking activity reminders 
[2026-04-01 15:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:18:39] [INFO] Checking activity reminders 
[2026-04-01 15:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:19:01] [INFO] Checking activity reminders 
[2026-04-01 15:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:20:59] [INFO] Checking activity reminders 
[2026-04-01 15:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:21:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 15:21:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:21:43] [INFO] Checking activity reminders 
[2026-04-01 15:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:22:13] [INFO] Checking activity reminders 
[2026-04-01 15:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:22:44] [INFO] Checking activity reminders 
[2026-04-01 15:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:23:27] [INFO] Checking activity reminders 
[2026-04-01 15:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:23:42] [INFO] Checking activity reminders 
[2026-04-01 15:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:23:53] [INFO] Checking activity reminders 
[2026-04-01 15:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:24:02] [INFO] Checking activity reminders 
[2026-04-01 15:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:24:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:24:27","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:24:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16084","is_new_deal":false}
[2026-04-01 15:24:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:24:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:24:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:24:27] [INFO] getContactPrimaryPhone called {"contact_id":"16084"}
[2026-04-01 15:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:24:27] [INFO] getContactPrimaryPhone result {"contact_id":"16084","person_found":true,"primary_phone":"9213840683"}
[2026-04-01 15:24:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213840683"}
[2026-04-01 15:24:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213840683","contact_id":"16084","deal_id":"local_69bfbef872d3a2.94680596","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:24:27"}
[2026-04-01 15:24:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","existing_deal_found":true,"existing_contact_id":"16084","existing_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:24:27"}
[2026-04-01 15:24:27] [INFO] DealController.save validated payments {"deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 15:24:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16084","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:24:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bfbef872d3a2.94680596","contact_didar_id":"16084","title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9213840683","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناد علی","existing_deal":"YES","existing_deal_id":"local_69bfbef872d3a2.94680596","existing_deal_status":"Pending","server_time":"2026-04-01 15:24:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:24:27] [INFO] Deal success processed {"contact_id":"16084","person_name":"ناد علی","products_count":1}
[2026-04-01 15:24:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bfbef872d3a2.94680596","contact_id":"16084","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9213840683 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-01 15:24:27","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-01 15:29:22] [INFO] Checking activity reminders 
[2026-04-01 15:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:29:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:29:53] [INFO] Checking activity reminders 
[2026-04-01 15:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:30:18] [INFO] Activity save request {"post_data":{"contact_id":"7993","deal_id":"local_69ca923d2c1e37.10964407","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"چک نداره \r\nدر 2 مرحله نقدی تا آخر برج 2 تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:30:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7993","note_was_empty":true}
[2026-04-01 15:30:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"7993","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:18] [INFO] Updating virtual stage {"contact_id":"7993","stage_name":"deal_registered","force":false}
[2026-04-01 15:30:18] [INFO] Virtual stage successfully saved {"contact_id":"7993","stage_name":"deal_registered"}
[2026-04-01 15:30:18] [INFO] Virtual stage updated after activity save {"contact_id":"7993"}
[2026-04-01 15:30:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca923d2c1e37.10964407","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-01 15:30:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd08d2534158.78914052","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd08d2534158.78914052"}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:18] [INFO] Updating virtual stage {"contact_id":"7993","stage_name":"deal_registered","force":false}
[2026-04-01 15:30:18] [INFO] Virtual stage successfully saved {"contact_id":"7993","stage_name":"deal_registered"}
[2026-04-01 15:30:18] [INFO] Virtual stage updated after activity save {"contact_id":"7993"}
[2026-04-01 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:30:23] [INFO] Checking activity reminders 
[2026-04-01 15:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:31:42] [INFO] Checking activity reminders 
[2026-04-01 15:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:31:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-01 15:32:12] [INFO] Checking activity reminders 
[2026-04-01 15:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-01 15:32:42] [INFO] Checking activity reminders 
[2026-04-01 15:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1467","deal_id":"local_69ca9002a9bb98.48384358","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:33:01","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1467","is_new_deal":false}
[2026-04-01 15:33:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:33:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:33:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:33:01] [INFO] getContactPrimaryPhone called {"contact_id":"1467"}
[2026-04-01 15:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:01] [INFO] getContactPrimaryPhone result {"contact_id":"1467","person_found":true,"primary_phone":"9121035422"}
[2026-04-01 15:33:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121035422"}
[2026-04-01 15:33:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121035422","contact_id":"1467","deal_id":"local_69ca9002a9bb98.48384358","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:33:01"}
[2026-04-01 15:33:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca9002a9bb98.48384358","contact_id":"1467","existing_deal_found":true,"existing_contact_id":"1467","existing_title":"معامله دوم 9121035422 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:33:01"}
[2026-04-01 15:33:01] [INFO] DealController.save validated payments {"deal_id":"local_69ca9002a9bb98.48384358","contact_id":"1467","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 15:33:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1467","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:33:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca9002a9bb98.48384358","contact_didar_id":"1467","title":"معامله دوم 9121035422 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121035422","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصرزاده","existing_deal":"YES","existing_deal_id":"local_69ca9002a9bb98.48384358","existing_deal_status":"Pending","server_time":"2026-04-01 15:33:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca9002a9bb98.48384358","contact_id":"1467","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9121035422 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:33:01","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:13] [INFO] Checking activity reminders 
[2026-04-01 15:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:33:22] [INFO] Activity save request {"post_data":{"contact_id":"1467","deal_id":"local_69ca9002a9bb98.48384358","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:33:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1467","note_was_empty":true}
[2026-04-01 15:33:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"1467","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:22] [INFO] Updating virtual stage {"contact_id":"1467","stage_name":"deal_registered","force":false}
[2026-04-01 15:33:22] [INFO] Virtual stage successfully saved {"contact_id":"1467","stage_name":"deal_registered"}
[2026-04-01 15:33:22] [INFO] Virtual stage updated after activity save {"contact_id":"1467"}
[2026-04-01 15:33:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca9002a9bb98.48384358","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 15:33:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd098a347501.40312541","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd098a347501.40312541"}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:22] [INFO] Updating virtual stage {"contact_id":"1467","stage_name":"deal_registered","force":false}
[2026-04-01 15:33:22] [INFO] Virtual stage successfully saved {"contact_id":"1467","stage_name":"deal_registered"}
[2026-04-01 15:33:22] [INFO] Virtual stage updated after activity save {"contact_id":"1467"}
[2026-04-01 15:33:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1467","person_id":"12706"}
[2026-04-01 15:33:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:33:43] [INFO] Checking activity reminders 
[2026-04-01 15:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:34:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3879","deal_id":"local_69ca8fdce75c93.03599692","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:34:00","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:34:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3879","is_new_deal":false}
[2026-04-01 15:34:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:34:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:34:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:34:00] [INFO] getContactPrimaryPhone called {"contact_id":"3879"}
[2026-04-01 15:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:34:00] [INFO] getContactPrimaryPhone result {"contact_id":"3879","person_found":true,"primary_phone":"9121003495"}
[2026-04-01 15:34:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121003495"}
[2026-04-01 15:34:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121003495","contact_id":"3879","deal_id":"local_69ca8fdce75c93.03599692","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:34:00"}
[2026-04-01 15:34:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8fdce75c93.03599692","contact_id":"3879","existing_deal_found":true,"existing_contact_id":"3879","existing_title":"معامله سوم 9121003495 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:34:00"}
[2026-04-01 15:34:00] [INFO] DealController.save validated payments {"deal_id":"local_69ca8fdce75c93.03599692","contact_id":"3879","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 15:34:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3879","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:34:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8fdce75c93.03599692","contact_didar_id":"3879","title":"معامله سوم 9121003495 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9121003495","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی سپهری","existing_deal":"YES","existing_deal_id":"local_69ca8fdce75c93.03599692","existing_deal_status":"Pending","server_time":"2026-04-01 15:34:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:34:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8fdce75c93.03599692","contact_id":"3879","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9121003495 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:34:00","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:34:13] [INFO] Checking activity reminders 
[2026-04-01 15:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:34:43] [INFO] Checking activity reminders 
[2026-04-01 15:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:35:14] [INFO] Checking activity reminders 
[2026-04-01 15:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:35:44] [INFO] Checking activity reminders 
[2026-04-01 15:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:35:48] [INFO] Activity save request {"post_data":{"contact_id":"3879","deal_id":"local_69ca8fdce75c93.03599692","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک دادم \r\nستاد اطلاعات بود و شرایط صحبت نداشت \r\nگفت 2 هفته است خانه نرفتم هر زمان تونستم خودم تماس میگیرم \r\nاجازه ی تماس نداد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:35:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:35:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:35:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3879","note_was_empty":true}
[2026-04-01 15:35:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"3879","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:35:48] [INFO] Updating virtual stage {"contact_id":"3879","stage_name":"deal_registered","force":false}
[2026-04-01 15:35:48] [INFO] Virtual stage successfully saved {"contact_id":"3879","stage_name":"deal_registered"}
[2026-04-01 15:35:48] [INFO] Virtual stage updated after activity save {"contact_id":"3879"}
[2026-04-01 15:35:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8fdce75c93.03599692","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 15:35:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd0a1c596bf7.22949014","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:35:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd0a1c596bf7.22949014"}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:35:48] [INFO] Updating virtual stage {"contact_id":"3879","stage_name":"deal_registered","force":false}
[2026-04-01 15:35:48] [INFO] Virtual stage successfully saved {"contact_id":"3879","stage_name":"deal_registered"}
[2026-04-01 15:35:48] [INFO] Virtual stage updated after activity save {"contact_id":"3879"}
[2026-04-01 15:35:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3879","person_id":"12604"}
[2026-04-01 15:36:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:14] [INFO] Checking activity reminders 
[2026-04-01 15:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:36:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2232","deal_id":"local_69ca8f7399e436.70376152","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:36:18","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2232","is_new_deal":false}
[2026-04-01 15:36:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:36:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:36:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:36:18] [INFO] getContactPrimaryPhone called {"contact_id":"2232"}
[2026-04-01 15:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:18] [INFO] getContactPrimaryPhone result {"contact_id":"2232","person_found":true,"primary_phone":"9120753716"}
[2026-04-01 15:36:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120753716"}
[2026-04-01 15:36:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120753716","contact_id":"2232","deal_id":"local_69ca8f7399e436.70376152","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:36:18"}
[2026-04-01 15:36:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8f7399e436.70376152","contact_id":"2232","existing_deal_found":true,"existing_contact_id":"2232","existing_title":"معامله سوم 9120753716 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:36:18"}
[2026-04-01 15:36:18] [INFO] DealController.save validated payments {"deal_id":"local_69ca8f7399e436.70376152","contact_id":"2232","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 15:36:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2232","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:36:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8f7399e436.70376152","contact_didar_id":"2232","title":"معامله سوم 9120753716 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120753716","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فضایی","existing_deal":"YES","existing_deal_id":"local_69ca8f7399e436.70376152","existing_deal_status":"Pending","server_time":"2026-04-01 15:36:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8f7399e436.70376152","contact_id":"2232","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120753716 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:36:18","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Activity save request {"post_data":{"contact_id":"2232","deal_id":"local_69ca8f7399e436.70376152","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک دادم جواب نداد","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:36:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2232","note_was_empty":true}
[2026-04-01 15:36:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"2232","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Updating virtual stage {"contact_id":"2232","stage_name":"deal_registered","force":false}
[2026-04-01 15:36:40] [INFO] Virtual stage successfully saved {"contact_id":"2232","stage_name":"deal_registered"}
[2026-04-01 15:36:40] [INFO] Virtual stage updated after activity save {"contact_id":"2232"}
[2026-04-01 15:36:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8f7399e436.70376152","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 15:36:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd0a50e79742.63429854","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd0a50e79742.63429854"}
[2026-04-01 15:36:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:40] [INFO] Updating virtual stage {"contact_id":"2232","stage_name":"deal_registered","force":false}
[2026-04-01 15:36:40] [INFO] Virtual stage successfully saved {"contact_id":"2232","stage_name":"deal_registered"}
[2026-04-01 15:36:40] [INFO] Virtual stage updated after activity save {"contact_id":"2232"}
[2026-04-01 15:36:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2232","person_id":"10886"}
[2026-04-01 15:36:44] [INFO] Checking activity reminders 
[2026-04-01 15:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:36:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5347","deal_id":"local_69ca8f1a3cb4b5.41418268","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:37:10","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5347","is_new_deal":false}
[2026-04-01 15:37:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:37:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:37:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:37:10] [INFO] getContactPrimaryPhone called {"contact_id":"5347"}
[2026-04-01 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:10] [INFO] getContactPrimaryPhone result {"contact_id":"5347","person_found":true,"primary_phone":"9120252672"}
[2026-04-01 15:37:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120252672"}
[2026-04-01 15:37:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120252672","contact_id":"5347","deal_id":"local_69ca8f1a3cb4b5.41418268","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:37:10"}
[2026-04-01 15:37:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8f1a3cb4b5.41418268","contact_id":"5347","existing_deal_found":true,"existing_contact_id":"5347","existing_title":"معامله سوم 9120252672 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:37:10"}
[2026-04-01 15:37:10] [INFO] DealController.save validated payments {"deal_id":"local_69ca8f1a3cb4b5.41418268","contact_id":"5347","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 15:37:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5347","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:37:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8f1a3cb4b5.41418268","contact_didar_id":"5347","title":"معامله سوم 9120252672 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120252672","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید صفائی فر","existing_deal":"YES","existing_deal_id":"local_69ca8f1a3cb4b5.41418268","existing_deal_status":"Pending","server_time":"2026-04-01 15:37:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8f1a3cb4b5.41418268","contact_id":"5347","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120252672 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:37:10","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:15] [INFO] Checking activity reminders 
[2026-04-01 15:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:37:26] [INFO] Activity save request {"post_data":{"contact_id":"5347","deal_id":"local_69ca8f1a3cb4b5.41418268","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:37:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5347","note_was_empty":true}
[2026-04-01 15:37:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"5347","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:26] [INFO] Updating virtual stage {"contact_id":"5347","stage_name":"deal_registered","force":false}
[2026-04-01 15:37:26] [INFO] Virtual stage successfully saved {"contact_id":"5347","stage_name":"deal_registered"}
[2026-04-01 15:37:26] [INFO] Virtual stage updated after activity save {"contact_id":"5347"}
[2026-04-01 15:37:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8f1a3cb4b5.41418268","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 15:37:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd0a7e9ec538.33952147","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd0a7e9ec538.33952147"}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:26] [INFO] Updating virtual stage {"contact_id":"5347","stage_name":"deal_registered","force":false}
[2026-04-01 15:37:26] [INFO] Virtual stage successfully saved {"contact_id":"5347","stage_name":"deal_registered"}
[2026-04-01 15:37:26] [INFO] Virtual stage updated after activity save {"contact_id":"5347"}
[2026-04-01 15:37:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5347","person_id":"10970"}
[2026-04-01 15:37:45] [INFO] Checking activity reminders 
[2026-04-01 15:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:38:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15330","deal_id":"local_69ca854aa78709.57882050","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:38:09","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:38:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15330","is_new_deal":false}
[2026-04-01 15:38:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:38:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:38:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:38:09] [INFO] getContactPrimaryPhone called {"contact_id":"15330"}
[2026-04-01 15:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:38:09] [INFO] getContactPrimaryPhone result {"contact_id":"15330","person_found":true,"primary_phone":"9013146790"}
[2026-04-01 15:38:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013146790"}
[2026-04-01 15:38:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013146790","contact_id":"15330","deal_id":"local_69ca854aa78709.57882050","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:38:09"}
[2026-04-01 15:38:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","existing_deal_found":true,"existing_contact_id":"15330","existing_title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:38:09"}
[2026-04-01 15:38:09] [INFO] DealController.save validated payments {"deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 15:38:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15330","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:38:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca854aa78709.57882050","contact_didar_id":"15330","title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9013146790","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"الیاس بخشی","existing_deal":"YES","existing_deal_id":"local_69ca854aa78709.57882050","existing_deal_status":"Pending","server_time":"2026-04-01 15:38:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:38:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:38:09","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:38:15] [INFO] Checking activity reminders 
[2026-04-01 15:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:38:45] [INFO] Checking activity reminders 
[2026-04-01 15:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:39:15] [INFO] Checking activity reminders 
[2026-04-01 15:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:39:16] [INFO] Activity save request {"post_data":{"contact_id":"15330","deal_id":"local_69ca854aa78709.57882050","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"گفت خودم سرمایه ام در حد طلای فیزیکی نگه داشتم با شریکم صحبت کنم اگر موافقت کنه خودم تماس بگیرم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:39:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15330","note_was_empty":true}
[2026-04-01 15:39:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"15330","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:16] [INFO] Updating virtual stage {"contact_id":"15330","stage_name":"deal_registered","force":false}
[2026-04-01 15:39:16] [INFO] Virtual stage successfully saved {"contact_id":"15330","stage_name":"deal_registered"}
[2026-04-01 15:39:16] [INFO] Virtual stage updated after activity save {"contact_id":"15330"}
[2026-04-01 15:39:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca854aa78709.57882050","stage":"تماس پیگیری","status_change":null}
[2026-04-01 15:39:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd0aecf150f9.08710238","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:39:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd0aecf150f9.08710238"}
[2026-04-01 15:39:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:17] [INFO] Updating virtual stage {"contact_id":"15330","stage_name":"deal_registered","force":false}
[2026-04-01 15:39:17] [INFO] Virtual stage successfully saved {"contact_id":"15330","stage_name":"deal_registered"}
[2026-04-01 15:39:17] [INFO] Virtual stage updated after activity save {"contact_id":"15330"}
[2026-04-01 15:39:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"15330","deal_id":"local_69ca854aa78709.57882050","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:39:45","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"15330","is_new_deal":false}
[2026-04-01 15:39:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 15:39:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 15:39:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 15:39:45] [INFO] getContactPrimaryPhone called {"contact_id":"15330"}
[2026-04-01 15:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:45] [INFO] getContactPrimaryPhone result {"contact_id":"15330","person_found":true,"primary_phone":"9013146790"}
[2026-04-01 15:39:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013146790"}
[2026-04-01 15:39:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013146790","contact_id":"15330","deal_id":"local_69ca854aa78709.57882050","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:39:45"}
[2026-04-01 15:39:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","existing_deal_found":true,"existing_contact_id":"15330","existing_title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:39:45"}
[2026-04-01 15:39:45] [INFO] DealController.save validated payments {"deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 15:39:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15330","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:39:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca854aa78709.57882050","contact_didar_id":"15330","title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9013146790","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"الیاس بخشی","existing_deal":"YES","existing_deal_id":"local_69ca854aa78709.57882050","existing_deal_status":"Pending","server_time":"2026-04-01 15:39:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca854aa78709.57882050","contact_id":"15330","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9013146790 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-01 15:39:45","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15330","person_id":"14078"}
[2026-04-01 15:39:46] [INFO] Checking activity reminders 
[2026-04-01 15:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:40:16] [INFO] Checking activity reminders 
[2026-04-01 15:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:49:50] [INFO] Checking activity reminders 
[2026-04-01 15:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:50:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14402","deal_id":"local_69ca8634dbb9a1.90826647","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 15:50:11","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 15:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:50:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14402","is_new_deal":false}
[2026-04-01 15:50:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 15:50:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:50:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 15:50:11] [INFO] getContactPrimaryPhone called {"contact_id":"14402"}
[2026-04-01 15:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:50:11] [INFO] getContactPrimaryPhone result {"contact_id":"14402","person_found":true,"primary_phone":"9037459106"}
[2026-04-01 15:50:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9037459106"}
[2026-04-01 15:50:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9037459106","contact_id":"14402","deal_id":"local_69ca8634dbb9a1.90826647","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:50:11"}
[2026-04-01 15:50:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8634dbb9a1.90826647","contact_id":"14402","existing_deal_found":true,"existing_contact_id":"14402","existing_title":"معامله دوم 9037459106 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 15:50:11"}
[2026-04-01 15:50:11] [INFO] DealController.save validated payments {"deal_id":"local_69ca8634dbb9a1.90826647","contact_id":"14402","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 15:50:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14402","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 15:50:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8634dbb9a1.90826647","contact_didar_id":"14402","title":"معامله دوم 9037459106 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9037459106","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نادر فضلی","existing_deal":"YES","existing_deal_id":"local_69ca8634dbb9a1.90826647","existing_deal_status":"Pending","server_time":"2026-04-01 15:50:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 15:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:50:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8634dbb9a1.90826647","contact_id":"14402","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9037459106 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 15:50:11","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 15:50:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:50:21] [INFO] Checking activity reminders 
[2026-04-01 15:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:50:51] [INFO] Checking activity reminders 
[2026-04-01 15:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:51:21] [INFO] Checking activity reminders 
[2026-04-01 15:51:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:51:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:51:51] [INFO] Checking activity reminders 
[2026-04-01 15:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:52:04] [INFO] Activity save request {"post_data":{"contact_id":"14402","deal_id":"local_69ca8634dbb9a1.90826647","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دفتر در فرمانیه با 3 نفر شریک زده جهت همکاری \r\nبرای کانال 405 پرزنت شد \r\nمیگه باید با شریکم مشورت کنم چون در کانال دیگه ای عضو هست اطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 15:52:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14402","note_was_empty":true}
[2026-04-01 15:52:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"14402","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:04] [INFO] Updating virtual stage {"contact_id":"14402","stage_name":"deal_registered","force":false}
[2026-04-01 15:52:04] [INFO] Virtual stage successfully saved {"contact_id":"14402","stage_name":"deal_registered"}
[2026-04-01 15:52:04] [INFO] Virtual stage updated after activity save {"contact_id":"14402"}
[2026-04-01 15:52:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8634dbb9a1.90826647","stage":"تماس پیگیری","status_change":null}
[2026-04-01 15:52:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd0dec2f43d3.24393491","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd0dec2f43d3.24393491"}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:04] [INFO] Updating virtual stage {"contact_id":"14402","stage_name":"deal_registered","force":false}
[2026-04-01 15:52:04] [INFO] Virtual stage successfully saved {"contact_id":"14402","stage_name":"deal_registered"}
[2026-04-01 15:52:04] [INFO] Virtual stage updated after activity save {"contact_id":"14402"}
[2026-04-01 15:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:52:22] [INFO] Checking activity reminders 
[2026-04-01 15:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:53:12] [INFO] Checking activity reminders 
[2026-04-01 15:53:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:53:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:53:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 15:53:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 15:53:42] [INFO] Checking activity reminders 
[2026-04-01 15:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 15:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 15:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 15:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 15:53:45] [INFO] generateDealTitle result {"contact_id":"12313","person_name":"محمد عنابستانی","mobile":"9126867796","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9126867796"}
[2026-04-01 16:08:47] [INFO] Checking activity reminders 
[2026-04-01 16:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:16:22] [INFO] Checking activity reminders 
[2026-04-01 16:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:16:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 16:16:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:16:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:16:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:16:47] [INFO] generateDealTitle result {"contact_id":"12313","person_name":"محمد عنابستانی","mobile":"9126867796","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9126867796"}
[2026-04-01 16:16:52] [INFO] Checking activity reminders 
[2026-04-01 16:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:17:23] [INFO] Checking activity reminders 
[2026-04-01 16:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:17:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 16:17:24","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 16:17:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:17:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":true}
[2026-04-01 16:17:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:17:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:17:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:17:24] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-01 16:17:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:17:24] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-01 16:17:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-01 16:17:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 16:17:24"}
[2026-04-01 16:17:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:17:24] [INFO] generateDealTitle result {"contact_id":"12313","person_name":"محمد عنابستانی","mobile":"9126867796","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9126867796"}
[2026-04-01 16:17:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12313","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 16:17:24] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 16:17:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 16:17:24","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 16:17:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:17:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 16:17:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-01 16:17:24","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 16:17:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:17:53] [INFO] Checking activity reminders 
[2026-04-01 16:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:18:23] [INFO] Checking activity reminders 
[2026-04-01 16:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:18:31] [INFO] Activity save request {"post_data":{"contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فقط،از سیگنال نوسان گیر بورس استفاده میکنه \r\nتا شنبه تسویه ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 16:18:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12313","note_was_empty":true}
[2026-04-01 16:18:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"12313","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:31] [INFO] Updating virtual stage {"contact_id":"12313","stage_name":"deal_registered","force":false}
[2026-04-01 16:18:31] [INFO] Virtual stage successfully saved {"contact_id":"12313","stage_name":"deal_registered"}
[2026-04-01 16:18:31] [INFO] Virtual stage updated after activity save {"contact_id":"12313"}
[2026-04-01 16:18:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69cd13dc5ee115.33735493","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-01 16:18:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd141f80dbe5.47045275","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd141f80dbe5.47045275"}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:31] [INFO] Updating virtual stage {"contact_id":"12313","stage_name":"deal_registered","force":false}
[2026-04-01 16:18:31] [INFO] Virtual stage successfully saved {"contact_id":"12313","stage_name":"deal_registered"}
[2026-04-01 16:18:31] [INFO] Virtual stage updated after activity save {"contact_id":"12313"}
[2026-04-01 16:18:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:18:53] [INFO] Checking activity reminders 
[2026-04-01 16:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:19:06] [INFO] Checking activity reminders 
[2026-04-01 16:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 16:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 16:19:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 16:19:21","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 16:19:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:19:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-01 16:19:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:19:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:19:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-01 16:19:21] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-01 16:19:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:19:21] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-01 16:19:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-01 16:19:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 16:19:21"}
[2026-04-01 16:19:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 16:19:21"}
[2026-04-01 16:19:21] [INFO] DealController.save validated payments {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 16:19:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 16:19:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd13dc5ee115.33735493","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":7000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"YES","existing_deal_id":"local_69cd13dc5ee115.33735493","existing_deal_status":"Pending","server_time":"2026-04-01 16:19:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 16:19:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 16:19:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":7000000,"server_time":"2026-04-01 16:19:21","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 16:19:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-01 17:02:40] [WARNING] Auth check failed - not authenticated {"session_id":"q4ekhdpdaaijii4g10d7l9r75e","session_keys":[],"action":"log_client_event"}
[2026-04-01 17:02:41] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-01 17:02:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 17:03:05] [INFO] Checking activity reminders 
[2026-04-01 17:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:03:11] [INFO] Checking activity reminders 
[2026-04-01 17:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:03:16] [INFO] Checking activity reminders 
[2026-04-01 17:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:03:22] [INFO] Checking activity reminders 
[2026-04-01 17:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:03:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:03:52] [INFO] Checking activity reminders 
[2026-04-01 17:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:04:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:04:10] [INFO] generateDealTitle result {"contact_id":"18241","person_name":"بهبودی بهبودی","mobile":"9367169378","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367169378"}
[2026-04-01 17:04:22] [INFO] Checking activity reminders 
[2026-04-01 17:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:04:52] [INFO] Checking activity reminders 
[2026-04-01 17:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:05:54] [INFO] Checking activity reminders 
[2026-04-01 17:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:06:11] [INFO] Checking activity reminders 
[2026-04-01 17:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:06:41] [INFO] Checking activity reminders 
[2026-04-01 17:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:07:13] [INFO] Checking activity reminders 
[2026-04-01 17:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:07:19] [INFO] Checking activity reminders 
[2026-04-01 17:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:08:04] [INFO] Checking activity reminders 
[2026-04-01 17:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:08:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"18241","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 17:08:23","session_id":"q4ekhdpdaaijii4g10d7l9r75e"}
[2026-04-01 17:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:08:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"18241","is_new_deal":true}
[2026-04-01 17:08:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-01 17:08:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 17:08:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 17:08:23] [INFO] getContactPrimaryPhone called {"contact_id":"18241"}
[2026-04-01 17:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:08:23] [INFO] getContactPrimaryPhone result {"contact_id":"18241","person_found":true,"primary_phone":"9367169378"}
[2026-04-01 17:08:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9367169378"}
[2026-04-01 17:08:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9367169378","contact_id":"18241","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 17:08:23"}
[2026-04-01 17:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:08:23] [INFO] generateDealTitle result {"contact_id":"18241","person_name":"بهبودی بهبودی","mobile":"9367169378","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367169378"}
[2026-04-01 17:08:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"18241","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 17:08:23] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"18241","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 17:08:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"18241","title":"معامله سوم 9367169378 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9367169378","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":35000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"بهبودی بهبودی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 17:08:23","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-01 17:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:08:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 17:08:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"18241","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9367169378 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":35000000,"server_time":"2026-04-01 17:08:23","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-01 17:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-01 17:08:34] [INFO] Checking activity reminders 
[2026-04-01 17:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:08:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:08:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:08:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:08:46] [INFO] generateDealTitle result {"contact_id":"11284","person_name":"سارلی","mobile":"9112741753","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112741753"}
[2026-04-01 17:09:04] [INFO] Checking activity reminders 
[2026-04-01 17:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:10:00] [INFO] Checking activity reminders 
[2026-04-01 17:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:10:08] [INFO] Checking activity reminders 
[2026-04-01 17:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:10:31] [INFO] Checking activity reminders 
[2026-04-01 17:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:10:40] [INFO] Checking activity reminders 
[2026-04-01 17:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:11:32] [INFO] Checking activity reminders 
[2026-04-01 17:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:11:45] [INFO] Checking activity reminders 
[2026-04-01 17:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:12:06] [INFO] Checking activity reminders 
[2026-04-01 17:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:12:14] [INFO] Checking activity reminders 
[2026-04-01 17:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:12:42] [INFO] Checking activity reminders 
[2026-04-01 17:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:13:10] [INFO] Checking activity reminders 
[2026-04-01 17:13:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:13:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:13:32] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11284","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 17:13:32","session_id":"q4ekhdpdaaijii4g10d7l9r75e"}
[2026-04-01 17:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11284","is_new_deal":true}
[2026-04-01 17:13:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:32] [INFO] getContactPrimaryPhone called {"contact_id":"11284"}
[2026-04-01 17:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:32] [INFO] getContactPrimaryPhone result {"contact_id":"11284","person_found":true,"primary_phone":"9112741753"}
[2026-04-01 17:13:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112741753"}
[2026-04-01 17:13:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112741753","contact_id":"11284","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 17:13:32"}
[2026-04-01 17:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:32] [INFO] generateDealTitle result {"contact_id":"11284","person_name":"سارلی","mobile":"9112741753","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112741753"}
[2026-04-01 17:13:40] [INFO] Checking activity reminders 
[2026-04-01 17:13:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:13:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:13:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11284","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 17:13:44","session_id":"q4ekhdpdaaijii4g10d7l9r75e"}
[2026-04-01 17:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11284","is_new_deal":true}
[2026-04-01 17:13:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 17:13:44] [INFO] getContactPrimaryPhone called {"contact_id":"11284"}
[2026-04-01 17:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:44] [INFO] getContactPrimaryPhone result {"contact_id":"11284","person_found":true,"primary_phone":"9112741753"}
[2026-04-01 17:13:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112741753"}
[2026-04-01 17:13:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112741753","contact_id":"11284","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 17:13:44"}
[2026-04-01 17:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:44] [INFO] generateDealTitle result {"contact_id":"11284","person_name":"سارلی","mobile":"9112741753","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9112741753"}
[2026-04-01 17:13:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11284","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-01 17:13:44] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11284","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 17:13:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11284","title":"معامله دوم 9112741753 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9112741753","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سارلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 17:13:44","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-01 17:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 17:13:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11284","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9112741753 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-01 17:13:44","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-01 17:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:13:48] [INFO] generateDealTitle result {"contact_id":"11284","person_name":"سارلی","mobile":"9112741753","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9112741753"}
[2026-04-01 17:14:11] [INFO] Checking activity reminders 
[2026-04-01 17:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:15:05] [INFO] Checking activity reminders 
[2026-04-01 17:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:15:38] [INFO] Checking activity reminders 
[2026-04-01 17:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:15:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"11284","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 17:15:46","session_id":"q4ekhdpdaaijii4g10d7l9r75e"}
[2026-04-01 17:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:15:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"11284","is_new_deal":true}
[2026-04-01 17:15:46] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-01 17:15:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-01 17:15:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-01 17:15:46] [INFO] getContactPrimaryPhone called {"contact_id":"11284"}
[2026-04-01 17:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:15:46] [INFO] getContactPrimaryPhone result {"contact_id":"11284","person_found":true,"primary_phone":"9112741753"}
[2026-04-01 17:15:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112741753"}
[2026-04-01 17:15:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112741753","contact_id":"11284","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 17:15:46"}
[2026-04-01 17:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:15:46] [INFO] generateDealTitle result {"contact_id":"11284","person_name":"سارلی","mobile":"9112741753","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9112741753"}
[2026-04-01 17:15:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11284","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-01 17:15:46] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11284","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 17:15:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11284","title":"معامله سوم 9112741753 | CIP","base_title_used":"معامله سوم 9112741753","services_text":"CIP","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":200000000,"payment_amount":200000000,"payments_present":true,"requested_services":["CIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سارلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 17:15:46","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-01 17:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:15:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 17:15:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11284","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله سوم 9112741753 | CIP","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":200000000,"payment_amount":200000000,"server_time":"2026-04-01 17:15:46","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-01 17:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-01 17:16:07] [INFO] Checking activity reminders 
[2026-04-01 17:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:16:14] [INFO] Checking activity reminders 
[2026-04-01 17:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:16:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:16:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:16:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:16:23] [INFO] generateDealTitle result {"contact_id":"11341","person_name":"اکبری","mobile":"9122483474","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122483474"}
[2026-04-01 17:16:44] [INFO] Checking activity reminders 
[2026-04-01 17:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:17:24] [INFO] Checking activity reminders 
[2026-04-01 17:17:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:17:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:17:41] [INFO] Checking activity reminders 
[2026-04-01 17:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:17:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"11341","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 17:17:53","session_id":"q4ekhdpdaaijii4g10d7l9r75e"}
[2026-04-01 17:17:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:17:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"11341","is_new_deal":true}
[2026-04-01 17:17:53] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-01 17:17:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-01 17:17:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-01 17:17:53] [INFO] getContactPrimaryPhone called {"contact_id":"11341"}
[2026-04-01 17:17:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:17:53] [INFO] getContactPrimaryPhone result {"contact_id":"11341","person_found":true,"primary_phone":"9122483474"}
[2026-04-01 17:17:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122483474"}
[2026-04-01 17:17:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122483474","contact_id":"11341","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-01 17:17:53"}
[2026-04-01 17:17:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:17:53] [INFO] generateDealTitle result {"contact_id":"11341","person_name":"اکبری","mobile":"9122483474","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122483474"}
[2026-04-01 17:17:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11341","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-01 17:17:53] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11341","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 17:17:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11341","title":"معامله دوم 9122483474 | CIP","base_title_used":"معامله دوم 9122483474","services_text":"CIP","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":200000000,"payment_amount":200000000,"payments_present":true,"requested_services":["CIP"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اکبری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 17:17:53","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-01 17:17:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:17:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 17:17:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11341","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9122483474 | CIP","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":200000000,"payment_amount":200000000,"server_time":"2026-04-01 17:17:53","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-01 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11341","person_id":"12022"}
[2026-04-01 17:18:11] [INFO] Checking activity reminders 
[2026-04-01 17:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:18:45] [INFO] Checking activity reminders 
[2026-04-01 17:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:18:52] [INFO] Checking activity reminders 
[2026-04-01 17:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:18:56] [INFO] Checking activity reminders 
[2026-04-01 17:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:19:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-01 17:21:15] [WARNING] Auth check failed - not authenticated {"session_id":"tpgvh3adjco9upa261orsuvuil","session_keys":[],"action":"log_client_event"}
[2026-04-01 17:21:16] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-01 17:21:16] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-01 17:21:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 17:21:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-01 17:21:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-01 17:21:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-01 17:21:22] [WARNING] Auth check failed - not authenticated {"session_id":"jtohi1o620144ku23snl9ajmvr","session_keys":[],"action":"log_client_event"}
[2026-04-01 17:21:23] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-01 17:21:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 17:21:46] [INFO] Checking activity reminders 
[2026-04-01 17:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:21:53] [INFO] Checking activity reminders 
[2026-04-01 17:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Activity save request {"post_data":{"contact_id":"local_69b719ec78bce8.83422873","deal_id":"local_69b719ec90b24","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 17:22:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b719ec78bce8.83422873","note_was_empty":true}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Updating virtual stage {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered","force":false}
[2026-04-01 17:22:12] [INFO] Virtual stage successfully saved {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered"}
[2026-04-01 17:22:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b719ec78bce8.83422873"}
[2026-04-01 17:22:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b719ec90b24","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 17:22:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd230ca72837.73486592","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd230ca72837.73486592"}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:12] [INFO] Updating virtual stage {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered","force":false}
[2026-04-01 17:22:12] [INFO] Virtual stage successfully saved {"contact_id":"local_69b719ec78bce8.83422873","stage_name":"deal_registered"}
[2026-04-01 17:22:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b719ec78bce8.83422873"}
[2026-04-01 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b719ec78bce8.83422873","person_id":"21872"}
[2026-04-01 17:22:14] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9010983277","09010983277"]}
[2026-04-01 17:22:14] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9010983277","09010983277"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-01 17:22:14] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9010983277","full_name":"لید جدید"}
[2026-04-01 17:22:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 17:22:15] [INFO] Notification created {"notification_id":"614","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-01 17:22:16] [INFO] Checking activity reminders 
[2026-04-01 17:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 17:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:48:40] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:40] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:40] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"check_reminders"}
[2026-04-01 18:48:40] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:41] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_products"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_leads"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:50] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:51] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:48:54] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:08] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:08] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:08] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:09] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_leads"}
[2026-04-01 18:49:09] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:09] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:10] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:10] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"get_leads"}
[2026-04-01 18:49:10] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:10] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:17] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:17] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:29] [WARNING] Auth check failed - not authenticated {"session_id":"89nlnp318qj379th2bh2s8rae0","session_keys":[],"action":"log_client_event"}
[2026-04-01 18:49:29] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 18:49:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 18:49:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:49:59] [INFO] Checking activity reminders 
[2026-04-01 18:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:50:30] [INFO] Checking activity reminders 
[2026-04-01 18:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:51:00] [INFO] Checking activity reminders 
[2026-04-01 18:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:51:32] [INFO] Checking activity reminders 
[2026-04-01 18:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:52:02] [INFO] Checking activity reminders 
[2026-04-01 18:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:52:32] [INFO] Checking activity reminders 
[2026-04-01 18:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:52:59] [INFO] Checking activity reminders 
[2026-04-01 18:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:53:36] [INFO] Checking activity reminders 
[2026-04-01 18:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:53:51] [INFO] Checking activity reminders 
[2026-04-01 18:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:54:03] [INFO] Checking activity reminders 
[2026-04-01 18:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:54:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"2925","deal_id":"14585","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 18:54:33","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 18:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:54:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"2925","is_new_deal":false}
[2026-04-01 18:54:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-01 18:54:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 18:54:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 18:54:33] [INFO] getContactPrimaryPhone called {"contact_id":"2925"}
[2026-04-01 18:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:54:33] [INFO] getContactPrimaryPhone result {"contact_id":"2925","person_found":true,"primary_phone":"9155856551"}
[2026-04-01 18:54:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155856551"}
[2026-04-01 18:54:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155856551","contact_id":"2925","deal_id":"14585","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 18:54:33"}
[2026-04-01 18:54:33] [INFO] DealController.save existing deal lookup {"deal_id":"14585","contact_id":"2925","existing_deal_found":true,"existing_contact_id":"2925","existing_title":"معامله حسین زاده","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 18:54:33"}
[2026-04-01 18:54:33] [INFO] DealController.save validated payments {"deal_id":"14585","contact_id":"2925","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 18:54:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2925","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 18:54:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"14585","contact_didar_id":"2925","title":"معامله حسین زاده | کانال VIP بدون پشتیبان","base_title_used":"معامله حسین زاده","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین زاده","existing_deal":"YES","existing_deal_id":"14585","existing_deal_status":"Pending","server_time":"2026-04-01 18:54:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 18:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:54:33] [INFO] Deal success processed {"contact_id":"2925","person_name":"حسین زاده","products_count":1}
[2026-04-01 18:54:33] [INFO] ensureDealProductsFromText: no product match {"deal_id":"14585","texts":["کانال VIP بدون پشتیبان"]}
[2026-04-01 18:54:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"14585","contact_id":"2925","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله حسین زاده | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-01 18:54:33","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 18:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-01 18:54:34] [INFO] Checking activity reminders 
[2026-04-01 18:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:54:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 18:55:05] [INFO] Checking activity reminders 
[2026-04-01 18:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:55:35] [INFO] Checking activity reminders 
[2026-04-01 18:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:57:44] [INFO] Checking activity reminders 
[2026-04-01 18:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:58:08] [INFO] Checking activity reminders 
[2026-04-01 18:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:58:20] [INFO] Lead update received {"contact_id":"795","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 18:58:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 18:58:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 18:58:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"795"}
[2026-04-01 18:58:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 18:58:39] [INFO] Checking activity reminders 
[2026-04-01 18:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:59:09] [INFO] Checking activity reminders 
[2026-04-01 18:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 18:59:39] [INFO] Checking activity reminders 
[2026-04-01 18:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 18:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:00:32] [INFO] Checking activity reminders 
[2026-04-01 19:00:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:00:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:01:02] [INFO] Checking activity reminders 
[2026-04-01 19:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:01:19] [INFO] Checking activity reminders 
[2026-04-01 19:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:01:49] [INFO] Checking activity reminders 
[2026-04-01 19:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:02:28] [INFO] Checking activity reminders 
[2026-04-01 19:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:02:58] [INFO] Checking activity reminders 
[2026-04-01 19:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:03:06] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"795","deal_id":"local_695a6def503b20.08264464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 19:03:06","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"795","is_new_deal":false}
[2026-04-01 19:03:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:06] [INFO] getContactPrimaryPhone called {"contact_id":"795"}
[2026-04-01 19:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:06] [INFO] getContactPrimaryPhone result {"contact_id":"795","person_found":true,"primary_phone":"9138167593"}
[2026-04-01 19:03:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138167593"}
[2026-04-01 19:03:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138167593","contact_id":"795","deal_id":"local_695a6def503b20.08264464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:03:06"}
[2026-04-01 19:03:06] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","existing_deal_found":true,"existing_contact_id":"795","existing_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:03:06"}
[2026-04-01 19:03:28] [INFO] Checking activity reminders 
[2026-04-01 19:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:03:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"795","deal_id":"local_695a6def503b20.08264464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 19:03:37","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 19:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"795","is_new_deal":false}
[2026-04-01 19:03:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:03:37] [INFO] getContactPrimaryPhone called {"contact_id":"795"}
[2026-04-01 19:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:37] [INFO] getContactPrimaryPhone result {"contact_id":"795","person_found":true,"primary_phone":"9138167593"}
[2026-04-01 19:03:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138167593"}
[2026-04-01 19:03:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138167593","contact_id":"795","deal_id":"local_695a6def503b20.08264464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:03:37"}
[2026-04-01 19:03:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","existing_deal_found":true,"existing_contact_id":"795","existing_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:03:37"}
[2026-04-01 19:03:37] [INFO] DealController.save validated payments {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 19:03:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"795","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 19:03:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6def503b20.08264464","contact_didar_id":"795","title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9138167593","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینی زاده","existing_deal":"YES","existing_deal_id":"local_695a6def503b20.08264464","existing_deal_status":"Pending","server_time":"2026-04-01 19:03:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 19:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:37] [INFO] Deal success processed {"contact_id":"795","person_name":"حسینی زاده","products_count":1}
[2026-04-01 19:03:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6def503b20.08264464","contact_id":"795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-01 19:03:37","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 19:03:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-01 19:03:58] [INFO] Checking activity reminders 
[2026-04-01 19:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:04:28] [INFO] Checking activity reminders 
[2026-04-01 19:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:04:59] [INFO] Checking activity reminders 
[2026-04-01 19:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:06:50] [INFO] Checking activity reminders 
[2026-04-01 19:06:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:06:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:06:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:07:21] [INFO] Checking activity reminders 
[2026-04-01 19:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:07:51] [INFO] Checking activity reminders 
[2026-04-01 19:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:08:21] [INFO] Checking activity reminders 
[2026-04-01 19:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:08:51] [INFO] Checking activity reminders 
[2026-04-01 19:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:09:21] [INFO] Checking activity reminders 
[2026-04-01 19:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:09:52] [INFO] Checking activity reminders 
[2026-04-01 19:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:10:22] [INFO] Checking activity reminders 
[2026-04-01 19:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:10:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8915","deal_id":"local_6950fdbcdb6c65.08789237","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 19:10:29","session_id":"89nlnp318qj379th2bh2s8rae0"}
[2026-04-01 19:10:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:10:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8915","is_new_deal":false}
[2026-04-01 19:10:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 19:10:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:10:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:10:29] [INFO] getContactPrimaryPhone called {"contact_id":"8915"}
[2026-04-01 19:10:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:10:29] [INFO] getContactPrimaryPhone result {"contact_id":"8915","person_found":true,"primary_phone":"9379632024"}
[2026-04-01 19:10:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9379632024"}
[2026-04-01 19:10:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9379632024","contact_id":"8915","deal_id":"local_6950fdbcdb6c65.08789237","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:10:29"}
[2026-04-01 19:10:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","existing_deal_found":true,"existing_contact_id":"8915","existing_title":"معامله اول 9379632024 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:10:29"}
[2026-04-01 19:10:29] [INFO] DealController.save validated payments {"deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 19:10:29] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8915","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 19:10:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950fdbcdb6c65.08789237","contact_didar_id":"8915","title":"معامله اول 9379632024 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9379632024","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد مزرعه","existing_deal":"YES","existing_deal_id":"local_6950fdbcdb6c65.08789237","existing_deal_status":"Pending","server_time":"2026-04-01 19:10:29","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 19:10:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:10:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9379632024 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 19:10:29","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 19:10:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:10:52] [INFO] Checking activity reminders 
[2026-04-01 19:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:11:28] [INFO] Checking activity reminders 
[2026-04-01 19:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:26:12] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 19:26:12] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 19:26:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 19:26:43] [INFO] Checking activity reminders 
[2026-04-01 19:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:27:13] [INFO] Checking activity reminders 
[2026-04-01 19:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:27:43] [INFO] Checking activity reminders 
[2026-04-01 19:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:28:13] [INFO] Checking activity reminders 
[2026-04-01 19:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:28:50] [INFO] Checking activity reminders 
[2026-04-01 19:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:35:21] [INFO] Checking activity reminders 
[2026-04-01 19:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:35:51] [INFO] Checking activity reminders 
[2026-04-01 19:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:35:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8915","deal_id":"local_6950fdbcdb6c65.08789237","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 19:35:54","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 19:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:35:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8915","is_new_deal":false}
[2026-04-01 19:35:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 19:35:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:35:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:35:54] [INFO] getContactPrimaryPhone called {"contact_id":"8915"}
[2026-04-01 19:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:35:54] [INFO] getContactPrimaryPhone result {"contact_id":"8915","person_found":true,"primary_phone":"9379632024"}
[2026-04-01 19:35:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9379632024"}
[2026-04-01 19:35:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9379632024","contact_id":"8915","deal_id":"local_6950fdbcdb6c65.08789237","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:35:54"}
[2026-04-01 19:35:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","existing_deal_found":true,"existing_contact_id":"8915","existing_title":"معامله اول 9379632024 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:35:54"}
[2026-04-01 19:35:54] [INFO] DealController.save validated payments {"deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 19:35:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8915","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 19:35:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950fdbcdb6c65.08789237","contact_didar_id":"8915","title":"معامله اول 9379632024 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9379632024","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":35000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد مزرعه","existing_deal":"YES","existing_deal_id":"local_6950fdbcdb6c65.08789237","existing_deal_status":"Pending","server_time":"2026-04-01 19:35:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 19:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:35:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950fdbcdb6c65.08789237","contact_id":"8915","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9379632024 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":35000000,"server_time":"2026-04-01 19:35:54","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 19:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-01 19:37:49] [INFO] Checking activity reminders 
[2026-04-01 19:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:38:19] [INFO] Checking activity reminders 
[2026-04-01 19:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:38:50] [INFO] Checking activity reminders 
[2026-04-01 19:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:38:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:39:21] [INFO] Checking activity reminders 
[2026-04-01 19:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:39:51] [INFO] Checking activity reminders 
[2026-04-01 19:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:40:21] [INFO] Checking activity reminders 
[2026-04-01 19:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:40:51] [INFO] Checking activity reminders 
[2026-04-01 19:40:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:40:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:41:21] [INFO] Checking activity reminders 
[2026-04-01 19:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:41:52] [INFO] Checking activity reminders 
[2026-04-01 19:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:42:22] [INFO] Checking activity reminders 
[2026-04-01 19:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:43:53] [INFO] Checking activity reminders 
[2026-04-01 19:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:44:13] [INFO] Checking activity reminders 
[2026-04-01 19:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:44:26] [INFO] Checking activity reminders 
[2026-04-01 19:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:44:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7806","deal_id":"local_699afe0aab1eb4.67656550","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 19:44:45","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 19:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:44:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7806","is_new_deal":false}
[2026-04-01 19:44:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 19:44:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:44:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 19:44:45] [INFO] getContactPrimaryPhone called {"contact_id":"7806"}
[2026-04-01 19:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:44:45] [INFO] getContactPrimaryPhone result {"contact_id":"7806","person_found":true,"primary_phone":"9124422688"}
[2026-04-01 19:44:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124422688"}
[2026-04-01 19:44:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124422688","contact_id":"7806","deal_id":"local_699afe0aab1eb4.67656550","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:44:45"}
[2026-04-01 19:44:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_699afe0aab1eb4.67656550","contact_id":"7806","existing_deal_found":true,"existing_contact_id":"7806","existing_title":"معامله پنجم 9124422688 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 19:44:45"}
[2026-04-01 19:44:45] [INFO] DealController.save validated payments {"deal_id":"local_699afe0aab1eb4.67656550","contact_id":"7806","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 19:44:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7806","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 19:44:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699afe0aab1eb4.67656550","contact_didar_id":"7806","title":"معامله پنجم 9124422688 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9124422688","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خلیل محمودی","existing_deal":"YES","existing_deal_id":"local_699afe0aab1eb4.67656550","existing_deal_status":"Pending","server_time":"2026-04-01 19:44:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 19:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:44:45] [INFO] Deal success processed {"contact_id":"7806","person_name":"خلیل محمودی","products_count":1}
[2026-04-01 19:44:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699afe0aab1eb4.67656550","contact_id":"7806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9124422688 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-01 19:44:45","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 19:44:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:44:56] [INFO] Checking activity reminders 
[2026-04-01 19:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:45:26] [INFO] Checking activity reminders 
[2026-04-01 19:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:45:56] [INFO] Checking activity reminders 
[2026-04-01 19:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:46:27] [INFO] Checking activity reminders 
[2026-04-01 19:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:46:57] [INFO] Checking activity reminders 
[2026-04-01 19:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:47:23] [INFO] Activity save request {"post_data":{"contact_id":"7806","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"به دلیل خارج کردن پول از بورس خدمات cip لغو شد \r\nبا تایید استاد چک این تاریخ تایید شد ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 19:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:47:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 19:47:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 19:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:47:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7806","note_was_empty":true}
[2026-04-01 19:47:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"7806","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 19:47:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd4513830a03.40440971","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 19:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:47:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd4513830a03.40440971"}
[2026-04-01 19:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:47:23] [INFO] Updating virtual stage {"contact_id":"7806","stage_name":"deal_registered","force":false}
[2026-04-01 19:47:23] [INFO] Virtual stage successfully saved {"contact_id":"7806","stage_name":"deal_registered"}
[2026-04-01 19:47:23] [INFO] Virtual stage updated after activity save {"contact_id":"7806"}
[2026-04-01 19:47:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-01 19:47:27] [INFO] Checking activity reminders 
[2026-04-01 19:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:47:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:47:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:47:54] [INFO] generateDealTitle result {"contact_id":"2876","person_name":"روز خوش","mobile":"9113000180","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9113000180"}
[2026-04-01 19:47:58] [INFO] Checking activity reminders 
[2026-04-01 19:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:48:28] [INFO] Checking activity reminders 
[2026-04-01 19:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:48:42] [INFO] Checking activity reminders 
[2026-04-01 19:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:48:51] [INFO] Checking activity reminders 
[2026-04-01 19:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:49:21] [INFO] Checking activity reminders 
[2026-04-01 19:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:49:52] [INFO] Checking activity reminders 
[2026-04-01 19:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:50:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-01 19:50:11] [INFO] generateDealTitle result {"contact_id":"2876","person_name":"روز خوش","mobile":"9113000180","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9113000180"}
[2026-04-01 19:50:22] [INFO] Checking activity reminders 
[2026-04-01 19:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:50:52] [INFO] Checking activity reminders 
[2026-04-01 19:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:51:22] [INFO] Checking activity reminders 
[2026-04-01 19:51:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:51:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:51:52] [INFO] Checking activity reminders 
[2026-04-01 19:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:52:23] [INFO] Checking activity reminders 
[2026-04-01 19:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:52:53] [INFO] Checking activity reminders 
[2026-04-01 19:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:54:18] [INFO] Checking activity reminders 
[2026-04-01 19:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:55:48] [INFO] Checking activity reminders 
[2026-04-01 19:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:56:18] [INFO] Checking activity reminders 
[2026-04-01 19:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 19:56:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 19:59:37] [INFO] Checking activity reminders 
[2026-04-01 19:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 19:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:00:07] [INFO] Checking activity reminders 
[2026-04-01 20:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:00:13] [INFO] Checking activity reminders 
[2026-04-01 20:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:00:39] [INFO] Lead update received {"contact_id":"5529","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 20:00:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:00:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:00:39] [DEBUG] findByPhone: Found person {"phones":["9377774348"],"found_id":"5529","found_didar_id":"1319","found_name":"احسان فراهانی"}
[2026-04-01 20:00:39] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9377774348","found_didar_id":"1319","found_local_id":"5529","found_name":"احسان فراهانی"}
[2026-04-01 20:00:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-01 20:00:40] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9377774348","found_id":"5529","found_didar_id":"1319","exclude_id":7866,"exclude_didar_id":"5529"}
[2026-04-01 20:00:40] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای احسان فراهانی (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-01 20:00:43] [INFO] Checking activity reminders 
[2026-04-01 20:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:01:01] [INFO] Lead update received {"contact_id":"5529","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 20:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:01:01] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5529"}
[2026-04-01 20:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:04:42] [INFO] Checking activity reminders 
[2026-04-01 20:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-01 20:04:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:05:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:05:08] [INFO] generateDealTitle result {"contact_id":"10584","person_name":"میلاد عاصمی پور","mobile":"9013239008","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9013239008"}
[2026-04-01 20:05:12] [INFO] Checking activity reminders 
[2026-04-01 20:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:09:47] [INFO] Checking activity reminders 
[2026-04-01 20:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:10:02] [INFO] Checking activity reminders 
[2026-04-01 20:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:10:33] [INFO] Checking activity reminders 
[2026-04-01 20:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:10:56] [INFO] Checking activity reminders 
[2026-04-01 20:10:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:10:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:11:11] [INFO] Checking activity reminders 
[2026-04-01 20:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:12:25] [INFO] Checking activity reminders 
[2026-04-01 20:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:13:05] [INFO] Checking activity reminders 
[2026-04-01 20:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:13:35] [INFO] Checking activity reminders 
[2026-04-01 20:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:14:28] [INFO] Checking activity reminders 
[2026-04-01 20:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:14:58] [INFO] Checking activity reminders 
[2026-04-01 20:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:15:25] [INFO] Checking activity reminders 
[2026-04-01 20:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:15:56] [INFO] Checking activity reminders 
[2026-04-01 20:15:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:15:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:19:49] [INFO] Checking activity reminders 
[2026-04-01 20:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:19:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"10584","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 20:19:55","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:19:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"10584","is_new_deal":true}
[2026-04-01 20:19:55] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-01 20:19:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-01 20:19:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-01 20:19:55] [INFO] getContactPrimaryPhone called {"contact_id":"10584"}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:19:55] [INFO] getContactPrimaryPhone result {"contact_id":"10584","person_found":true,"primary_phone":"9013239008"}
[2026-04-01 20:19:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013239008"}
[2026-04-01 20:19:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013239008","contact_id":"10584","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:19:55"}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:19:55] [INFO] generateDealTitle result {"contact_id":"10584","person_name":"میلاد عاصمی پور","mobile":"9013239008","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9013239008"}
[2026-04-01 20:19:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10584","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 20:19:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10584","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 20:19:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10584","title":"معامله سوم 9013239008 | CIP","base_title_used":"معامله سوم 9013239008","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":200000000,"payment_amount":195000000,"payments_present":true,"requested_services":["CIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد عاصمی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 20:19:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:19:55] [INFO] Deal success processed {"contact_id":"10584","person_name":"میلاد عاصمی پور","products_count":1}
[2026-04-01 20:19:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 20:19:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10584","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9013239008 | CIP","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":200000000,"payment_amount":195000000,"server_time":"2026-04-01 20:19:55","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 20:19:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:20:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:20:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:20:05] [INFO] generateDealTitle result {"contact_id":"10584","person_name":"میلاد عاصمی پور","mobile":"9013239008","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9013239008"}
[2026-04-01 20:20:19] [INFO] Checking activity reminders 
[2026-04-01 20:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:20:50] [INFO] Checking activity reminders 
[2026-04-01 20:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:21:20] [INFO] Checking activity reminders 
[2026-04-01 20:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:25:39] [INFO] Checking activity reminders 
[2026-04-01 20:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:25:46] [INFO] Checking activity reminders 
[2026-04-01 20:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:27:05] [INFO] Checking activity reminders 
[2026-04-01 20:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:27:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"10584","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 20:27:18","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"10584","is_new_deal":true}
[2026-04-01 20:27:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-01 20:27:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 20:27:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-01 20:27:18] [INFO] getContactPrimaryPhone called {"contact_id":"10584"}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:18] [INFO] getContactPrimaryPhone result {"contact_id":"10584","person_found":true,"primary_phone":"9013239008"}
[2026-04-01 20:27:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9013239008"}
[2026-04-01 20:27:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9013239008","contact_id":"10584","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:27:18"}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:18] [INFO] generateDealTitle result {"contact_id":"10584","person_name":"میلاد عاصمی پور","mobile":"9013239008","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9013239008"}
[2026-04-01 20:27:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10584","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 20:27:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10584","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 20:27:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10584","title":"معامله چهارم 9013239008 | کانال VIP بدون پشتیبان","base_title_used":"معامله چهارم 9013239008","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد عاصمی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 20:27:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:18] [INFO] Deal success processed {"contact_id":"10584","person_name":"میلاد عاصمی پور","products_count":1}
[2026-04-01 20:27:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 20:27:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10584","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9013239008 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":50000000,"server_time":"2026-04-01 20:27:18","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 20:27:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-01 20:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:27:35] [INFO] Checking activity reminders 
[2026-04-01 20:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:30:09] [INFO] Checking activity reminders 
[2026-04-01 20:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:30:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-01 20:32:22] [INFO] Checking activity reminders 
[2026-04-01 20:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:32:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:32:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:32:52] [INFO] Checking activity reminders 
[2026-04-01 20:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:33:01] [INFO] Lead update received {"contact_id":"local_69cd230ef155f2.07282058","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-01 20:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:01] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69cd230ef155f2.07282058"}
[2026-04-01 20:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:22] [INFO] Checking activity reminders 
[2026-04-01 20:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:33:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69cd230ef155f2.07282058","deal_id":"local_69cd230f0d666","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 20:33:40","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 20:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69cd230ef155f2.07282058","is_new_deal":false}
[2026-04-01 20:33:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 20:33:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 20:33:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-01 20:33:40] [INFO] getContactPrimaryPhone called {"contact_id":"local_69cd230ef155f2.07282058"}
[2026-04-01 20:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:40] [INFO] getContactPrimaryPhone result {"contact_id":"local_69cd230ef155f2.07282058","person_found":true,"primary_phone":"9010983277"}
[2026-04-01 20:33:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9010983277"}
[2026-04-01 20:33:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9010983277","contact_id":"local_69cd230ef155f2.07282058","deal_id":"local_69cd230f0d666","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:33:40"}
[2026-04-01 20:33:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd230f0d666","contact_id":"local_69cd230ef155f2.07282058","existing_deal_found":true,"existing_contact_id":"local_69cd230ef155f2.07282058","existing_title":"معامله اول 9010983277","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:33:40"}
[2026-04-01 20:33:40] [INFO] DealController.save validated payments {"deal_id":"local_69cd230f0d666","contact_id":"local_69cd230ef155f2.07282058","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-01 20:33:40] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69cd230ef155f2.07282058","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 20:33:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd230f0d666","contact_didar_id":"local_69cd230ef155f2.07282058","title":"معامله اول 9010983277 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9010983277","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم حسینی","existing_deal":"YES","existing_deal_id":"local_69cd230f0d666","existing_deal_status":"Pending","server_time":"2026-04-01 20:33:40","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 20:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd230f0d666","contact_id":"local_69cd230ef155f2.07282058","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9010983277 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-01 20:33:40","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 20:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:33:52] [INFO] Checking activity reminders 
[2026-04-01 20:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:34:22] [INFO] Checking activity reminders 
[2026-04-01 20:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:34:53] [INFO] Checking activity reminders 
[2026-04-01 20:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:35:16] [INFO] Activity save request {"post_data":{"contact_id":"local_69cd230ef155f2.07282058","deal_id":"local_69cd230f0d666","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سرمایه در طلای فیزیکی \r\nپسرعموش در کانال عمومی استاد \r\nپرزنت کانال 405 و مشاوره استاد \r\nطلا رو تبدیل به خودرو کنه \r\nارسال اطلاعات در پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 20:35:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69cd230ef155f2.07282058","note_was_empty":true}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:16] [INFO] Updating virtual stage {"contact_id":"local_69cd230ef155f2.07282058","stage_name":"new","force":false}
[2026-04-01 20:35:16] [INFO] Virtual stage successfully saved {"contact_id":"local_69cd230ef155f2.07282058","stage_name":"new"}
[2026-04-01 20:35:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_69cd230ef155f2.07282058"}
[2026-04-01 20:35:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69cd230f0d666","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-01 20:35:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd504c6ba2a4.78440907","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd504c6ba2a4.78440907"}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:16] [INFO] Updating virtual stage {"contact_id":"local_69cd230ef155f2.07282058","stage_name":"deal_registered","force":false}
[2026-04-01 20:35:16] [INFO] Virtual stage successfully saved {"contact_id":"local_69cd230ef155f2.07282058","stage_name":"deal_registered"}
[2026-04-01 20:35:16] [INFO] Virtual stage updated after activity save {"contact_id":"local_69cd230ef155f2.07282058"}
[2026-04-01 20:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69cd230ef155f2.07282058","person_id":"21940"}
[2026-04-01 20:35:23] [INFO] Checking activity reminders 
[2026-04-01 20:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:35:39] [INFO] Checking activity reminders 
[2026-04-01 20:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7952","deal_id":"local_69ca8e76d41f66.48863543","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 20:36:00","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7952","is_new_deal":false}
[2026-04-01 20:36:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 20:36:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 20:36:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 20:36:00] [INFO] getContactPrimaryPhone called {"contact_id":"7952"}
[2026-04-01 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:00] [INFO] getContactPrimaryPhone result {"contact_id":"7952","person_found":true,"primary_phone":"9120124434"}
[2026-04-01 20:36:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120124434"}
[2026-04-01 20:36:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120124434","contact_id":"7952","deal_id":"local_69ca8e76d41f66.48863543","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:36:00"}
[2026-04-01 20:36:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8e76d41f66.48863543","contact_id":"7952","existing_deal_found":true,"existing_contact_id":"7952","existing_title":"معامله سوم 9120124434 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:36:00"}
[2026-04-01 20:36:00] [INFO] DealController.save validated payments {"deal_id":"local_69ca8e76d41f66.48863543","contact_id":"7952","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-01 20:36:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7952","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 20:36:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8e76d41f66.48863543","contact_didar_id":"7952","title":"معامله سوم 9120124434 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120124434","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم نعمت زاده","existing_deal":"YES","existing_deal_id":"local_69ca8e76d41f66.48863543","existing_deal_status":"Pending","server_time":"2026-04-01 20:36:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8e76d41f66.48863543","contact_id":"7952","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120124434 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 20:36:00","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 20:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:09] [INFO] Checking activity reminders 
[2026-04-01 20:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:36:13] [INFO] Activity save request {"post_data":{"contact_id":"7952","deal_id":"local_69ca8e76d41f66.48863543","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 20:36:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7952","note_was_empty":true}
[2026-04-01 20:36:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"7952","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:13] [INFO] Updating virtual stage {"contact_id":"7952","stage_name":"deal_registered","force":false}
[2026-04-01 20:36:13] [INFO] Virtual stage successfully saved {"contact_id":"7952","stage_name":"deal_registered"}
[2026-04-01 20:36:13] [INFO] Virtual stage updated after activity save {"contact_id":"7952"}
[2026-04-01 20:36:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8e76d41f66.48863543","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-01 20:36:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd5085031904.48796177","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd5085031904.48796177"}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:13] [INFO] Updating virtual stage {"contact_id":"7952","stage_name":"deal_registered","force":false}
[2026-04-01 20:36:13] [INFO] Virtual stage successfully saved {"contact_id":"7952","stage_name":"deal_registered"}
[2026-04-01 20:36:13] [INFO] Virtual stage updated after activity save {"contact_id":"7952"}
[2026-04-01 20:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7952","person_id":"10556"}
[2026-04-01 20:36:16] [INFO] Checking activity reminders 
[2026-04-01 20:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:36:50] [INFO] Checking activity reminders 
[2026-04-01 20:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:36:55] [INFO] Checking activity reminders 
[2026-04-01 20:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16031","deal_id":"local_69ca8a35ac4229.24498350","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 20:37:11","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 20:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16031","is_new_deal":false}
[2026-04-01 20:37:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 20:37:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 20:37:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 20:37:11] [INFO] getContactPrimaryPhone called {"contact_id":"16031"}
[2026-04-01 20:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:11] [INFO] getContactPrimaryPhone result {"contact_id":"16031","person_found":true,"primary_phone":"9111203702"}
[2026-04-01 20:37:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9111203702"}
[2026-04-01 20:37:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9111203702","contact_id":"16031","deal_id":"local_69ca8a35ac4229.24498350","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:37:11"}
[2026-04-01 20:37:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8a35ac4229.24498350","contact_id":"16031","existing_deal_found":true,"existing_contact_id":"16031","existing_title":"معامله دوم 9111203702 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 20:37:11"}
[2026-04-01 20:37:11] [INFO] DealController.save validated payments {"deal_id":"local_69ca8a35ac4229.24498350","contact_id":"16031","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-01 20:37:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16031","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 20:37:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8a35ac4229.24498350","contact_didar_id":"16031","title":"معامله دوم 9111203702 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9111203702","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین نیک رفتار","existing_deal":"YES","existing_deal_id":"local_69ca8a35ac4229.24498350","existing_deal_status":"Pending","server_time":"2026-04-01 20:37:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 20:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8a35ac4229.24498350","contact_id":"16031","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9111203702 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 20:37:11","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 20:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:26] [INFO] Checking activity reminders 
[2026-04-01 20:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 20:37:46] [INFO] Activity save request {"post_data":{"contact_id":"16031","deal_id":"local_69ca8a35ac4229.24498350","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال 404 یکماه دسترسی نداشته \r\nارسال لینک در بله \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 20:37:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16031","note_was_empty":true}
[2026-04-01 20:37:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"16031","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:46] [INFO] Updating virtual stage {"contact_id":"16031","stage_name":"deal_registered","force":false}
[2026-04-01 20:37:46] [INFO] Virtual stage successfully saved {"contact_id":"16031","stage_name":"deal_registered"}
[2026-04-01 20:37:46] [INFO] Virtual stage updated after activity save {"contact_id":"16031"}
[2026-04-01 20:37:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8a35ac4229.24498350","stage":"تماس پیگیری","status_change":null}
[2026-04-01 20:37:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd50e2768565.78794941","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd50e2768565.78794941"}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:46] [INFO] Updating virtual stage {"contact_id":"16031","stage_name":"deal_registered","force":false}
[2026-04-01 20:37:46] [INFO] Virtual stage successfully saved {"contact_id":"16031","stage_name":"deal_registered"}
[2026-04-01 20:37:46] [INFO] Virtual stage updated after activity save {"contact_id":"16031"}
[2026-04-01 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16031","person_id":"11248"}
[2026-04-01 20:37:56] [INFO] Checking activity reminders 
[2026-04-01 20:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 20:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:01:41] [INFO] Checking activity reminders 
[2026-04-01 21:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:02:55] [INFO] Checking activity reminders 
[2026-04-01 21:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:03:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:06] [INFO] generateDealTitle result {"contact_id":"2075","person_name":"مشهدی","mobile":"9134092875","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134092875"}
[2026-04-01 21:03:25] [INFO] Checking activity reminders 
[2026-04-01 21:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:03:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2075","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 21:03:33","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 21:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2075","is_new_deal":true}
[2026-04-01 21:03:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 21:03:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 21:03:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 21:03:33] [INFO] getContactPrimaryPhone called {"contact_id":"2075"}
[2026-04-01 21:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:33] [INFO] getContactPrimaryPhone result {"contact_id":"2075","person_found":true,"primary_phone":"9134092875"}
[2026-04-01 21:03:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134092875"}
[2026-04-01 21:03:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134092875","contact_id":"2075","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 21:03:33"}
[2026-04-01 21:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:33] [INFO] generateDealTitle result {"contact_id":"2075","person_name":"مشهدی","mobile":"9134092875","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134092875"}
[2026-04-01 21:03:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2075","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-01 21:03:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2075","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 21:03:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2075","title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9134092875","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مشهدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-01 21:03:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 21:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-01 21:03:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2075","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-01 21:03:33","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 21:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:03:55] [INFO] Checking activity reminders 
[2026-04-01 21:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:04:26] [INFO] Checking activity reminders 
[2026-04-01 21:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:04:56] [INFO] Checking activity reminders 
[2026-04-01 21:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:05:26] [INFO] Checking activity reminders 
[2026-04-01 21:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:05:29] [INFO] Activity save request {"post_data":{"contact_id":"2075","deal_id":"local_69cd56ed71f131.82135384","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای عضویت در کانال پرزنت \r\nاصفهان \r\nخیلی کسب و کارش آسیب دیده \r\n20نقد \r\n59 یک فقره چک ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:05:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-01 21:05:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:05:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2075","note_was_empty":true}
[2026-04-01 21:05:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"2075","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:05:29] [INFO] Updating virtual stage {"contact_id":"2075","stage_name":"deal_registered","force":false}
[2026-04-01 21:05:29] [INFO] Virtual stage successfully saved {"contact_id":"2075","stage_name":"deal_registered"}
[2026-04-01 21:05:29] [INFO] Virtual stage updated after activity save {"contact_id":"2075"}
[2026-04-01 21:05:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69cd56ed71f131.82135384","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-01 21:05:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cd576133c1d7.35765321","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:05:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69cd576133c1d7.35765321"}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:05:29] [INFO] Updating virtual stage {"contact_id":"2075","stage_name":"deal_registered","force":false}
[2026-04-01 21:05:29] [INFO] Virtual stage successfully saved {"contact_id":"2075","stage_name":"deal_registered"}
[2026-04-01 21:05:29] [INFO] Virtual stage updated after activity save {"contact_id":"2075"}
[2026-04-01 21:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_field_configurations"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"has_deal_activity"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_deal_activities"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_products"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"get_leads"}
[2026-04-01 21:07:59] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:08:00] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:08:00] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:08:17] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-01 21:08:17] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-01 21:08:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-01 21:08:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:08:47] [INFO] Checking activity reminders 
[2026-04-01 21:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:09:17] [INFO] Checking activity reminders 
[2026-04-01 21:09:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:09:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:09:48] [INFO] Checking activity reminders 
[2026-04-01 21:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:10:18] [INFO] Checking activity reminders 
[2026-04-01 21:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:10:48] [INFO] Checking activity reminders 
[2026-04-01 21:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:11:18] [INFO] Checking activity reminders 
[2026-04-01 21:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:11:49] [INFO] Checking activity reminders 
[2026-04-01 21:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:12:19] [INFO] Checking activity reminders 
[2026-04-01 21:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:12:49] [INFO] Checking activity reminders 
[2026-04-01 21:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:13:19] [INFO] Checking activity reminders 
[2026-04-01 21:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:13:50] [INFO] Checking activity reminders 
[2026-04-01 21:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:14:20] [INFO] Checking activity reminders 
[2026-04-01 21:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:14:50] [INFO] Checking activity reminders 
[2026-04-01 21:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:28:15] [INFO] Checking activity reminders 
[2026-04-01 21:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:28:46] [INFO] Checking activity reminders 
[2026-04-01 21:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:28:53] [INFO] Checking activity reminders 
[2026-04-01 21:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:29:37] [INFO] Checking activity reminders 
[2026-04-01 21:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:29:54] [INFO] Checking activity reminders 
[2026-04-01 21:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:30:15] [INFO] Checking activity reminders 
[2026-04-01 21:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 21:30:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2075","deal_id":"local_69cd56ed71f131.82135384","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-01 21:30:41","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-01 21:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:30:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2075","is_new_deal":false}
[2026-04-01 21:30:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-01 21:30:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 21:30:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-01 21:30:41] [INFO] getContactPrimaryPhone called {"contact_id":"2075"}
[2026-04-01 21:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:30:41] [INFO] getContactPrimaryPhone result {"contact_id":"2075","person_found":true,"primary_phone":"9134092875"}
[2026-04-01 21:30:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134092875"}
[2026-04-01 21:30:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134092875","contact_id":"2075","deal_id":"local_69cd56ed71f131.82135384","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 21:30:41"}
[2026-04-01 21:30:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","existing_deal_found":true,"existing_contact_id":"2075","existing_title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-01 21:30:41"}
[2026-04-01 21:30:41] [INFO] DealController.save validated payments {"deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-01 21:30:41] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2075","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-01 21:30:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd56ed71f131.82135384","contact_didar_id":"2075","title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9134092875","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مشهدی","existing_deal":"YES","existing_deal_id":"local_69cd56ed71f131.82135384","existing_deal_status":"Pending","server_time":"2026-04-01 21:30:41","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-01 21:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:30:41] [INFO] Deal success processed {"contact_id":"2075","person_name":"مشهدی","products_count":1}
[2026-04-01 21:30:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":54000000,"server_time":"2026-04-01 21:30:41","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-01 21:30:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-01 21:30:45] [INFO] Checking activity reminders 
[2026-04-01 21:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-01 21:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-01 22:22:54] [WARNING] Auth check failed - not authenticated {"session_id":"efhcnkg7cf0pmsed4cko5p4mtn","session_keys":[],"action":"log_client_event"}
[2026-04-01 22:22:54] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-01 22:22:54] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-01 22:22:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-01 22:22:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-01 22:22:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-01 22:22:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-02 01:25:43] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"check_reminders"}
[2026-04-02 01:25:43] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:25:43] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:25:47] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:25:47] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:25:51] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:25:52] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:26:03] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 01:26:03] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-02 01:26:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-02 01:26:34] [INFO] Checking activity reminders 
[2026-04-02 01:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 01:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 01:26:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-02 01:27:15] [INFO] Checking activity reminders 
[2026-04-02 01:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 01:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 01:27:24] [INFO] Lead update received {"contact_id":"5529","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-02 01:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-02 01:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-02 01:27:24] [DEBUG] findByPhone: Found person {"phones":["9377774348"],"found_id":"5529","found_didar_id":"1319","found_name":"احسان فراهانی"}
[2026-04-02 01:27:24] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9377774348","found_didar_id":"1319","found_local_id":"5529","found_name":"احسان فراهانی"}
[2026-04-02 01:27:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-02 01:27:24] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9377774348","found_id":"5529","found_didar_id":"1319","exclude_id":7866,"exclude_didar_id":"5529"}
[2026-04-02 01:27:24] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای احسان فراهانی (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-02 01:27:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-02 01:32:39] [INFO] Checking activity reminders 
[2026-04-02 01:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 01:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 01:33:09] [INFO] Checking activity reminders 
[2026-04-02 01:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 01:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 01:33:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-02 13:48:47] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"check_reminders"}
[2026-04-02 13:48:47] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:48:47] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:48:48] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:48:49] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:48:50] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:49:01] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 13:49:01] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-02 13:49:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-02 13:49:31] [INFO] Checking activity reminders 
[2026-04-02 13:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:50:02] [INFO] Checking activity reminders 
[2026-04-02 13:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:50:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 13:50:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 13:50:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 13:50:25] [INFO] generateDealTitle result {"contact_id":"1831","person_name":"وحید حسینی","mobile":"9113919209","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9113919209"}
[2026-04-02 13:50:32] [INFO] Checking activity reminders 
[2026-04-02 13:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:55:33] [INFO] Checking activity reminders 
[2026-04-02 13:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:56:03] [INFO] Checking activity reminders 
[2026-04-02 13:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:56:33] [INFO] Checking activity reminders 
[2026-04-02 13:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:57:04] [INFO] Checking activity reminders 
[2026-04-02 13:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:57:42] [INFO] Checking activity reminders 
[2026-04-02 13:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:58:12] [INFO] Checking activity reminders 
[2026-04-02 13:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:58:45] [INFO] Checking activity reminders 
[2026-04-02 13:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:59:15] [INFO] Checking activity reminders 
[2026-04-02 13:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 13:59:49] [INFO] Checking activity reminders 
[2026-04-02 13:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 13:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 14:00:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1831","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-02 14:00:18","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-02 14:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1831","is_new_deal":true}
[2026-04-02 14:00:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-02 14:00:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-02 14:00:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-02 14:00:18] [INFO] getContactPrimaryPhone called {"contact_id":"1831"}
[2026-04-02 14:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:18] [INFO] getContactPrimaryPhone result {"contact_id":"1831","person_found":true,"primary_phone":"9113919209"}
[2026-04-02 14:00:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113919209"}
[2026-04-02 14:00:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113919209","contact_id":"1831","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-02 14:00:18"}
[2026-04-02 14:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:18] [INFO] generateDealTitle result {"contact_id":"1831","person_name":"وحید حسینی","mobile":"9113919209","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9113919209"}
[2026-04-02 14:00:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1831","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-02 14:00:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1831","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-02 14:00:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1831","title":"معامله چهارم 9113919209 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9113919209","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":75000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"وحید حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-02 14:00:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-02 14:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:19] [INFO] Deal success processed {"contact_id":"1831","person_name":"وحید حسینی","products_count":1}
[2026-04-02 14:00:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-02 14:00:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1831","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9113919209 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":75000000,"server_time":"2026-04-02 14:00:19","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-02 14:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-02 14:00:20] [INFO] Checking activity reminders 
[2026-04-02 14:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 14:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 19:10:24] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 19:10:24] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 19:10:24] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 19:10:36] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-02 19:10:36] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-02 19:10:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-02 19:10:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-02 19:11:07] [INFO] Checking activity reminders 
[2026-04-02 19:11:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 19:11:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 19:11:37] [INFO] Checking activity reminders 
[2026-04-02 19:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 19:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 19:12:03] [INFO] Checking activity reminders 
[2026-04-02 19:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 19:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 19:12:22] [INFO] Checking activity reminders 
[2026-04-02 19:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-02 19:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-02 19:12:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-02 19:12:33","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-02 19:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-02 19:12:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12740","is_new_deal":false}
[2026-04-02 19:12:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-02 19:12:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-02 19:12:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-02 19:12:33] [INFO] getContactPrimaryPhone called {"contact_id":"12740"}
[2026-04-02 19:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-02 19:12:33] [INFO] getContactPrimaryPhone result {"contact_id":"12740","person_found":true,"primary_phone":"9121571976"}
[2026-04-02 19:12:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121571976"}
[2026-04-02 19:12:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121571976","contact_id":"12740","deal_id":"local_69ca90ed2c2244.08949604","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-02 19:12:33"}
[2026-04-02 19:12:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","existing_deal_found":true,"existing_contact_id":"12740","existing_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-02 19:12:33"}
[2026-04-02 19:12:33] [INFO] DealController.save validated payments {"deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-02 19:12:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12740","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-02 19:12:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90ed2c2244.08949604","contact_didar_id":"12740","title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9121571976","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قشلاقی","existing_deal":"YES","existing_deal_id":"local_69ca90ed2c2244.08949604","existing_deal_status":"Pending","server_time":"2026-04-02 19:12:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-02 19:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-02 19:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-02 19:12:33] [INFO] Deal success processed {"contact_id":"12740","person_name":"قشلاقی","products_count":1}
[2026-04-02 19:12:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90ed2c2244.08949604","contact_id":"12740","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9121571976 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-02 19:12:33","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-02 19:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-03 12:24:52] [WARNING] Auth check failed - not authenticated {"session_id":"l0nda2u9sgr8usabckgv0fp304","session_keys":[],"action":"log_client_event"}
[2026-04-03 12:24:52] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-03 12:24:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-03 12:25:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:23] [INFO] Checking activity reminders 
[2026-04-03 12:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:25:45] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5ccb29d5e93.43869677","deal_id":"local_69b5ccb2a3d0c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرایط صحبت نداشت شنبه ساعت ۱۱ تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-03 12:25:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5ccb29d5e93.43869677","note_was_empty":true}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:45] [INFO] Updating virtual stage {"contact_id":"local_69b5ccb29d5e93.43869677","stage_name":"new","force":false}
[2026-04-03 12:25:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5ccb29d5e93.43869677","stage_name":"new"}
[2026-04-03 12:25:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5ccb29d5e93.43869677"}
[2026-04-03 12:25:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5ccb2a3d0c","stage":"تماس پیگیری","status_change":null}
[2026-04-03 12:25:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cf80910eebb9.03546594","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69cf80910eebb9.03546594"}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:45] [INFO] Updating virtual stage {"contact_id":"local_69b5ccb29d5e93.43869677","stage_name":"deal_registered","force":false}
[2026-04-03 12:25:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5ccb29d5e93.43869677","stage_name":"deal_registered"}
[2026-04-03 12:25:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5ccb29d5e93.43869677"}
[2026-04-03 12:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5ccb29d5e93.43869677","person_id":"21862"}
[2026-04-03 12:25:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:25:53] [INFO] Checking activity reminders 
[2026-04-03 12:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:26:09] [INFO] Activity save request {"post_data":{"contact_id":"local_6995dc31cae7b3.59087531","deal_id":"local_6995dc31cd75d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-03 12:26:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_6995dc31cae7b3.59087531","note_was_empty":true}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:09] [INFO] Updating virtual stage {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered","force":false}
[2026-04-03 12:26:09] [INFO] Virtual stage successfully saved {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered"}
[2026-04-03 12:26:09] [INFO] Virtual stage updated after activity save {"contact_id":"local_6995dc31cae7b3.59087531"}
[2026-04-03 12:26:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6995dc31cd75d","stage":"تماس پیگیری","status_change":null}
[2026-04-03 12:26:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cf80a9745e21.39965383","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69cf80a9745e21.39965383"}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:09] [INFO] Updating virtual stage {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered","force":false}
[2026-04-03 12:26:09] [INFO] Virtual stage successfully saved {"contact_id":"local_6995dc31cae7b3.59087531","stage_name":"deal_registered"}
[2026-04-03 12:26:09] [INFO] Virtual stage updated after activity save {"contact_id":"local_6995dc31cae7b3.59087531"}
[2026-04-03 12:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6995dc31cae7b3.59087531","person_id":"21729"}
[2026-04-03 12:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:23] [INFO] Checking activity reminders 
[2026-04-03 12:26:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:26:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:26:37] [INFO] Activity save request {"post_data":{"contact_id":"local_69b53990872fd7.72637675","deal_id":"local_69b539908a559","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شنبه ساعت ۱۲ تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-03 12:26:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b53990872fd7.72637675","note_was_empty":true}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:37] [INFO] Updating virtual stage {"contact_id":"local_69b53990872fd7.72637675","stage_name":"new","force":false}
[2026-04-03 12:26:37] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53990872fd7.72637675","stage_name":"new"}
[2026-04-03 12:26:37] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53990872fd7.72637675"}
[2026-04-03 12:26:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b539908a559","stage":"تماس پیگیری","status_change":null}
[2026-04-03 12:26:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cf80c5938291.59424895","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69cf80c5938291.59424895"}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:37] [INFO] Updating virtual stage {"contact_id":"local_69b53990872fd7.72637675","stage_name":"deal_registered","force":false}
[2026-04-03 12:26:37] [INFO] Virtual stage successfully saved {"contact_id":"local_69b53990872fd7.72637675","stage_name":"deal_registered"}
[2026-04-03 12:26:37] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b53990872fd7.72637675"}
[2026-04-03 12:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:26:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:26:54] [INFO] Checking activity reminders 
[2026-04-03 12:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:27:25] [INFO] Checking activity reminders 
[2026-04-03 12:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-03 12:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:27:55] [INFO] Checking activity reminders 
[2026-04-03 12:27:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:27:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:28:25] [INFO] Checking activity reminders 
[2026-04-03 12:28:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:28:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:28:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:29:04] [INFO] Checking activity reminders 
[2026-04-03 12:29:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:29:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:29:18] [INFO] Checking activity reminders 
[2026-04-03 12:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:29:40] [INFO] Lead update received {"contact_id":"17326","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-03 12:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:29:40] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17326"}
[2026-04-03 12:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:29:48] [INFO] Checking activity reminders 
[2026-04-03 12:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:30:18] [INFO] Checking activity reminders 
[2026-04-03 12:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 12:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 12:30:40] [INFO] Activity save request {"post_data":{"contact_id":"17326","deal_id":"local_69bbe94fa2f6d0.16241409","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در دسترس نبود ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-03 12:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:30:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-03 12:30:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-03 12:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:30:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17326","note_was_empty":true}
[2026-04-03 12:30:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"17326","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-03 12:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:30:40] [INFO] Updating virtual stage {"contact_id":"17326","stage_name":"deal_registered","force":false}
[2026-04-03 12:30:41] [INFO] Virtual stage successfully saved {"contact_id":"17326","stage_name":"deal_registered"}
[2026-04-03 12:30:41] [INFO] Virtual stage updated after activity save {"contact_id":"17326"}
[2026-04-03 12:30:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbe94fa2f6d0.16241409","stage":"تماس پیگیری","status_change":null}
[2026-04-03 12:30:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69cf81b8e95011.97277729","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-03 12:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:30:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69cf81b8e95011.97277729"}
[2026-04-03 12:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 12:30:41] [INFO] Updating virtual stage {"contact_id":"17326","stage_name":"deal_registered","force":false}
[2026-04-03 12:30:41] [INFO] Virtual stage successfully saved {"contact_id":"17326","stage_name":"deal_registered"}
[2026-04-03 12:30:41] [INFO] Virtual stage updated after activity save {"contact_id":"17326"}
[2026-04-03 12:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17326","person_id":"2428"}
[2026-04-03 13:47:11] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:11] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"check_reminders"}
[2026-04-03 13:47:11] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:12] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:15] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:23] [WARNING] Auth check failed - not authenticated {"session_id":"far3n4fqn1rhb58ft49qkpg1qj","session_keys":[],"action":"log_client_event"}
[2026-04-03 13:47:23] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-03 13:47:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-03 13:47:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:47:51] [INFO] Checking activity reminders 
[2026-04-03 13:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:48:21] [INFO] Checking activity reminders 
[2026-04-03 13:48:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:48:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:48:51] [INFO] Checking activity reminders 
[2026-04-03 13:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:49:21] [INFO] Checking activity reminders 
[2026-04-03 13:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:49:52] [INFO] Checking activity reminders 
[2026-04-03 13:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:50:09] [INFO] Checking activity reminders 
[2026-04-03 13:50:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:50:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:50:43] [INFO] Checking activity reminders 
[2026-04-03 13:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:51:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7882","deal_id":"local_69528368bb2ef2.80742870","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-03 13:51:00","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-03 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:51:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7882","is_new_deal":false}
[2026-04-03 13:51:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:51:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:51:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:51:00] [INFO] getContactPrimaryPhone called {"contact_id":"7882"}
[2026-04-03 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:51:00] [INFO] getContactPrimaryPhone result {"contact_id":"7882","person_found":true,"primary_phone":"9161523155"}
[2026-04-03 13:51:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9161523155"}
[2026-04-03 13:51:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9161523155","contact_id":"7882","deal_id":"local_69528368bb2ef2.80742870","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 13:51:00"}
[2026-04-03 13:51:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69528368bb2ef2.80742870","contact_id":"7882","existing_deal_found":true,"existing_contact_id":"7882","existing_title":"معامله سوم 9161523155 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 13:51:00"}
[2026-04-03 13:51:13] [INFO] Checking activity reminders 
[2026-04-03 13:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:51:43] [INFO] Checking activity reminders 
[2026-04-03 13:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 13:52:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7882","deal_id":"local_69528368bb2ef2.80742870","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-03 13:52:11","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-03 13:52:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:52:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7882","is_new_deal":false}
[2026-04-03 13:52:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:52:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:52:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 13:52:11] [INFO] getContactPrimaryPhone called {"contact_id":"7882"}
[2026-04-03 13:52:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:52:11] [INFO] getContactPrimaryPhone result {"contact_id":"7882","person_found":true,"primary_phone":"9161523155"}
[2026-04-03 13:52:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9161523155"}
[2026-04-03 13:52:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9161523155","contact_id":"7882","deal_id":"local_69528368bb2ef2.80742870","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 13:52:11"}
[2026-04-03 13:52:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69528368bb2ef2.80742870","contact_id":"7882","existing_deal_found":true,"existing_contact_id":"7882","existing_title":"معامله سوم 9161523155 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 13:52:11"}
[2026-04-03 13:52:11] [INFO] DealController.save validated payments {"deal_id":"local_69528368bb2ef2.80742870","contact_id":"7882","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-03 13:52:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7882","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-03 13:52:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69528368bb2ef2.80742870","contact_didar_id":"7882","title":"معامله سوم 9161523155 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9161523155","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":41000000,"payment_amount":41000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی حسینی","existing_deal":"YES","existing_deal_id":"local_69528368bb2ef2.80742870","existing_deal_status":"Pending","server_time":"2026-04-03 13:52:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-03 13:52:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:52:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:52:11] [INFO] Deal success processed {"contact_id":"7882","person_name":"مجتبی حسینی","products_count":1}
[2026-04-03 13:52:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69528368bb2ef2.80742870","contact_id":"7882","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9161523155 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":41000000,"payment_amount":41000000,"server_time":"2026-04-03 13:52:11","ip_address":"2.147.221.93","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-03 13:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-03 13:52:14] [INFO] Checking activity reminders 
[2026-04-03 13:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 13:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:21:27] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-03 19:21:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-03 19:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 19:21:57] [INFO] Checking activity reminders 
[2026-04-03 19:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:22:27] [INFO] Checking activity reminders 
[2026-04-03 19:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:22:58] [INFO] Checking activity reminders 
[2026-04-03 19:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:23:28] [INFO] Checking activity reminders 
[2026-04-03 19:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:23:58] [INFO] Checking activity reminders 
[2026-04-03 19:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:24:28] [INFO] Checking activity reminders 
[2026-04-03 19:24:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:24:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:24:58] [INFO] Checking activity reminders 
[2026-04-03 19:24:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:24:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:25:28] [INFO] Checking activity reminders 
[2026-04-03 19:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:25:59] [INFO] Checking activity reminders 
[2026-04-03 19:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:26:29] [INFO] Checking activity reminders 
[2026-04-03 19:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:26:59] [INFO] Checking activity reminders 
[2026-04-03 19:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:27:29] [INFO] Checking activity reminders 
[2026-04-03 19:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:28:00] [INFO] Checking activity reminders 
[2026-04-03 19:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:32:27] [INFO] Checking activity reminders 
[2026-04-03 19:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:32:48] [INFO] generateDealTitle result {"contact_id":"8512","person_name":"ابراهیم محمدی","mobile":"9179175772","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9179175772"}
[2026-04-03 19:32:58] [INFO] Checking activity reminders 
[2026-04-03 19:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:33:28] [INFO] Checking activity reminders 
[2026-04-03 19:33:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:33:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:34:26] [INFO] Checking activity reminders 
[2026-04-03 19:34:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:34:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 19:34:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"8512","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-03 19:34:48","session_id":"far3n4fqn1rhb58ft49qkpg1qj"}
[2026-04-03 19:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"8512","is_new_deal":true}
[2026-04-03 19:34:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-03 19:34:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-03 19:34:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-03 19:34:48] [INFO] getContactPrimaryPhone called {"contact_id":"8512"}
[2026-04-03 19:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:48] [INFO] getContactPrimaryPhone result {"contact_id":"8512","person_found":true,"primary_phone":"9179175772"}
[2026-04-03 19:34:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9179175772"}
[2026-04-03 19:34:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9179175772","contact_id":"8512","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 19:34:48"}
[2026-04-03 19:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:48] [INFO] generateDealTitle result {"contact_id":"8512","person_name":"ابراهیم محمدی","mobile":"9179175772","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9179175772"}
[2026-04-03 19:34:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8512","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-03 19:34:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8512","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-03 19:34:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8512","title":"معامله پنجم 9179175772 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله پنجم 9179175772","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابراهیم محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-03 19:34:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-03 19:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:49] [INFO] Deal success processed {"contact_id":"8512","person_name":"ابراهیم محمدی","products_count":1}
[2026-04-03 19:34:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-03 19:34:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8512","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9179175772 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-03 19:34:49","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-03 19:34:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-03 19:34:56] [INFO] Checking activity reminders 
[2026-04-03 19:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 19:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 21:34:38] [WARNING] Auth check failed - not authenticated {"session_id":"vrcbdqme7023r0nqhbivpkcjen","session_keys":[],"action":"log_client_event"}
[2026-04-03 21:34:38] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-03 21:34:38] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-03 21:34:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-03 21:35:09] [INFO] Checking activity reminders 
[2026-04-03 21:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 21:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 21:35:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:35:39] [INFO] Checking activity reminders 
[2026-04-03 21:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 21:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 21:39:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:39:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:39:46] [INFO] generateDealTitle result {"contact_id":"3416","person_name":"امین شهبازی","mobile":"9126526605","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126526605"}
[2026-04-03 21:39:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:39:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:39:46] [INFO] generateDealTitle result {"contact_id":"3416","person_name":"امین شهبازی","mobile":"9126526605","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126526605"}
[2026-04-03 21:40:43] [INFO] Checking activity reminders 
[2026-04-03 21:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 21:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 21:42:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3416","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-03 21:42:00","session_id":"vrcbdqme7023r0nqhbivpkcjen"}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3416","is_new_deal":true}
[2026-04-03 21:42:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 21:42:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 21:42:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-03 21:42:00] [INFO] getContactPrimaryPhone called {"contact_id":"3416"}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:00] [INFO] getContactPrimaryPhone result {"contact_id":"3416","person_found":true,"primary_phone":"9126526605"}
[2026-04-03 21:42:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126526605"}
[2026-04-03 21:42:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126526605","contact_id":"3416","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-03 21:42:00"}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:00] [INFO] generateDealTitle result {"contact_id":"3416","person_name":"امین شهبازی","mobile":"9126526605","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126526605"}
[2026-04-03 21:42:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3416","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-03 21:42:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3416","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-03 21:42:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3416","title":"معامله دوم 9126526605 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9126526605","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین شهبازی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-03 21:42:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:00] [INFO] Deal success processed {"contact_id":"3416","person_name":"امین شهبازی","products_count":1}
[2026-04-03 21:42:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-03 21:42:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3416","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126526605 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-03 21:42:00","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-03 21:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:42:53] [INFO] Checking activity reminders 
[2026-04-03 21:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-03 21:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-03 21:43:05] [INFO] Activity save request {"post_data":{"contact_id":"3416","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"اشتراک 6 ماهه با پشتیبانی استاد \r\nبه جهت شرایط،کسب و کار امکان 1ساله فعلا نداره \r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-03 21:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:43:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-03 21:43:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-03 21:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:43:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3416","note_was_empty":true}
[2026-04-03 21:43:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"3416","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-03 21:43:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d003318d9fb2.60717367","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-03 21:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:43:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d003318d9fb2.60717367"}
[2026-04-03 21:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-03 21:43:05] [INFO] Updating virtual stage {"contact_id":"3416","stage_name":"deal_registered","force":false}
[2026-04-03 21:43:05] [INFO] Virtual stage successfully saved {"contact_id":"3416","stage_name":"deal_registered"}
[2026-04-03 21:43:05] [INFO] Virtual stage updated after activity save {"contact_id":"3416"}
[2026-04-03 21:43:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-04 08:33:00] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 08:33:00] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 08:33:00] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 08:33:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 08:33:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 08:33:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 08:33:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 08:33:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 08:33:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 08:33:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 08:33:31] [INFO] Checking activity reminders 
[2026-04-04 08:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:33:58] [INFO] Checking activity reminders 
[2026-04-04 08:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:34:28] [INFO] Checking activity reminders 
[2026-04-04 08:34:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:34:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:37:04] [INFO] Checking activity reminders 
[2026-04-04 08:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:37:07] [INFO] Checking activity reminders 
[2026-04-04 08:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:37:37] [INFO] Checking activity reminders 
[2026-04-04 08:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:38:07] [INFO] Checking activity reminders 
[2026-04-04 08:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:38:37] [INFO] Checking activity reminders 
[2026-04-04 08:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:39:07] [INFO] Checking activity reminders 
[2026-04-04 08:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:50:58] [INFO] Checking activity reminders 
[2026-04-04 08:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:51:07] [INFO] Checking activity reminders 
[2026-04-04 08:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:51:14] [INFO] Checking activity reminders 
[2026-04-04 08:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:51:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-04 08:51:32] [INFO] Checking activity reminders 
[2026-04-04 08:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:51:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:40] [INFO] generateDealTitle result {"contact_id":"9400","person_name":"پورفتحی","mobile":"9123486864","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123486864"}
[2026-04-04 08:51:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9400","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:51:58","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9400","is_new_deal":true}
[2026-04-04 08:51:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:51:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:51:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:51:58] [INFO] getContactPrimaryPhone called {"contact_id":"9400"}
[2026-04-04 08:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:58] [INFO] getContactPrimaryPhone result {"contact_id":"9400","person_found":true,"primary_phone":"9123486864"}
[2026-04-04 08:51:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123486864"}
[2026-04-04 08:51:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123486864","contact_id":"9400","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:51:58"}
[2026-04-04 08:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:58] [INFO] generateDealTitle result {"contact_id":"9400","person_name":"پورفتحی","mobile":"9123486864","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123486864"}
[2026-04-04 08:51:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9400","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:51:58] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9400","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:51:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9400","title":"معامله سوم 9123486864 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123486864","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پورفتحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:51:58","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:51:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:51:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9400","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9123486864 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:51:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 08:52:13] [INFO] Checking activity reminders 
[2026-04-04 08:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-04-04 08:52:29] [INFO] Checking activity reminders 
[2026-04-04 08:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:52:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:37] [INFO] generateDealTitle result {"contact_id":"1250","person_name":"عرفان حیدری","mobile":"9123958906","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123958906"}
[2026-04-04 08:52:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1250","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:52:55","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1250","is_new_deal":true}
[2026-04-04 08:52:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:52:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:52:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:52:55] [INFO] getContactPrimaryPhone called {"contact_id":"1250"}
[2026-04-04 08:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:55] [INFO] getContactPrimaryPhone result {"contact_id":"1250","person_found":true,"primary_phone":"9123958906"}
[2026-04-04 08:52:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123958906"}
[2026-04-04 08:52:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123958906","contact_id":"1250","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:52:55"}
[2026-04-04 08:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:55] [INFO] generateDealTitle result {"contact_id":"1250","person_name":"عرفان حیدری","mobile":"9123958906","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123958906"}
[2026-04-04 08:52:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1250","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:52:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1250","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:52:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1250","title":"معامله سوم 9123958906 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123958906","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرفان حیدری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:52:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:52:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:52:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1250","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9123958906 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:52:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 08:53:10] [INFO] Checking activity reminders 
[2026-04-04 08:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:53:18] [INFO] Checking activity reminders 
[2026-04-04 08:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:24] [INFO] generateDealTitle result {"contact_id":"2062","person_name":"جبارزاده","mobile":"9124210052","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124210052"}
[2026-04-04 08:53:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2062","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:53:40","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2062","is_new_deal":true}
[2026-04-04 08:53:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:53:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:53:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:53:40] [INFO] getContactPrimaryPhone called {"contact_id":"2062"}
[2026-04-04 08:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:40] [INFO] getContactPrimaryPhone result {"contact_id":"2062","person_found":true,"primary_phone":"9124210052"}
[2026-04-04 08:53:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124210052"}
[2026-04-04 08:53:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124210052","contact_id":"2062","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:53:40"}
[2026-04-04 08:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:40] [INFO] generateDealTitle result {"contact_id":"2062","person_name":"جبارزاده","mobile":"9124210052","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9124210052"}
[2026-04-04 08:53:40] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2062","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:53:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2062","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:53:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2062","title":"معامله سوم 9124210052 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9124210052","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جبارزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:53:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:40] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:53:40] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2062","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9124210052 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:53:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 08:53:54] [INFO] Checking activity reminders 
[2026-04-04 08:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:53:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-04-04 08:54:11] [INFO] Checking activity reminders 
[2026-04-04 08:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:19] [INFO] generateDealTitle result {"contact_id":"124","person_name":"علی یوسفی","mobile":"9364058823","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9364058823"}
[2026-04-04 08:54:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:27] [INFO] generateDealTitle result {"contact_id":"124","person_name":"علی یوسفی","mobile":"9364058823","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9364058823"}
[2026-04-04 08:54:41] [INFO] Checking activity reminders 
[2026-04-04 08:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:54:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"124","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:54:43","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"124","is_new_deal":true}
[2026-04-04 08:54:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:54:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:54:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:54:43] [INFO] getContactPrimaryPhone called {"contact_id":"124"}
[2026-04-04 08:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:43] [INFO] getContactPrimaryPhone result {"contact_id":"124","person_found":true,"primary_phone":"9364058823"}
[2026-04-04 08:54:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9364058823"}
[2026-04-04 08:54:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9364058823","contact_id":"124","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:54:43"}
[2026-04-04 08:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:43] [INFO] generateDealTitle result {"contact_id":"124","person_name":"علی یوسفی","mobile":"9364058823","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9364058823"}
[2026-04-04 08:54:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"124","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:54:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"124","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:54:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"124","title":"معامله سوم 9364058823 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9364058823","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی یوسفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:54:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:54:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"124","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9364058823 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:54:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 08:54:57] [INFO] Checking activity reminders 
[2026-04-04 08:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:55:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:03] [INFO] generateDealTitle result {"contact_id":"21055","person_name":"مرتضی کلانی","mobile":"9124406400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124406400"}
[2026-04-04 08:55:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21055","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:55:19","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21055","is_new_deal":true}
[2026-04-04 08:55:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:55:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:55:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:55:19] [INFO] getContactPrimaryPhone called {"contact_id":"21055"}
[2026-04-04 08:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:19] [INFO] getContactPrimaryPhone result {"contact_id":"21055","person_found":true,"primary_phone":"9124406400"}
[2026-04-04 08:55:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124406400"}
[2026-04-04 08:55:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124406400","contact_id":"21055","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:55:19"}
[2026-04-04 08:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:19] [INFO] generateDealTitle result {"contact_id":"21055","person_name":"مرتضی کلانی","mobile":"9124406400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124406400"}
[2026-04-04 08:55:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21055","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:55:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21055","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:55:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21055","title":"معامله دوم 9124406400 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124406400","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مرتضی کلانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:55:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:55:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21055","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9124406400 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:55:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 08:55:32] [INFO] Checking activity reminders 
[2026-04-04 08:55:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:55:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17346","person_id":"19384"}
[2026-04-04 08:55:51] [INFO] Checking activity reminders 
[2026-04-04 08:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:55:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:55:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:55:57] [INFO] generateDealTitle result {"contact_id":"20870","person_name":"حامد سلطانی نژاد","mobile":"9124717259","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124717259"}
[2026-04-04 08:56:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20870","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:56:18","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:56:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20870","is_new_deal":true}
[2026-04-04 08:56:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:56:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:56:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:56:18] [INFO] getContactPrimaryPhone called {"contact_id":"20870"}
[2026-04-04 08:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:56:18] [INFO] getContactPrimaryPhone result {"contact_id":"20870","person_found":true,"primary_phone":"9124717259"}
[2026-04-04 08:56:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124717259"}
[2026-04-04 08:56:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124717259","contact_id":"20870","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:56:18"}
[2026-04-04 08:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:56:18] [INFO] generateDealTitle result {"contact_id":"20870","person_name":"حامد سلطانی نژاد","mobile":"9124717259","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124717259"}
[2026-04-04 08:56:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20870","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:56:18] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20870","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:56:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20870","title":"معامله دوم 9124717259 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124717259","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد سلطانی نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:56:18","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:56:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:56:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20870","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9124717259 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:56:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 08:56:31] [INFO] Checking activity reminders 
[2026-04-04 08:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:56:39] [INFO] Checking activity reminders 
[2026-04-04 08:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:56:47] [INFO] generateDealTitle result {"contact_id":"2898","person_name":"مصطفی امینی","mobile":"9125075001","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125075001"}
[2026-04-04 08:57:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2898","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:57:03","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:57:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:57:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2898","is_new_deal":true}
[2026-04-04 08:57:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:03] [INFO] getContactPrimaryPhone called {"contact_id":"2898"}
[2026-04-04 08:57:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:57:03] [INFO] getContactPrimaryPhone result {"contact_id":"2898","person_found":true,"primary_phone":"9125075001"}
[2026-04-04 08:57:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125075001"}
[2026-04-04 08:57:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125075001","contact_id":"2898","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:57:03"}
[2026-04-04 08:57:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:57:03] [INFO] generateDealTitle result {"contact_id":"2898","person_name":"مصطفی امینی","mobile":"9125075001","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125075001"}
[2026-04-04 08:57:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2898","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:57:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2898","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:57:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2898","title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125075001","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی امینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:57:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:57:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:57:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:57:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2898","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:57:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:57:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 08:57:32] [INFO] Checking activity reminders 
[2026-04-04 08:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:38] [INFO] generateDealTitle result {"contact_id":"930","person_name":"امیر ملکی","mobile":"9125204955","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125204955"}
[2026-04-04 08:57:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"930","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:57:56","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"930","is_new_deal":true}
[2026-04-04 08:57:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:57:56] [INFO] getContactPrimaryPhone called {"contact_id":"930"}
[2026-04-04 08:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:56] [INFO] getContactPrimaryPhone result {"contact_id":"930","person_found":true,"primary_phone":"9125204955"}
[2026-04-04 08:57:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125204955"}
[2026-04-04 08:57:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125204955","contact_id":"930","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:57:56"}
[2026-04-04 08:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:56] [INFO] generateDealTitle result {"contact_id":"930","person_name":"امیر ملکی","mobile":"9125204955","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125204955"}
[2026-04-04 08:57:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"930","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:57:56] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"930","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:57:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"930","title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125204955","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر ملکی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:57:56","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:57:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:57:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"930","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:57:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:58:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 08:58:13] [INFO] Checking activity reminders 
[2026-04-04 08:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:58:22] [INFO] Checking activity reminders 
[2026-04-04 08:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:28] [INFO] generateDealTitle result {"contact_id":"9762","person_name":"شاهچراغ","mobile":"9125672819","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125672819"}
[2026-04-04 08:58:45] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9762","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:58:45","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:58:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9762","is_new_deal":true}
[2026-04-04 08:58:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:58:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:58:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:58:45] [INFO] getContactPrimaryPhone called {"contact_id":"9762"}
[2026-04-04 08:58:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:45] [INFO] getContactPrimaryPhone result {"contact_id":"9762","person_found":true,"primary_phone":"9125672819"}
[2026-04-04 08:58:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125672819"}
[2026-04-04 08:58:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125672819","contact_id":"9762","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:58:45"}
[2026-04-04 08:58:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:45] [INFO] generateDealTitle result {"contact_id":"9762","person_name":"شاهچراغ","mobile":"9125672819","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9125672819"}
[2026-04-04 08:58:45] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9762","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:58:45] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9762","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:58:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9762","title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125672819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شاهچراغ","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:58:45","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:58:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:58:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9762","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:58:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 08:58:59] [INFO] Checking activity reminders 
[2026-04-04 08:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:06] [INFO] generateDealTitle result {"contact_id":"14521","person_name":"محمود ناصری فر","mobile":"9126095337","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126095337"}
[2026-04-04 08:59:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14521","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 08:59:22","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 08:59:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14521","is_new_deal":true}
[2026-04-04 08:59:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 08:59:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:59:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 08:59:22] [INFO] getContactPrimaryPhone called {"contact_id":"14521"}
[2026-04-04 08:59:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:22] [INFO] getContactPrimaryPhone result {"contact_id":"14521","person_found":true,"primary_phone":"9126095337"}
[2026-04-04 08:59:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126095337"}
[2026-04-04 08:59:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126095337","contact_id":"14521","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 08:59:22"}
[2026-04-04 08:59:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:22] [INFO] generateDealTitle result {"contact_id":"14521","person_name":"محمود ناصری فر","mobile":"9126095337","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126095337"}
[2026-04-04 08:59:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14521","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 08:59:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14521","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 08:59:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14521","title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126095337","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمود ناصری فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 08:59:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 08:59:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 08:59:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14521","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 08:59:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 08:59:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 08:59:37] [INFO] Checking activity reminders 
[2026-04-04 08:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 08:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 08:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 08:59:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 08:59:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 08:59:43] [INFO] generateDealTitle result {"contact_id":"11627","person_name":"صفریان","mobile":"9126118417","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126118417"}
[2026-04-04 09:00:04] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11627","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:00:04","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 09:00:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11627","is_new_deal":true}
[2026-04-04 09:00:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:04] [INFO] getContactPrimaryPhone called {"contact_id":"11627"}
[2026-04-04 09:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 09:00:04] [INFO] getContactPrimaryPhone result {"contact_id":"11627","person_found":true,"primary_phone":"9126118417"}
[2026-04-04 09:00:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126118417"}
[2026-04-04 09:00:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126118417","contact_id":"11627","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:00:04"}
[2026-04-04 09:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 09:00:04] [INFO] generateDealTitle result {"contact_id":"11627","person_name":"صفریان","mobile":"9126118417","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9126118417"}
[2026-04-04 09:00:04] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11627","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:00:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11627","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:00:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11627","title":"معامله سوم 9126118417 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9126118417","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صفریان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:00:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 09:00:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:00:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11627","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9126118417 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:00:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:00:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 09:00:17] [INFO] Checking activity reminders 
[2026-04-04 09:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:23] [INFO] generateDealTitle result {"contact_id":"15088","person_name":"خانم محمدزاده","mobile":"9126132296","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126132296"}
[2026-04-04 09:00:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15088","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:00:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:00:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15088","is_new_deal":true}
[2026-04-04 09:00:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:00:38] [INFO] getContactPrimaryPhone called {"contact_id":"15088"}
[2026-04-04 09:00:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:38] [INFO] getContactPrimaryPhone result {"contact_id":"15088","person_found":true,"primary_phone":"9126132296"}
[2026-04-04 09:00:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126132296"}
[2026-04-04 09:00:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126132296","contact_id":"15088","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:00:38"}
[2026-04-04 09:00:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:38] [INFO] generateDealTitle result {"contact_id":"15088","person_name":"خانم محمدزاده","mobile":"9126132296","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126132296"}
[2026-04-04 09:00:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15088","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:00:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15088","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:00:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15088","title":"معامله دوم 9126132296 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126132296","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم محمدزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:00:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:00:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:00:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15088","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126132296 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:00:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:00:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 09:00:52] [INFO] Checking activity reminders 
[2026-04-04 09:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:00:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:00:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:00:58] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_160","person_name":"حمید مرادی","mobile":"9385220543","existing_deals":0,"ordinal":"اول","title":"معامله اول 9385220543"}
[2026-04-04 09:01:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_160","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:01:15","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_160","is_new_deal":true}
[2026-04-04 09:01:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:15] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_160"}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:15] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_160","person_found":true,"primary_phone":"9385220543"}
[2026-04-04 09:01:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385220543"}
[2026-04-04 09:01:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385220543","contact_id":"local_1403_09_26_160","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:01:15"}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:15] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_160","person_name":"حمید مرادی","mobile":"9385220543","existing_deals":0,"ordinal":"اول","title":"معامله اول 9385220543"}
[2026-04-04 09:01:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_160","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:01:15] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_160","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:01:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_160","title":"معامله اول 9385220543 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9385220543","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید مرادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:01:15","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:15] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:01:15] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_160","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9385220543 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:01:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-04 09:01:28] [INFO] Checking activity reminders 
[2026-04-04 09:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:34] [INFO] generateDealTitle result {"contact_id":"20921","person_name":"سبحان کنجانی","mobile":"9126500045","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126500045"}
[2026-04-04 09:01:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20921","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:01:53","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20921","is_new_deal":true}
[2026-04-04 09:01:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:01:53] [INFO] getContactPrimaryPhone called {"contact_id":"20921"}
[2026-04-04 09:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:53] [INFO] getContactPrimaryPhone result {"contact_id":"20921","person_found":true,"primary_phone":"9126500045"}
[2026-04-04 09:01:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126500045"}
[2026-04-04 09:01:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126500045","contact_id":"20921","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:01:53"}
[2026-04-04 09:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:53] [INFO] generateDealTitle result {"contact_id":"20921","person_name":"سبحان کنجانی","mobile":"9126500045","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126500045"}
[2026-04-04 09:01:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20921","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:01:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20921","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:01:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20921","title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126500045","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سبحان کنجانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:01:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:01:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:01:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20921","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:01:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 09:02:06] [INFO] Checking activity reminders 
[2026-04-04 09:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:12] [INFO] generateDealTitle result {"contact_id":"20184","person_name":"مهدی احمد پور","mobile":"9126729017","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126729017"}
[2026-04-04 09:02:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20184","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:02:29","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20184","is_new_deal":true}
[2026-04-04 09:02:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:02:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:02:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:02:29] [INFO] getContactPrimaryPhone called {"contact_id":"20184"}
[2026-04-04 09:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:29] [INFO] getContactPrimaryPhone result {"contact_id":"20184","person_found":true,"primary_phone":"9126729017"}
[2026-04-04 09:02:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126729017"}
[2026-04-04 09:02:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126729017","contact_id":"20184","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:02:29"}
[2026-04-04 09:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:29] [INFO] generateDealTitle result {"contact_id":"20184","person_name":"مهدی احمد پور","mobile":"9126729017","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9126729017"}
[2026-04-04 09:02:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20184","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:02:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20184","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:02:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20184","title":"معامله دوم 9126729017 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126729017","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی احمد پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:02:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:02:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20184","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9126729017 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:02:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 09:02:36] [INFO] Checking activity reminders 
[2026-04-04 09:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:02:46] [INFO] Checking activity reminders 
[2026-04-04 09:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:02:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-04 09:03:05] [INFO] Checking activity reminders 
[2026-04-04 09:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:03:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:12] [INFO] generateDealTitle result {"contact_id":"6291","person_name":"بهرامی بهرامی","mobile":"9127514082","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127514082"}
[2026-04-04 09:03:27] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6291","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:03:27","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6291","is_new_deal":true}
[2026-04-04 09:03:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:03:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:03:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:03:27] [INFO] getContactPrimaryPhone called {"contact_id":"6291"}
[2026-04-04 09:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:27] [INFO] getContactPrimaryPhone result {"contact_id":"6291","person_found":true,"primary_phone":"9127514082"}
[2026-04-04 09:03:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127514082"}
[2026-04-04 09:03:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127514082","contact_id":"6291","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:03:27"}
[2026-04-04 09:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:27] [INFO] generateDealTitle result {"contact_id":"6291","person_name":"بهرامی بهرامی","mobile":"9127514082","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127514082"}
[2026-04-04 09:03:27] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6291","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:03:27] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6291","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:03:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6291","title":"معامله دوم 9127514082 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127514082","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرامی بهرامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:03:27","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:27] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:03:27] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6291","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127514082 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:03:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 09:03:40] [INFO] Checking activity reminders 
[2026-04-04 09:03:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:03:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:03:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:03:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:03:46] [INFO] generateDealTitle result {"contact_id":"3291","person_name":"همتی","mobile":"9127782457","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127782457"}
[2026-04-04 09:04:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3291","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:04:06","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:04:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3291","is_new_deal":true}
[2026-04-04 09:04:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:06] [INFO] getContactPrimaryPhone called {"contact_id":"3291"}
[2026-04-04 09:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:04:06] [INFO] getContactPrimaryPhone result {"contact_id":"3291","person_found":true,"primary_phone":"9127782457"}
[2026-04-04 09:04:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127782457"}
[2026-04-04 09:04:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127782457","contact_id":"3291","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:04:06"}
[2026-04-04 09:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:04:06] [INFO] generateDealTitle result {"contact_id":"3291","person_name":"همتی","mobile":"9127782457","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9127782457"}
[2026-04-04 09:04:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3291","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:04:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3291","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:04:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3291","title":"معامله دوم 9127782457 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127782457","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"همتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:04:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:04:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:04:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3291","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9127782457 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:04:06","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:04:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 09:04:20] [INFO] Checking activity reminders 
[2026-04-04 09:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:04:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:27] [INFO] generateDealTitle result {"contact_id":"7607","person_name":"میلاد صادق زاده","mobile":"9128612629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128612629"}
[2026-04-04 09:04:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7607","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:04:42","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:04:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7607","is_new_deal":true}
[2026-04-04 09:04:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:04:42] [INFO] getContactPrimaryPhone called {"contact_id":"7607"}
[2026-04-04 09:04:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:42] [INFO] getContactPrimaryPhone result {"contact_id":"7607","person_found":true,"primary_phone":"9128612629"}
[2026-04-04 09:04:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128612629"}
[2026-04-04 09:04:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128612629","contact_id":"7607","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:04:42"}
[2026-04-04 09:04:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:42] [INFO] generateDealTitle result {"contact_id":"7607","person_name":"میلاد صادق زاده","mobile":"9128612629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128612629"}
[2026-04-04 09:04:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7607","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:04:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7607","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:04:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7607","title":"معامله دوم 9128612629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128612629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد صادق زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:04:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:04:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:04:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7607","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9128612629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:04:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 09:04:53] [INFO] Checking activity reminders 
[2026-04-04 09:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:05:06] [INFO] Checking activity reminders 
[2026-04-04 09:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:05:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:14] [INFO] generateDealTitle result {"contact_id":"20866","person_name":"سعید خسرو آزاد","mobile":"9128762050","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128762050"}
[2026-04-04 09:05:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20866","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:05:29","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20866","is_new_deal":true}
[2026-04-04 09:05:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:05:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:05:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:05:29] [INFO] getContactPrimaryPhone called {"contact_id":"20866"}
[2026-04-04 09:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:29] [INFO] getContactPrimaryPhone result {"contact_id":"20866","person_found":true,"primary_phone":"9128762050"}
[2026-04-04 09:05:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128762050"}
[2026-04-04 09:05:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128762050","contact_id":"20866","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:05:29"}
[2026-04-04 09:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:29] [INFO] generateDealTitle result {"contact_id":"20866","person_name":"سعید خسرو آزاد","mobile":"9128762050","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128762050"}
[2026-04-04 09:05:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20866","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:05:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20866","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:05:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20866","title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128762050","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعید خسرو آزاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:05:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:05:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20866","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:05:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 09:05:41] [INFO] Checking activity reminders 
[2026-04-04 09:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:05:48] [INFO] generateDealTitle result {"contact_id":"67","person_name":"علوی","mobile":"9128987827","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128987827"}
[2026-04-04 09:06:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"67","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:06:05","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:06:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:06:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"67","is_new_deal":true}
[2026-04-04 09:06:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:06:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:06:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:06:05] [INFO] getContactPrimaryPhone called {"contact_id":"67"}
[2026-04-04 09:06:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:06:05] [INFO] getContactPrimaryPhone result {"contact_id":"67","person_found":true,"primary_phone":"9128987827"}
[2026-04-04 09:06:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128987827"}
[2026-04-04 09:06:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128987827","contact_id":"67","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:06:05"}
[2026-04-04 09:06:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:06:05] [INFO] generateDealTitle result {"contact_id":"67","person_name":"علوی","mobile":"9128987827","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128987827"}
[2026-04-04 09:06:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"67","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:06:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"67","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:06:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"67","title":"معامله سوم 9128987827 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9128987827","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:06:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:06:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:06:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:06:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"67","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9128987827 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:06:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:06:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 09:06:11] [INFO] Checking activity reminders 
[2026-04-04 09:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:06:59] [INFO] Checking activity reminders 
[2026-04-04 09:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:07:50] [INFO] Checking activity reminders 
[2026-04-04 09:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:07:58] [INFO] Checking activity reminders 
[2026-04-04 09:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:08:10] [INFO] Checking activity reminders 
[2026-04-04 09:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:08:47] [INFO] Checking activity reminders 
[2026-04-04 09:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:09:09] [INFO] Checking activity reminders 
[2026-04-04 09:09:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:09:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:09:15] [INFO] Checking activity reminders 
[2026-04-04 09:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:11:16] [INFO] Checking activity reminders 
[2026-04-04 09:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:11:59] [INFO] Checking activity reminders 
[2026-04-04 09:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:07] [INFO] generateDealTitle result {"contact_id":"15642","person_name":"امیرحسین قاسمی","mobile":"9103251488","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103251488"}
[2026-04-04 09:12:19] [INFO] Lead update received {"contact_id":"15642","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:12:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:19] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15642"}
[2026-04-04 09:12:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:23] [INFO] generateDealTitle result {"contact_id":"15642","person_name":"امیرحسین قاسمی","mobile":"9103251488","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103251488"}
[2026-04-04 09:12:29] [INFO] Checking activity reminders 
[2026-04-04 09:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:12:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15642","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:12:42","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15642","is_new_deal":true}
[2026-04-04 09:12:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:12:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:12:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:12:42] [INFO] getContactPrimaryPhone called {"contact_id":"15642"}
[2026-04-04 09:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:42] [INFO] getContactPrimaryPhone result {"contact_id":"15642","person_found":true,"primary_phone":"9103251488"}
[2026-04-04 09:12:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103251488"}
[2026-04-04 09:12:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103251488","contact_id":"15642","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:12:42"}
[2026-04-04 09:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:42] [INFO] generateDealTitle result {"contact_id":"15642","person_name":"امیرحسین قاسمی","mobile":"9103251488","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9103251488"}
[2026-04-04 09:12:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15642","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:12:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15642","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:12:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15642","title":"معامله دوم 9103251488 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9103251488","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیرحسین قاسمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:12:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:12:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:12:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15642","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9103251488 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:12:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 09:13:15] [INFO] Checking activity reminders 
[2026-04-04 09:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:13:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:29] [INFO] Lead update received {"contact_id":"6189","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:29] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6189"}
[2026-04-04 09:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:32] [INFO] generateDealTitle result {"contact_id":"6189","person_name":"امیر بقایی نیا","mobile":"9933827728","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9933827728"}
[2026-04-04 09:13:45] [INFO] Checking activity reminders 
[2026-04-04 09:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:13:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6189","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:13:50","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6189","is_new_deal":true}
[2026-04-04 09:13:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:13:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:13:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:13:50] [INFO] getContactPrimaryPhone called {"contact_id":"6189"}
[2026-04-04 09:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:50] [INFO] getContactPrimaryPhone result {"contact_id":"6189","person_found":true,"primary_phone":"9933827728"}
[2026-04-04 09:13:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9933827728"}
[2026-04-04 09:13:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9933827728","contact_id":"6189","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:13:50"}
[2026-04-04 09:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:50] [INFO] generateDealTitle result {"contact_id":"6189","person_name":"امیر بقایی نیا","mobile":"9933827728","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9933827728"}
[2026-04-04 09:13:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6189","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:13:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6189","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:13:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6189","title":"معامله دوم 9933827728 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9933827728","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیر بقایی نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:13:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:13:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:13:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6189","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9933827728 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:13:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 09:14:04] [INFO] Checking activity reminders 
[2026-04-04 09:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:14:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:16] [INFO] Lead update received {"contact_id":"7251","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7251"}
[2026-04-04 09:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:20] [INFO] generateDealTitle result {"contact_id":"7251","person_name":"عبدی عبدی","mobile":"9930461102","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9930461102"}
[2026-04-04 09:14:34] [INFO] Checking activity reminders 
[2026-04-04 09:14:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:14:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:14:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7251","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:14:37","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7251","is_new_deal":true}
[2026-04-04 09:14:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:14:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:14:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:14:37] [INFO] getContactPrimaryPhone called {"contact_id":"7251"}
[2026-04-04 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:37] [INFO] getContactPrimaryPhone result {"contact_id":"7251","person_found":true,"primary_phone":"9930461102"}
[2026-04-04 09:14:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9930461102"}
[2026-04-04 09:14:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9930461102","contact_id":"7251","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:14:37"}
[2026-04-04 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:37] [INFO] generateDealTitle result {"contact_id":"7251","person_name":"عبدی عبدی","mobile":"9930461102","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9930461102"}
[2026-04-04 09:14:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7251","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:14:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7251","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:14:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7251","title":"معامله سوم 9930461102 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9930461102","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"عبدی عبدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:14:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:14:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7251","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9930461102 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:14:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:14:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 09:14:49] [INFO] Checking activity reminders 
[2026-04-04 09:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:14:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:03] [INFO] Lead update received {"contact_id":"832","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:15:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:03] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"832"}
[2026-04-04 09:15:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:07] [INFO] generateDealTitle result {"contact_id":"832","person_name":"ابراهیم نژاد","mobile":"9912313169","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9912313169"}
[2026-04-04 09:15:19] [INFO] Checking activity reminders 
[2026-04-04 09:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:15:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"832","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:15:23","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"832","is_new_deal":true}
[2026-04-04 09:15:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:15:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:15:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:15:23] [INFO] getContactPrimaryPhone called {"contact_id":"832"}
[2026-04-04 09:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:23] [INFO] getContactPrimaryPhone result {"contact_id":"832","person_found":true,"primary_phone":"9912313169"}
[2026-04-04 09:15:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9912313169"}
[2026-04-04 09:15:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9912313169","contact_id":"832","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:15:23"}
[2026-04-04 09:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:23] [INFO] generateDealTitle result {"contact_id":"832","person_name":"ابراهیم نژاد","mobile":"9912313169","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9912313169"}
[2026-04-04 09:15:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"832","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:15:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"832","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:15:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"832","title":"معامله دوم 9912313169 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9912313169","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ابراهیم نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:15:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:15:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"832","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9912313169 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:15:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:15:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 09:15:36] [INFO] Checking activity reminders 
[2026-04-04 09:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:51] [INFO] Lead update received {"contact_id":"5958","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:51] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5958"}
[2026-04-04 09:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:15:56] [INFO] generateDealTitle result {"contact_id":"5958","person_name":"پادیاب پادیاب","mobile":"9909265800","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9909265800"}
[2026-04-04 09:16:06] [INFO] Checking activity reminders 
[2026-04-04 09:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:16:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5958","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:16:13","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:16:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:16:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5958","is_new_deal":true}
[2026-04-04 09:16:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:16:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:16:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:16:13] [INFO] getContactPrimaryPhone called {"contact_id":"5958"}
[2026-04-04 09:16:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:16:13] [INFO] getContactPrimaryPhone result {"contact_id":"5958","person_found":true,"primary_phone":"9909265800"}
[2026-04-04 09:16:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9909265800"}
[2026-04-04 09:16:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9909265800","contact_id":"5958","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:16:13"}
[2026-04-04 09:16:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:16:13] [INFO] generateDealTitle result {"contact_id":"5958","person_name":"پادیاب پادیاب","mobile":"9909265800","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9909265800"}
[2026-04-04 09:16:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5958","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:16:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5958","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:16:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5958","title":"معامله دوم 9909265800 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9909265800","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"پادیاب پادیاب","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:16:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:16:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:16:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:16:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5958","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9909265800 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:16:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:16:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 09:16:28] [INFO] Checking activity reminders 
[2026-04-04 09:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:16:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:41] [INFO] Lead update received {"contact_id":"21208","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:41] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21208"}
[2026-04-04 09:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:16:44] [INFO] generateDealTitle result {"contact_id":"21208","person_name":"علی نظری","mobile":"9900803879","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9900803879"}
[2026-04-04 09:16:58] [INFO] Checking activity reminders 
[2026-04-04 09:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:17:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21208","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:17:05","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:17:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21208","is_new_deal":true}
[2026-04-04 09:17:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:17:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:17:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:17:05] [INFO] getContactPrimaryPhone called {"contact_id":"21208"}
[2026-04-04 09:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:17:05] [INFO] getContactPrimaryPhone result {"contact_id":"21208","person_found":true,"primary_phone":"9900803879"}
[2026-04-04 09:17:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9900803879"}
[2026-04-04 09:17:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9900803879","contact_id":"21208","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:17:05"}
[2026-04-04 09:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:17:05] [INFO] generateDealTitle result {"contact_id":"21208","person_name":"علی نظری","mobile":"9900803879","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9900803879"}
[2026-04-04 09:17:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21208","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:17:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21208","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:17:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21208","title":"معامله دوم 9900803879 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9900803879","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی نظری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:17:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:17:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:17:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21208","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9900803879 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:17:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:17:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 09:17:17] [INFO] Checking activity reminders 
[2026-04-04 09:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:17:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-04 09:17:40] [INFO] Checking activity reminders 
[2026-04-04 09:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:17:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-04 09:18:22] [INFO] Checking activity reminders 
[2026-04-04 09:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:18:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:35] [INFO] Lead update received {"contact_id":"2957","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:18:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:35] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2957"}
[2026-04-04 09:18:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:39] [INFO] generateDealTitle result {"contact_id":"2957","person_name":"مصطفی علیپور","mobile":"9399630187","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9399630187"}
[2026-04-04 09:18:52] [INFO] Checking activity reminders 
[2026-04-04 09:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:18:55] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2957","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:18:55","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2957","is_new_deal":true}
[2026-04-04 09:18:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:18:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:18:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:18:55] [INFO] getContactPrimaryPhone called {"contact_id":"2957"}
[2026-04-04 09:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:55] [INFO] getContactPrimaryPhone result {"contact_id":"2957","person_found":true,"primary_phone":"9399630187"}
[2026-04-04 09:18:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9399630187"}
[2026-04-04 09:18:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9399630187","contact_id":"2957","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:18:55"}
[2026-04-04 09:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:55] [INFO] generateDealTitle result {"contact_id":"2957","person_name":"مصطفی علیپور","mobile":"9399630187","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9399630187"}
[2026-04-04 09:18:55] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2957","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:18:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2957","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:18:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2957","title":"معامله دوم 9399630187 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9399630187","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مصطفی علیپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:18:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:18:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:18:55] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:18:55] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2957","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9399630187 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:18:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:18:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 09:19:22] [INFO] Checking activity reminders 
[2026-04-04 09:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:19:53] [INFO] Checking activity reminders 
[2026-04-04 09:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:20:17] [INFO] Checking activity reminders 
[2026-04-04 09:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:20:28] [INFO] Checking activity reminders 
[2026-04-04 09:20:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:20:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:20:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-04-04 09:20:44] [INFO] Checking activity reminders 
[2026-04-04 09:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21093","person_id":"6189"}
[2026-04-04 09:21:12] [INFO] Checking activity reminders 
[2026-04-04 09:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:21:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:32] [INFO] Lead update received {"contact_id":"9087","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:21:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9087"}
[2026-04-04 09:21:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:35] [INFO] generateDealTitle result {"contact_id":"9087","person_name":"افشین رنجبر","mobile":"9381380190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9381380190"}
[2026-04-04 09:21:42] [INFO] Checking activity reminders 
[2026-04-04 09:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:21:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9087","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:21:53","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9087","is_new_deal":true}
[2026-04-04 09:21:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:21:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:21:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:21:53] [INFO] getContactPrimaryPhone called {"contact_id":"9087"}
[2026-04-04 09:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:53] [INFO] getContactPrimaryPhone result {"contact_id":"9087","person_found":true,"primary_phone":"9381380190"}
[2026-04-04 09:21:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9381380190"}
[2026-04-04 09:21:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9381380190","contact_id":"9087","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:21:53"}
[2026-04-04 09:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:53] [INFO] generateDealTitle result {"contact_id":"9087","person_name":"افشین رنجبر","mobile":"9381380190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9381380190"}
[2026-04-04 09:21:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9087","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:21:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"9087","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:21:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9087","title":"معامله دوم 9381380190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9381380190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"افشین رنجبر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:21:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:21:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:21:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9087","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9381380190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:21:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 09:22:07] [INFO] Checking activity reminders 
[2026-04-04 09:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1267","person_id":"13828"}
[2026-04-04 09:22:23] [INFO] Checking activity reminders 
[2026-04-04 09:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-04-04 09:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eb3b3810334.61490669","person_id":"21803"}
[2026-04-04 09:22:43] [INFO] Checking activity reminders 
[2026-04-04 09:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:22:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:22:59] [INFO] Lead update received {"contact_id":"21215","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:22:59] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21215"}
[2026-04-04 09:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:03] [INFO] generateDealTitle result {"contact_id":"21215","person_name":"محمد صالح جعفری کاشی","mobile":"9375883313","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9375883313"}
[2026-04-04 09:23:13] [INFO] Checking activity reminders 
[2026-04-04 09:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:23:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21215","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:23:20","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:23:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21215","is_new_deal":true}
[2026-04-04 09:23:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:23:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:23:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:23:20] [INFO] getContactPrimaryPhone called {"contact_id":"21215"}
[2026-04-04 09:23:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:20] [INFO] getContactPrimaryPhone result {"contact_id":"21215","person_found":true,"primary_phone":"9375883313"}
[2026-04-04 09:23:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9375883313"}
[2026-04-04 09:23:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9375883313","contact_id":"21215","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:23:20"}
[2026-04-04 09:23:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:20] [INFO] generateDealTitle result {"contact_id":"21215","person_name":"محمد صالح جعفری کاشی","mobile":"9375883313","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9375883313"}
[2026-04-04 09:23:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21215","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:23:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21215","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:23:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21215","title":"معامله دوم 9375883313 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9375883313","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد صالح جعفری کاشی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:23:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:23:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:23:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21215","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9375883313 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:23:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:23:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 09:23:31] [INFO] Checking activity reminders 
[2026-04-04 09:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:23:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-04 09:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-04 09:24:01] [INFO] Checking activity reminders 
[2026-04-04 09:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:24:10] [INFO] Checking activity reminders 
[2026-04-04 09:24:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:24:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:24:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:23] [INFO] Lead update received {"contact_id":"6961","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:24:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6961"}
[2026-04-04 09:24:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:27] [INFO] generateDealTitle result {"contact_id":"6961","person_name":"رعنا پاشایی","mobile":"9371507434","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9371507434"}
[2026-04-04 09:24:41] [INFO] Checking activity reminders 
[2026-04-04 09:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:24:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6961","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:24:44","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6961","is_new_deal":true}
[2026-04-04 09:24:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:24:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:24:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:24:44] [INFO] getContactPrimaryPhone called {"contact_id":"6961"}
[2026-04-04 09:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:44] [INFO] getContactPrimaryPhone result {"contact_id":"6961","person_found":true,"primary_phone":"9371507434"}
[2026-04-04 09:24:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9371507434"}
[2026-04-04 09:24:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9371507434","contact_id":"6961","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:24:44"}
[2026-04-04 09:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:44] [INFO] generateDealTitle result {"contact_id":"6961","person_name":"رعنا پاشایی","mobile":"9371507434","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9371507434"}
[2026-04-04 09:24:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6961","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:24:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6961","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:24:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6961","title":"معامله دوم 9371507434 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9371507434","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رعنا پاشایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:24:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:24:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:24:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6961","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9371507434 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:24:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 09:25:01] [INFO] Checking activity reminders 
[2026-04-04 09:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:25:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:13] [INFO] Lead update received {"contact_id":"1050","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:25:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1050"}
[2026-04-04 09:25:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:17] [INFO] generateDealTitle result {"contact_id":"1050","person_name":"حجت باقری","mobile":"9369098977","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9369098977"}
[2026-04-04 09:25:31] [INFO] Checking activity reminders 
[2026-04-04 09:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:25:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1050","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:25:33","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1050","is_new_deal":true}
[2026-04-04 09:25:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:25:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:25:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:25:33] [INFO] getContactPrimaryPhone called {"contact_id":"1050"}
[2026-04-04 09:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:33] [INFO] getContactPrimaryPhone result {"contact_id":"1050","person_found":true,"primary_phone":"9369098977"}
[2026-04-04 09:25:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9369098977"}
[2026-04-04 09:25:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9369098977","contact_id":"1050","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:25:33"}
[2026-04-04 09:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:33] [INFO] generateDealTitle result {"contact_id":"1050","person_name":"حجت باقری","mobile":"9369098977","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9369098977"}
[2026-04-04 09:25:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1050","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:25:33] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1050","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:25:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1050","title":"معامله دوم 9369098977 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9369098977","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حجت باقری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:25:33","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:25:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:25:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1050","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9369098977 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:25:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 09:25:52] [INFO] Checking activity reminders 
[2026-04-04 09:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:25:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:04] [INFO] Lead update received {"contact_id":"790","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:04] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"790"}
[2026-04-04 09:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:09] [INFO] generateDealTitle result {"contact_id":"790","person_name":"قیطران قیطران","mobile":"9366670469","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9366670469"}
[2026-04-04 09:26:22] [INFO] Checking activity reminders 
[2026-04-04 09:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:26:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"790","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:26:26","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"790","is_new_deal":true}
[2026-04-04 09:26:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:26:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:26:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:26:26] [INFO] getContactPrimaryPhone called {"contact_id":"790"}
[2026-04-04 09:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:26] [INFO] getContactPrimaryPhone result {"contact_id":"790","person_found":true,"primary_phone":"9366670469"}
[2026-04-04 09:26:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9366670469"}
[2026-04-04 09:26:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9366670469","contact_id":"790","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:26:26"}
[2026-04-04 09:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:26] [INFO] generateDealTitle result {"contact_id":"790","person_name":"قیطران قیطران","mobile":"9366670469","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9366670469"}
[2026-04-04 09:26:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"790","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:26:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"790","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:26:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"790","title":"معامله دوم 9366670469 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9366670469","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"قیطران قیطران","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:26:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:26:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"790","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9366670469 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:26:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:26:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 09:26:55] [INFO] Checking activity reminders 
[2026-04-04 09:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:26:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:08] [INFO] Lead update received {"contact_id":"20947","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20947"}
[2026-04-04 09:27:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:11] [INFO] generateDealTitle result {"contact_id":"20947","person_name":"علیرضاموسوی علیرضاموسوی","mobile":"9364098245","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9364098245"}
[2026-04-04 09:27:25] [INFO] Checking activity reminders 
[2026-04-04 09:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:27:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20947","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:27:28","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20947","is_new_deal":true}
[2026-04-04 09:27:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:27:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:27:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:27:28] [INFO] getContactPrimaryPhone called {"contact_id":"20947"}
[2026-04-04 09:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:28] [INFO] getContactPrimaryPhone result {"contact_id":"20947","person_found":true,"primary_phone":"9364098245"}
[2026-04-04 09:27:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9364098245"}
[2026-04-04 09:27:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9364098245","contact_id":"20947","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:27:28"}
[2026-04-04 09:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:28] [INFO] generateDealTitle result {"contact_id":"20947","person_name":"علیرضاموسوی علیرضاموسوی","mobile":"9364098245","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9364098245"}
[2026-04-04 09:27:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20947","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:27:28] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20947","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:27:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20947","title":"معامله دوم 9364098245 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9364098245","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علیرضاموسوی علیرضاموسوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:27:28","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:27:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20947","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9364098245 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:27:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 09:27:41] [INFO] Checking activity reminders 
[2026-04-04 09:27:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:27:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:27:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:54] [INFO] Lead update received {"contact_id":"21076","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:27:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:54] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21076"}
[2026-04-04 09:27:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:27:57] [INFO] generateDealTitle result {"contact_id":"21076","person_name":"حسن محمدی","mobile":"9363802379","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363802379"}
[2026-04-04 09:28:11] [INFO] Checking activity reminders 
[2026-04-04 09:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:28:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21076","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:28:13","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:28:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21076","is_new_deal":true}
[2026-04-04 09:28:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:28:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:28:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:28:13] [INFO] getContactPrimaryPhone called {"contact_id":"21076"}
[2026-04-04 09:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:28:13] [INFO] getContactPrimaryPhone result {"contact_id":"21076","person_found":true,"primary_phone":"9363802379"}
[2026-04-04 09:28:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363802379"}
[2026-04-04 09:28:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363802379","contact_id":"21076","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:28:13"}
[2026-04-04 09:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:28:13] [INFO] generateDealTitle result {"contact_id":"21076","person_name":"حسن محمدی","mobile":"9363802379","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363802379"}
[2026-04-04 09:28:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21076","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:28:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21076","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:28:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21076","title":"معامله دوم 9363802379 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9363802379","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسن محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:28:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:28:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:28:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21076","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9363802379 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:28:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 09:28:27] [INFO] Checking activity reminders 
[2026-04-04 09:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:28:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:39] [INFO] Lead update received {"contact_id":"1726","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:28:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:39] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1726"}
[2026-04-04 09:28:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:44] [INFO] Checking activity reminders 
[2026-04-04 09:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:28:46] [INFO] generateDealTitle result {"contact_id":"1726","person_name":"محمدرضاحسن زاده","mobile":"9363700936","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363700936"}
[2026-04-04 09:29:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1726","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:29:00","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:29:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1726","is_new_deal":true}
[2026-04-04 09:29:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:29:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:29:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:29:00] [INFO] getContactPrimaryPhone called {"contact_id":"1726"}
[2026-04-04 09:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:29:00] [INFO] getContactPrimaryPhone result {"contact_id":"1726","person_found":true,"primary_phone":"9363700936"}
[2026-04-04 09:29:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363700936"}
[2026-04-04 09:29:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363700936","contact_id":"1726","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:29:00"}
[2026-04-04 09:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:29:00] [INFO] generateDealTitle result {"contact_id":"1726","person_name":"محمدرضاحسن زاده","mobile":"9363700936","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363700936"}
[2026-04-04 09:29:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1726","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:29:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1726","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:29:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1726","title":"معامله دوم 9363700936 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9363700936","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدرضاحسن زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:29:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:29:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:29:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1726","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9363700936 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:29:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 09:29:39] [INFO] Checking activity reminders 
[2026-04-04 09:29:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:29:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:29:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:53] [INFO] Lead update received {"contact_id":"843","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:29:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:53] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"843"}
[2026-04-04 09:29:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:29:57] [INFO] generateDealTitle result {"contact_id":"843","person_name":"علی عباس نتاج","mobile":"9363204034","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363204034"}
[2026-04-04 09:30:09] [INFO] Checking activity reminders 
[2026-04-04 09:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:30:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"843","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:30:12","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:30:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"843","is_new_deal":true}
[2026-04-04 09:30:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:30:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:30:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:30:12] [INFO] getContactPrimaryPhone called {"contact_id":"843"}
[2026-04-04 09:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:30:12] [INFO] getContactPrimaryPhone result {"contact_id":"843","person_found":true,"primary_phone":"9363204034"}
[2026-04-04 09:30:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363204034"}
[2026-04-04 09:30:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363204034","contact_id":"843","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:30:12"}
[2026-04-04 09:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:30:12] [INFO] generateDealTitle result {"contact_id":"843","person_name":"علی عباس نتاج","mobile":"9363204034","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9363204034"}
[2026-04-04 09:30:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"843","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:30:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"843","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:30:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"843","title":"معامله دوم 9363204034 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9363204034","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی عباس نتاج","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:30:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:30:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:30:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"843","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9363204034 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:30:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-04 09:30:26] [INFO] Checking activity reminders 
[2026-04-04 09:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:30:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:40] [INFO] Lead update received {"contact_id":"20696","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:40] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20696"}
[2026-04-04 09:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:30:44] [INFO] generateDealTitle result {"contact_id":"20696","person_name":"محمد شکیبا","mobile":"9359282389","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359282389"}
[2026-04-04 09:30:56] [INFO] Checking activity reminders 
[2026-04-04 09:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:31:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20696","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:31:01","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:31:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20696","is_new_deal":true}
[2026-04-04 09:31:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:01] [INFO] getContactPrimaryPhone called {"contact_id":"20696"}
[2026-04-04 09:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:31:01] [INFO] getContactPrimaryPhone result {"contact_id":"20696","person_found":true,"primary_phone":"9359282389"}
[2026-04-04 09:31:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359282389"}
[2026-04-04 09:31:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359282389","contact_id":"20696","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:31:01"}
[2026-04-04 09:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:31:01] [INFO] generateDealTitle result {"contact_id":"20696","person_name":"محمد شکیبا","mobile":"9359282389","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359282389"}
[2026-04-04 09:31:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20696","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:31:01] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20696","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:31:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20696","title":"معامله دوم 9359282389 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9359282389","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد شکیبا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:31:01","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:31:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:31:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20696","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9359282389 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:31:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 09:31:12] [INFO] Checking activity reminders 
[2026-04-04 09:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:32] [INFO] Lead update received {"contact_id":"1762","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1762"}
[2026-04-04 09:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:35] [INFO] generateDealTitle result {"contact_id":"1762","person_name":"محمدی محمدی","mobile":"9359133840","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359133840"}
[2026-04-04 09:31:42] [INFO] Checking activity reminders 
[2026-04-04 09:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:31:51] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1762","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:31:51","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:31:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1762","is_new_deal":true}
[2026-04-04 09:31:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:31:51] [INFO] getContactPrimaryPhone called {"contact_id":"1762"}
[2026-04-04 09:31:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:51] [INFO] getContactPrimaryPhone result {"contact_id":"1762","person_found":true,"primary_phone":"9359133840"}
[2026-04-04 09:31:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359133840"}
[2026-04-04 09:31:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359133840","contact_id":"1762","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:31:51"}
[2026-04-04 09:31:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:51] [INFO] generateDealTitle result {"contact_id":"1762","person_name":"محمدی محمدی","mobile":"9359133840","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359133840"}
[2026-04-04 09:31:51] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1762","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:31:51] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1762","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:31:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1762","title":"معامله دوم 9359133840 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9359133840","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدی محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:31:51","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:31:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:31:51] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:31:51] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1762","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9359133840 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:31:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-04 09:32:05] [INFO] Checking activity reminders 
[2026-04-04 09:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:32:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:16] [INFO] Lead update received {"contact_id":"8974","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"8974"}
[2026-04-04 09:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:20] [INFO] generateDealTitle result {"contact_id":"8974","person_name":"گنجی گنجی","mobile":"9359058629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359058629"}
[2026-04-04 09:32:35] [INFO] Checking activity reminders 
[2026-04-04 09:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:32:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8974","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:32:40","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8974","is_new_deal":true}
[2026-04-04 09:32:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:32:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:32:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:32:40] [INFO] getContactPrimaryPhone called {"contact_id":"8974"}
[2026-04-04 09:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:40] [INFO] getContactPrimaryPhone result {"contact_id":"8974","person_found":true,"primary_phone":"9359058629"}
[2026-04-04 09:32:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359058629"}
[2026-04-04 09:32:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359058629","contact_id":"8974","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:32:40"}
[2026-04-04 09:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:40] [INFO] generateDealTitle result {"contact_id":"8974","person_name":"گنجی گنجی","mobile":"9359058629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9359058629"}
[2026-04-04 09:32:40] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8974","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:32:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8974","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:32:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8974","title":"معامله دوم 9359058629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9359058629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"گنجی گنجی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:32:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:40] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:32:40] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8974","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9359058629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:32:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-04 09:32:56] [INFO] Checking activity reminders 
[2026-04-04 09:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:33:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:26] [INFO] Lead update received {"contact_id":"11149","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:26] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11149"}
[2026-04-04 09:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:27] [INFO] Checking activity reminders 
[2026-04-04 09:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:33] [INFO] generateDealTitle result {"contact_id":"11149","person_name":"محمد امین نوروزی ورنکشی","mobile":"9357549676","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357549676"}
[2026-04-04 09:33:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11149","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:33:48","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11149","is_new_deal":true}
[2026-04-04 09:33:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:33:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:33:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:33:48] [INFO] getContactPrimaryPhone called {"contact_id":"11149"}
[2026-04-04 09:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:48] [INFO] getContactPrimaryPhone result {"contact_id":"11149","person_found":true,"primary_phone":"9357549676"}
[2026-04-04 09:33:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9357549676"}
[2026-04-04 09:33:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9357549676","contact_id":"11149","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:33:48"}
[2026-04-04 09:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:48] [INFO] generateDealTitle result {"contact_id":"11149","person_name":"محمد امین نوروزی ورنکشی","mobile":"9357549676","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357549676"}
[2026-04-04 09:33:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11149","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:33:48] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11149","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:33:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11149","title":"معامله دوم 9357549676 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9357549676","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد امین نوروزی ورنکشی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:33:48","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:33:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:33:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11149","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9357549676 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:33:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:33:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-04 09:34:03] [INFO] Checking activity reminders 
[2026-04-04 09:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:34:30] [INFO] Checking activity reminders 
[2026-04-04 09:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:34:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 09:34:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 09:34:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 09:34:44] [INFO] Checking activity reminders 
[2026-04-04 09:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:34:52] [INFO] Checking activity reminders 
[2026-04-04 09:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:34:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:03] [INFO] Lead update received {"contact_id":"4225","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:04] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4225"}
[2026-04-04 09:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:06] [INFO] generateDealTitle result {"contact_id":"4225","person_name":"محمدسعید منش","mobile":"9338938723","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9338938723"}
[2026-04-04 09:35:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4225","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:35:21","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:35:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4225","is_new_deal":true}
[2026-04-04 09:35:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:35:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:35:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:35:21] [INFO] getContactPrimaryPhone called {"contact_id":"4225"}
[2026-04-04 09:35:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:21] [INFO] getContactPrimaryPhone result {"contact_id":"4225","person_found":true,"primary_phone":"9338938723"}
[2026-04-04 09:35:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9338938723"}
[2026-04-04 09:35:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9338938723","contact_id":"4225","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:35:21"}
[2026-04-04 09:35:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:21] [INFO] generateDealTitle result {"contact_id":"4225","person_name":"محمدسعید منش","mobile":"9338938723","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9338938723"}
[2026-04-04 09:35:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4225","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:35:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4225","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:35:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4225","title":"معامله دوم 9338938723 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9338938723","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدسعید منش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:35:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:35:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:35:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4225","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9338938723 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:35:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:35:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 09:35:36] [INFO] Checking activity reminders 
[2026-04-04 09:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:35:45] [INFO] Checking activity reminders 
[2026-04-04 09:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:35:57] [INFO] Lead update received {"contact_id":"15111","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 09:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:35:57] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15111"}
[2026-04-04 09:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:00] [INFO] generateDealTitle result {"contact_id":"15111","person_name":"احمد ابادیان","mobile":"9309929641","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9309929641"}
[2026-04-04 09:36:15] [INFO] Checking activity reminders 
[2026-04-04 09:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:36:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15111","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 09:36:24","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-04 09:36:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15111","is_new_deal":true}
[2026-04-04 09:36:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 09:36:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:36:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 09:36:24] [INFO] getContactPrimaryPhone called {"contact_id":"15111"}
[2026-04-04 09:36:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:24] [INFO] getContactPrimaryPhone result {"contact_id":"15111","person_found":true,"primary_phone":"9309929641"}
[2026-04-04 09:36:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9309929641"}
[2026-04-04 09:36:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9309929641","contact_id":"15111","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 09:36:24"}
[2026-04-04 09:36:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:24] [INFO] generateDealTitle result {"contact_id":"15111","person_name":"احمد ابادیان","mobile":"9309929641","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9309929641"}
[2026-04-04 09:36:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15111","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-04 09:36:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15111","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 09:36:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15111","title":"معامله دوم 9309929641 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9309929641","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"احمد ابادیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 09:36:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 09:36:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 09:36:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15111","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9309929641 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 09:36:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 09:36:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-04 09:36:45] [INFO] Checking activity reminders 
[2026-04-04 09:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:37:15] [INFO] Checking activity reminders 
[2026-04-04 09:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:37:45] [INFO] Checking activity reminders 
[2026-04-04 09:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:38:15] [INFO] Checking activity reminders 
[2026-04-04 09:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:38:45] [INFO] Checking activity reminders 
[2026-04-04 09:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:39:16] [INFO] Checking activity reminders 
[2026-04-04 09:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:39:46] [INFO] Checking activity reminders 
[2026-04-04 09:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:40:16] [INFO] Checking activity reminders 
[2026-04-04 09:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:40:46] [INFO] Checking activity reminders 
[2026-04-04 09:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:41:16] [INFO] Checking activity reminders 
[2026-04-04 09:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:41:47] [INFO] Checking activity reminders 
[2026-04-04 09:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:42:17] [INFO] Checking activity reminders 
[2026-04-04 09:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:42:47] [INFO] Checking activity reminders 
[2026-04-04 09:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:43:17] [INFO] Checking activity reminders 
[2026-04-04 09:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:43:47] [INFO] Checking activity reminders 
[2026-04-04 09:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:44:18] [INFO] Checking activity reminders 
[2026-04-04 09:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:44:48] [INFO] Checking activity reminders 
[2026-04-04 09:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:45:18] [INFO] Checking activity reminders 
[2026-04-04 09:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:45:48] [INFO] Checking activity reminders 
[2026-04-04 09:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:46:18] [INFO] Checking activity reminders 
[2026-04-04 09:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:46:48] [INFO] Checking activity reminders 
[2026-04-04 09:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:47:18] [INFO] Checking activity reminders 
[2026-04-04 09:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:47:49] [INFO] Checking activity reminders 
[2026-04-04 09:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:48:19] [INFO] Checking activity reminders 
[2026-04-04 09:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:48:49] [INFO] Checking activity reminders 
[2026-04-04 09:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:49:19] [INFO] Checking activity reminders 
[2026-04-04 09:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:49:49] [INFO] Checking activity reminders 
[2026-04-04 09:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:50:07] [INFO] Checking activity reminders 
[2026-04-04 09:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:50:59] [INFO] Checking activity reminders 
[2026-04-04 09:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:51:29] [INFO] Checking activity reminders 
[2026-04-04 09:51:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:51:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:51:59] [INFO] Checking activity reminders 
[2026-04-04 09:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:52:29] [INFO] Checking activity reminders 
[2026-04-04 09:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:52:59] [INFO] Checking activity reminders 
[2026-04-04 09:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:53:29] [INFO] Checking activity reminders 
[2026-04-04 09:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:53:59] [INFO] Checking activity reminders 
[2026-04-04 09:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:54:29] [INFO] Checking activity reminders 
[2026-04-04 09:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:55:00] [INFO] Checking activity reminders 
[2026-04-04 09:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:55:30] [INFO] Checking activity reminders 
[2026-04-04 09:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:56:00] [INFO] Checking activity reminders 
[2026-04-04 09:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:56:30] [INFO] Checking activity reminders 
[2026-04-04 09:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:57:00] [INFO] Checking activity reminders 
[2026-04-04 09:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:57:30] [INFO] Checking activity reminders 
[2026-04-04 09:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:58:00] [INFO] Checking activity reminders 
[2026-04-04 09:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:58:30] [INFO] Checking activity reminders 
[2026-04-04 09:58:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:58:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:59:00] [INFO] Checking activity reminders 
[2026-04-04 09:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 09:59:30] [INFO] Checking activity reminders 
[2026-04-04 09:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 09:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:00:01] [INFO] Checking activity reminders 
[2026-04-04 10:00:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:00:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:00:31] [INFO] Checking activity reminders 
[2026-04-04 10:00:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:00:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:01:01] [INFO] Checking activity reminders 
[2026-04-04 10:01:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:01:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:01:31] [INFO] Checking activity reminders 
[2026-04-04 10:01:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:01:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:02:01] [INFO] Checking activity reminders 
[2026-04-04 10:02:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:02:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:02:31] [INFO] Checking activity reminders 
[2026-04-04 10:02:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:02:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:03:01] [INFO] Checking activity reminders 
[2026-04-04 10:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:03:31] [INFO] Checking activity reminders 
[2026-04-04 10:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:04:01] [INFO] Checking activity reminders 
[2026-04-04 10:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:04:31] [INFO] Checking activity reminders 
[2026-04-04 10:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:05:01] [INFO] Checking activity reminders 
[2026-04-04 10:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:05:31] [INFO] Checking activity reminders 
[2026-04-04 10:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:06:01] [INFO] Checking activity reminders 
[2026-04-04 10:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:06:32] [INFO] Checking activity reminders 
[2026-04-04 10:06:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:06:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:07:02] [INFO] Checking activity reminders 
[2026-04-04 10:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:07:32] [INFO] Checking activity reminders 
[2026-04-04 10:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:08:02] [INFO] Checking activity reminders 
[2026-04-04 10:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:08:32] [INFO] Checking activity reminders 
[2026-04-04 10:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:09:02] [INFO] Checking activity reminders 
[2026-04-04 10:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:09:32] [INFO] Checking activity reminders 
[2026-04-04 10:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:09:37] [WARNING] Auth check failed - not authenticated {"session_id":"50v0o120n8lcl6dp38ic4ui1lg","session_keys":[],"action":"log_client_event"}
[2026-04-04 10:09:37] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-04 10:09:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 10:09:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 10:10:02] [INFO] Checking activity reminders 
[2026-04-04 10:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:10:32] [INFO] Checking activity reminders 
[2026-04-04 10:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:11:02] [INFO] Checking activity reminders 
[2026-04-04 10:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:11:32] [INFO] Checking activity reminders 
[2026-04-04 10:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:12:02] [INFO] Checking activity reminders 
[2026-04-04 10:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:12:16] [INFO] Checking activity reminders 
[2026-04-04 10:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:12:32] [INFO] Checking activity reminders 
[2026-04-04 10:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:12:46] [INFO] Checking activity reminders 
[2026-04-04 10:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:13:02] [INFO] Checking activity reminders 
[2026-04-04 10:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:13:16] [INFO] Checking activity reminders 
[2026-04-04 10:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:13:33] [INFO] Checking activity reminders 
[2026-04-04 10:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:13:46] [INFO] Checking activity reminders 
[2026-04-04 10:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:14:03] [INFO] Checking activity reminders 
[2026-04-04 10:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:14:16] [INFO] Checking activity reminders 
[2026-04-04 10:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:14:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 10:14:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 10:14:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 10:14:35] [INFO] Checking activity reminders 
[2026-04-04 10:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:14:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 10:14:46] [INFO] Checking activity reminders 
[2026-04-04 10:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:14:59] [INFO] Lead update received {"contact_id":"1360","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 10:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 10:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 10:14:59] [DEBUG] findByPhone: Found person {"phones":["9117861146"],"found_id":"10622","found_didar_id":"19850","found_name":"9117861146"}
[2026-04-04 10:14:59] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9117861146","found_didar_id":"19850","found_local_id":"10622","found_name":"9117861146"}
[2026-04-04 10:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 10:14:59] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9117861146","found_id":"10622","found_didar_id":"19850","exclude_id":8218,"exclude_didar_id":"1360"}
[2026-04-04 10:14:59] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  9117861146 (مسئول: لید استخر) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-04 10:15:05] [INFO] Checking activity reminders 
[2026-04-04 10:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:15:35] [INFO] Checking activity reminders 
[2026-04-04 10:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:16:05] [INFO] Checking activity reminders 
[2026-04-04 10:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:16:35] [INFO] Checking activity reminders 
[2026-04-04 10:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:16:46] [INFO] Checking activity reminders 
[2026-04-04 10:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:16:55] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 10:16:55] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-04 10:16:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 10:17:16] [INFO] Checking activity reminders 
[2026-04-04 10:17:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:17:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:17:44] [INFO] Checking activity reminders 
[2026-04-04 10:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:17:46] [INFO] Checking activity reminders 
[2026-04-04 10:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:18:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 10:18:03] [INFO] Checking activity reminders 
[2026-04-04 10:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:18:33] [INFO] Checking activity reminders 
[2026-04-04 10:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:19:03] [INFO] Checking activity reminders 
[2026-04-04 10:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:19:33] [INFO] Checking activity reminders 
[2026-04-04 10:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:20:03] [INFO] Checking activity reminders 
[2026-04-04 10:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:20:33] [INFO] Checking activity reminders 
[2026-04-04 10:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:21:03] [INFO] Checking activity reminders 
[2026-04-04 10:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:21:16] [INFO] Checking activity reminders 
[2026-04-04 10:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:21:46] [INFO] Checking activity reminders 
[2026-04-04 10:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:22:16] [INFO] Checking activity reminders 
[2026-04-04 10:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:22:46] [INFO] Checking activity reminders 
[2026-04-04 10:22:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:22:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:23:16] [INFO] Checking activity reminders 
[2026-04-04 10:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:23:46] [INFO] Checking activity reminders 
[2026-04-04 10:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:24:16] [INFO] Checking activity reminders 
[2026-04-04 10:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:24:46] [INFO] Checking activity reminders 
[2026-04-04 10:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:25:16] [INFO] Checking activity reminders 
[2026-04-04 10:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:25:46] [INFO] Checking activity reminders 
[2026-04-04 10:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:26:17] [INFO] Checking activity reminders 
[2026-04-04 10:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:26:47] [INFO] Checking activity reminders 
[2026-04-04 10:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:27:17] [INFO] Checking activity reminders 
[2026-04-04 10:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:27:47] [INFO] Checking activity reminders 
[2026-04-04 10:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:28:17] [INFO] Checking activity reminders 
[2026-04-04 10:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:28:47] [INFO] Checking activity reminders 
[2026-04-04 10:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:29:17] [INFO] Checking activity reminders 
[2026-04-04 10:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:29:47] [INFO] Checking activity reminders 
[2026-04-04 10:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:29:47] [INFO] Checking activity reminders 
[2026-04-04 10:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:30:09] [INFO] Checking activity reminders 
[2026-04-04 10:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:30:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 10:30:17] [INFO] Checking activity reminders 
[2026-04-04 10:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:30:47] [INFO] Checking activity reminders 
[2026-04-04 10:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:31:17] [INFO] Checking activity reminders 
[2026-04-04 10:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:31:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:31:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:31:42] [INFO] generateDealTitle result {"contact_id":"1407","person_name":"محمدامین بیگی","mobile":"9134807866","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134807866"}
[2026-04-04 10:31:48] [INFO] Checking activity reminders 
[2026-04-04 10:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:32:18] [INFO] Checking activity reminders 
[2026-04-04 10:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:32:48] [INFO] Checking activity reminders 
[2026-04-04 10:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:33:18] [INFO] Checking activity reminders 
[2026-04-04 10:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:33:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1407","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 10:33:33","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1407","is_new_deal":true}
[2026-04-04 10:33:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 10:33:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 10:33:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 10:33:33] [INFO] getContactPrimaryPhone called {"contact_id":"1407"}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:33] [INFO] getContactPrimaryPhone result {"contact_id":"1407","person_found":true,"primary_phone":"9134807866"}
[2026-04-04 10:33:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134807866"}
[2026-04-04 10:33:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134807866","contact_id":"1407","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 10:33:33"}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:33] [INFO] generateDealTitle result {"contact_id":"1407","person_name":"محمدامین بیگی","mobile":"9134807866","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134807866"}
[2026-04-04 10:33:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1407","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-04 10:33:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1407","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 10:33:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1407","title":"معامله سوم 9134807866 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9134807866","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدامین بیگی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 10:33:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:33] [INFO] Deal success processed {"contact_id":"1407","person_name":"محمدامین بیگی","products_count":1}
[2026-04-04 10:33:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 10:33:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1407","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134807866 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-04 10:33:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 10:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:33:48] [INFO] Checking activity reminders 
[2026-04-04 10:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:34:18] [INFO] Checking activity reminders 
[2026-04-04 10:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:34:34] [INFO] Activity save request {"post_data":{"contact_id":"1407","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"700-800 در بوزس \r\nدرگیر واحد اختمانی و ملک \r\nبرای یس ای پی فعلا شرایط نداره \r\nدر صورت تایید اکی میکنم \r\nطلا و خودرو سرمایه گذاری ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 10:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:34:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 10:34:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 10:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:34:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1407","note_was_empty":true}
[2026-04-04 10:34:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"1407","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 10:34:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0b802365fc0.21870533","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 10:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:34:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0b802365fc0.21870533"}
[2026-04-04 10:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:34:34] [INFO] Updating virtual stage {"contact_id":"1407","stage_name":"deal_registered","force":false}
[2026-04-04 10:34:34] [INFO] Virtual stage successfully saved {"contact_id":"1407","stage_name":"deal_registered"}
[2026-04-04 10:34:34] [INFO] Virtual stage updated after activity save {"contact_id":"1407"}
[2026-04-04 10:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-04 10:34:48] [INFO] Checking activity reminders 
[2026-04-04 10:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:35:19] [INFO] Checking activity reminders 
[2026-04-04 10:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:35:49] [INFO] Checking activity reminders 
[2026-04-04 10:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:36:16] [INFO] Checking activity reminders 
[2026-04-04 10:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:36:29] [INFO] Checking activity reminders 
[2026-04-04 10:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:36:59] [INFO] Checking activity reminders 
[2026-04-04 10:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:37:29] [INFO] Checking activity reminders 
[2026-04-04 10:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:37:59] [INFO] Checking activity reminders 
[2026-04-04 10:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:38:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7607","deal_id":"local_69d0a2f2a9cc74.01968296","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 10:38:09","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 10:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7607","is_new_deal":false}
[2026-04-04 10:38:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 10:38:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 10:38:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 10:38:09] [INFO] getContactPrimaryPhone called {"contact_id":"7607"}
[2026-04-04 10:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:09] [INFO] getContactPrimaryPhone result {"contact_id":"7607","person_found":true,"primary_phone":"9128612629"}
[2026-04-04 10:38:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128612629"}
[2026-04-04 10:38:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128612629","contact_id":"7607","deal_id":"local_69d0a2f2a9cc74.01968296","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 10:38:09"}
[2026-04-04 10:38:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a2f2a9cc74.01968296","contact_id":"7607","existing_deal_found":true,"existing_contact_id":"7607","existing_title":"معامله دوم 9128612629 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 10:38:09"}
[2026-04-04 10:38:09] [INFO] DealController.save validated payments {"deal_id":"local_69d0a2f2a9cc74.01968296","contact_id":"7607","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 10:38:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7607","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 10:38:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a2f2a9cc74.01968296","contact_didar_id":"7607","title":"معامله دوم 9128612629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128612629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد صادق زاده","existing_deal":"YES","existing_deal_id":"local_69d0a2f2a9cc74.01968296","existing_deal_status":"Pending","server_time":"2026-04-04 10:38:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 10:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a2f2a9cc74.01968296","contact_id":"7607","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9128612629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 10:38:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 10:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Activity save request {"post_data":{"contact_id":"7607","deal_id":"local_69d0a2f2a9cc74.01968296","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 10:38:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7607","note_was_empty":true}
[2026-04-04 10:38:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"7607","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Updating virtual stage {"contact_id":"7607","stage_name":"deal_registered","force":false}
[2026-04-04 10:38:23] [INFO] Virtual stage successfully saved {"contact_id":"7607","stage_name":"deal_registered"}
[2026-04-04 10:38:23] [INFO] Virtual stage updated after activity save {"contact_id":"7607"}
[2026-04-04 10:38:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a2f2a9cc74.01968296","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 10:38:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0b8e79ce418.96242451","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0b8e79ce418.96242451"}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:23] [INFO] Updating virtual stage {"contact_id":"7607","stage_name":"deal_registered","force":false}
[2026-04-04 10:38:23] [INFO] Virtual stage successfully saved {"contact_id":"7607","stage_name":"deal_registered"}
[2026-04-04 10:38:23] [INFO] Virtual stage updated after activity save {"contact_id":"7607"}
[2026-04-04 10:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7607","person_id":"19868"}
[2026-04-04 10:38:29] [INFO] Checking activity reminders 
[2026-04-04 10:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:38:59] [INFO] Checking activity reminders 
[2026-04-04 10:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:39:29] [INFO] Checking activity reminders 
[2026-04-04 10:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:39:59] [INFO] Checking activity reminders 
[2026-04-04 10:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:40:29] [INFO] Checking activity reminders 
[2026-04-04 10:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:40:59] [INFO] Checking activity reminders 
[2026-04-04 10:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:41:30] [INFO] Checking activity reminders 
[2026-04-04 10:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:42:00] [INFO] Checking activity reminders 
[2026-04-04 10:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 10:42:30] [INFO] Checking activity reminders 
[2026-04-04 10:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:42:44] [INFO] Checking activity reminders 
[2026-04-04 10:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:43:14] [INFO] Checking activity reminders 
[2026-04-04 10:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:43:44] [INFO] Checking activity reminders 
[2026-04-04 10:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:44:14] [INFO] Checking activity reminders 
[2026-04-04 10:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:44:44] [INFO] Checking activity reminders 
[2026-04-04 10:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:45:15] [INFO] Checking activity reminders 
[2026-04-04 10:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:45:45] [INFO] Checking activity reminders 
[2026-04-04 10:45:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:45:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:46:15] [INFO] Checking activity reminders 
[2026-04-04 10:46:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:46:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:46:45] [INFO] Checking activity reminders 
[2026-04-04 10:46:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:46:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:47:15] [INFO] Checking activity reminders 
[2026-04-04 10:47:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:47:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:48:07] [INFO] Checking activity reminders 
[2026-04-04 10:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:48:22] [INFO] Checking activity reminders 
[2026-04-04 10:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:48:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:48:37] [INFO] Checking activity reminders 
[2026-04-04 10:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:48:52] [INFO] Checking activity reminders 
[2026-04-04 10:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:49:07] [INFO] Checking activity reminders 
[2026-04-04 10:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:49:22] [INFO] Checking activity reminders 
[2026-04-04 10:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:49:37] [INFO] Checking activity reminders 
[2026-04-04 10:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:49:52] [INFO] Checking activity reminders 
[2026-04-04 10:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:50:07] [INFO] Checking activity reminders 
[2026-04-04 10:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:50:22] [INFO] Checking activity reminders 
[2026-04-04 10:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:50:32] [INFO] Lead update received {"contact_id":"1319","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 10:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:50:32] [DEBUG] findByPhone: Found person {"phones":["9359600332"],"found_id":"7866","found_didar_id":"5529","found_name":"احسان فراهانی"}
[2026-04-04 10:50:32] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9359600332","found_didar_id":"5529","found_local_id":"7866","found_name":"احسان فراهانی"}
[2026-04-04 10:50:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 10:50:32] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9359600332","found_id":"7866","found_didar_id":"5529","exclude_id":5529,"exclude_didar_id":"1319"}
[2026-04-04 10:50:32] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای احسان فراهانی (مسئول: خانم شکیبا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":767,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(967): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(574): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-04 10:50:37] [INFO] Checking activity reminders 
[2026-04-04 10:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:50:53] [INFO] Checking activity reminders 
[2026-04-04 10:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:51:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 10:51:07] [INFO] Checking activity reminders 
[2026-04-04 10:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:51:15] [INFO] Checking activity reminders 
[2026-04-04 10:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:51:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:51:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7015","person_id":"1319"}
[2026-04-04 10:51:37] [INFO] Checking activity reminders 
[2026-04-04 10:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:51:46] [INFO] Checking activity reminders 
[2026-04-04 10:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1319","person_id":"5529"}
[2026-04-04 10:52:07] [INFO] Checking activity reminders 
[2026-04-04 10:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:52:16] [INFO] Checking activity reminders 
[2026-04-04 10:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-04 10:52:37] [INFO] Checking activity reminders 
[2026-04-04 10:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:52:46] [INFO] Checking activity reminders 
[2026-04-04 10:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:53:07] [INFO] Checking activity reminders 
[2026-04-04 10:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:53:16] [INFO] Checking activity reminders 
[2026-04-04 10:53:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:53:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:53:37] [INFO] Checking activity reminders 
[2026-04-04 10:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 10:53:46] [INFO] Checking activity reminders 
[2026-04-04 10:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:54:08] [INFO] Checking activity reminders 
[2026-04-04 10:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:54:13] [INFO] Deal reactivation requested {"deal_id":"local_69cd56ed71f131.82135384","old_status":"Won","old_stage":"پرداخت","new_stage":"برگزاری دوره","reason":""}
[2026-04-04 10:54:13] [INFO] Deal successfully reactivated {"deal_id":"local_69cd56ed71f131.82135384","new_stage":"برگزاری دوره","reason":""}
[2026-04-04 10:54:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 10:54:21] [INFO] Checking activity reminders 
[2026-04-04 10:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:54:38] [INFO] Checking activity reminders 
[2026-04-04 10:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:54:53] [INFO] Checking activity reminders 
[2026-04-04 10:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:55:08] [INFO] Checking activity reminders 
[2026-04-04 10:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:55:23] [INFO] Checking activity reminders 
[2026-04-04 10:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:55:38] [INFO] Checking activity reminders 
[2026-04-04 10:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:55:53] [INFO] Checking activity reminders 
[2026-04-04 10:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:56:08] [INFO] Checking activity reminders 
[2026-04-04 10:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:56:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 10:56:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 10:56:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 10:56:38] [INFO] Checking activity reminders 
[2026-04-04 10:56:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:56:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:57:08] [INFO] Checking activity reminders 
[2026-04-04 10:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:57:38] [INFO] Checking activity reminders 
[2026-04-04 10:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:58:08] [INFO] Checking activity reminders 
[2026-04-04 10:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:58:38] [INFO] Checking activity reminders 
[2026-04-04 10:58:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:58:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:59:08] [INFO] Checking activity reminders 
[2026-04-04 10:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 10:59:38] [INFO] Checking activity reminders 
[2026-04-04 10:59:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 10:59:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:00:08] [INFO] Checking activity reminders 
[2026-04-04 11:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:00:38] [INFO] Checking activity reminders 
[2026-04-04 11:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:01:09] [INFO] Checking activity reminders 
[2026-04-04 11:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 11:01:39] [INFO] Checking activity reminders 
[2026-04-04 11:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:01:40] [INFO] Lead update received {"contact_id":"5529","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 11:01:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 11:01:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 11:01:40] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5529"}
[2026-04-04 11:01:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 11:02:09] [INFO] Checking activity reminders 
[2026-04-04 11:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:02:39] [INFO] Checking activity reminders 
[2026-04-04 11:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:02:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"2075","deal_id":"local_69cd56ed71f131.82135384","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:02:50","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:02:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"2075","is_new_deal":false}
[2026-04-04 11:02:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:02:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:02:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:02:50] [INFO] getContactPrimaryPhone called {"contact_id":"2075"}
[2026-04-04 11:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:02:50] [INFO] getContactPrimaryPhone result {"contact_id":"2075","person_found":true,"primary_phone":"9134092875"}
[2026-04-04 11:02:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134092875"}
[2026-04-04 11:02:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134092875","contact_id":"2075","deal_id":"local_69cd56ed71f131.82135384","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:02:50"}
[2026-04-04 11:02:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","existing_deal_found":true,"existing_contact_id":"2075","existing_title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:02:50"}
[2026-04-04 11:02:50] [INFO] DealController.save validated payments {"deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-04 11:02:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2075","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:02:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd56ed71f131.82135384","contact_didar_id":"2075","title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9134092875","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","requested_services_count":2,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مشهدی","existing_deal":"YES","existing_deal_id":"local_69cd56ed71f131.82135384","existing_deal_status":"Pending","server_time":"2026-04-04 11:02:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:02:50] [INFO] Deal success processed {"contact_id":"2075","person_name":"مشهدی","products_count":1}
[2026-04-04 11:02:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd56ed71f131.82135384","contact_id":"2075","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134092875 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-04 11:02:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:02:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-04 11:03:09] [INFO] Checking activity reminders 
[2026-04-04 11:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:03:39] [INFO] Checking activity reminders 
[2026-04-04 11:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:04:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:04:04","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:04:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","is_new_deal":false}
[2026-04-04 11:04:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:04:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:04:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:04:04] [INFO] getContactPrimaryPhone called {"contact_id":"3795"}
[2026-04-04 11:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:04:04] [INFO] getContactPrimaryPhone result {"contact_id":"3795","person_found":true,"primary_phone":"9358897876"}
[2026-04-04 11:04:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9358897876"}
[2026-04-04 11:04:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9358897876","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:04:04"}
[2026-04-04 11:04:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","existing_deal_found":true,"existing_contact_id":"3795","existing_title":"معامله اول 9358897876 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:04:04"}
[2026-04-04 11:04:04] [INFO] DealController.save validated payments {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 11:04:04] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3795","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:04:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a4c6f738cf8.41001784","contact_didar_id":"3795","title":"معامله اول 9358897876 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9358897876","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آل موسوی","existing_deal":"YES","existing_deal_id":"local_694a4c6f738cf8.41001784","existing_deal_status":"Pending","server_time":"2026-04-04 11:04:04","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:04:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":30000000,"server_time":"2026-04-04 11:04:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:04:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:04:09] [INFO] Checking activity reminders 
[2026-04-04 11:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:04:39] [INFO] Checking activity reminders 
[2026-04-04 11:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:05:10] [INFO] Checking activity reminders 
[2026-04-04 11:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:05:12] [INFO] Activity save request {"post_data":{"contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پدرش  عمل سنگین داره برای واریز یکساله به چالش خورده \r\n6 ماهه عضو میشه \/ برای 6 ماه دوم مجدد تمدید ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:05:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3795","note_was_empty":true}
[2026-04-04 11:05:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"3795","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:12] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"deal_registered","force":false}
[2026-04-04 11:05:12] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"deal_registered"}
[2026-04-04 11:05:12] [INFO] Virtual stage updated after activity save {"contact_id":"3795"}
[2026-04-04 11:05:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a4c6f738cf8.41001784","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-04 11:05:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0bf30201bc7.80735778","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0bf30201bc7.80735778"}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:12] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"deal_registered","force":false}
[2026-04-04 11:05:12] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"deal_registered"}
[2026-04-04 11:05:12] [INFO] Virtual stage updated after activity save {"contact_id":"3795"}
[2026-04-04 11:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:05:40] [INFO] Checking activity reminders 
[2026-04-04 11:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:06:10] [INFO] Checking activity reminders 
[2026-04-04 11:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8649","person_id":"9286"}
[2026-04-04 11:06:40] [INFO] Checking activity reminders 
[2026-04-04 11:06:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:06:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:07:10] [INFO] Checking activity reminders 
[2026-04-04 11:07:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:07:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:07:56] [INFO] Checking activity reminders 
[2026-04-04 11:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:08:02] [INFO] Checking activity reminders 
[2026-04-04 11:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:08:12] [INFO] Checking activity reminders 
[2026-04-04 11:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:08:42] [INFO] Checking activity reminders 
[2026-04-04 11:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:09:12] [INFO] Checking activity reminders 
[2026-04-04 11:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:09:42] [INFO] Checking activity reminders 
[2026-04-04 11:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:10:12] [INFO] Checking activity reminders 
[2026-04-04 11:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:10:42] [INFO] Checking activity reminders 
[2026-04-04 11:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:11:12] [INFO] Checking activity reminders 
[2026-04-04 11:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:11:42] [INFO] Checking activity reminders 
[2026-04-04 11:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:12:13] [INFO] Checking activity reminders 
[2026-04-04 11:12:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:12:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:12:34] [INFO] Checking activity reminders 
[2026-04-04 11:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:12:36] [INFO] Checking activity reminders 
[2026-04-04 11:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:12:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-04 11:13:07] [INFO] Checking activity reminders 
[2026-04-04 11:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:13:37] [INFO] Checking activity reminders 
[2026-04-04 11:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:14:07] [INFO] Checking activity reminders 
[2026-04-04 11:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-04 11:14:37] [INFO] Checking activity reminders 
[2026-04-04 11:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:15:07] [INFO] Checking activity reminders 
[2026-04-04 11:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:15:37] [INFO] Checking activity reminders 
[2026-04-04 11:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:16:07] [INFO] Checking activity reminders 
[2026-04-04 11:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:16:37] [INFO] Checking activity reminders 
[2026-04-04 11:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:17:07] [INFO] Checking activity reminders 
[2026-04-04 11:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:17:37] [INFO] Checking activity reminders 
[2026-04-04 11:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:18:07] [INFO] Checking activity reminders 
[2026-04-04 11:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:18:37] [INFO] Checking activity reminders 
[2026-04-04 11:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:18:46] [INFO] Checking activity reminders 
[2026-04-04 11:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:19:08] [INFO] Checking activity reminders 
[2026-04-04 11:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:19:38] [INFO] Checking activity reminders 
[2026-04-04 11:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:20:08] [INFO] Checking activity reminders 
[2026-04-04 11:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:20:31] [INFO] Checking activity reminders 
[2026-04-04 11:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:20:38] [INFO] Checking activity reminders 
[2026-04-04 11:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:20:41] [INFO] Checking activity reminders 
[2026-04-04 11:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:20:50] [INFO] Checking activity reminders 
[2026-04-04 11:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:21:08] [INFO] Checking activity reminders 
[2026-04-04 11:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:21:38] [INFO] Checking activity reminders 
[2026-04-04 11:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:22:08] [INFO] Checking activity reminders 
[2026-04-04 11:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:22:38] [INFO] Checking activity reminders 
[2026-04-04 11:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:23:08] [INFO] Checking activity reminders 
[2026-04-04 11:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:23:38] [INFO] Checking activity reminders 
[2026-04-04 11:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:24:08] [INFO] Checking activity reminders 
[2026-04-04 11:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:24:43] [INFO] Checking activity reminders 
[2026-04-04 11:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:24:46] [INFO] Checking activity reminders 
[2026-04-04 11:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:24:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 11:24:52] [INFO] Checking activity reminders 
[2026-04-04 11:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:25:22] [INFO] Checking activity reminders 
[2026-04-04 11:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:25:52] [INFO] Checking activity reminders 
[2026-04-04 11:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:26:22] [INFO] Checking activity reminders 
[2026-04-04 11:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:26:52] [INFO] Checking activity reminders 
[2026-04-04 11:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:27:22] [INFO] Checking activity reminders 
[2026-04-04 11:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:27:52] [INFO] Checking activity reminders 
[2026-04-04 11:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:28:22] [INFO] Checking activity reminders 
[2026-04-04 11:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:28:36] [INFO] Checking activity reminders 
[2026-04-04 11:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:28:53] [INFO] Checking activity reminders 
[2026-04-04 11:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:29:00] [INFO] Lead update received {"contact_id":"16719","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 11:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:29:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16719"}
[2026-04-04 11:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:29:21] [INFO] Checking activity reminders 
[2026-04-04 11:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:29:23] [INFO] Checking activity reminders 
[2026-04-04 11:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:29:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-04 11:29:40] [INFO] Checking activity reminders 
[2026-04-04 11:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 11:29:53] [INFO] Checking activity reminders 
[2026-04-04 11:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:01] [INFO] Checking activity reminders 
[2026-04-04 11:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:09] [INFO] Checking activity reminders 
[2026-04-04 11:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:23] [INFO] Checking activity reminders 
[2026-04-04 11:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:35] [INFO] Lead update received {"contact_id":"19850","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 11:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:35] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"19850"}
[2026-04-04 11:30:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:40] [INFO] Checking activity reminders 
[2026-04-04 11:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:53] [INFO] Checking activity reminders 
[2026-04-04 11:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:30:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:30:53] [INFO] Checking activity reminders 
[2026-04-04 11:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11195","person_id":"19850"}
[2026-04-04 11:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:31:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:31:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19850","person_id":"10622"}
[2026-04-04 11:31:23] [INFO] Checking activity reminders 
[2026-04-04 11:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:31:30] [INFO] Checking activity reminders 
[2026-04-04 11:31:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:31:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:31:53] [INFO] Checking activity reminders 
[2026-04-04 11:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:32:23] [INFO] Checking activity reminders 
[2026-04-04 11:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:32:53] [INFO] Checking activity reminders 
[2026-04-04 11:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:33:03] [INFO] Checking activity reminders 
[2026-04-04 11:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:33:34] [INFO] Checking activity reminders 
[2026-04-04 11:33:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:33:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:33:36] [WARNING] Auth check failed - not authenticated {"session_id":"1jkdgimnt3ag310i5kh0nftv1f","session_keys":[],"action":"log_client_event"}
[2026-04-04 11:33:37] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 11:33:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 11:33:47] [INFO] Checking activity reminders 
[2026-04-04 11:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:33:48] [INFO] Lead update received {"contact_id":"1360","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-04 11:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 11:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 11:33:48] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1360"}
[2026-04-04 11:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 11:34:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:34:00] [INFO] Checking activity reminders 
[2026-04-04 11:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:34:07] [INFO] Checking activity reminders 
[2026-04-04 11:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:34:31] [INFO] Checking activity reminders 
[2026-04-04 11:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:34:37] [INFO] Checking activity reminders 
[2026-04-04 11:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:34:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14521","deal_id":"local_69d0a1b2ce7535.12070788","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:34:49","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:34:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:34:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14521","is_new_deal":false}
[2026-04-04 11:34:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 11:34:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 11:34:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 11:34:49] [INFO] getContactPrimaryPhone called {"contact_id":"14521"}
[2026-04-04 11:34:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:34:49] [INFO] getContactPrimaryPhone result {"contact_id":"14521","person_found":true,"primary_phone":"9126095337"}
[2026-04-04 11:34:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126095337"}
[2026-04-04 11:34:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126095337","contact_id":"14521","deal_id":"local_69d0a1b2ce7535.12070788","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:34:49"}
[2026-04-04 11:34:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","existing_deal_found":true,"existing_contact_id":"14521","existing_title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:34:49"}
[2026-04-04 11:34:49] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 11:34:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14521","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:34:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1b2ce7535.12070788","contact_didar_id":"14521","title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126095337","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمود ناصری فر","existing_deal":"YES","existing_deal_id":"local_69d0a1b2ce7535.12070788","existing_deal_status":"Pending","server_time":"2026-04-04 11:34:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:34:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:34:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 11:34:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:35:01] [INFO] Checking activity reminders 
[2026-04-04 11:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:35:07] [INFO] Checking activity reminders 
[2026-04-04 11:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:35:31] [INFO] Checking activity reminders 
[2026-04-04 11:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:35:37] [INFO] Checking activity reminders 
[2026-04-04 11:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:01] [INFO] Checking activity reminders 
[2026-04-04 11:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:07] [INFO] Checking activity reminders 
[2026-04-04 11:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:31] [INFO] Checking activity reminders 
[2026-04-04 11:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:38] [INFO] Checking activity reminders 
[2026-04-04 11:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:45] [INFO] Checking activity reminders 
[2026-04-04 11:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:36:46] [INFO] Activity save request {"post_data":{"contact_id":"790","deal_id":"local_69d0a80a342182.92404278","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:36:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:36:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:36:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"790","note_was_empty":true}
[2026-04-04 11:36:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"790","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:36:46] [INFO] Updating virtual stage {"contact_id":"790","stage_name":"deal_registered","force":false}
[2026-04-04 11:36:46] [INFO] Virtual stage successfully saved {"contact_id":"790","stage_name":"deal_registered"}
[2026-04-04 11:36:46] [INFO] Virtual stage updated after activity save {"contact_id":"790"}
[2026-04-04 11:36:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a80a342182.92404278","stage":"تماس پیگیری","status_change":null}
[2026-04-04 11:36:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0c6960964f2.54734492","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:36:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0c6960964f2.54734492"}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:36:46] [INFO] Updating virtual stage {"contact_id":"790","stage_name":"deal_registered","force":false}
[2026-04-04 11:36:46] [INFO] Virtual stage successfully saved {"contact_id":"790","stage_name":"deal_registered"}
[2026-04-04 11:36:46] [INFO] Virtual stage updated after activity save {"contact_id":"790"}
[2026-04-04 11:36:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"790","person_id":"13885"}
[2026-04-04 11:37:01] [INFO] Checking activity reminders 
[2026-04-04 11:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:37:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:37:08] [INFO] Checking activity reminders 
[2026-04-04 11:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:37:29] [INFO] Checking activity reminders 
[2026-04-04 11:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:37:31] [INFO] Checking activity reminders 
[2026-04-04 11:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:37:38] [INFO] Checking activity reminders 
[2026-04-04 11:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:38:01] [INFO] Checking activity reminders 
[2026-04-04 11:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:38:08] [INFO] Checking activity reminders 
[2026-04-04 11:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:38:08] [INFO] Checking activity reminders 
[2026-04-04 11:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:38:32] [INFO] Checking activity reminders 
[2026-04-04 11:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:38:38] [INFO] Checking activity reminders 
[2026-04-04 11:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:39:02] [INFO] Checking activity reminders 
[2026-04-04 11:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:39:08] [INFO] Checking activity reminders 
[2026-04-04 11:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:39:32] [INFO] Checking activity reminders 
[2026-04-04 11:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:39:38] [INFO] Checking activity reminders 
[2026-04-04 11:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:40:02] [INFO] Checking activity reminders 
[2026-04-04 11:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:40:08] [INFO] Checking activity reminders 
[2026-04-04 11:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:40:32] [INFO] Checking activity reminders 
[2026-04-04 11:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:40:38] [INFO] Checking activity reminders 
[2026-04-04 11:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:41:02] [INFO] Checking activity reminders 
[2026-04-04 11:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:41:08] [INFO] Checking activity reminders 
[2026-04-04 11:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:41:32] [INFO] Checking activity reminders 
[2026-04-04 11:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:41:38] [INFO] Checking activity reminders 
[2026-04-04 11:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:41:41] [INFO] Activity save request {"post_data":{"contact_id":"14521","deal_id":"local_69d0a1b2ce7535.12070788","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در بله عضو 404 نشده بود \r\nمجدد براش لینک فرستادم \r\nبرای عضویت کانال 405 با خانمش مشورت کنه \r\nپیگیری میکنم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:41:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:41:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:41:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14521","note_was_empty":true}
[2026-04-04 11:41:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"14521","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:41:41] [INFO] Updating virtual stage {"contact_id":"14521","stage_name":"deal_registered","force":false}
[2026-04-04 11:41:41] [INFO] Virtual stage successfully saved {"contact_id":"14521","stage_name":"deal_registered"}
[2026-04-04 11:41:41] [INFO] Virtual stage updated after activity save {"contact_id":"14521"}
[2026-04-04 11:41:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a1b2ce7535.12070788","stage":"تماس پیگیری","status_change":null}
[2026-04-04 11:41:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0c7bdbce9a4.76927911","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:41:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0c7bdbce9a4.76927911"}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:41:41] [INFO] Updating virtual stage {"contact_id":"14521","stage_name":"deal_registered","force":false}
[2026-04-04 11:41:41] [INFO] Virtual stage successfully saved {"contact_id":"14521","stage_name":"deal_registered"}
[2026-04-04 11:41:41] [INFO] Virtual stage updated after activity save {"contact_id":"14521"}
[2026-04-04 11:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:42:02] [INFO] Checking activity reminders 
[2026-04-04 11:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:42:09] [INFO] Checking activity reminders 
[2026-04-04 11:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:42:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"14521","deal_id":"local_69d0a1b2ce7535.12070788","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:42:09","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:42:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:42:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"14521","is_new_deal":false}
[2026-04-04 11:42:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:42:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:42:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:42:09] [INFO] getContactPrimaryPhone called {"contact_id":"14521"}
[2026-04-04 11:42:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:42:09] [INFO] getContactPrimaryPhone result {"contact_id":"14521","person_found":true,"primary_phone":"9126095337"}
[2026-04-04 11:42:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126095337"}
[2026-04-04 11:42:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126095337","contact_id":"14521","deal_id":"local_69d0a1b2ce7535.12070788","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:42:09"}
[2026-04-04 11:42:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","existing_deal_found":true,"existing_contact_id":"14521","existing_title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:42:09"}
[2026-04-04 11:42:09] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 11:42:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14521","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:42:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1b2ce7535.12070788","contact_didar_id":"14521","title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9126095337","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمود ناصری فر","existing_deal":"YES","existing_deal_id":"local_69d0a1b2ce7535.12070788","existing_deal_status":"Pending","server_time":"2026-04-04 11:42:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:42:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:42:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1b2ce7535.12070788","contact_id":"14521","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126095337 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 11:42:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:42:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14521","person_id":"18731"}
[2026-04-04 11:42:32] [INFO] Checking activity reminders 
[2026-04-04 11:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:42:39] [INFO] Checking activity reminders 
[2026-04-04 11:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:03] [INFO] Checking activity reminders 
[2026-04-04 11:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:04] [INFO] Checking activity reminders 
[2026-04-04 11:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:06] [INFO] Checking activity reminders 
[2026-04-04 11:43:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:09] [INFO] Checking activity reminders 
[2026-04-04 11:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:16] [INFO] Checking activity reminders 
[2026-04-04 11:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:19] [INFO] Checking activity reminders 
[2026-04-04 11:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:39] [INFO] Checking activity reminders 
[2026-04-04 11:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:43:49] [INFO] Checking activity reminders 
[2026-04-04 11:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:44:09] [INFO] Checking activity reminders 
[2026-04-04 11:44:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:44:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:44:19] [INFO] Checking activity reminders 
[2026-04-04 11:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:44:39] [INFO] Checking activity reminders 
[2026-04-04 11:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:44:49] [INFO] Checking activity reminders 
[2026-04-04 11:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:09] [INFO] Checking activity reminders 
[2026-04-04 11:45:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:20] [INFO] Checking activity reminders 
[2026-04-04 11:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:22] [INFO] Checking activity reminders 
[2026-04-04 11:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:31] [INFO] Checking activity reminders 
[2026-04-04 11:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:33] [INFO] Checking activity reminders 
[2026-04-04 11:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:39] [INFO] Checking activity reminders 
[2026-04-04 11:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:45:50] [INFO] generateDealTitle result {"contact_id":"16719","person_name":"محسن سیف اللهی","mobile":"9143567350","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9143567350"}
[2026-04-04 11:46:03] [INFO] Checking activity reminders 
[2026-04-04 11:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:46:09] [INFO] Checking activity reminders 
[2026-04-04 11:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:46:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"16719","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:46:12","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:46:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"16719","is_new_deal":true}
[2026-04-04 11:46:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:46:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:46:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:46:12] [INFO] getContactPrimaryPhone called {"contact_id":"16719"}
[2026-04-04 11:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:46:12] [INFO] getContactPrimaryPhone result {"contact_id":"16719","person_found":true,"primary_phone":"9143567350"}
[2026-04-04 11:46:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143567350"}
[2026-04-04 11:46:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143567350","contact_id":"16719","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:46:12"}
[2026-04-04 11:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:46:12] [INFO] generateDealTitle result {"contact_id":"16719","person_name":"محسن سیف اللهی","mobile":"9143567350","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9143567350"}
[2026-04-04 11:46:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16719","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 11:46:12] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:46:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16719","title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9143567350","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن سیف اللهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-04 11:46:12","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:46:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-04 11:46:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16719","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-04 11:46:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:46:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:46:33] [INFO] Checking activity reminders 
[2026-04-04 11:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:46:40] [INFO] Checking activity reminders 
[2026-04-04 11:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:46:54] [INFO] Activity save request {"post_data":{"contact_id":"15642","deal_id":"local_69d0a4d2c54204.03126347","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مبلغ کانال براش بالاس\r\nمیگه سرمایمو کلا 300 ت \r\nبا شایسته صحبت کرده بوده گفته بالاست شاید 6ماه دوم بیاد خودش گفت\r\nمبلغ و شرایط 6ماهه رو گفتم گفت براورد کنم اطلاع میدم فکر نمیگنم با این شرایط جنگی بتونم انجام بدم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:46:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:46:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:46:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15642","note_was_empty":true}
[2026-04-04 11:46:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"15642","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:46:54] [INFO] Updating virtual stage {"contact_id":"15642","stage_name":"deal_registered","force":false}
[2026-04-04 11:46:54] [INFO] Virtual stage successfully saved {"contact_id":"15642","stage_name":"deal_registered"}
[2026-04-04 11:46:54] [INFO] Virtual stage updated after activity save {"contact_id":"15642"}
[2026-04-04 11:46:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a4d2c54204.03126347","stage":"تماس پیگیری","status_change":null}
[2026-04-04 11:46:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0c8f61d6924.64604360","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:46:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0c8f61d6924.64604360"}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:46:54] [INFO] Updating virtual stage {"contact_id":"15642","stage_name":"deal_registered","force":false}
[2026-04-04 11:46:54] [INFO] Virtual stage successfully saved {"contact_id":"15642","stage_name":"deal_registered"}
[2026-04-04 11:46:54] [INFO] Virtual stage updated after activity save {"contact_id":"15642"}
[2026-04-04 11:46:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-04 11:47:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:47:03] [INFO] Checking activity reminders 
[2026-04-04 11:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:47:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"16719","deal_id":"local_69d0c8cce070d7.49048196","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:47:09","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:47:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"16719","is_new_deal":false}
[2026-04-04 11:47:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:47:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:47:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 11:47:09] [INFO] getContactPrimaryPhone called {"contact_id":"16719"}
[2026-04-04 11:47:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:09] [INFO] getContactPrimaryPhone result {"contact_id":"16719","person_found":true,"primary_phone":"9143567350"}
[2026-04-04 11:47:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143567350"}
[2026-04-04 11:47:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143567350","contact_id":"16719","deal_id":"local_69d0c8cce070d7.49048196","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:47:09"}
[2026-04-04 11:47:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","existing_deal_found":true,"existing_contact_id":"16719","existing_title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:47:09"}
[2026-04-04 11:47:09] [INFO] DealController.save validated payments {"deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 11:47:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:47:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0c8cce070d7.49048196","contact_didar_id":"16719","title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9143567350","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":14000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن سیف اللهی","existing_deal":"YES","existing_deal_id":"local_69d0c8cce070d7.49048196","existing_deal_status":"Pending","server_time":"2026-04-04 11:47:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:47:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":14000000,"server_time":"2026-04-04 11:47:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:47:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:10] [INFO] Checking activity reminders 
[2026-04-04 11:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:47:33] [INFO] Checking activity reminders 
[2026-04-04 11:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:47:40] [INFO] Checking activity reminders 
[2026-04-04 11:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:47:45] [INFO] Activity save request {"post_data":{"contact_id":"16719","deal_id":"local_69d0c8cce070d7.49048196","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بریا کانال یکساله بدون پشتیبانی \r\n14 نقد \r\nچک دیجیتالی ثبت و ارسال در بله ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:47:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16719","note_was_empty":true}
[2026-04-04 11:47:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"16719","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 11:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:45] [INFO] Updating virtual stage {"contact_id":"16719","stage_name":"deal_registered","force":false}
[2026-04-04 11:47:45] [INFO] Virtual stage successfully saved {"contact_id":"16719","stage_name":"deal_registered"}
[2026-04-04 11:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"16719"}
[2026-04-04 11:47:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0c8cce070d7.49048196","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-04 11:47:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0c929dab1c9.70009116","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0c929dab1c9.70009116"}
[2026-04-04 11:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:45] [INFO] Updating virtual stage {"contact_id":"16719","stage_name":"deal_registered","force":false}
[2026-04-04 11:47:45] [INFO] Virtual stage successfully saved {"contact_id":"16719","stage_name":"deal_registered"}
[2026-04-04 11:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"16719"}
[2026-04-04 11:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 11:47:56] [INFO] Checking activity reminders 
[2026-04-04 11:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:47:58] [INFO] Checking activity reminders 
[2026-04-04 11:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:00] [INFO] Checking activity reminders 
[2026-04-04 11:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:03] [INFO] Checking activity reminders 
[2026-04-04 11:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:05] [INFO] Checking activity reminders 
[2026-04-04 11:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:07] [INFO] Checking activity reminders 
[2026-04-04 11:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:10] [INFO] Checking activity reminders 
[2026-04-04 11:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:48:37] [INFO] Checking activity reminders 
[2026-04-04 11:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:48:40] [INFO] Checking activity reminders 
[2026-04-04 11:48:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:48:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:49:07] [INFO] Checking activity reminders 
[2026-04-04 11:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:49:10] [INFO] Checking activity reminders 
[2026-04-04 11:49:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:49:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:49:37] [INFO] Checking activity reminders 
[2026-04-04 11:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:49:40] [INFO] Checking activity reminders 
[2026-04-04 11:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:50:08] [INFO] Checking activity reminders 
[2026-04-04 11:50:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:50:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:50:11] [INFO] Checking activity reminders 
[2026-04-04 11:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:50:38] [INFO] Checking activity reminders 
[2026-04-04 11:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:50:41] [INFO] Checking activity reminders 
[2026-04-04 11:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:51:08] [INFO] Checking activity reminders 
[2026-04-04 11:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:51:11] [INFO] Checking activity reminders 
[2026-04-04 11:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:51:38] [INFO] Checking activity reminders 
[2026-04-04 11:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:51:41] [INFO] Checking activity reminders 
[2026-04-04 11:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:51:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:51:57","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:51:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20921","is_new_deal":false}
[2026-04-04 11:51:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 11:51:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 11:51:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 11:51:57] [INFO] getContactPrimaryPhone called {"contact_id":"20921"}
[2026-04-04 11:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:51:57] [INFO] getContactPrimaryPhone result {"contact_id":"20921","person_found":true,"primary_phone":"9126500045"}
[2026-04-04 11:51:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126500045"}
[2026-04-04 11:51:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126500045","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:51:57"}
[2026-04-04 11:51:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","existing_deal_found":true,"existing_contact_id":"20921","existing_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:51:57"}
[2026-04-04 11:51:58] [INFO] DealController.save validated payments {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 11:51:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20921","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:51:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a249044f46.42652161","contact_didar_id":"20921","title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126500045","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سبحان کنجانی","existing_deal":"YES","existing_deal_id":"local_69d0a249044f46.42652161","existing_deal_status":"Pending","server_time":"2026-04-04 11:51:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:51:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 11:51:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:51:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:08] [INFO] Checking activity reminders 
[2026-04-04 11:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:52:11] [INFO] Checking activity reminders 
[2026-04-04 11:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:52:17] [INFO] Activity save request {"post_data":{"contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک \r\nپیام در بله ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:52:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20921","note_was_empty":true}
[2026-04-04 11:52:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"20921","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 11:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:17] [INFO] Updating virtual stage {"contact_id":"20921","stage_name":"deal_registered","force":false}
[2026-04-04 11:52:17] [INFO] Virtual stage successfully saved {"contact_id":"20921","stage_name":"deal_registered"}
[2026-04-04 11:52:17] [INFO] Virtual stage updated after activity save {"contact_id":"20921"}
[2026-04-04 11:52:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a249044f46.42652161","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 11:52:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0ca39d7c1c1.83440164","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0ca39d7c1c1.83440164"}
[2026-04-04 11:52:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:17] [INFO] Updating virtual stage {"contact_id":"20921","stage_name":"deal_registered","force":false}
[2026-04-04 11:52:17] [INFO] Virtual stage successfully saved {"contact_id":"20921","stage_name":"deal_registered"}
[2026-04-04 11:52:17] [INFO] Virtual stage updated after activity save {"contact_id":"20921"}
[2026-04-04 11:52:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 11:52:38] [INFO] Checking activity reminders 
[2026-04-04 11:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:52:41] [INFO] Checking activity reminders 
[2026-04-04 11:52:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:52:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:52:41] [INFO] Activity save request {"post_data":{"contact_id":"4225","deal_id":"local_69d0aa21ca03b4.40590880","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مشتری شایسته 20ت 5اسفند زده فیش فرستاده برای شایسته گفت دسترسیم چی میشه گفتم با خانوم شایسته صحبت کنه \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:52:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 11:52:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:52:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4225","note_was_empty":true}
[2026-04-04 11:52:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"4225","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:52:41] [INFO] Updating virtual stage {"contact_id":"4225","stage_name":"deal_registered","force":false}
[2026-04-04 11:52:41] [INFO] Virtual stage successfully saved {"contact_id":"4225","stage_name":"deal_registered"}
[2026-04-04 11:52:41] [INFO] Virtual stage updated after activity save {"contact_id":"4225"}
[2026-04-04 11:52:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0aa21ca03b4.40590880","stage":"تماس پیگیری","status_change":null}
[2026-04-04 11:52:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0ca51cf2735.44513649","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:52:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0ca51cf2735.44513649"}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:52:41] [INFO] Updating virtual stage {"contact_id":"4225","stage_name":"deal_registered","force":false}
[2026-04-04 11:52:41] [INFO] Virtual stage successfully saved {"contact_id":"4225","stage_name":"deal_registered"}
[2026-04-04 11:52:41] [INFO] Virtual stage updated after activity save {"contact_id":"4225"}
[2026-04-04 11:52:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 11:53:08] [INFO] Checking activity reminders 
[2026-04-04 11:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:53:23] [INFO] Checking activity reminders 
[2026-04-04 11:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:53:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 11:53:38] [INFO] Checking activity reminders 
[2026-04-04 11:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:53:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 11:53:53] [INFO] Checking activity reminders 
[2026-04-04 11:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:54:08] [INFO] Checking activity reminders 
[2026-04-04 11:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:54:23] [INFO] Checking activity reminders 
[2026-04-04 11:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:54:38] [INFO] Checking activity reminders 
[2026-04-04 11:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:54:53] [INFO] Checking activity reminders 
[2026-04-04 11:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:55:09] [INFO] Checking activity reminders 
[2026-04-04 11:55:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:55:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:55:23] [INFO] Checking activity reminders 
[2026-04-04 11:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:55:39] [INFO] Checking activity reminders 
[2026-04-04 11:55:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:55:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:55:53] [INFO] Checking activity reminders 
[2026-04-04 11:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:55:54] [INFO] Checking activity reminders 
[2026-04-04 11:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:56:09] [INFO] Checking activity reminders 
[2026-04-04 11:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:56:23] [INFO] Checking activity reminders 
[2026-04-04 11:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:56:24] [INFO] Checking activity reminders 
[2026-04-04 11:56:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:56:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:56:39] [INFO] Checking activity reminders 
[2026-04-04 11:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:56:54] [INFO] Checking activity reminders 
[2026-04-04 11:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:57:09] [INFO] Checking activity reminders 
[2026-04-04 11:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:57:24] [INFO] Checking activity reminders 
[2026-04-04 11:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:57:39] [INFO] Checking activity reminders 
[2026-04-04 11:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:57:54] [INFO] Checking activity reminders 
[2026-04-04 11:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:57:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"67","deal_id":"local_69d0a3454ead15.77443862","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 11:57:56","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 11:57:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"67","is_new_deal":false}
[2026-04-04 11:57:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:57:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:57:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 11:57:56] [INFO] getContactPrimaryPhone called {"contact_id":"67"}
[2026-04-04 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 11:57:56] [INFO] getContactPrimaryPhone result {"contact_id":"67","person_found":true,"primary_phone":"9128987827"}
[2026-04-04 11:57:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128987827"}
[2026-04-04 11:57:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128987827","contact_id":"67","deal_id":"local_69d0a3454ead15.77443862","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:57:56"}
[2026-04-04 11:57:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a3454ead15.77443862","contact_id":"67","existing_deal_found":true,"existing_contact_id":"67","existing_title":"معامله سوم 9128987827 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 11:57:56"}
[2026-04-04 11:57:56] [INFO] DealController.save validated payments {"deal_id":"local_69d0a3454ead15.77443862","contact_id":"67","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 11:57:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"67","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 11:57:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a3454ead15.77443862","contact_didar_id":"67","title":"معامله سوم 9128987827 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9128987827","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علوی","existing_deal":"YES","existing_deal_id":"local_69d0a3454ead15.77443862","existing_deal_status":"Pending","server_time":"2026-04-04 11:57:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 11:57:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a3454ead15.77443862","contact_id":"67","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9128987827 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 11:57:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 11:58:09] [INFO] Checking activity reminders 
[2026-04-04 11:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:58:24] [INFO] Checking activity reminders 
[2026-04-04 11:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:58:39] [INFO] Checking activity reminders 
[2026-04-04 11:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:58:54] [INFO] Checking activity reminders 
[2026-04-04 11:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:59:09] [INFO] Checking activity reminders 
[2026-04-04 11:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:59:24] [INFO] Checking activity reminders 
[2026-04-04 11:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:59:39] [INFO] Checking activity reminders 
[2026-04-04 11:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 11:59:54] [INFO] Checking activity reminders 
[2026-04-04 11:59:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 11:59:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:00:10] [INFO] Checking activity reminders 
[2026-04-04 12:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:00:25] [INFO] Checking activity reminders 
[2026-04-04 12:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:00:40] [INFO] Checking activity reminders 
[2026-04-04 12:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:00:55] [INFO] Checking activity reminders 
[2026-04-04 12:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:01:10] [INFO] Checking activity reminders 
[2026-04-04 12:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:01:25] [INFO] Checking activity reminders 
[2026-04-04 12:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:01:40] [INFO] Checking activity reminders 
[2026-04-04 12:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:01:55] [INFO] Checking activity reminders 
[2026-04-04 12:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:02:10] [INFO] Checking activity reminders 
[2026-04-04 12:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:02:25] [INFO] Checking activity reminders 
[2026-04-04 12:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:02:41] [INFO] Checking activity reminders 
[2026-04-04 12:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:02:55] [INFO] Checking activity reminders 
[2026-04-04 12:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:02:58] [INFO] Activity save request {"post_data":{"contact_id":"67","deal_id":"local_69d0a3454ead15.77443862","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شهرستان بود به دلیل شرایط جنگ \r\nعضویت 6 ماهه کانال \/ دوره پیش بینی کامل 405\r\nتمامئ سرمایه در ملک قفل شده \r\nمجدد تماس ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:02:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:02:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:02:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"67","note_was_empty":true}
[2026-04-04 12:02:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"67","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:02:58] [INFO] Updating virtual stage {"contact_id":"67","stage_name":"deal_registered","force":false}
[2026-04-04 12:02:58] [INFO] Virtual stage successfully saved {"contact_id":"67","stage_name":"deal_registered"}
[2026-04-04 12:02:58] [INFO] Virtual stage updated after activity save {"contact_id":"67"}
[2026-04-04 12:02:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a3454ead15.77443862","stage":"تماس پیگیری","status_change":null}
[2026-04-04 12:02:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0ccba0482c7.30253822","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:02:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0ccba0482c7.30253822"}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:02:58] [INFO] Updating virtual stage {"contact_id":"67","stage_name":"deal_registered","force":false}
[2026-04-04 12:02:58] [INFO] Virtual stage successfully saved {"contact_id":"67","stage_name":"deal_registered"}
[2026-04-04 12:02:58] [INFO] Virtual stage updated after activity save {"contact_id":"67"}
[2026-04-04 12:02:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"67","person_id":"13969"}
[2026-04-04 12:03:01] [INFO] Checking activity reminders 
[2026-04-04 12:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:03:25] [INFO] Checking activity reminders 
[2026-04-04 12:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:03:31] [INFO] Checking activity reminders 
[2026-04-04 12:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:03:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","deal_id":"15938","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:03:33","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:03:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","is_new_deal":false}
[2026-04-04 12:03:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:03:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:03:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:03:33] [INFO] getContactPrimaryPhone called {"contact_id":"1360"}
[2026-04-04 12:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:03:33] [INFO] getContactPrimaryPhone result {"contact_id":"1360","person_found":true,"primary_phone":"9363112282"}
[2026-04-04 12:03:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363112282"}
[2026-04-04 12:03:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363112282","contact_id":"1360","deal_id":"15938","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:03:33"}
[2026-04-04 12:03:33] [INFO] DealController.save existing deal lookup {"deal_id":"15938","contact_id":"1360","existing_deal_found":true,"existing_contact_id":"1360","existing_title":"معامله احمد غلامحسین زاده","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:03:33"}
[2026-04-04 12:03:33] [INFO] DealController.save validated payments {"deal_id":"15938","contact_id":"1360","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 12:03:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1360","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:03:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"15938","contact_didar_id":"1360","title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله احمد غلامحسین زاده","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"غلامحسین زاده","existing_deal":"YES","existing_deal_id":"15938","existing_deal_status":"Pending","server_time":"2026-04-04 12:03:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:03:33] [INFO] ensureDealProductsFromText: products synced {"deal_id":"15938","product_ids":[35]}
[2026-04-04 12:03:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"15938","contact_id":"1360","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 12:03:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:03:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:03:56] [INFO] Checking activity reminders 
[2026-04-04 12:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:04:01] [INFO] Checking activity reminders 
[2026-04-04 12:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:04:26] [INFO] Checking activity reminders 
[2026-04-04 12:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:04:31] [INFO] Checking activity reminders 
[2026-04-04 12:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:04:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","deal_id":"15938","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:04:50","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:04:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","is_new_deal":false}
[2026-04-04 12:04:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:04:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:04:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 12:04:50] [INFO] getContactPrimaryPhone called {"contact_id":"1360"}
[2026-04-04 12:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:04:50] [INFO] getContactPrimaryPhone result {"contact_id":"1360","person_found":true,"primary_phone":"9363112282"}
[2026-04-04 12:04:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363112282"}
[2026-04-04 12:04:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363112282","contact_id":"1360","deal_id":"15938","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:04:50"}
[2026-04-04 12:04:50] [INFO] DealController.save existing deal lookup {"deal_id":"15938","contact_id":"1360","existing_deal_found":true,"existing_contact_id":"1360","existing_title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:04:50"}
[2026-04-04 12:04:50] [INFO] DealController.save validated payments {"deal_id":"15938","contact_id":"1360","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 12:04:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1360","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:04:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"15938","contact_didar_id":"1360","title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله احمد غلامحسین زاده","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"غلامحسین زاده","existing_deal":"YES","existing_deal_id":"15938","existing_deal_status":"Pending","server_time":"2026-04-04 12:04:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:04:50] [INFO] ensureDealProductsFromText: products synced {"deal_id":"15938","product_ids":[35]}
[2026-04-04 12:04:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"15938","contact_id":"1360","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-04 12:04:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:04:56] [INFO] Checking activity reminders 
[2026-04-04 12:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:05:02] [INFO] Checking activity reminders 
[2026-04-04 12:05:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:05:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:05:26] [INFO] Checking activity reminders 
[2026-04-04 12:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:05:32] [INFO] Checking activity reminders 
[2026-04-04 12:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:05:43] [INFO] Activity save request {"post_data":{"contact_id":"1360","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"درگیر کارهای ساختمانی \r\n500-600 نقد \r\nوام داره \/ نامزد \r\n20 واریز \r\nوضعیت چک سفید \r\n19 چک ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:05:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:05:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:05:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1360","note_was_empty":true}
[2026-04-04 12:05:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"1360","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 12:05:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0cd5fb8c003.83372292","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:05:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0cd5fb8c003.83372292"}
[2026-04-04 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:05:43] [INFO] Updating virtual stage {"contact_id":"1360","stage_name":"deal_registered","force":false}
[2026-04-04 12:05:43] [INFO] Virtual stage successfully saved {"contact_id":"1360","stage_name":"deal_registered"}
[2026-04-04 12:05:43] [INFO] Virtual stage updated after activity save {"contact_id":"1360"}
[2026-04-04 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:05:56] [INFO] Checking activity reminders 
[2026-04-04 12:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:06:02] [INFO] Checking activity reminders 
[2026-04-04 12:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:06:10] [INFO] Checking activity reminders 
[2026-04-04 12:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:06:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 12:06:26] [INFO] Checking activity reminders 
[2026-04-04 12:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:06:40] [INFO] Checking activity reminders 
[2026-04-04 12:06:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:06:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:06:56] [INFO] Checking activity reminders 
[2026-04-04 12:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:00] [INFO] Checking activity reminders 
[2026-04-04 12:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:02] [INFO] Checking activity reminders 
[2026-04-04 12:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:26] [INFO] Checking activity reminders 
[2026-04-04 12:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:32] [INFO] Checking activity reminders 
[2026-04-04 12:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:33] [INFO] Checking activity reminders 
[2026-04-04 12:07:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 12:07:48] [INFO] Activity save request {"post_data":{"contact_id":"832","deal_id":"local_69d0a573d3e239.25625904","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل سرمایه 500 ت میگه سود کردم راضی بودم \/ با خانواده صحبت کردم گفتن تمدید نکن 79ت زیاده \/ 6ماهه 39ت گفتم اقساط قرار شد صحبت کنه امشب اطلاع ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:07:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"832","note_was_empty":true}
[2026-04-04 12:07:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"832","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:48] [INFO] Updating virtual stage {"contact_id":"832","stage_name":"deal_registered","force":false}
[2026-04-04 12:07:48] [INFO] Virtual stage successfully saved {"contact_id":"832","stage_name":"deal_registered"}
[2026-04-04 12:07:48] [INFO] Virtual stage updated after activity save {"contact_id":"832"}
[2026-04-04 12:07:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a573d3e239.25625904","stage":"تماس پیگیری","status_change":null}
[2026-04-04 12:07:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0cddc86b724.78915767","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0cddc86b724.78915767"}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:48] [INFO] Updating virtual stage {"contact_id":"832","stage_name":"deal_registered","force":false}
[2026-04-04 12:07:48] [INFO] Virtual stage successfully saved {"contact_id":"832","stage_name":"deal_registered"}
[2026-04-04 12:07:48] [INFO] Virtual stage updated after activity save {"contact_id":"832"}
[2026-04-04 12:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-04 12:07:50] [INFO] Checking activity reminders 
[2026-04-04 12:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 12:07:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:07:57] [INFO] Checking activity reminders 
[2026-04-04 12:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:58] [INFO] Checking activity reminders 
[2026-04-04 12:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:07:59] [INFO] Checking activity reminders 
[2026-04-04 12:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:03] [INFO] Checking activity reminders 
[2026-04-04 12:08:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2949","person_id":"10164"}
[2026-04-04 12:08:27] [INFO] Checking activity reminders 
[2026-04-04 12:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:29] [INFO] Checking activity reminders 
[2026-04-04 12:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:29] [INFO] Checking activity reminders 
[2026-04-04 12:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:57] [INFO] Checking activity reminders 
[2026-04-04 12:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:08:59] [INFO] Checking activity reminders 
[2026-04-04 12:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:00] [INFO] Checking activity reminders 
[2026-04-04 12:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:27] [INFO] Checking activity reminders 
[2026-04-04 12:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:30] [INFO] Checking activity reminders 
[2026-04-04 12:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:31] [INFO] Checking activity reminders 
[2026-04-04 12:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:42] [INFO] Checking activity reminders 
[2026-04-04 12:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:51] [INFO] Checking activity reminders 
[2026-04-04 12:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:09:57] [INFO] Checking activity reminders 
[2026-04-04 12:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:10:01] [INFO] Checking activity reminders 
[2026-04-04 12:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:10:27] [INFO] Checking activity reminders 
[2026-04-04 12:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:10:34] [INFO] Checking activity reminders 
[2026-04-04 12:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:10:57] [INFO] Checking activity reminders 
[2026-04-04 12:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:11:04] [INFO] Checking activity reminders 
[2026-04-04 12:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:11:27] [INFO] Checking activity reminders 
[2026-04-04 12:11:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:11:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:11:36] [INFO] Checking activity reminders 
[2026-04-04 12:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:11:57] [INFO] Checking activity reminders 
[2026-04-04 12:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:12:07] [INFO] Checking activity reminders 
[2026-04-04 12:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:12:28] [INFO] Checking activity reminders 
[2026-04-04 12:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:12:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20184","deal_id":"local_69d0a26dd56516.92024036","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:12:32","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:12:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 12:12:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20184","is_new_deal":false}
[2026-04-04 12:12:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 12:12:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:12:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:12:32] [INFO] getContactPrimaryPhone called {"contact_id":"20184"}
[2026-04-04 12:12:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 12:12:32] [INFO] getContactPrimaryPhone result {"contact_id":"20184","person_found":true,"primary_phone":"9126729017"}
[2026-04-04 12:12:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126729017"}
[2026-04-04 12:12:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126729017","contact_id":"20184","deal_id":"local_69d0a26dd56516.92024036","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:12:32"}
[2026-04-04 12:12:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a26dd56516.92024036","contact_id":"20184","existing_deal_found":true,"existing_contact_id":"20184","existing_title":"معامله دوم 9126729017 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:12:32"}
[2026-04-04 12:12:32] [INFO] DealController.save validated payments {"deal_id":"local_69d0a26dd56516.92024036","contact_id":"20184","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 12:12:32] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20184","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:12:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a26dd56516.92024036","contact_didar_id":"20184","title":"معامله دوم 9126729017 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126729017","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی احمد پور","existing_deal":"YES","existing_deal_id":"local_69d0a26dd56516.92024036","existing_deal_status":"Pending","server_time":"2026-04-04 12:12:32","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:12:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 12:12:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a26dd56516.92024036","contact_id":"20184","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126729017 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 12:12:32","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:12:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 12:12:37] [INFO] Checking activity reminders 
[2026-04-04 12:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:12:58] [INFO] Checking activity reminders 
[2026-04-04 12:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:13:07] [INFO] Checking activity reminders 
[2026-04-04 12:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:13:28] [INFO] Checking activity reminders 
[2026-04-04 12:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:13:37] [INFO] Checking activity reminders 
[2026-04-04 12:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:13:58] [INFO] Checking activity reminders 
[2026-04-04 12:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:14:07] [INFO] Checking activity reminders 
[2026-04-04 12:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:14:28] [INFO] Checking activity reminders 
[2026-04-04 12:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:14:38] [INFO] Checking activity reminders 
[2026-04-04 12:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:14:58] [INFO] Checking activity reminders 
[2026-04-04 12:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:15:08] [INFO] Checking activity reminders 
[2026-04-04 12:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:15:28] [INFO] Checking activity reminders 
[2026-04-04 12:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:15:38] [INFO] Checking activity reminders 
[2026-04-04 12:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:15:58] [INFO] Checking activity reminders 
[2026-04-04 12:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:16:08] [INFO] Checking activity reminders 
[2026-04-04 12:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:16:29] [INFO] Checking activity reminders 
[2026-04-04 12:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:16:38] [INFO] Checking activity reminders 
[2026-04-04 12:16:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:16:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:16:59] [INFO] Checking activity reminders 
[2026-04-04 12:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:17:08] [INFO] Checking activity reminders 
[2026-04-04 12:17:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:17:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:17:29] [INFO] Checking activity reminders 
[2026-04-04 12:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:17:39] [INFO] Checking activity reminders 
[2026-04-04 12:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:17:59] [INFO] Checking activity reminders 
[2026-04-04 12:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:18:09] [INFO] Checking activity reminders 
[2026-04-04 12:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:18:29] [INFO] Checking activity reminders 
[2026-04-04 12:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:18:39] [INFO] Checking activity reminders 
[2026-04-04 12:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:18:59] [INFO] Checking activity reminders 
[2026-04-04 12:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:19:09] [INFO] Checking activity reminders 
[2026-04-04 12:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:19:29] [INFO] Checking activity reminders 
[2026-04-04 12:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:19:39] [INFO] Checking activity reminders 
[2026-04-04 12:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:19:59] [INFO] Checking activity reminders 
[2026-04-04 12:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:20:10] [INFO] Checking activity reminders 
[2026-04-04 12:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:20:29] [INFO] Checking activity reminders 
[2026-04-04 12:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:20:40] [INFO] Checking activity reminders 
[2026-04-04 12:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:20:59] [INFO] Checking activity reminders 
[2026-04-04 12:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:21:10] [INFO] Checking activity reminders 
[2026-04-04 12:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:21:29] [INFO] Checking activity reminders 
[2026-04-04 12:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:21:40] [INFO] Checking activity reminders 
[2026-04-04 12:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:21:59] [INFO] Checking activity reminders 
[2026-04-04 12:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:22:11] [INFO] Checking activity reminders 
[2026-04-04 12:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:22:30] [INFO] Checking activity reminders 
[2026-04-04 12:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:22:41] [INFO] Checking activity reminders 
[2026-04-04 12:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:23:00] [INFO] Checking activity reminders 
[2026-04-04 12:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:23:12] [INFO] Checking activity reminders 
[2026-04-04 12:23:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:23:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:23:30] [INFO] Checking activity reminders 
[2026-04-04 12:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:23:42] [INFO] Checking activity reminders 
[2026-04-04 12:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:24:00] [INFO] Checking activity reminders 
[2026-04-04 12:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:24:12] [INFO] Checking activity reminders 
[2026-04-04 12:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:24:30] [INFO] Checking activity reminders 
[2026-04-04 12:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:24:42] [INFO] Checking activity reminders 
[2026-04-04 12:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:25:00] [INFO] Checking activity reminders 
[2026-04-04 12:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:25:12] [INFO] Checking activity reminders 
[2026-04-04 12:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:25:30] [INFO] Checking activity reminders 
[2026-04-04 12:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:25:43] [INFO] Checking activity reminders 
[2026-04-04 12:25:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:25:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:26:00] [INFO] Checking activity reminders 
[2026-04-04 12:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:26:30] [INFO] Checking activity reminders 
[2026-04-04 12:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:27:00] [INFO] Checking activity reminders 
[2026-04-04 12:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:27:21] [INFO] Checking activity reminders 
[2026-04-04 12:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:27:30] [INFO] Checking activity reminders 
[2026-04-04 12:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:27:52] [INFO] Checking activity reminders 
[2026-04-04 12:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:28:01] [INFO] Checking activity reminders 
[2026-04-04 12:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:28:23] [INFO] Checking activity reminders 
[2026-04-04 12:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:28:31] [INFO] Checking activity reminders 
[2026-04-04 12:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:28:53] [INFO] Checking activity reminders 
[2026-04-04 12:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:29:01] [INFO] Checking activity reminders 
[2026-04-04 12:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:29:23] [INFO] Checking activity reminders 
[2026-04-04 12:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:29:31] [INFO] Checking activity reminders 
[2026-04-04 12:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:29:54] [INFO] Checking activity reminders 
[2026-04-04 12:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:29:58] [INFO] Checking activity reminders 
[2026-04-04 12:29:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:29:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:30:00] [INFO] Checking activity reminders 
[2026-04-04 12:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:30:01] [INFO] Checking activity reminders 
[2026-04-04 12:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:30:02] [INFO] Checking activity reminders 
[2026-04-04 12:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:30:31] [INFO] Checking activity reminders 
[2026-04-04 12:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:30:32] [INFO] Checking activity reminders 
[2026-04-04 12:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:31:01] [INFO] Checking activity reminders 
[2026-04-04 12:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:31:02] [INFO] Checking activity reminders 
[2026-04-04 12:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:31:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:31:31] [INFO] Checking activity reminders 
[2026-04-04 12:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:31:32] [INFO] Checking activity reminders 
[2026-04-04 12:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:02] [INFO] Checking activity reminders 
[2026-04-04 12:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:02] [INFO] Checking activity reminders 
[2026-04-04 12:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:32] [INFO] Checking activity reminders 
[2026-04-04 12:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:33] [INFO] Checking activity reminders 
[2026-04-04 12:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:51] [INFO] Checking activity reminders 
[2026-04-04 12:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:32:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 12:32:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 12:32:58] [INFO] Checking activity reminders 
[2026-04-04 12:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:33:02] [INFO] Checking activity reminders 
[2026-04-04 12:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:33:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 12:33:28] [INFO] Checking activity reminders 
[2026-04-04 12:33:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:33:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:33:31] [INFO] Checking activity reminders 
[2026-04-04 12:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:33:32] [INFO] Checking activity reminders 
[2026-04-04 12:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:01] [INFO] Checking activity reminders 
[2026-04-04 12:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:02] [INFO] Checking activity reminders 
[2026-04-04 12:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:05] [INFO] Activity save request {"post_data":{"contact_id":"6189","deal_id":"local_69d0a516b75365.77605526","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"404 عضو نشده یکم اوضاع کارش بهم ریخته شده \/ بودجه بندی خیلی کمکش کرده از نظر هزینه \r\nقسط داره 1\/5 ماهه دیگه بهتر میشه شرایط خودش اطلاع میده میگه سرمایه خاصی الان ندارم\r\nکانال داره برای نمایشگاه فعالیت میکنه اما کم شده \/ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:34:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6189","note_was_empty":true}
[2026-04-04 12:34:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"6189","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:05] [INFO] Updating virtual stage {"contact_id":"6189","stage_name":"deal_registered","force":false}
[2026-04-04 12:34:05] [INFO] Virtual stage successfully saved {"contact_id":"6189","stage_name":"deal_registered"}
[2026-04-04 12:34:05] [INFO] Virtual stage updated after activity save {"contact_id":"6189"}
[2026-04-04 12:34:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a516b75365.77605526","stage":"تماس پیگیری","status_change":null}
[2026-04-04 12:34:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0d40539ad90.71885932","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0d40539ad90.71885932"}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:05] [INFO] Updating virtual stage {"contact_id":"6189","stage_name":"deal_registered","force":false}
[2026-04-04 12:34:05] [INFO] Virtual stage successfully saved {"contact_id":"6189","stage_name":"deal_registered"}
[2026-04-04 12:34:05] [INFO] Virtual stage updated after activity save {"contact_id":"6189"}
[2026-04-04 12:34:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6189","person_id":"6663"}
[2026-04-04 12:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:34:15] [INFO] Checking activity reminders 
[2026-04-04 12:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:17] [INFO] Checking activity reminders 
[2026-04-04 12:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:32] [INFO] Checking activity reminders 
[2026-04-04 12:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:34:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:34:47] [INFO] Checking activity reminders 
[2026-04-04 12:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:35:02] [INFO] Checking activity reminders 
[2026-04-04 12:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:35:17] [INFO] Checking activity reminders 
[2026-04-04 12:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:35:32] [INFO] Checking activity reminders 
[2026-04-04 12:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:35:47] [INFO] Checking activity reminders 
[2026-04-04 12:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:36:02] [INFO] Checking activity reminders 
[2026-04-04 12:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:36:18] [INFO] Checking activity reminders 
[2026-04-04 12:36:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:36:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:36:32] [INFO] Checking activity reminders 
[2026-04-04 12:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:36:48] [INFO] Checking activity reminders 
[2026-04-04 12:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:36:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15088","deal_id":"local_69d0a1feed90b3.84752834","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:36:50","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:36:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15088","is_new_deal":false}
[2026-04-04 12:36:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 12:36:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:36:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:36:50] [INFO] getContactPrimaryPhone called {"contact_id":"15088"}
[2026-04-04 12:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:36:50] [INFO] getContactPrimaryPhone result {"contact_id":"15088","person_found":true,"primary_phone":"9126132296"}
[2026-04-04 12:36:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126132296"}
[2026-04-04 12:36:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126132296","contact_id":"15088","deal_id":"local_69d0a1feed90b3.84752834","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:36:50"}
[2026-04-04 12:36:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1feed90b3.84752834","contact_id":"15088","existing_deal_found":true,"existing_contact_id":"15088","existing_title":"معامله دوم 9126132296 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:36:50"}
[2026-04-04 12:36:50] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1feed90b3.84752834","contact_id":"15088","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 12:36:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15088","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:36:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1feed90b3.84752834","contact_didar_id":"15088","title":"معامله دوم 9126132296 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9126132296","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم محمدزاده","existing_deal":"YES","existing_deal_id":"local_69d0a1feed90b3.84752834","existing_deal_status":"Pending","server_time":"2026-04-04 12:36:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:36:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1feed90b3.84752834","contact_id":"15088","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126132296 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 12:36:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:02] [INFO] Checking activity reminders 
[2026-04-04 12:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:37:09] [INFO] Activity save request {"post_data":{"contact_id":"15088","deal_id":"local_69d0a1feed90b3.84752834","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک .\r\nپیام در بله ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:37:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15088","note_was_empty":true}
[2026-04-04 12:37:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"15088","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:09] [INFO] Updating virtual stage {"contact_id":"15088","stage_name":"deal_registered","force":false}
[2026-04-04 12:37:09] [INFO] Virtual stage successfully saved {"contact_id":"15088","stage_name":"deal_registered"}
[2026-04-04 12:37:09] [INFO] Virtual stage updated after activity save {"contact_id":"15088"}
[2026-04-04 12:37:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a1feed90b3.84752834","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 12:37:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0d4bdea9320.31943606","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0d4bdea9320.31943606"}
[2026-04-04 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:09] [INFO] Updating virtual stage {"contact_id":"15088","stage_name":"deal_registered","force":false}
[2026-04-04 12:37:10] [INFO] Virtual stage successfully saved {"contact_id":"15088","stage_name":"deal_registered"}
[2026-04-04 12:37:10] [INFO] Virtual stage updated after activity save {"contact_id":"15088"}
[2026-04-04 12:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15088","person_id":"18718"}
[2026-04-04 12:37:18] [INFO] Checking activity reminders 
[2026-04-04 12:37:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:37:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:37:32] [INFO] Checking activity reminders 
[2026-04-04 12:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:37:48] [INFO] Checking activity reminders 
[2026-04-04 12:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:38:03] [INFO] Checking activity reminders 
[2026-04-04 12:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:38:25] [INFO] Checking activity reminders 
[2026-04-04 12:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:38:33] [INFO] Checking activity reminders 
[2026-04-04 12:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:38:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:38:55] [INFO] Checking activity reminders 
[2026-04-04 12:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:39:03] [INFO] Checking activity reminders 
[2026-04-04 12:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:39:25] [INFO] Checking activity reminders 
[2026-04-04 12:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:39:33] [INFO] Checking activity reminders 
[2026-04-04 12:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:39:55] [INFO] Checking activity reminders 
[2026-04-04 12:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:40:03] [INFO] Checking activity reminders 
[2026-04-04 12:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:40:25] [INFO] Checking activity reminders 
[2026-04-04 12:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:40:33] [INFO] Checking activity reminders 
[2026-04-04 12:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:40:55] [INFO] Checking activity reminders 
[2026-04-04 12:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:41:03] [INFO] Checking activity reminders 
[2026-04-04 12:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:41:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:41:19","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:41:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20866","is_new_deal":false}
[2026-04-04 12:41:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 12:41:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:41:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 12:41:19] [INFO] getContactPrimaryPhone called {"contact_id":"20866"}
[2026-04-04 12:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:41:19] [INFO] getContactPrimaryPhone result {"contact_id":"20866","person_found":true,"primary_phone":"9128762050"}
[2026-04-04 12:41:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128762050"}
[2026-04-04 12:41:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128762050","contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:41:19"}
[2026-04-04 12:41:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","existing_deal_found":true,"existing_contact_id":"20866","existing_title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:41:19"}
[2026-04-04 12:41:19] [INFO] DealController.save validated payments {"deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 12:41:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20866","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:41:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a321bcfec4.58364179","contact_didar_id":"20866","title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128762050","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعید خسرو آزاد","existing_deal":"YES","existing_deal_id":"local_69d0a321bcfec4.58364179","existing_deal_status":"Pending","server_time":"2026-04-04 12:41:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:41:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 12:41:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:41:25] [INFO] Checking activity reminders 
[2026-04-04 12:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:41:33] [INFO] Checking activity reminders 
[2026-04-04 12:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:41:56] [INFO] Checking activity reminders 
[2026-04-04 12:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:42:03] [INFO] Checking activity reminders 
[2026-04-04 12:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:42:26] [INFO] Checking activity reminders 
[2026-04-04 12:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:42:32] [INFO] Activity save request {"post_data":{"contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کل طلاهارو داده بود اجاره \/ کلاهبردار و تمام طلاهارو برده \r\nدرگیر زندان و کارهای دادگاهی \r\nحتما میخواد عضو بشه\/ در صورت دسترسی به طلاهاش ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:42:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20866","note_was_empty":true}
[2026-04-04 12:42:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"20866","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:32] [INFO] Updating virtual stage {"contact_id":"20866","stage_name":"deal_registered","force":false}
[2026-04-04 12:42:32] [INFO] Virtual stage successfully saved {"contact_id":"20866","stage_name":"deal_registered"}
[2026-04-04 12:42:32] [INFO] Virtual stage updated after activity save {"contact_id":"20866"}
[2026-04-04 12:42:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a321bcfec4.58364179","stage":"تماس پیگیری","status_change":null}
[2026-04-04 12:42:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0d600737124.79755719","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0d600737124.79755719"}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:32] [INFO] Updating virtual stage {"contact_id":"20866","stage_name":"deal_registered","force":false}
[2026-04-04 12:42:32] [INFO] Virtual stage successfully saved {"contact_id":"20866","stage_name":"deal_registered"}
[2026-04-04 12:42:32] [INFO] Virtual stage updated after activity save {"contact_id":"20866"}
[2026-04-04 12:42:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-04 12:42:33] [INFO] Checking activity reminders 
[2026-04-04 12:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:42:56] [INFO] Checking activity reminders 
[2026-04-04 12:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:43:04] [INFO] Checking activity reminders 
[2026-04-04 12:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:43:26] [INFO] Checking activity reminders 
[2026-04-04 12:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:43:34] [INFO] Checking activity reminders 
[2026-04-04 12:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:43:43] [INFO] Checking activity reminders 
[2026-04-04 12:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:43:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:44:04] [INFO] Checking activity reminders 
[2026-04-04 12:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:44:05] [INFO] Activity save request {"post_data":{"contact_id":"20696","deal_id":"local_69d0a91d017909.34931332","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ملک شراکتی با پدر خریده ارزش 10 میلیارد 3میلیارد برای اینه \/ گذاشتن برای فروش \/ 30 گرم طلا \/ 207 ماشین داره مصرف \/ \r\nنقدینیگی صفر \/\r\nزمین فروش بره پول بیاد دستش تا ماه دیگه اردئیبهشت خودش اطلاع باشهد \r\nطلا پفتم الان نفروش صبر کن","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 12:44:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20696","note_was_empty":true}
[2026-04-04 12:44:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"20696","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:05] [INFO] Updating virtual stage {"contact_id":"20696","stage_name":"deal_registered","force":false}
[2026-04-04 12:44:05] [INFO] Virtual stage successfully saved {"contact_id":"20696","stage_name":"deal_registered"}
[2026-04-04 12:44:05] [INFO] Virtual stage updated after activity save {"contact_id":"20696"}
[2026-04-04 12:44:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a91d017909.34931332","stage":"تماس پیگیری","status_change":null}
[2026-04-04 12:44:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0d65d69f143.72234255","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0d65d69f143.72234255"}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:05] [INFO] Updating virtual stage {"contact_id":"20696","stage_name":"deal_registered","force":false}
[2026-04-04 12:44:05] [INFO] Virtual stage successfully saved {"contact_id":"20696","stage_name":"deal_registered"}
[2026-04-04 12:44:05] [INFO] Virtual stage updated after activity save {"contact_id":"20696"}
[2026-04-04 12:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20696","person_id":"7940"}
[2026-04-04 12:44:14] [INFO] Checking activity reminders 
[2026-04-04 12:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:44:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 12:44:34] [INFO] Checking activity reminders 
[2026-04-04 12:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:44:44] [INFO] Checking activity reminders 
[2026-04-04 12:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:45:04] [INFO] Checking activity reminders 
[2026-04-04 12:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:45:14] [INFO] Checking activity reminders 
[2026-04-04 12:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:45:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"16719","deal_id":"local_69d0c8cce070d7.49048196","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 12:45:24","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 12:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:45:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"16719","is_new_deal":false}
[2026-04-04 12:45:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-04 12:45:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 12:45:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-04 12:45:24] [INFO] getContactPrimaryPhone called {"contact_id":"16719"}
[2026-04-04 12:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:45:24] [INFO] getContactPrimaryPhone result {"contact_id":"16719","person_found":true,"primary_phone":"9143567350"}
[2026-04-04 12:45:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143567350"}
[2026-04-04 12:45:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143567350","contact_id":"16719","deal_id":"local_69d0c8cce070d7.49048196","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:45:24"}
[2026-04-04 12:45:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","existing_deal_found":true,"existing_contact_id":"16719","existing_title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 12:45:24"}
[2026-04-04 12:45:24] [INFO] DealController.save validated payments {"deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-04 12:45:24] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 12:45:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0c8cce070d7.49048196","contact_didar_id":"16719","title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9143567350","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن سیف اللهی","existing_deal":"YES","existing_deal_id":"local_69d0c8cce070d7.49048196","existing_deal_status":"Pending","server_time":"2026-04-04 12:45:24","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 12:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:45:24] [INFO] Deal success processed {"contact_id":"16719","person_name":"محسن سیف اللهی","products_count":1}
[2026-04-04 12:45:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0c8cce070d7.49048196","contact_id":"16719","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9143567350 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-04 12:45:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 12:45:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-04 12:45:35] [INFO] Checking activity reminders 
[2026-04-04 12:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:45:44] [INFO] Checking activity reminders 
[2026-04-04 12:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:46:05] [INFO] Checking activity reminders 
[2026-04-04 12:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:46:14] [INFO] Checking activity reminders 
[2026-04-04 12:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:46:35] [INFO] Checking activity reminders 
[2026-04-04 12:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:46:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-04 12:46:44] [INFO] Checking activity reminders 
[2026-04-04 12:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:47:05] [INFO] Checking activity reminders 
[2026-04-04 12:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:47:14] [INFO] Checking activity reminders 
[2026-04-04 12:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:47:35] [INFO] Checking activity reminders 
[2026-04-04 12:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:47:44] [INFO] Checking activity reminders 
[2026-04-04 12:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:48:05] [INFO] Checking activity reminders 
[2026-04-04 12:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:48:15] [INFO] Checking activity reminders 
[2026-04-04 12:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:48:35] [INFO] Checking activity reminders 
[2026-04-04 12:48:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:48:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:48:45] [INFO] Checking activity reminders 
[2026-04-04 12:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:49:05] [INFO] Checking activity reminders 
[2026-04-04 12:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:49:15] [INFO] Checking activity reminders 
[2026-04-04 12:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:49:35] [INFO] Checking activity reminders 
[2026-04-04 12:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:49:45] [INFO] Checking activity reminders 
[2026-04-04 12:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:50:05] [INFO] Checking activity reminders 
[2026-04-04 12:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:50:15] [INFO] Checking activity reminders 
[2026-04-04 12:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:50:36] [INFO] Checking activity reminders 
[2026-04-04 12:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:50:45] [INFO] Checking activity reminders 
[2026-04-04 12:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:06] [INFO] Checking activity reminders 
[2026-04-04 12:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:16] [INFO] Checking activity reminders 
[2026-04-04 12:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:36] [INFO] Checking activity reminders 
[2026-04-04 12:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:46] [INFO] Checking activity reminders 
[2026-04-04 12:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:54] [INFO] Checking activity reminders 
[2026-04-04 12:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:51:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 12:52:06] [INFO] Checking activity reminders 
[2026-04-04 12:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 12:52:28] [INFO] Checking activity reminders 
[2026-04-04 12:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:52:36] [INFO] Checking activity reminders 
[2026-04-04 12:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:52:58] [INFO] Checking activity reminders 
[2026-04-04 12:52:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:52:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:53:06] [INFO] Checking activity reminders 
[2026-04-04 12:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:53:06] [INFO] Checking activity reminders 
[2026-04-04 12:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:53:36] [INFO] Checking activity reminders 
[2026-04-04 12:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:53:36] [INFO] Checking activity reminders 
[2026-04-04 12:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:54:06] [INFO] Checking activity reminders 
[2026-04-04 12:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:54:06] [INFO] Checking activity reminders 
[2026-04-04 12:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:54:36] [INFO] Checking activity reminders 
[2026-04-04 12:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:54:36] [INFO] Checking activity reminders 
[2026-04-04 12:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:54:53] [INFO] Checking activity reminders 
[2026-04-04 12:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:55:06] [INFO] Checking activity reminders 
[2026-04-04 12:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:55:20] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 12:55:20] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-04 12:55:20] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 12:55:23] [INFO] Checking activity reminders 
[2026-04-04 12:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:55:36] [INFO] Checking activity reminders 
[2026-04-04 12:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:55:53] [INFO] Checking activity reminders 
[2026-04-04 12:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:56:07] [INFO] Checking activity reminders 
[2026-04-04 12:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:56:23] [INFO] Checking activity reminders 
[2026-04-04 12:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:56:37] [INFO] Checking activity reminders 
[2026-04-04 12:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:57:07] [INFO] Checking activity reminders 
[2026-04-04 12:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:57:37] [INFO] Checking activity reminders 
[2026-04-04 12:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:58:07] [INFO] Checking activity reminders 
[2026-04-04 12:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:58:19] [INFO] Checking activity reminders 
[2026-04-04 12:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:58:37] [INFO] Checking activity reminders 
[2026-04-04 12:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:58:50] [INFO] Checking activity reminders 
[2026-04-04 12:58:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:58:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:59:07] [INFO] Checking activity reminders 
[2026-04-04 12:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:59:20] [INFO] Checking activity reminders 
[2026-04-04 12:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:59:37] [INFO] Checking activity reminders 
[2026-04-04 12:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 12:59:50] [INFO] Checking activity reminders 
[2026-04-04 12:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 12:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:00:08] [INFO] Checking activity reminders 
[2026-04-04 13:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:00:20] [INFO] Checking activity reminders 
[2026-04-04 13:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:00:38] [INFO] Checking activity reminders 
[2026-04-04 13:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:00:50] [INFO] Checking activity reminders 
[2026-04-04 13:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:01:08] [INFO] Checking activity reminders 
[2026-04-04 13:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:01:20] [INFO] Checking activity reminders 
[2026-04-04 13:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:01:38] [INFO] Checking activity reminders 
[2026-04-04 13:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:01:46] [INFO] Activity save request {"post_data":{"contact_id":"7251","deal_id":"local_69d0a545cd86d2.00444859","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"زمین خریده از پارسال درگیر فروشه نقدینگی خالیه میگه پول نباهشه نمیتونم نوسان بگیرم که\r\nگفتم فروش رفت اطلاع بده \r\n6ماهه هم گفتم ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:01:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7251","note_was_empty":true}
[2026-04-04 13:01:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"7251","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 13:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:46] [INFO] Updating virtual stage {"contact_id":"7251","stage_name":"deal_registered","force":false}
[2026-04-04 13:01:46] [INFO] Virtual stage successfully saved {"contact_id":"7251","stage_name":"deal_registered"}
[2026-04-04 13:01:46] [INFO] Virtual stage updated after activity save {"contact_id":"7251"}
[2026-04-04 13:01:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a545cd86d2.00444859","stage":"تماس پیگیری","status_change":null}
[2026-04-04 13:01:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0da822d3a85.77550815","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0da822d3a85.77550815"}
[2026-04-04 13:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:46] [INFO] Updating virtual stage {"contact_id":"7251","stage_name":"deal_registered","force":false}
[2026-04-04 13:01:46] [INFO] Virtual stage successfully saved {"contact_id":"7251","stage_name":"deal_registered"}
[2026-04-04 13:01:46] [INFO] Virtual stage updated after activity save {"contact_id":"7251"}
[2026-04-04 13:01:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7251","person_id":"6830"}
[2026-04-04 13:01:50] [INFO] Checking activity reminders 
[2026-04-04 13:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:02:08] [INFO] Checking activity reminders 
[2026-04-04 13:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:02:20] [INFO] Checking activity reminders 
[2026-04-04 13:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:02:38] [INFO] Checking activity reminders 
[2026-04-04 13:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:02:51] [INFO] Checking activity reminders 
[2026-04-04 13:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:03:08] [INFO] Checking activity reminders 
[2026-04-04 13:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:03:21] [INFO] Checking activity reminders 
[2026-04-04 13:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:03:38] [INFO] Checking activity reminders 
[2026-04-04 13:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:03:51] [INFO] Checking activity reminders 
[2026-04-04 13:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:04:08] [INFO] Checking activity reminders 
[2026-04-04 13:04:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:04:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:04:15] [INFO] Checking activity reminders 
[2026-04-04 13:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:04:39] [INFO] Checking activity reminders 
[2026-04-04 13:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:04:46] [INFO] Checking activity reminders 
[2026-04-04 13:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:05:09] [INFO] Checking activity reminders 
[2026-04-04 13:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:05:16] [INFO] Checking activity reminders 
[2026-04-04 13:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:05:39] [INFO] Checking activity reminders 
[2026-04-04 13:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:05:46] [INFO] Checking activity reminders 
[2026-04-04 13:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:06:09] [INFO] Checking activity reminders 
[2026-04-04 13:06:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:06:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:06:16] [INFO] Checking activity reminders 
[2026-04-04 13:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:06:39] [INFO] Checking activity reminders 
[2026-04-04 13:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:06:47] [INFO] Checking activity reminders 
[2026-04-04 13:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:07:09] [INFO] Checking activity reminders 
[2026-04-04 13:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:07:17] [INFO] Checking activity reminders 
[2026-04-04 13:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:07:39] [INFO] Checking activity reminders 
[2026-04-04 13:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:07:47] [INFO] Checking activity reminders 
[2026-04-04 13:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:08:09] [INFO] Checking activity reminders 
[2026-04-04 13:08:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:08:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:08:17] [INFO] Checking activity reminders 
[2026-04-04 13:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:08:40] [INFO] Checking activity reminders 
[2026-04-04 13:08:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:08:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:08:47] [INFO] Checking activity reminders 
[2026-04-04 13:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:09:10] [INFO] Checking activity reminders 
[2026-04-04 13:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:09:17] [INFO] Checking activity reminders 
[2026-04-04 13:09:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:09:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:09:40] [INFO] Checking activity reminders 
[2026-04-04 13:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:09:47] [INFO] Checking activity reminders 
[2026-04-04 13:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:10:10] [INFO] Checking activity reminders 
[2026-04-04 13:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:10:17] [INFO] Checking activity reminders 
[2026-04-04 13:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:10:40] [INFO] Checking activity reminders 
[2026-04-04 13:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:10:48] [INFO] Checking activity reminders 
[2026-04-04 13:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:11:10] [INFO] Checking activity reminders 
[2026-04-04 13:11:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:11:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:11:18] [INFO] Checking activity reminders 
[2026-04-04 13:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:11:35] [INFO] Checking activity reminders 
[2026-04-04 13:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:11:40] [INFO] Checking activity reminders 
[2026-04-04 13:11:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:11:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:12:05] [INFO] Checking activity reminders 
[2026-04-04 13:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:12:10] [INFO] Checking activity reminders 
[2026-04-04 13:12:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:12:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:12:36] [INFO] Checking activity reminders 
[2026-04-04 13:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:12:40] [INFO] Checking activity reminders 
[2026-04-04 13:12:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:12:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:13:06] [INFO] Checking activity reminders 
[2026-04-04 13:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:13:36] [INFO] Checking activity reminders 
[2026-04-04 13:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:14:06] [INFO] Checking activity reminders 
[2026-04-04 13:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:14:36] [INFO] Checking activity reminders 
[2026-04-04 13:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:15:08] [INFO] Checking activity reminders 
[2026-04-04 13:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:15:38] [INFO] Checking activity reminders 
[2026-04-04 13:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:16:08] [INFO] Checking activity reminders 
[2026-04-04 13:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:16:39] [INFO] Checking activity reminders 
[2026-04-04 13:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:17:09] [INFO] Checking activity reminders 
[2026-04-04 13:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:17:39] [INFO] Checking activity reminders 
[2026-04-04 13:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:18:09] [INFO] Checking activity reminders 
[2026-04-04 13:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:18:42] [INFO] Checking activity reminders 
[2026-04-04 13:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:19:12] [INFO] Checking activity reminders 
[2026-04-04 13:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:19:42] [INFO] Checking activity reminders 
[2026-04-04 13:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:20:13] [INFO] Checking activity reminders 
[2026-04-04 13:20:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:20:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:20:43] [INFO] Checking activity reminders 
[2026-04-04 13:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:21:14] [INFO] Checking activity reminders 
[2026-04-04 13:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:21:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10074","deal_id":"local_699c2455351311.06772514","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 13:21:38","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 13:21:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-04 13:21:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10074","is_new_deal":false}
[2026-04-04 13:21:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 13:21:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 13:21:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 13:21:38] [INFO] getContactPrimaryPhone called {"contact_id":"10074"}
[2026-04-04 13:21:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-04 13:21:38] [INFO] getContactPrimaryPhone result {"contact_id":"10074","person_found":true,"primary_phone":"9197308066"}
[2026-04-04 13:21:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197308066"}
[2026-04-04 13:21:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197308066","contact_id":"10074","deal_id":"local_699c2455351311.06772514","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 13:21:38"}
[2026-04-04 13:21:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c2455351311.06772514","contact_id":"10074","existing_deal_found":true,"existing_contact_id":"10074","existing_title":"معامله سوم 9197308066 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 13:21:38"}
[2026-04-04 13:21:38] [INFO] DealController.save validated payments {"deal_id":"local_699c2455351311.06772514","contact_id":"10074","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 13:21:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10074","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 13:21:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c2455351311.06772514","contact_didar_id":"10074","title":"معامله سوم 9197308066 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9197308066","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":24000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی برزگر","existing_deal":"YES","existing_deal_id":"local_699c2455351311.06772514","existing_deal_status":"Pending","server_time":"2026-04-04 13:21:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 13:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-04 13:21:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c2455351311.06772514","contact_id":"10074","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9197308066 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":24000000,"server_time":"2026-04-04 13:21:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 13:21:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-04 13:21:46] [INFO] Checking activity reminders 
[2026-04-04 13:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:22:16] [INFO] Checking activity reminders 
[2026-04-04 13:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:22:19] [INFO] Checking activity reminders 
[2026-04-04 13:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:22:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:22:46] [INFO] Checking activity reminders 
[2026-04-04 13:22:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:22:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:22:49] [INFO] Checking activity reminders 
[2026-04-04 13:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:23:16] [INFO] Checking activity reminders 
[2026-04-04 13:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:23:19] [INFO] Checking activity reminders 
[2026-04-04 13:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:23:21] [INFO] Activity save request {"post_data":{"contact_id":"2957","deal_id":"local_69d0a647822f72.55580630","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خاموش ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:23:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2957","note_was_empty":true}
[2026-04-04 13:23:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"2957","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:21] [INFO] Updating virtual stage {"contact_id":"2957","stage_name":"deal_registered","force":false}
[2026-04-04 13:23:21] [INFO] Virtual stage successfully saved {"contact_id":"2957","stage_name":"deal_registered"}
[2026-04-04 13:23:21] [INFO] Virtual stage updated after activity save {"contact_id":"2957"}
[2026-04-04 13:23:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a647822f72.55580630","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 13:23:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0df91262b36.82879830","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0df91262b36.82879830"}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:21] [INFO] Updating virtual stage {"contact_id":"2957","stage_name":"deal_registered","force":false}
[2026-04-04 13:23:21] [INFO] Virtual stage successfully saved {"contact_id":"2957","stage_name":"deal_registered"}
[2026-04-04 13:23:21] [INFO] Virtual stage updated after activity save {"contact_id":"2957"}
[2026-04-04 13:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2957","person_id":"5796"}
[2026-04-04 13:23:34] [INFO] Activity save request {"post_data":{"contact_id":"local_699ac3915763b4.19041363","deal_id":"local_699ac3915ae92","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","note":"","result_note":"تا اخر هفته 13 تسویه \r\nمنتظر حقوق \r\nتا خر ماه تسویه ","activity_duration":"0","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:23:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:23:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:23:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_699ac3915763b4.19041363","note_was_empty":true}
[2026-04-04 13:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:35] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-04 13:23:35] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-04 13:23:35] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-04 13:23:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ac3915ae92","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-04 13:23:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0df9eeda872.00575991","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0df9eeda872.00575991"}
[2026-04-04 13:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:35] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-04 13:23:35] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-04 13:23:35] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-04 13:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-04 13:23:47] [INFO] Checking activity reminders 
[2026-04-04 13:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:23:50] [INFO] Checking activity reminders 
[2026-04-04 13:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:24:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:17] [INFO] Checking activity reminders 
[2026-04-04 13:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:24:20] [INFO] Checking activity reminders 
[2026-04-04 13:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:24:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:24:46] [INFO] Activity save request {"post_data":{"contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"دریافت چک در تاریخ \r\n1405\/1\/15\/ تحویل خانم افراش ","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:24:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7918","note_was_empty":true}
[2026-04-04 13:24:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"7918","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:46] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-04 13:24:46] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-04 13:24:46] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-04 13:24:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9e549b7b3.48363944","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-04 13:24:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0dfe6c0ea77.05745525","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0dfe6c0ea77.05745525"}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:46] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-04 13:24:46] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-04 13:24:46] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-04 13:24:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-04 13:24:48] [INFO] Checking activity reminders 
[2026-04-04 13:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:24:50] [INFO] Checking activity reminders 
[2026-04-04 13:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:25:18] [INFO] Checking activity reminders 
[2026-04-04 13:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:25:20] [INFO] Checking activity reminders 
[2026-04-04 13:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:25:50] [INFO] Checking activity reminders 
[2026-04-04 13:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:26:20] [INFO] Checking activity reminders 
[2026-04-04 13:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:26:50] [INFO] Checking activity reminders 
[2026-04-04 13:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:26:51] [INFO] Checking activity reminders 
[2026-04-04 13:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:27:20] [INFO] Checking activity reminders 
[2026-04-04 13:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:27:22] [INFO] Checking activity reminders 
[2026-04-04 13:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:27:50] [INFO] Checking activity reminders 
[2026-04-04 13:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:27:52] [INFO] Checking activity reminders 
[2026-04-04 13:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:28:20] [INFO] Checking activity reminders 
[2026-04-04 13:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:28:22] [INFO] Checking activity reminders 
[2026-04-04 13:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:28:51] [INFO] Checking activity reminders 
[2026-04-04 13:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:28:52] [INFO] Checking activity reminders 
[2026-04-04 13:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:29:21] [INFO] Checking activity reminders 
[2026-04-04 13:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:29:22] [INFO] Checking activity reminders 
[2026-04-04 13:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:29:46] [INFO] Checking activity reminders 
[2026-04-04 13:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:29:51] [INFO] Checking activity reminders 
[2026-04-04 13:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:29:51] [INFO] Checking activity reminders 
[2026-04-04 13:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:30:21] [INFO] Checking activity reminders 
[2026-04-04 13:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:30:21] [INFO] Checking activity reminders 
[2026-04-04 13:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:30:26] [INFO] Activity save request {"post_data":{"contact_id":"20184","deal_id":"local_69d0a26dd56516.92024036","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مسافرته \/ اخر هفته میاد انجام میده \r\nبهش شرایط کانال کامل توضیح دادم \r\nدر بله پیام ارسال کردم \r\nاطلاع میده ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:30:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:30:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:30:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20184","note_was_empty":true}
[2026-04-04 13:30:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"20184","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 13:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:27] [INFO] Updating virtual stage {"contact_id":"20184","stage_name":"deal_registered","force":false}
[2026-04-04 13:30:27] [INFO] Virtual stage successfully saved {"contact_id":"20184","stage_name":"deal_registered"}
[2026-04-04 13:30:27] [INFO] Virtual stage updated after activity save {"contact_id":"20184"}
[2026-04-04 13:30:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a26dd56516.92024036","stage":"تماس پیگیری","status_change":null}
[2026-04-04 13:30:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0e13adcc9b7.14812918","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0e13adcc9b7.14812918"}
[2026-04-04 13:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:27] [INFO] Updating virtual stage {"contact_id":"20184","stage_name":"deal_registered","force":false}
[2026-04-04 13:30:27] [INFO] Virtual stage successfully saved {"contact_id":"20184","stage_name":"deal_registered"}
[2026-04-04 13:30:27] [INFO] Virtual stage updated after activity save {"contact_id":"20184"}
[2026-04-04 13:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-04 13:30:51] [INFO] Checking activity reminders 
[2026-04-04 13:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:30:52] [INFO] Checking activity reminders 
[2026-04-04 13:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:31:21] [INFO] Checking activity reminders 
[2026-04-04 13:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:31:22] [INFO] Checking activity reminders 
[2026-04-04 13:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:31:24] [INFO] Activity save request {"post_data":{"contact_id":"5958","deal_id":"local_69d0a5a5309db7.56895588","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پشت فرمون بود نیم ساعت دیگه تماس \r\nهدف تمدید کانال","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:31:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5958","note_was_empty":true}
[2026-04-04 13:31:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"5958","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:24] [INFO] Updating virtual stage {"contact_id":"5958","stage_name":"deal_registered","force":false}
[2026-04-04 13:31:24] [INFO] Virtual stage successfully saved {"contact_id":"5958","stage_name":"deal_registered"}
[2026-04-04 13:31:24] [INFO] Virtual stage updated after activity save {"contact_id":"5958"}
[2026-04-04 13:31:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a5a5309db7.56895588","stage":"تماس پیگیری","status_change":null}
[2026-04-04 13:31:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0e1745c1605.39586517","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0e1745c1605.39586517"}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:24] [INFO] Updating virtual stage {"contact_id":"5958","stage_name":"deal_registered","force":false}
[2026-04-04 13:31:24] [INFO] Virtual stage successfully saved {"contact_id":"5958","stage_name":"deal_registered"}
[2026-04-04 13:31:24] [INFO] Virtual stage updated after activity save {"contact_id":"5958"}
[2026-04-04 13:31:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 13:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:31:51] [INFO] Checking activity reminders 
[2026-04-04 13:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:31:52] [INFO] Checking activity reminders 
[2026-04-04 13:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:32:21] [INFO] Checking activity reminders 
[2026-04-04 13:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:32:22] [INFO] Checking activity reminders 
[2026-04-04 13:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:32:51] [INFO] Checking activity reminders 
[2026-04-04 13:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:32:52] [INFO] Checking activity reminders 
[2026-04-04 13:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:33:04] [INFO] Checking activity reminders 
[2026-04-04 13:33:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:33:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:33:21] [INFO] Checking activity reminders 
[2026-04-04 13:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:33:34] [INFO] Checking activity reminders 
[2026-04-04 13:33:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:33:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:33:51] [INFO] Checking activity reminders 
[2026-04-04 13:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:34:05] [INFO] Checking activity reminders 
[2026-04-04 13:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:34:21] [INFO] Checking activity reminders 
[2026-04-04 13:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:34:35] [INFO] Checking activity reminders 
[2026-04-04 13:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:34:52] [INFO] Checking activity reminders 
[2026-04-04 13:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:35:05] [INFO] Checking activity reminders 
[2026-04-04 13:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:35:22] [INFO] Checking activity reminders 
[2026-04-04 13:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:35:35] [INFO] Checking activity reminders 
[2026-04-04 13:35:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:35:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:35:52] [INFO] Checking activity reminders 
[2026-04-04 13:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:36:05] [INFO] Checking activity reminders 
[2026-04-04 13:36:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:36:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:36:22] [INFO] Checking activity reminders 
[2026-04-04 13:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:36:35] [INFO] Checking activity reminders 
[2026-04-04 13:36:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:36:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:36:52] [INFO] Checking activity reminders 
[2026-04-04 13:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:05] [INFO] Checking activity reminders 
[2026-04-04 13:37:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:37:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:22] [INFO] Checking activity reminders 
[2026-04-04 13:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:27] [INFO] Checking activity reminders 
[2026-04-04 13:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:30] [INFO] Checking activity reminders 
[2026-04-04 13:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-04 13:37:52] [INFO] Checking activity reminders 
[2026-04-04 13:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:37:58] [INFO] Activity save request {"post_data":{"contact_id":"21208","deal_id":"local_69d0a5d9022dc6.26179429","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پشت خطی ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 13:37:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:37:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 13:37:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 13:37:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:37:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21208","note_was_empty":true}
[2026-04-04 13:37:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"21208","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 13:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:37:59] [INFO] Updating virtual stage {"contact_id":"21208","stage_name":"deal_registered","force":false}
[2026-04-04 13:37:59] [INFO] Virtual stage successfully saved {"contact_id":"21208","stage_name":"deal_registered"}
[2026-04-04 13:37:59] [INFO] Virtual stage updated after activity save {"contact_id":"21208"}
[2026-04-04 13:37:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a5d9022dc6.26179429","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 13:37:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0e2fedae2e5.40168627","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 13:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:37:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0e2fedae2e5.40168627"}
[2026-04-04 13:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:37:59] [INFO] Updating virtual stage {"contact_id":"21208","stage_name":"deal_registered","force":false}
[2026-04-04 13:37:59] [INFO] Virtual stage successfully saved {"contact_id":"21208","stage_name":"deal_registered"}
[2026-04-04 13:37:59] [INFO] Virtual stage updated after activity save {"contact_id":"21208"}
[2026-04-04 13:37:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21208","person_id":"5770"}
[2026-04-04 13:38:00] [INFO] Checking activity reminders 
[2026-04-04 13:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:38:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 13:38:30] [INFO] Checking activity reminders 
[2026-04-04 13:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:39:00] [INFO] Checking activity reminders 
[2026-04-04 13:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:39:48] [INFO] Checking activity reminders 
[2026-04-04 13:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:40:36] [INFO] Checking activity reminders 
[2026-04-04 13:40:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:40:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:40:44] [INFO] Checking activity reminders 
[2026-04-04 13:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:40:49] [INFO] Checking activity reminders 
[2026-04-04 13:40:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:40:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:41:19] [INFO] Checking activity reminders 
[2026-04-04 13:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:41:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 13:41:49] [INFO] Checking activity reminders 
[2026-04-04 13:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:41:53] [INFO] Checking activity reminders 
[2026-04-04 13:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:42:19] [INFO] Checking activity reminders 
[2026-04-04 13:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:42:23] [INFO] Checking activity reminders 
[2026-04-04 13:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:42:50] [INFO] Checking activity reminders 
[2026-04-04 13:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:42:53] [INFO] Checking activity reminders 
[2026-04-04 13:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:43:14] [INFO] Checking activity reminders 
[2026-04-04 13:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:43:23] [INFO] Checking activity reminders 
[2026-04-04 13:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:43:44] [INFO] Checking activity reminders 
[2026-04-04 13:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:43:53] [INFO] Checking activity reminders 
[2026-04-04 13:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 13:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"1o5u62hnrqoa06ufcmmrpd5kfu","session_keys":[],"action":"log_client_event"}
[2026-04-04 13:52:17] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 13:52:17] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 13:52:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 13:52:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 13:52:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 13:52:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 13:52:22] [INFO] Checking activity reminders 
[2026-04-04 13:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 13:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:00:57] [WARNING] Auth check failed - not authenticated {"session_id":"tt5rjhmieq4soj5k1jocjm71p3","session_keys":[],"action":"log_client_event"}
[2026-04-04 14:00:58] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 14:01:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:36] [INFO] Activity save request {"post_data":{"contact_id":"5958","deal_id":"local_69d0a5a5309db7.56895588","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 14:01:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 14:01:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 14:01:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5958","note_was_empty":true}
[2026-04-04 14:01:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"5958","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 14:01:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:37] [INFO] Updating virtual stage {"contact_id":"5958","stage_name":"deal_registered","force":false}
[2026-04-04 14:01:37] [INFO] Virtual stage successfully saved {"contact_id":"5958","stage_name":"deal_registered"}
[2026-04-04 14:01:37] [INFO] Virtual stage updated after activity save {"contact_id":"5958"}
[2026-04-04 14:01:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a5a5309db7.56895588","stage":"تماس پیگیری","status_change":null}
[2026-04-04 14:01:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0e889011521.34782363","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 14:01:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0e889011521.34782363"}
[2026-04-04 14:01:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:37] [INFO] Updating virtual stage {"contact_id":"5958","stage_name":"deal_registered","force":false}
[2026-04-04 14:01:37] [INFO] Virtual stage successfully saved {"contact_id":"5958","stage_name":"deal_registered"}
[2026-04-04 14:01:37] [INFO] Virtual stage updated after activity save {"contact_id":"5958"}
[2026-04-04 14:01:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5958","person_id":"7265"}
[2026-04-04 14:01:41] [INFO] Checking activity reminders 
[2026-04-04 14:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:02:11] [INFO] Checking activity reminders 
[2026-04-04 14:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:02:41] [INFO] Checking activity reminders 
[2026-04-04 14:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:03:11] [INFO] Checking activity reminders 
[2026-04-04 14:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:04:49] [INFO] Checking activity reminders 
[2026-04-04 14:04:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:04:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:05:19] [INFO] Checking activity reminders 
[2026-04-04 14:05:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:05:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:05:49] [INFO] Checking activity reminders 
[2026-04-04 14:05:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:05:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:06:19] [INFO] Checking activity reminders 
[2026-04-04 14:06:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:06:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:06:49] [INFO] Checking activity reminders 
[2026-04-04 14:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:07:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:07:19] [INFO] Checking activity reminders 
[2026-04-04 14:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:07:48] [INFO] Checking activity reminders 
[2026-04-04 14:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:07:49] [INFO] Checking activity reminders 
[2026-04-04 14:07:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:07:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:07:50] [INFO] Checking activity reminders 
[2026-04-04 14:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:08:07] [INFO] Checking activity reminders 
[2026-04-04 14:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:08:18] [INFO] Checking activity reminders 
[2026-04-04 14:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:08:19] [INFO] Checking activity reminders 
[2026-04-04 14:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:08:48] [INFO] Checking activity reminders 
[2026-04-04 14:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:08:50] [INFO] Checking activity reminders 
[2026-04-04 14:08:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:08:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:09:18] [INFO] Checking activity reminders 
[2026-04-04 14:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:09:20] [INFO] Checking activity reminders 
[2026-04-04 14:09:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:09:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:09:49] [INFO] Checking activity reminders 
[2026-04-04 14:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:09:50] [INFO] Checking activity reminders 
[2026-04-04 14:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:10:19] [INFO] Checking activity reminders 
[2026-04-04 14:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:10:20] [INFO] Checking activity reminders 
[2026-04-04 14:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:10:49] [INFO] Checking activity reminders 
[2026-04-04 14:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:10:50] [INFO] Checking activity reminders 
[2026-04-04 14:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:11:19] [INFO] Checking activity reminders 
[2026-04-04 14:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:11:20] [INFO] Checking activity reminders 
[2026-04-04 14:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:11:49] [INFO] Checking activity reminders 
[2026-04-04 14:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:11:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2898","deal_id":"local_69d0a1272dec71.12233669","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 14:11:55","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 14:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:11:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2898","is_new_deal":false}
[2026-04-04 14:11:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 14:11:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 14:11:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 14:11:55] [INFO] getContactPrimaryPhone called {"contact_id":"2898"}
[2026-04-04 14:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:11:55] [INFO] getContactPrimaryPhone result {"contact_id":"2898","person_found":true,"primary_phone":"9125075001"}
[2026-04-04 14:11:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125075001"}
[2026-04-04 14:11:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125075001","contact_id":"2898","deal_id":"local_69d0a1272dec71.12233669","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 14:11:55"}
[2026-04-04 14:11:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","existing_deal_found":true,"existing_contact_id":"2898","existing_title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 14:11:55"}
[2026-04-04 14:11:55] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 14:11:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2898","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 14:11:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1272dec71.12233669","contact_didar_id":"2898","title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125075001","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی امینی","existing_deal":"YES","existing_deal_id":"local_69d0a1272dec71.12233669","existing_deal_status":"Pending","server_time":"2026-04-04 14:11:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 14:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:11:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 14:11:55","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 14:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Activity save request {"post_data":{"contact_id":"2898","deal_id":"local_69d0a1272dec71.12233669","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 14:12:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2898","note_was_empty":true}
[2026-04-04 14:12:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"2898","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Updating virtual stage {"contact_id":"2898","stage_name":"deal_registered","force":false}
[2026-04-04 14:12:10] [INFO] Virtual stage successfully saved {"contact_id":"2898","stage_name":"deal_registered"}
[2026-04-04 14:12:10] [INFO] Virtual stage updated after activity save {"contact_id":"2898"}
[2026-04-04 14:12:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a1272dec71.12233669","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 14:12:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0eb025753c6.10221540","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0eb025753c6.10221540"}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:10] [INFO] Updating virtual stage {"contact_id":"2898","stage_name":"deal_registered","force":false}
[2026-04-04 14:12:10] [INFO] Virtual stage successfully saved {"contact_id":"2898","stage_name":"deal_registered"}
[2026-04-04 14:12:10] [INFO] Virtual stage updated after activity save {"contact_id":"2898"}
[2026-04-04 14:12:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 14:12:19] [INFO] Checking activity reminders 
[2026-04-04 14:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:12:49] [INFO] Checking activity reminders 
[2026-04-04 14:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:13:01] [INFO] Checking activity reminders 
[2026-04-04 14:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:13:24] [INFO] Checking activity reminders 
[2026-04-04 14:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 14:13:54] [INFO] Checking activity reminders 
[2026-04-04 14:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:14:00] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 14:14:00] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 14:14:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:14:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 14:14:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 14:14:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 14:14:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 14:14:24] [INFO] Checking activity reminders 
[2026-04-04 14:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:14:46] [INFO] Checking activity reminders 
[2026-04-04 14:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:14:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:14:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 14:14:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 14:14:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 14:14:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 14:14:54] [INFO] Checking activity reminders 
[2026-04-04 14:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:15:14] [INFO] Checking activity reminders 
[2026-04-04 14:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:15:20] [INFO] Checking activity reminders 
[2026-04-04 14:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:15:52] [INFO] Checking activity reminders 
[2026-04-04 14:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:16:22] [INFO] Checking activity reminders 
[2026-04-04 14:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:16:52] [INFO] Checking activity reminders 
[2026-04-04 14:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:17:22] [INFO] Checking activity reminders 
[2026-04-04 14:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:17:59] [INFO] Checking activity reminders 
[2026-04-04 14:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:18:29] [INFO] Checking activity reminders 
[2026-04-04 14:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:19:05] [INFO] Checking activity reminders 
[2026-04-04 14:19:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:19:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:19:35] [INFO] Checking activity reminders 
[2026-04-04 14:19:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:19:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:20:05] [INFO] Checking activity reminders 
[2026-04-04 14:20:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:20:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:21:01] [INFO] Checking activity reminders 
[2026-04-04 14:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:21:21] [INFO] Checking activity reminders 
[2026-04-04 14:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:24:15] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 14:24:15] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 14:24:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:24:26] [INFO] Checking activity reminders 
[2026-04-04 14:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:24:56] [INFO] Checking activity reminders 
[2026-04-04 14:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:25:26] [INFO] Checking activity reminders 
[2026-04-04 14:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:26:17] [INFO] Checking activity reminders 
[2026-04-04 14:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:34:05] [WARNING] Auth check failed - not authenticated {"session_id":"1o5u62hnrqoa06ufcmmrpd5kfu","session_keys":[],"action":"log_client_event"}
[2026-04-04 14:34:07] [WARNING] Auth check failed - not authenticated {"session_id":"1o5u62hnrqoa06ufcmmrpd5kfu","session_keys":[],"action":"log_client_event"}
[2026-04-04 14:34:07] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-04-04 14:34:07] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-04-04 14:34:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:34:14] [INFO] Master password used for login {"user_id":"1","identifier":"خانم توانا","role":"agent"}
[2026-04-04 14:34:14] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":true}
[2026-04-04 14:35:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:35:39] [INFO] Checking activity reminders 
[2026-04-04 14:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:35:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 14:35:50] [INFO] Checking activity reminders 
[2026-04-04 14:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:36:20] [INFO] Checking activity reminders 
[2026-04-04 14:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:36:30] [INFO] Activity save request {"post_data":{"contact_id":"9087","deal_id":"local_69d0a6f94701e8.37606814","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری \/ این ادم قبلا از کانال حذف شده نارضایتی داشته ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 14:36:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-04 14:36:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 14:36:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9087","note_was_empty":true}
[2026-04-04 14:36:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"9087","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:31] [INFO] Updating virtual stage {"contact_id":"9087","stage_name":"deal_registered","force":false}
[2026-04-04 14:36:31] [INFO] Virtual stage successfully saved {"contact_id":"9087","stage_name":"deal_registered"}
[2026-04-04 14:36:31] [INFO] Virtual stage updated after activity save {"contact_id":"9087"}
[2026-04-04 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a6f94701e8.37606814","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-04 14:36:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0f0b70060d3.31989714","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0f0b70060d3.31989714"}
[2026-04-04 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:31] [INFO] Updating virtual stage {"contact_id":"9087","stage_name":"deal_registered","force":false}
[2026-04-04 14:36:31] [INFO] Virtual stage successfully saved {"contact_id":"9087","stage_name":"deal_registered"}
[2026-04-04 14:36:31] [INFO] Virtual stage updated after activity save {"contact_id":"9087"}
[2026-04-04 14:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9087","person_id":"6222"}
[2026-04-04 14:36:51] [INFO] Checking activity reminders 
[2026-04-04 14:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:37:21] [INFO] Checking activity reminders 
[2026-04-04 14:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:37:51] [INFO] Checking activity reminders 
[2026-04-04 14:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:38:21] [INFO] Checking activity reminders 
[2026-04-04 14:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:38:51] [INFO] Checking activity reminders 
[2026-04-04 14:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:39:21] [INFO] Checking activity reminders 
[2026-04-04 14:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:39:51] [INFO] Checking activity reminders 
[2026-04-04 14:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:40:22] [INFO] Checking activity reminders 
[2026-04-04 14:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:42:02] [INFO] Checking activity reminders 
[2026-04-04 14:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-04 14:42:32] [INFO] Checking activity reminders 
[2026-04-04 14:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:43:03] [INFO] Checking activity reminders 
[2026-04-04 14:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:43:11] [INFO] Checking activity reminders 
[2026-04-04 14:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:45:26] [INFO] Checking activity reminders 
[2026-04-04 14:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-04 14:47:02] [INFO] Checking activity reminders 
[2026-04-04 14:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:47:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:47:32] [INFO] Checking activity reminders 
[2026-04-04 14:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:48:03] [INFO] Checking activity reminders 
[2026-04-04 14:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:48:33] [INFO] Checking activity reminders 
[2026-04-04 14:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:49:03] [INFO] Checking activity reminders 
[2026-04-04 14:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:49:33] [INFO] Checking activity reminders 
[2026-04-04 14:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:49:43] [INFO] Activity save request {"post_data":{"contact_id":"3408","deal_id":"local_694ff54ce8c123.07044826","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عضویت 54ت دارن دسترسی دارن","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:49:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 14:49:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:49:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3408","note_was_empty":true}
[2026-04-04 14:49:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"3408","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:49:43] [INFO] Updating virtual stage {"contact_id":"3408","stage_name":"deal_registered","force":false}
[2026-04-04 14:49:43] [INFO] Virtual stage successfully saved {"contact_id":"3408","stage_name":"deal_registered"}
[2026-04-04 14:49:43] [INFO] Virtual stage updated after activity save {"contact_id":"3408"}
[2026-04-04 14:49:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694ff54ce8c123.07044826","stage":"تماس پیگیری","status_change":null}
[2026-04-04 14:49:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0f3cf68bcd5.08011378","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:49:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0f3cf68bcd5.08011378"}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:49:43] [INFO] Updating virtual stage {"contact_id":"3408","stage_name":"deal_registered","force":false}
[2026-04-04 14:49:43] [INFO] Virtual stage successfully saved {"contact_id":"3408","stage_name":"deal_registered"}
[2026-04-04 14:49:43] [INFO] Virtual stage updated after activity save {"contact_id":"3408"}
[2026-04-04 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-04 14:50:55] [INFO] Checking activity reminders 
[2026-04-04 14:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:51:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-04-04 14:51:37] [INFO] Checking activity reminders 
[2026-04-04 14:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-04-04 14:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-04 14:52:07] [INFO] Checking activity reminders 
[2026-04-04 14:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:52:24] [INFO] Checking activity reminders 
[2026-04-04 14:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:52:26] [INFO] Checking activity reminders 
[2026-04-04 14:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:52:52] [INFO] Checking activity reminders 
[2026-04-04 14:52:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:52:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:53:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-04 14:53:22] [INFO] Checking activity reminders 
[2026-04-04 14:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:54:18] [INFO] Checking activity reminders 
[2026-04-04 14:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:54:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-04 14:54:48] [INFO] Checking activity reminders 
[2026-04-04 14:54:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:54:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:55:03] [INFO] Checking activity reminders 
[2026-04-04 14:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:55:27] [INFO] Checking activity reminders 
[2026-04-04 14:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:55:59] [INFO] Checking activity reminders 
[2026-04-04 14:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:56:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-04 14:56:44] [INFO] Checking activity reminders 
[2026-04-04 14:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:56:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-04 14:57:07] [INFO] Checking activity reminders 
[2026-04-04 14:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:58:06] [INFO] Checking activity reminders 
[2026-04-04 14:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-04 14:58:36] [INFO] Checking activity reminders 
[2026-04-04 14:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:59:02] [INFO] Checking activity reminders 
[2026-04-04 14:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:59:32] [INFO] Checking activity reminders 
[2026-04-04 14:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 14:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 14:59:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16540","person_id":"14380"}
[2026-04-04 14:59:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-04-04 15:00:10] [INFO] Checking activity reminders 
[2026-04-04 15:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:00:40] [INFO] Checking activity reminders 
[2026-04-04 15:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:01:10] [INFO] Checking activity reminders 
[2026-04-04 15:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:01:40] [INFO] Checking activity reminders 
[2026-04-04 15:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:02:10] [INFO] Checking activity reminders 
[2026-04-04 15:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:02:40] [INFO] Checking activity reminders 
[2026-04-04 15:02:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:02:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:02:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:02:41","session_id":"2hla67pl6i5jpqosf6i1s1aqlp"}
[2026-04-04 15:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:02:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5334","is_new_deal":false}
[2026-04-04 15:02:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 15:02:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:02:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:02:41] [INFO] getContactPrimaryPhone called {"contact_id":"5334"}
[2026-04-04 15:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:02:41] [INFO] getContactPrimaryPhone result {"contact_id":"5334","person_found":true,"primary_phone":"9033577801"}
[2026-04-04 15:02:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9033577801"}
[2026-04-04 15:02:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9033577801","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 15:02:41"}
[2026-04-04 15:02:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","existing_deal_found":true,"existing_contact_id":"5334","existing_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 15:02:41"}
[2026-04-04 15:02:42] [INFO] DealController.save validated payments {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 15:02:42] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5334","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:02:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1745d5f25f6.43254270","contact_didar_id":"5334","title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9033577801","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرشید کیهانی","existing_deal":"YES","existing_deal_id":"local_69b1745d5f25f6.43254270","existing_deal_status":"Pending","server_time":"2026-04-04 15:02:42","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-04 15:02:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:02:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-04 15:02:42","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:02:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:03:11] [INFO] Checking activity reminders 
[2026-04-04 15:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-04 15:03:41] [INFO] Checking activity reminders 
[2026-04-04 15:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:04:16] [INFO] Checking activity reminders 
[2026-04-04 15:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-04-04 15:04:47] [INFO] Checking activity reminders 
[2026-04-04 15:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-04 15:05:18] [INFO] Checking activity reminders 
[2026-04-04 15:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:07:11] [INFO] Checking activity reminders 
[2026-04-04 15:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:17:51] [INFO] Checking activity reminders 
[2026-04-04 15:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:18:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:18:21] [INFO] Checking activity reminders 
[2026-04-04 15:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:18:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:18:52","session_id":"2hla67pl6i5jpqosf6i1s1aqlp"}
[2026-04-04 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:18:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5334","is_new_deal":false}
[2026-04-04 15:18:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:18:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:18:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:18:52] [INFO] getContactPrimaryPhone called {"contact_id":"5334"}
[2026-04-04 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:18:52] [INFO] getContactPrimaryPhone result {"contact_id":"5334","person_found":true,"primary_phone":"9033577801"}
[2026-04-04 15:18:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9033577801"}
[2026-04-04 15:18:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9033577801","contact_id":"5334","deal_id":"local_69b1745d5f25f6.43254270","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 15:18:52"}
[2026-04-04 15:18:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","existing_deal_found":true,"existing_contact_id":"5334","existing_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 15:18:52"}
[2026-04-04 15:18:52] [INFO] DealController.save validated payments {"deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-04 15:18:52] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5334","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:18:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1745d5f25f6.43254270","contact_didar_id":"5334","title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9033577801","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرشید کیهانی","existing_deal":"YES","existing_deal_id":"local_69b1745d5f25f6.43254270","existing_deal_status":"Pending","server_time":"2026-04-04 15:18:52","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-04 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:18:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1745d5f25f6.43254270","contact_id":"5334","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9033577801 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-04 15:18:52","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:18:52] [INFO] Checking activity reminders 
[2026-04-04 15:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-04 15:19:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-04 15:19:23] [INFO] Checking activity reminders 
[2026-04-04 15:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:19:53] [INFO] Checking activity reminders 
[2026-04-04 15:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:20:39] [INFO] Checking activity reminders 
[2026-04-04 15:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:21:11] [WARNING] Auth check failed - not authenticated {"session_id":"50v0o120n8lcl6dp38ic4ui1lg","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:21:11] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-04 15:21:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:21:42] [INFO] Checking activity reminders 
[2026-04-04 15:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:22:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:22:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:22:24] [INFO] Checking activity reminders 
[2026-04-04 15:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:22:28] [INFO] Checking activity reminders 
[2026-04-04 15:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:22:30] [INFO] Checking activity reminders 
[2026-04-04 15:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:22:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:22:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 15:22:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2898","deal_id":"local_69d0a1272dec71.12233669","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:22:56","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 15:22:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2898","is_new_deal":false}
[2026-04-04 15:22:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 15:22:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:22:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:22:56] [INFO] getContactPrimaryPhone called {"contact_id":"2898"}
[2026-04-04 15:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 15:22:56] [INFO] getContactPrimaryPhone result {"contact_id":"2898","person_found":true,"primary_phone":"9125075001"}
[2026-04-04 15:22:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125075001"}
[2026-04-04 15:22:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125075001","contact_id":"2898","deal_id":"local_69d0a1272dec71.12233669","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:22:56"}
[2026-04-04 15:22:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","existing_deal_found":true,"existing_contact_id":"2898","existing_title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:22:56"}
[2026-04-04 15:22:56] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 15:22:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2898","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:22:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1272dec71.12233669","contact_didar_id":"2898","title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125075001","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی امینی","existing_deal":"YES","existing_deal_id":"local_69d0a1272dec71.12233669","existing_deal_status":"Pending","server_time":"2026-04-04 15:22:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 15:22:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1272dec71.12233669","contact_id":"2898","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125075001 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 15:22:56","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2898","person_id":"18515"}
[2026-04-04 15:23:03] [INFO] Checking activity reminders 
[2026-04-04 15:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:23:33] [INFO] Checking activity reminders 
[2026-04-04 15:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:23:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:24:03] [INFO] Checking activity reminders 
[2026-04-04 15:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:24:08] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 15:24:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:24:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-04 15:24:34] [INFO] Checking activity reminders 
[2026-04-04 15:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:25:04] [INFO] Checking activity reminders 
[2026-04-04 15:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:25:35] [INFO] Checking activity reminders 
[2026-04-04 15:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:25:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","deal_id":"15938","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:25:44","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:25:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1360","is_new_deal":false}
[2026-04-04 15:25:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:25:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:25:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:25:44] [INFO] getContactPrimaryPhone called {"contact_id":"1360"}
[2026-04-04 15:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:25:44] [INFO] getContactPrimaryPhone result {"contact_id":"1360","person_found":true,"primary_phone":"9363112282"}
[2026-04-04 15:25:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363112282"}
[2026-04-04 15:25:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363112282","contact_id":"1360","deal_id":"15938","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:25:44"}
[2026-04-04 15:25:44] [INFO] DealController.save existing deal lookup {"deal_id":"15938","contact_id":"1360","existing_deal_found":true,"existing_contact_id":"1360","existing_title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:25:44"}
[2026-04-04 15:25:44] [INFO] DealController.save validated payments {"deal_id":"15938","contact_id":"1360","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-04 15:25:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1360","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:25:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"15938","contact_didar_id":"1360","title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله احمد غلامحسین زاده","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"غلامحسین زاده","existing_deal":"YES","existing_deal_id":"15938","existing_deal_status":"Pending","server_time":"2026-04-04 15:25:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:25:44] [INFO] Deal success processed {"contact_id":"1360","person_name":"غلامحسین زاده","products_count":1}
[2026-04-04 15:25:44] [INFO] ensureDealProductsFromText: products synced {"deal_id":"15938","product_ids":[35]}
[2026-04-04 15:25:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"15938","contact_id":"1360","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله احمد غلامحسین زاده | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-04 15:25:44","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-04 15:26:05] [INFO] Checking activity reminders 
[2026-04-04 15:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:26:17] [INFO] Checking activity reminders 
[2026-04-04 15:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:26:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:26:36] [INFO] Checking activity reminders 
[2026-04-04 15:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:26:47] [INFO] Checking activity reminders 
[2026-04-04 15:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:27:06] [INFO] Checking activity reminders 
[2026-04-04 15:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:27:10] [INFO] Checking activity reminders 
[2026-04-04 15:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:27:13] [INFO] Checking activity reminders 
[2026-04-04 15:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:27:22] [INFO] Checking activity reminders 
[2026-04-04 15:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:27:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:27:43] [INFO] Checking activity reminders 
[2026-04-04 15:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:28:13] [INFO] Checking activity reminders 
[2026-04-04 15:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:28:32] [INFO] Checking activity reminders 
[2026-04-04 15:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:28:44] [INFO] Checking activity reminders 
[2026-04-04 15:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:28:48] [INFO] Activity save request {"post_data":{"contact_id":"13563","deal_id":"local_69b42efeb6fac0.18833320","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تسویه تا فردا گفت","activity_duration":"0","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 15:28:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13563","note_was_empty":true}
[2026-04-04 15:28:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"13563","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:48] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-04 15:28:48] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-04 15:28:48] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-04 15:28:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b42efeb6fac0.18833320","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-04 15:28:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0fcf8380443.41205680","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0fcf8380443.41205680"}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:48] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-04 15:28:48] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-04 15:28:48] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-04 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-04 15:28:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20870","deal_id":"local_69d0a0fa334a24.01550662","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:28:52","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:28:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20870","is_new_deal":false}
[2026-04-04 15:28:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 15:28:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:28:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:28:52] [INFO] getContactPrimaryPhone called {"contact_id":"20870"}
[2026-04-04 15:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:28:52] [INFO] getContactPrimaryPhone result {"contact_id":"20870","person_found":true,"primary_phone":"9124717259"}
[2026-04-04 15:28:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124717259"}
[2026-04-04 15:28:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124717259","contact_id":"20870","deal_id":"local_69d0a0fa334a24.01550662","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:28:52"}
[2026-04-04 15:28:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a0fa334a24.01550662","contact_id":"20870","existing_deal_found":true,"existing_contact_id":"20870","existing_title":"معامله دوم 9124717259 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:28:52"}
[2026-04-04 15:28:52] [INFO] DealController.save validated payments {"deal_id":"local_69d0a0fa334a24.01550662","contact_id":"20870","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 15:28:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20870","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:28:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a0fa334a24.01550662","contact_didar_id":"20870","title":"معامله دوم 9124717259 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124717259","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد سلطانی نژاد","existing_deal":"YES","existing_deal_id":"local_69d0a0fa334a24.01550662","existing_deal_status":"Pending","server_time":"2026-04-04 15:28:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:28:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a0fa334a24.01550662","contact_id":"20870","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124717259 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 15:28:52","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:28:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:29:02] [INFO] Checking activity reminders 
[2026-04-04 15:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:29:15] [INFO] Checking activity reminders 
[2026-04-04 15:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:29:45] [INFO] Checking activity reminders 
[2026-04-04 15:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:30:15] [INFO] Checking activity reminders 
[2026-04-04 15:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:30:46] [INFO] Checking activity reminders 
[2026-04-04 15:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:31:05] [INFO] Activity save request {"post_data":{"contact_id":"20870","deal_id":"local_69d0a0fa334a24.01550662","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"برای پدرش مشکل مالی پیش اومده مجبور شده سرمایه رو برای پدر بذاره \r\nنقدینگی و سرمایه وصولی داره قراره دستش بیاد تماس میگیره \r\nپیام در بله ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 15:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 15:31:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 15:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20870","note_was_empty":true}
[2026-04-04 15:31:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"20870","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 15:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:05] [INFO] Updating virtual stage {"contact_id":"20870","stage_name":"deal_registered","force":false}
[2026-04-04 15:31:05] [INFO] Virtual stage successfully saved {"contact_id":"20870","stage_name":"deal_registered"}
[2026-04-04 15:31:05] [INFO] Virtual stage updated after activity save {"contact_id":"20870"}
[2026-04-04 15:31:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a0fa334a24.01550662","stage":"تماس پیگیری","status_change":null}
[2026-04-04 15:31:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0fd81ec4fd0.46668307","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 15:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0fd81ec4fd0.46668307"}
[2026-04-04 15:31:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:05] [INFO] Updating virtual stage {"contact_id":"20870","stage_name":"deal_registered","force":false}
[2026-04-04 15:31:05] [INFO] Virtual stage successfully saved {"contact_id":"20870","stage_name":"deal_registered"}
[2026-04-04 15:31:05] [INFO] Virtual stage updated after activity save {"contact_id":"20870"}
[2026-04-04 15:31:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20870","person_id":"19363"}
[2026-04-04 15:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:31:16] [INFO] Checking activity reminders 
[2026-04-04 15:31:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:31:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:31:43] [INFO] Checking activity reminders 
[2026-04-04 15:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:31:47] [INFO] Checking activity reminders 
[2026-04-04 15:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-04 15:32:13] [INFO] Checking activity reminders 
[2026-04-04 15:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:32:21] [INFO] Checking activity reminders 
[2026-04-04 15:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:32:52] [INFO] Checking activity reminders 
[2026-04-04 15:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:33:22] [INFO] Checking activity reminders 
[2026-04-04 15:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:33:53] [INFO] Checking activity reminders 
[2026-04-04 15:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:34:22] [INFO] Checking activity reminders 
[2026-04-04 15:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:34:23] [INFO] Checking activity reminders 
[2026-04-04 15:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:34:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15239","person_id":"3260"}
[2026-04-04 15:34:52] [INFO] Checking activity reminders 
[2026-04-04 15:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:34:53] [INFO] Checking activity reminders 
[2026-04-04 15:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:35:22] [INFO] Checking activity reminders 
[2026-04-04 15:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:35:24] [INFO] Checking activity reminders 
[2026-04-04 15:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:35:49] [WARNING] Auth check failed - not authenticated {"session_id":"dp4gtnon0paqmh7i7oetiocs0e","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:35:50] [INFO] Master password used for login {"user_id":"8","identifier":"خانم شکیبا","role":"agent"}
[2026-04-04 15:35:50] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":true}
[2026-04-04 15:35:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:35:52] [INFO] Checking activity reminders 
[2026-04-04 15:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:35:55] [INFO] Checking activity reminders 
[2026-04-04 15:35:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:35:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"dp4gtnon0paqmh7i7oetiocs0e","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:36:07] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 15:36:07] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 15:36:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:36:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 15:36:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 15:36:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 15:36:22] [INFO] Checking activity reminders 
[2026-04-04 15:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:36:25] [INFO] Checking activity reminders 
[2026-04-04 15:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:36:37] [INFO] Checking activity reminders 
[2026-04-04 15:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:36:49] [INFO] Activity save request {"post_data":{"contact_id":"2062","deal_id":"local_69d0a05c578b16.27270881","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مسافرت بود \r\nدر بله 405 دنبال میکنه \r\n6 ماهه پرزنت شد \r\nاومد تهران تماس ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 15:36:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2062","note_was_empty":true}
[2026-04-04 15:36:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"2062","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:49] [INFO] Updating virtual stage {"contact_id":"2062","stage_name":"deal_registered","force":false}
[2026-04-04 15:36:49] [INFO] Virtual stage successfully saved {"contact_id":"2062","stage_name":"deal_registered"}
[2026-04-04 15:36:49] [INFO] Virtual stage updated after activity save {"contact_id":"2062"}
[2026-04-04 15:36:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a05c578b16.27270881","stage":"تماس پیگیری","status_change":null}
[2026-04-04 15:36:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d0fed95cfab4.86357501","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69d0fed95cfab4.86357501"}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:49] [INFO] Updating virtual stage {"contact_id":"2062","stage_name":"deal_registered","force":false}
[2026-04-04 15:36:49] [INFO] Virtual stage successfully saved {"contact_id":"2062","stage_name":"deal_registered"}
[2026-04-04 15:36:49] [INFO] Virtual stage updated after activity save {"contact_id":"2062"}
[2026-04-04 15:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:36:56] [INFO] Checking activity reminders 
[2026-04-04 15:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:07] [INFO] Checking activity reminders 
[2026-04-04 15:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2062","deal_id":"local_69d0a05c578b16.27270881","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:37:10","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:37:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2062","is_new_deal":false}
[2026-04-04 15:37:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:37:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:37:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 15:37:10] [INFO] getContactPrimaryPhone called {"contact_id":"2062"}
[2026-04-04 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:37:10] [INFO] getContactPrimaryPhone result {"contact_id":"2062","person_found":true,"primary_phone":"9124210052"}
[2026-04-04 15:37:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124210052"}
[2026-04-04 15:37:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124210052","contact_id":"2062","deal_id":"local_69d0a05c578b16.27270881","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:37:10"}
[2026-04-04 15:37:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a05c578b16.27270881","contact_id":"2062","existing_deal_found":true,"existing_contact_id":"2062","existing_title":"معامله سوم 9124210052 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:37:10"}
[2026-04-04 15:37:10] [INFO] DealController.save validated payments {"deal_id":"local_69d0a05c578b16.27270881","contact_id":"2062","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 15:37:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2062","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:37:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a05c578b16.27270881","contact_didar_id":"2062","title":"معامله سوم 9124210052 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9124210052","services_text":"کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جبارزاده","existing_deal":"YES","existing_deal_id":"local_69d0a05c578b16.27270881","existing_deal_status":"Pending","server_time":"2026-04-04 15:37:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:37:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:37:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a05c578b16.27270881","contact_id":"2062","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9124210052 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 15:37:11","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2062","person_id":"19548"}
[2026-04-04 15:37:20] [INFO] Checking activity reminders 
[2026-04-04 15:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:26] [INFO] Checking activity reminders 
[2026-04-04 15:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15239","person_id":"3260"}
[2026-04-04 15:37:38] [INFO] Checking activity reminders 
[2026-04-04 15:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20957","person_id":"8541"}
[2026-04-04 15:37:50] [INFO] Checking activity reminders 
[2026-04-04 15:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:37:56] [INFO] Checking activity reminders 
[2026-04-04 15:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:38:08] [INFO] Checking activity reminders 
[2026-04-04 15:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:38:20] [INFO] Checking activity reminders 
[2026-04-04 15:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:38:27] [INFO] Checking activity reminders 
[2026-04-04 15:38:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:38:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:38:57] [INFO] Checking activity reminders 
[2026-04-04 15:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:38:58] [INFO] Checking activity reminders 
[2026-04-04 15:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-04-04 15:39:27] [INFO] Checking activity reminders 
[2026-04-04 15:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:39:58] [INFO] Checking activity reminders 
[2026-04-04 15:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:40:28] [INFO] Checking activity reminders 
[2026-04-04 15:40:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:40:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:40:59] [INFO] Checking activity reminders 
[2026-04-04 15:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:41:29] [INFO] Checking activity reminders 
[2026-04-04 15:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:41:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11627","deal_id":"local_69d0a1dc552497.36314618","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:41:35","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11627","is_new_deal":false}
[2026-04-04 15:41:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 15:41:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:41:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 15:41:35] [INFO] getContactPrimaryPhone called {"contact_id":"11627"}
[2026-04-04 15:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:35] [INFO] getContactPrimaryPhone result {"contact_id":"11627","person_found":true,"primary_phone":"9126118417"}
[2026-04-04 15:41:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126118417"}
[2026-04-04 15:41:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126118417","contact_id":"11627","deal_id":"local_69d0a1dc552497.36314618","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:41:35"}
[2026-04-04 15:41:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a1dc552497.36314618","contact_id":"11627","existing_deal_found":true,"existing_contact_id":"11627","existing_title":"معامله سوم 9126118417 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:41:35"}
[2026-04-04 15:41:35] [INFO] DealController.save validated payments {"deal_id":"local_69d0a1dc552497.36314618","contact_id":"11627","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 15:41:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11627","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:41:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a1dc552497.36314618","contact_didar_id":"11627","title":"معامله سوم 9126118417 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9126118417","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صفریان","existing_deal":"YES","existing_deal_id":"local_69d0a1dc552497.36314618","existing_deal_status":"Pending","server_time":"2026-04-04 15:41:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a1dc552497.36314618","contact_id":"11627","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9126118417 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 15:41:35","ip_address":"2.147.8.141","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Activity save request {"post_data":{"contact_id":"11627","deal_id":"local_69d0a1dc552497.36314618","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 15:41:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11627","note_was_empty":true}
[2026-04-04 15:41:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"11627","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Updating virtual stage {"contact_id":"11627","stage_name":"deal_registered","force":false}
[2026-04-04 15:41:53] [INFO] Virtual stage successfully saved {"contact_id":"11627","stage_name":"deal_registered"}
[2026-04-04 15:41:53] [INFO] Virtual stage updated after activity save {"contact_id":"11627"}
[2026-04-04 15:41:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a1dc552497.36314618","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 15:41:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d100095a7e15.88199249","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d100095a7e15.88199249"}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:53] [INFO] Updating virtual stage {"contact_id":"11627","stage_name":"deal_registered","force":false}
[2026-04-04 15:41:53] [INFO] Virtual stage successfully saved {"contact_id":"11627","stage_name":"deal_registered"}
[2026-04-04 15:41:53] [INFO] Virtual stage updated after activity save {"contact_id":"11627"}
[2026-04-04 15:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11627","person_id":"18721"}
[2026-04-04 15:41:59] [INFO] Checking activity reminders 
[2026-04-04 15:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:42:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 15:42:29] [INFO] Checking activity reminders 
[2026-04-04 15:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:42:43] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 15:42:43] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 15:42:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 15:42:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 15:42:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 15:42:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 15:43:00] [INFO] Checking activity reminders 
[2026-04-04 15:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:43:13] [INFO] Checking activity reminders 
[2026-04-04 15:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:43:30] [INFO] Checking activity reminders 
[2026-04-04 15:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:43:44] [INFO] Checking activity reminders 
[2026-04-04 15:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:44:01] [INFO] Checking activity reminders 
[2026-04-04 15:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:44:14] [INFO] Checking activity reminders 
[2026-04-04 15:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:44:34] [INFO] Checking activity reminders 
[2026-04-04 15:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:44:44] [INFO] Checking activity reminders 
[2026-04-04 15:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:45:04] [INFO] Checking activity reminders 
[2026-04-04 15:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:45:14] [INFO] Checking activity reminders 
[2026-04-04 15:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:45:36] [INFO] Checking activity reminders 
[2026-04-04 15:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:45:44] [INFO] Checking activity reminders 
[2026-04-04 15:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:46:06] [INFO] Checking activity reminders 
[2026-04-04 15:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:46:15] [INFO] Checking activity reminders 
[2026-04-04 15:46:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:46:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:46:37] [INFO] Checking activity reminders 
[2026-04-04 15:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:46:45] [INFO] Checking activity reminders 
[2026-04-04 15:46:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:46:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:47:11] [INFO] Checking activity reminders 
[2026-04-04 15:47:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:47:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:47:15] [INFO] Checking activity reminders 
[2026-04-04 15:47:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:47:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:47:43] [INFO] Checking activity reminders 
[2026-04-04 15:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:47:45] [INFO] Checking activity reminders 
[2026-04-04 15:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:48:15] [INFO] Checking activity reminders 
[2026-04-04 15:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:48:16] [INFO] Checking activity reminders 
[2026-04-04 15:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:48:45] [INFO] Checking activity reminders 
[2026-04-04 15:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:48:47] [INFO] Checking activity reminders 
[2026-04-04 15:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:02] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:49:16] [INFO] Checking activity reminders 
[2026-04-04 15:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:49:46] [INFO] Checking activity reminders 
[2026-04-04 15:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:50:16] [INFO] Checking activity reminders 
[2026-04-04 15:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:50:46] [INFO] Checking activity reminders 
[2026-04-04 15:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:51:16] [INFO] Checking activity reminders 
[2026-04-04 15:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:51:46] [INFO] Checking activity reminders 
[2026-04-04 15:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:52:16] [INFO] Checking activity reminders 
[2026-04-04 15:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:52:45] [INFO] Checking activity reminders 
[2026-04-04 15:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:52:47] [INFO] Checking activity reminders 
[2026-04-04 15:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:53:17] [INFO] Checking activity reminders 
[2026-04-04 15:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:53:47] [INFO] Checking activity reminders 
[2026-04-04 15:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:53:53] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9400","deal_id":"local_69d09ff61fd101.89730736","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 15:53:53","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 15:53:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 15:53:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9400","is_new_deal":false}
[2026-04-04 15:53:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 15:53:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 15:53:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 15:53:53] [INFO] getContactPrimaryPhone called {"contact_id":"9400"}
[2026-04-04 15:53:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 15:53:53] [INFO] getContactPrimaryPhone result {"contact_id":"9400","person_found":true,"primary_phone":"9123486864"}
[2026-04-04 15:53:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123486864"}
[2026-04-04 15:53:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123486864","contact_id":"9400","deal_id":"local_69d09ff61fd101.89730736","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:53:53"}
[2026-04-04 15:53:53] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d09ff61fd101.89730736","contact_id":"9400","existing_deal_found":true,"existing_contact_id":"9400","existing_title":"معامله سوم 9123486864 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 15:53:53"}
[2026-04-04 15:53:53] [INFO] DealController.save validated payments {"deal_id":"local_69d09ff61fd101.89730736","contact_id":"9400","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 15:53:53] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9400","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 15:53:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d09ff61fd101.89730736","contact_didar_id":"9400","title":"معامله سوم 9123486864 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9123486864","services_text":"کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","requested_services_count":2,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی","کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پورفتحی","existing_deal":"YES","existing_deal_id":"local_69d09ff61fd101.89730736","existing_deal_status":"Pending","server_time":"2026-04-04 15:53:53","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 15:53:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 15:53:53] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d09ff61fd101.89730736","contact_id":"9400","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9123486864 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-04 15:53:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 15:53:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 15:54:17] [INFO] Checking activity reminders 
[2026-04-04 15:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:54:17] [INFO] Checking activity reminders 
[2026-04-04 15:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:54:30] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:54:30] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"check_reminders"}
[2026-04-04 15:54:30] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:54:42] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"check_reminders"}
[2026-04-04 15:54:42] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:54:42] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 15:54:47] [INFO] Checking activity reminders 
[2026-04-04 15:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:54:47] [INFO] Checking activity reminders 
[2026-04-04 15:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:55:17] [INFO] Checking activity reminders 
[2026-04-04 15:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:55:18] [INFO] Checking activity reminders 
[2026-04-04 15:55:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:55:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:55:48] [INFO] Checking activity reminders 
[2026-04-04 15:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:56:08] [INFO] Checking activity reminders 
[2026-04-04 15:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:56:08] [INFO] Checking activity reminders 
[2026-04-04 15:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:56:18] [INFO] Checking activity reminders 
[2026-04-04 15:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:56:48] [INFO] Checking activity reminders 
[2026-04-04 15:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:57:18] [INFO] Checking activity reminders 
[2026-04-04 15:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:57:38] [INFO] Checking activity reminders 
[2026-04-04 15:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:57:48] [INFO] Checking activity reminders 
[2026-04-04 15:57:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:57:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:58:18] [INFO] Checking activity reminders 
[2026-04-04 15:58:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:58:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:58:49] [INFO] Checking activity reminders 
[2026-04-04 15:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:59:19] [INFO] Checking activity reminders 
[2026-04-04 15:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 15:59:49] [INFO] Checking activity reminders 
[2026-04-04 15:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 15:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:00:19] [INFO] Checking activity reminders 
[2026-04-04 16:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:00:49] [INFO] Checking activity reminders 
[2026-04-04 16:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:01:19] [INFO] Checking activity reminders 
[2026-04-04 16:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:01:27] [INFO] Activity save request {"post_data":{"contact_id":"9400","deal_id":"local_69d09ff61fd101.89730736","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فقط در طلای فیزیکی و خودرو \r\nدر مورد بورس و نوسان گیری اصلا نظر مثبت نداره \r\nراهنماییش کردم برای کد  بورسی و درامد غیزفعال \r\nمیگه فقط برای اخبار در کانا ل \/ بدون پشتیبانی گفتم تو کانال باش \r\nارسال پیام در بله ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:01:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9400","note_was_empty":true}
[2026-04-04 16:01:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"9400","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:27] [INFO] Updating virtual stage {"contact_id":"9400","stage_name":"deal_registered","force":false}
[2026-04-04 16:01:27] [INFO] Virtual stage successfully saved {"contact_id":"9400","stage_name":"deal_registered"}
[2026-04-04 16:01:27] [INFO] Virtual stage updated after activity save {"contact_id":"9400"}
[2026-04-04 16:01:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d09ff61fd101.89730736","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:01:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d1049fc65574.17652327","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69d1049fc65574.17652327"}
[2026-04-04 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:27] [INFO] Updating virtual stage {"contact_id":"9400","stage_name":"deal_registered","force":false}
[2026-04-04 16:01:27] [INFO] Virtual stage successfully saved {"contact_id":"9400","stage_name":"deal_registered"}
[2026-04-04 16:01:27] [INFO] Virtual stage updated after activity save {"contact_id":"9400"}
[2026-04-04 16:01:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9400","person_id":"19233"}
[2026-04-04 16:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:01:49] [INFO] Checking activity reminders 
[2026-04-04 16:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:02:19] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:19] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"check_reminders"}
[2026-04-04 16:02:19] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:19] [INFO] Checking activity reminders 
[2026-04-04 16:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:02:20] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:20] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:21] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:21] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:23] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_products"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_deals"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_deals"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:24] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:28] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_products"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_deals"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"get_deals"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:29] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:36] [WARNING] Auth check failed - not authenticated {"session_id":"2hla67pl6i5jpqosf6i1s1aqlp","session_keys":[],"action":"log_client_event"}
[2026-04-04 16:02:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 16:02:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 16:02:49] [INFO] Checking activity reminders 
[2026-04-04 16:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:03:07] [INFO] Checking activity reminders 
[2026-04-04 16:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:03:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:03:10","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9762","is_new_deal":false}
[2026-04-04 16:03:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:03:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:03:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:03:10] [INFO] getContactPrimaryPhone called {"contact_id":"9762"}
[2026-04-04 16:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:10] [INFO] getContactPrimaryPhone result {"contact_id":"9762","person_found":true,"primary_phone":"9125672819"}
[2026-04-04 16:03:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125672819"}
[2026-04-04 16:03:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125672819","contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:03:10"}
[2026-04-04 16:03:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","existing_deal_found":true,"existing_contact_id":"9762","existing_title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:03:10"}
[2026-04-04 16:03:10] [INFO] DealController.save validated payments {"deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 16:03:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9762","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:03:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a18da89f06.42944963","contact_didar_id":"9762","title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125672819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شاهچراغ","existing_deal":"YES","existing_deal_id":"local_69d0a18da89f06.42944963","existing_deal_status":"Pending","server_time":"2026-04-04 16:03:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:03:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:20] [INFO] Checking activity reminders 
[2026-04-04 16:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:03:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:03:32] [INFO] Activity save request {"post_data":{"contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:03:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9762","note_was_empty":true}
[2026-04-04 16:03:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"9762","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:32] [INFO] Updating virtual stage {"contact_id":"9762","stage_name":"deal_registered","force":false}
[2026-04-04 16:03:32] [INFO] Virtual stage successfully saved {"contact_id":"9762","stage_name":"deal_registered"}
[2026-04-04 16:03:32] [INFO] Virtual stage updated after activity save {"contact_id":"9762"}
[2026-04-04 16:03:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a18da89f06.42944963","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 16:03:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d1051c4c23f5.48522787","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69d1051c4c23f5.48522787"}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:32] [INFO] Updating virtual stage {"contact_id":"9762","stage_name":"deal_registered","force":false}
[2026-04-04 16:03:32] [INFO] Virtual stage successfully saved {"contact_id":"9762","stage_name":"deal_registered"}
[2026-04-04 16:03:32] [INFO] Virtual stage updated after activity save {"contact_id":"9762"}
[2026-04-04 16:03:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:03:37] [INFO] Checking activity reminders 
[2026-04-04 16:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:03:50] [INFO] Checking activity reminders 
[2026-04-04 16:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:04:07] [INFO] Checking activity reminders 
[2026-04-04 16:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:04:20] [INFO] Checking activity reminders 
[2026-04-04 16:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:04:43] [INFO] Checking activity reminders 
[2026-04-04 16:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:04:46] [INFO] Checking activity reminders 
[2026-04-04 16:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:04:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 16:04:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 16:04:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 16:04:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 16:04:50] [INFO] Checking activity reminders 
[2026-04-04 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:05:14] [INFO] Checking activity reminders 
[2026-04-04 16:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:05:20] [INFO] Checking activity reminders 
[2026-04-04 16:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:05:44] [INFO] Checking activity reminders 
[2026-04-04 16:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:05:50] [INFO] Checking activity reminders 
[2026-04-04 16:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:06:14] [INFO] Checking activity reminders 
[2026-04-04 16:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:06:20] [INFO] Checking activity reminders 
[2026-04-04 16:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:06:44] [INFO] Activity save request {"post_data":{"contact_id":"21215","deal_id":"local_69d0a750027a02.29941792","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال تا حالا عضو نبوده شرایط هم نداره ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-04 16:06:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21215","note_was_empty":true}
[2026-04-04 16:06:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"21215","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Updating virtual stage {"contact_id":"21215","stage_name":"deal_registered","force":false}
[2026-04-04 16:06:44] [INFO] Virtual stage successfully saved {"contact_id":"21215","stage_name":"deal_registered"}
[2026-04-04 16:06:44] [INFO] Virtual stage updated after activity save {"contact_id":"21215"}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a750027a02.29941792","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-04 16:06:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d105dcab9f44.43435686","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d105dcab9f44.43435686"}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:44] [INFO] Updating virtual stage {"contact_id":"21215","stage_name":"deal_registered","force":false}
[2026-04-04 16:06:44] [INFO] Virtual stage successfully saved {"contact_id":"21215","stage_name":"deal_registered"}
[2026-04-04 16:06:44] [INFO] Virtual stage updated after activity save {"contact_id":"21215"}
[2026-04-04 16:06:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-04 16:06:45] [INFO] Checking activity reminders 
[2026-04-04 16:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:06:51] [INFO] Checking activity reminders 
[2026-04-04 16:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:07:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:07:15] [INFO] Checking activity reminders 
[2026-04-04 16:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:07:21] [INFO] Checking activity reminders 
[2026-04-04 16:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:07:22] [INFO] Checking activity reminders 
[2026-04-04 16:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:07:45] [INFO] Checking activity reminders 
[2026-04-04 16:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:07:51] [INFO] Checking activity reminders 
[2026-04-04 16:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:08:15] [INFO] Checking activity reminders 
[2026-04-04 16:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:08:21] [INFO] Checking activity reminders 
[2026-04-04 16:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:08:45] [INFO] Checking activity reminders 
[2026-04-04 16:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:08:51] [INFO] Checking activity reminders 
[2026-04-04 16:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:09:16] [INFO] Checking activity reminders 
[2026-04-04 16:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:09:21] [INFO] Checking activity reminders 
[2026-04-04 16:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:09:46] [INFO] Checking activity reminders 
[2026-04-04 16:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:09:51] [INFO] Checking activity reminders 
[2026-04-04 16:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:10:16] [INFO] Checking activity reminders 
[2026-04-04 16:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:10:21] [INFO] Checking activity reminders 
[2026-04-04 16:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:10:52] [INFO] Checking activity reminders 
[2026-04-04 16:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:11:22] [INFO] Checking activity reminders 
[2026-04-04 16:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:11:48] [INFO] Checking activity reminders 
[2026-04-04 16:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:11:52] [INFO] Checking activity reminders 
[2026-04-04 16:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:12:19] [INFO] Checking activity reminders 
[2026-04-04 16:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:12:22] [INFO] Checking activity reminders 
[2026-04-04 16:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:12:49] [INFO] Checking activity reminders 
[2026-04-04 16:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:12:52] [INFO] Checking activity reminders 
[2026-04-04 16:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:13:19] [INFO] Checking activity reminders 
[2026-04-04 16:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:13:22] [INFO] Checking activity reminders 
[2026-04-04 16:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:13:49] [INFO] Checking activity reminders 
[2026-04-04 16:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:13:52] [INFO] Checking activity reminders 
[2026-04-04 16:13:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:13:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:14:19] [INFO] Checking activity reminders 
[2026-04-04 16:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:14:20] [INFO] Activity save request {"post_data":{"contact_id":"6961","deal_id":"local_69d0a7a4e241c4.20930490","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فردا تا قبل 11 اطلاع کدوم مبلغ کانال باشه 12 ماهه یا 6ماه  ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:14:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6961","note_was_empty":true}
[2026-04-04 16:14:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"6961","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:20] [INFO] Updating virtual stage {"contact_id":"6961","stage_name":"deal_registered","force":false}
[2026-04-04 16:14:20] [INFO] Virtual stage successfully saved {"contact_id":"6961","stage_name":"deal_registered"}
[2026-04-04 16:14:20] [INFO] Virtual stage updated after activity save {"contact_id":"6961"}
[2026-04-04 16:14:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a7a4e241c4.20930490","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:14:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d107a41700b3.18199667","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69d107a41700b3.18199667"}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:20] [INFO] Updating virtual stage {"contact_id":"6961","stage_name":"deal_registered","force":false}
[2026-04-04 16:14:20] [INFO] Virtual stage successfully saved {"contact_id":"6961","stage_name":"deal_registered"}
[2026-04-04 16:14:20] [INFO] Virtual stage updated after activity save {"contact_id":"6961"}
[2026-04-04 16:14:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6961","person_id":"9309"}
[2026-04-04 16:14:22] [INFO] Checking activity reminders 
[2026-04-04 16:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:14:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:14:50] [INFO] Checking activity reminders 
[2026-04-04 16:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:14:52] [INFO] Checking activity reminders 
[2026-04-04 16:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:15:20] [INFO] Checking activity reminders 
[2026-04-04 16:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:15:23] [INFO] Checking activity reminders 
[2026-04-04 16:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:15:50] [INFO] Checking activity reminders 
[2026-04-04 16:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:15:53] [INFO] Checking activity reminders 
[2026-04-04 16:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:16:20] [INFO] Checking activity reminders 
[2026-04-04 16:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:16:23] [INFO] Checking activity reminders 
[2026-04-04 16:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:16:50] [INFO] Checking activity reminders 
[2026-04-04 16:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:16:53] [INFO] Checking activity reminders 
[2026-04-04 16:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:17:20] [INFO] Checking activity reminders 
[2026-04-04 16:17:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:17:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:17:23] [INFO] Checking activity reminders 
[2026-04-04 16:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:17:50] [INFO] Checking activity reminders 
[2026-04-04 16:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:17:51] [INFO] Checking activity reminders 
[2026-04-04 16:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:17:53] [INFO] Checking activity reminders 
[2026-04-04 16:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:21] [INFO] Checking activity reminders 
[2026-04-04 16:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:22] [INFO] Checking activity reminders 
[2026-04-04 16:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:23] [INFO] Checking activity reminders 
[2026-04-04 16:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 16:18:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 16:18:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 16:18:51] [INFO] Checking activity reminders 
[2026-04-04 16:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:52] [INFO] Checking activity reminders 
[2026-04-04 16:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:18:53] [INFO] Checking activity reminders 
[2026-04-04 16:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:21] [INFO] Checking activity reminders 
[2026-04-04 16:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:22] [INFO] Checking activity reminders 
[2026-04-04 16:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:23] [INFO] Checking activity reminders 
[2026-04-04 16:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:24] [INFO] Activity save request {"post_data":{"contact_id":"1050","deal_id":"local_69d0a7d5cdc3c2.67182275","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شرای مالی نداره مغازه چند وقته کاسبی خوب نیست مشکل خانوادگی داره \/ 2ماه دیگه خوذش اطلاع","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:19:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1050","note_was_empty":true}
[2026-04-04 16:19:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"1050","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:24] [INFO] Updating virtual stage {"contact_id":"1050","stage_name":"deal_registered","force":false}
[2026-04-04 16:19:24] [INFO] Virtual stage successfully saved {"contact_id":"1050","stage_name":"deal_registered"}
[2026-04-04 16:19:24] [INFO] Virtual stage updated after activity save {"contact_id":"1050"}
[2026-04-04 16:19:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a7d5cdc3c2.67182275","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:19:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d108d4ae3be4.40506017","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69d108d4ae3be4.40506017"}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:24] [INFO] Updating virtual stage {"contact_id":"1050","stage_name":"deal_registered","force":false}
[2026-04-04 16:19:24] [INFO] Virtual stage successfully saved {"contact_id":"1050","stage_name":"deal_registered"}
[2026-04-04 16:19:24] [INFO] Virtual stage updated after activity save {"contact_id":"1050"}
[2026-04-04 16:19:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1050","person_id":"10150"}
[2026-04-04 16:19:51] [INFO] Checking activity reminders 
[2026-04-04 16:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:52] [INFO] Checking activity reminders 
[2026-04-04 16:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:19:53] [INFO] Checking activity reminders 
[2026-04-04 16:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:22] [INFO] Checking activity reminders 
[2026-04-04 16:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:22] [INFO] Checking activity reminders 
[2026-04-04 16:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:24] [INFO] Checking activity reminders 
[2026-04-04 16:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:52] [INFO] Checking activity reminders 
[2026-04-04 16:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:52] [INFO] Checking activity reminders 
[2026-04-04 16:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:20:54] [INFO] Checking activity reminders 
[2026-04-04 16:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:22] [INFO] Checking activity reminders 
[2026-04-04 16:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:22] [INFO] Checking activity reminders 
[2026-04-04 16:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:24] [INFO] Checking activity reminders 
[2026-04-04 16:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:36] [INFO] Activity save request {"post_data":{"contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در کانال 404 بله حضور نداشته \r\nسفر ماموریتی داشته \r\nارسال لینک در بله \r\nمیگه فعلا سرمایه برای عضویت در کانال ندارم ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:21:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9762","note_was_empty":true}
[2026-04-04 16:21:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"9762","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:36] [INFO] Updating virtual stage {"contact_id":"9762","stage_name":"deal_registered","force":false}
[2026-04-04 16:21:36] [INFO] Virtual stage successfully saved {"contact_id":"9762","stage_name":"deal_registered"}
[2026-04-04 16:21:36] [INFO] Virtual stage updated after activity save {"contact_id":"9762"}
[2026-04-04 16:21:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a18da89f06.42944963","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:21:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d109589555c1.45018358","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d109589555c1.45018358"}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:36] [INFO] Updating virtual stage {"contact_id":"9762","stage_name":"deal_registered","force":false}
[2026-04-04 16:21:36] [INFO] Virtual stage successfully saved {"contact_id":"9762","stage_name":"deal_registered"}
[2026-04-04 16:21:36] [INFO] Virtual stage updated after activity save {"contact_id":"9762"}
[2026-04-04 16:21:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:21:47","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:21:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9762","is_new_deal":false}
[2026-04-04 16:21:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:21:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:21:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:21:47] [INFO] getContactPrimaryPhone called {"contact_id":"9762"}
[2026-04-04 16:21:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:47] [INFO] getContactPrimaryPhone result {"contact_id":"9762","person_found":true,"primary_phone":"9125672819"}
[2026-04-04 16:21:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125672819"}
[2026-04-04 16:21:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125672819","contact_id":"9762","deal_id":"local_69d0a18da89f06.42944963","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:21:47"}
[2026-04-04 16:21:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","existing_deal_found":true,"existing_contact_id":"9762","existing_title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:21:47"}
[2026-04-04 16:21:47] [INFO] DealController.save validated payments {"deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 16:21:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9762","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:21:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a18da89f06.42944963","contact_didar_id":"9762","title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9125672819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شاهچراغ","existing_deal":"YES","existing_deal_id":"local_69d0a18da89f06.42944963","existing_deal_status":"Pending","server_time":"2026-04-04 16:21:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:21:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a18da89f06.42944963","contact_id":"9762","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125672819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:21:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:21:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9762","person_id":"13768"}
[2026-04-04 16:21:52] [INFO] Checking activity reminders 
[2026-04-04 16:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:52] [INFO] Checking activity reminders 
[2026-04-04 16:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:54] [INFO] Checking activity reminders 
[2026-04-04 16:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:22:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:22:22] [INFO] Checking activity reminders 
[2026-04-04 16:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:22:23] [INFO] Checking activity reminders 
[2026-04-04 16:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:22:24] [INFO] Checking activity reminders 
[2026-04-04 16:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:22:52] [INFO] Checking activity reminders 
[2026-04-04 16:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:22:53] [INFO] Checking activity reminders 
[2026-04-04 16:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:22:54] [INFO] Checking activity reminders 
[2026-04-04 16:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:22] [INFO] Checking activity reminders 
[2026-04-04 16:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:23] [INFO] Checking activity reminders 
[2026-04-04 16:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:24] [INFO] Checking activity reminders 
[2026-04-04 16:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:53] [INFO] Checking activity reminders 
[2026-04-04 16:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:53] [INFO] Checking activity reminders 
[2026-04-04 16:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:23:54] [INFO] Checking activity reminders 
[2026-04-04 16:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:19] [INFO] Activity save request {"post_data":{"contact_id":"20947","deal_id":"local_69d0a8482f1de6.09473458","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:24:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20947","note_was_empty":true}
[2026-04-04 16:24:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"20947","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:19] [INFO] Updating virtual stage {"contact_id":"20947","stage_name":"deal_registered","force":false}
[2026-04-04 16:24:19] [INFO] Virtual stage successfully saved {"contact_id":"20947","stage_name":"deal_registered"}
[2026-04-04 16:24:19] [INFO] Virtual stage updated after activity save {"contact_id":"20947"}
[2026-04-04 16:24:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a8482f1de6.09473458","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:24:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d109fbdf7284.69509355","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d109fbdf7284.69509355"}
[2026-04-04 16:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:19] [INFO] Updating virtual stage {"contact_id":"20947","stage_name":"deal_registered","force":false}
[2026-04-04 16:24:19] [INFO] Virtual stage successfully saved {"contact_id":"20947","stage_name":"deal_registered"}
[2026-04-04 16:24:19] [INFO] Virtual stage updated after activity save {"contact_id":"20947"}
[2026-04-04 16:24:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20947","person_id":"13915"}
[2026-04-04 16:24:23] [INFO] Checking activity reminders 
[2026-04-04 16:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:23] [INFO] Checking activity reminders 
[2026-04-04 16:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:24] [INFO] Checking activity reminders 
[2026-04-04 16:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:24:53] [INFO] Checking activity reminders 
[2026-04-04 16:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:53] [INFO] Checking activity reminders 
[2026-04-04 16:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:24:54] [INFO] Checking activity reminders 
[2026-04-04 16:24:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:24:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:23] [INFO] Checking activity reminders 
[2026-04-04 16:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:23] [INFO] Checking activity reminders 
[2026-04-04 16:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:25] [INFO] Checking activity reminders 
[2026-04-04 16:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:53] [INFO] Checking activity reminders 
[2026-04-04 16:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:54] [INFO] Checking activity reminders 
[2026-04-04 16:25:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:25:55] [INFO] Checking activity reminders 
[2026-04-04 16:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:10] [INFO] Checking activity reminders 
[2026-04-04 16:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:26:12] [INFO] Checking activity reminders 
[2026-04-04 16:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:24] [INFO] Checking activity reminders 
[2026-04-04 16:26:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:24] [INFO] Checking activity reminders 
[2026-04-04 16:26:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:42] [INFO] Checking activity reminders 
[2026-04-04 16:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:44] [INFO] Checking activity reminders 
[2026-04-04 16:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:26:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 16:26:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 16:26:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 16:26:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 16:26:54] [INFO] Checking activity reminders 
[2026-04-04 16:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:27:12] [INFO] Checking activity reminders 
[2026-04-04 16:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:27:24] [INFO] Checking activity reminders 
[2026-04-04 16:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:27:42] [INFO] Checking activity reminders 
[2026-04-04 16:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:27:54] [INFO] Checking activity reminders 
[2026-04-04 16:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:28:12] [INFO] Checking activity reminders 
[2026-04-04 16:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:28:25] [INFO] Checking activity reminders 
[2026-04-04 16:28:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:28:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:28:43] [INFO] Checking activity reminders 
[2026-04-04 16:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:28:55] [INFO] Checking activity reminders 
[2026-04-04 16:28:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:28:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:29:13] [INFO] Checking activity reminders 
[2026-04-04 16:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:29:25] [INFO] Checking activity reminders 
[2026-04-04 16:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:29:43] [INFO] Checking activity reminders 
[2026-04-04 16:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:29:55] [INFO] Checking activity reminders 
[2026-04-04 16:29:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:29:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:30:13] [INFO] Checking activity reminders 
[2026-04-04 16:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:30:25] [INFO] Checking activity reminders 
[2026-04-04 16:30:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:30:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:30:43] [INFO] Checking activity reminders 
[2026-04-04 16:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:30:55] [INFO] Checking activity reminders 
[2026-04-04 16:30:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:30:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:31:13] [INFO] Checking activity reminders 
[2026-04-04 16:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:31:26] [INFO] Checking activity reminders 
[2026-04-04 16:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:31:43] [INFO] Checking activity reminders 
[2026-04-04 16:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:31:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1250","deal_id":"local_69d0a02f2cd1f3.79786452","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:31:44","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:31:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1250","is_new_deal":false}
[2026-04-04 16:31:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:31:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:31:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:31:44] [INFO] getContactPrimaryPhone called {"contact_id":"1250"}
[2026-04-04 16:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:31:44] [INFO] getContactPrimaryPhone result {"contact_id":"1250","person_found":true,"primary_phone":"9123958906"}
[2026-04-04 16:31:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123958906"}
[2026-04-04 16:31:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123958906","contact_id":"1250","deal_id":"local_69d0a02f2cd1f3.79786452","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:31:44"}
[2026-04-04 16:31:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a02f2cd1f3.79786452","contact_id":"1250","existing_deal_found":true,"existing_contact_id":"1250","existing_title":"معامله سوم 9123958906 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:31:44"}
[2026-04-04 16:31:44] [INFO] DealController.save validated payments {"deal_id":"local_69d0a02f2cd1f3.79786452","contact_id":"1250","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 16:31:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1250","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:31:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a02f2cd1f3.79786452","contact_didar_id":"1250","title":"معامله سوم 9123958906 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123958906","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرفان حیدری","existing_deal":"YES","existing_deal_id":"local_69d0a02f2cd1f3.79786452","existing_deal_status":"Pending","server_time":"2026-04-04 16:31:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:31:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a02f2cd1f3.79786452","contact_id":"1250","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9123958906 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:31:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:31:56] [INFO] Checking activity reminders 
[2026-04-04 16:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:32:05] [INFO] Activity save request {"post_data":{"contact_id":"1250","deal_id":"local_69d0a02f2cd1f3.79786452","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:32:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1250","note_was_empty":true}
[2026-04-04 16:32:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"1250","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:05] [INFO] Updating virtual stage {"contact_id":"1250","stage_name":"deal_registered","force":false}
[2026-04-04 16:32:05] [INFO] Virtual stage successfully saved {"contact_id":"1250","stage_name":"deal_registered"}
[2026-04-04 16:32:05] [INFO] Virtual stage updated after activity save {"contact_id":"1250"}
[2026-04-04 16:32:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a02f2cd1f3.79786452","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 16:32:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d10bcd8329a4.60444725","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d10bcd8329a4.60444725"}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:05] [INFO] Updating virtual stage {"contact_id":"1250","stage_name":"deal_registered","force":false}
[2026-04-04 16:32:05] [INFO] Virtual stage successfully saved {"contact_id":"1250","stage_name":"deal_registered"}
[2026-04-04 16:32:05] [INFO] Virtual stage updated after activity save {"contact_id":"1250"}
[2026-04-04 16:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1250","person_id":"7018"}
[2026-04-04 16:32:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:32:13] [INFO] Checking activity reminders 
[2026-04-04 16:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:32:26] [INFO] Checking activity reminders 
[2026-04-04 16:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:32:56] [INFO] Checking activity reminders 
[2026-04-04 16:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:33:08] [INFO] Checking activity reminders 
[2026-04-04 16:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:33:11] [INFO] Checking activity reminders 
[2026-04-04 16:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:33:26] [INFO] Checking activity reminders 
[2026-04-04 16:33:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:33:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:33:41] [INFO] Checking activity reminders 
[2026-04-04 16:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:33:57] [INFO] Checking activity reminders 
[2026-04-04 16:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:34:10] [INFO] Activity save request {"post_data":{"contact_id":"21076","deal_id":"local_69d0a875473214.93175946","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"قالیشویی داره بازار نداشته \/ اوضاش جالب نیست مبلغ 79 \/6 ماهه گفتم تا فر دا اطلاع\r\nدستسری هوش بهش یاد دادم وارد سایت بشه","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:34:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21076","note_was_empty":true}
[2026-04-04 16:34:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"21076","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:10] [INFO] Updating virtual stage {"contact_id":"21076","stage_name":"deal_registered","force":false}
[2026-04-04 16:34:10] [INFO] Virtual stage successfully saved {"contact_id":"21076","stage_name":"deal_registered"}
[2026-04-04 16:34:10] [INFO] Virtual stage updated after activity save {"contact_id":"21076"}
[2026-04-04 16:34:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a875473214.93175946","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:34:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d10c4a130dd6.76090132","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d10c4a130dd6.76090132"}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:10] [INFO] Updating virtual stage {"contact_id":"21076","stage_name":"deal_registered","force":false}
[2026-04-04 16:34:10] [INFO] Virtual stage successfully saved {"contact_id":"21076","stage_name":"deal_registered"}
[2026-04-04 16:34:10] [INFO] Virtual stage updated after activity save {"contact_id":"21076"}
[2026-04-04 16:34:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21076","person_id":"9930"}
[2026-04-04 16:34:27] [INFO] Checking activity reminders 
[2026-04-04 16:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:34:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:34:57] [INFO] Checking activity reminders 
[2026-04-04 16:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:35:27] [INFO] Checking activity reminders 
[2026-04-04 16:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:35:43] [INFO] Checking activity reminders 
[2026-04-04 16:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:35:53] [INFO] Checking activity reminders 
[2026-04-04 16:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:35:57] [INFO] Checking activity reminders 
[2026-04-04 16:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:35:58] [INFO] Checking activity reminders 
[2026-04-04 16:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:36:03] [INFO] Checking activity reminders 
[2026-04-04 16:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:36:21] [INFO] Checking activity reminders 
[2026-04-04 16:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:36:27] [INFO] Checking activity reminders 
[2026-04-04 16:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:36:33] [INFO] Checking activity reminders 
[2026-04-04 16:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:36:58] [INFO] Checking activity reminders 
[2026-04-04 16:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:37:03] [INFO] Checking activity reminders 
[2026-04-04 16:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:37:28] [INFO] Checking activity reminders 
[2026-04-04 16:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:37:33] [INFO] Checking activity reminders 
[2026-04-04 16:37:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:37:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:37:58] [INFO] Checking activity reminders 
[2026-04-04 16:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:38:04] [INFO] Checking activity reminders 
[2026-04-04 16:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:38:29] [INFO] Checking activity reminders 
[2026-04-04 16:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:38:34] [INFO] Checking activity reminders 
[2026-04-04 16:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:38:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"124","deal_id":"local_69d0a09b4fce69.39094366","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:38:55","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:38:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:38:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"124","is_new_deal":false}
[2026-04-04 16:38:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:38:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:38:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:38:55] [INFO] getContactPrimaryPhone called {"contact_id":"124"}
[2026-04-04 16:38:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:38:55] [INFO] getContactPrimaryPhone result {"contact_id":"124","person_found":true,"primary_phone":"9364058823"}
[2026-04-04 16:38:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9364058823"}
[2026-04-04 16:38:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9364058823","contact_id":"124","deal_id":"local_69d0a09b4fce69.39094366","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:38:55"}
[2026-04-04 16:38:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a09b4fce69.39094366","contact_id":"124","existing_deal_found":true,"existing_contact_id":"124","existing_title":"معامله سوم 9364058823 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:38:55"}
[2026-04-04 16:38:55] [INFO] DealController.save validated payments {"deal_id":"local_69d0a09b4fce69.39094366","contact_id":"124","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 16:38:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"124","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:38:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a09b4fce69.39094366","contact_didar_id":"124","title":"معامله سوم 9364058823 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9364058823","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی یوسفی","existing_deal":"YES","existing_deal_id":"local_69d0a09b4fce69.39094366","existing_deal_status":"Pending","server_time":"2026-04-04 16:38:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:38:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:38:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a09b4fce69.39094366","contact_id":"124","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9364058823 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:38:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:38:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:38:59] [INFO] Checking activity reminders 
[2026-04-04 16:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:39:04] [INFO] Checking activity reminders 
[2026-04-04 16:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:39:13] [INFO] Activity save request {"post_data":{"contact_id":"124","deal_id":"local_69d0a09b4fce69.39094366","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:39:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"124","note_was_empty":true}
[2026-04-04 16:39:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"124","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:13] [INFO] Updating virtual stage {"contact_id":"124","stage_name":"deal_registered","force":false}
[2026-04-04 16:39:13] [INFO] Virtual stage successfully saved {"contact_id":"124","stage_name":"deal_registered"}
[2026-04-04 16:39:13] [INFO] Virtual stage updated after activity save {"contact_id":"124"}
[2026-04-04 16:39:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a09b4fce69.39094366","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 16:39:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d10d794c03b4.17722019","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d10d794c03b4.17722019"}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:13] [INFO] Updating virtual stage {"contact_id":"124","stage_name":"deal_registered","force":false}
[2026-04-04 16:39:13] [INFO] Virtual stage successfully saved {"contact_id":"124","stage_name":"deal_registered"}
[2026-04-04 16:39:13] [INFO] Virtual stage updated after activity save {"contact_id":"124"}
[2026-04-04 16:39:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"124","person_id":"14044"}
[2026-04-04 16:39:29] [INFO] Checking activity reminders 
[2026-04-04 16:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:39:34] [INFO] Checking activity reminders 
[2026-04-04 16:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:39:59] [INFO] Checking activity reminders 
[2026-04-04 16:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:40:04] [INFO] Checking activity reminders 
[2026-04-04 16:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:40:30] [INFO] Checking activity reminders 
[2026-04-04 16:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:40:34] [INFO] Checking activity reminders 
[2026-04-04 16:40:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:40:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:41:00] [INFO] Checking activity reminders 
[2026-04-04 16:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:41:01] [INFO] Checking activity reminders 
[2026-04-04 16:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:41:04] [INFO] Checking activity reminders 
[2026-04-04 16:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:41:30] [INFO] Checking activity reminders 
[2026-04-04 16:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:41:34] [INFO] Checking activity reminders 
[2026-04-04 16:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:42:00] [INFO] Checking activity reminders 
[2026-04-04 16:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:42:04] [INFO] Checking activity reminders 
[2026-04-04 16:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:42:30] [INFO] Checking activity reminders 
[2026-04-04 16:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:42:34] [INFO] Checking activity reminders 
[2026-04-04 16:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:43:00] [INFO] Checking activity reminders 
[2026-04-04 16:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:43:04] [INFO] Checking activity reminders 
[2026-04-04 16:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:43:31] [INFO] Checking activity reminders 
[2026-04-04 16:43:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:43:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:43:35] [INFO] Checking activity reminders 
[2026-04-04 16:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:44:01] [INFO] Checking activity reminders 
[2026-04-04 16:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:44:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:44:05] [INFO] Checking activity reminders 
[2026-04-04 16:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:44:31] [INFO] Checking activity reminders 
[2026-04-04 16:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:44:35] [INFO] Checking activity reminders 
[2026-04-04 16:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:45:01] [INFO] Checking activity reminders 
[2026-04-04 16:45:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:45:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:45:05] [INFO] Checking activity reminders 
[2026-04-04 16:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:45:31] [INFO] Checking activity reminders 
[2026-04-04 16:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:45:35] [INFO] Checking activity reminders 
[2026-04-04 16:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:46:01] [INFO] Checking activity reminders 
[2026-04-04 16:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:46:05] [INFO] Checking activity reminders 
[2026-04-04 16:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:46:32] [INFO] Checking activity reminders 
[2026-04-04 16:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:46:35] [INFO] Checking activity reminders 
[2026-04-04 16:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:47:02] [INFO] Checking activity reminders 
[2026-04-04 16:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:47:05] [INFO] Checking activity reminders 
[2026-04-04 16:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:47:18] [INFO] Activity save request {"post_data":{"contact_id":"1726","deal_id":"local_69d0a8a4dad1d0.23974740","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"در خصوص ماشین سوال کرد ازرا با پارسال صحبت کنه\/ خواست فقط از کارش پول در بیاره دید دادک برای سرمایه گذاری \r\nکرمان \/ کاسب \r\nارسال ش کارت شب 8 به بعد واریز \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:47:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1726","note_was_empty":true}
[2026-04-04 16:47:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"1726","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-04 16:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:18] [INFO] Updating virtual stage {"contact_id":"1726","stage_name":"deal_registered","force":false}
[2026-04-04 16:47:18] [INFO] Virtual stage successfully saved {"contact_id":"1726","stage_name":"deal_registered"}
[2026-04-04 16:47:18] [INFO] Virtual stage updated after activity save {"contact_id":"1726"}
[2026-04-04 16:47:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a8a4dad1d0.23974740","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-04 16:47:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d10f5eded706.92793500","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d10f5eded706.92793500"}
[2026-04-04 16:47:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:18] [INFO] Updating virtual stage {"contact_id":"1726","stage_name":"deal_registered","force":false}
[2026-04-04 16:47:18] [INFO] Virtual stage successfully saved {"contact_id":"1726","stage_name":"deal_registered"}
[2026-04-04 16:47:18] [INFO] Virtual stage updated after activity save {"contact_id":"1726"}
[2026-04-04 16:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-04 16:47:32] [INFO] Checking activity reminders 
[2026-04-04 16:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:47:36] [INFO] Checking activity reminders 
[2026-04-04 16:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:48:02] [INFO] Checking activity reminders 
[2026-04-04 16:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:48:06] [INFO] Checking activity reminders 
[2026-04-04 16:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:48:32] [INFO] Checking activity reminders 
[2026-04-04 16:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:48:36] [INFO] Checking activity reminders 
[2026-04-04 16:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:49:03] [INFO] Checking activity reminders 
[2026-04-04 16:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:49:06] [INFO] Checking activity reminders 
[2026-04-04 16:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:49:33] [INFO] Checking activity reminders 
[2026-04-04 16:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:49:36] [INFO] Checking activity reminders 
[2026-04-04 16:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:50:03] [INFO] Checking activity reminders 
[2026-04-04 16:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:50:06] [INFO] Checking activity reminders 
[2026-04-04 16:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:50:33] [INFO] Checking activity reminders 
[2026-04-04 16:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:50:36] [INFO] Checking activity reminders 
[2026-04-04 16:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:51:03] [INFO] Checking activity reminders 
[2026-04-04 16:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:51:07] [INFO] Checking activity reminders 
[2026-04-04 16:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:51:34] [INFO] Checking activity reminders 
[2026-04-04 16:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:51:37] [INFO] Checking activity reminders 
[2026-04-04 16:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:52:04] [INFO] Checking activity reminders 
[2026-04-04 16:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:52:07] [INFO] Checking activity reminders 
[2026-04-04 16:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:52:13] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21055","deal_id":"local_69d0a0bf9b85f1.05338169","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:52:13","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:52:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21055","is_new_deal":false}
[2026-04-04 16:52:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:52:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:52:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:52:13] [INFO] getContactPrimaryPhone called {"contact_id":"21055"}
[2026-04-04 16:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:52:13] [INFO] getContactPrimaryPhone result {"contact_id":"21055","person_found":true,"primary_phone":"9124406400"}
[2026-04-04 16:52:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124406400"}
[2026-04-04 16:52:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124406400","contact_id":"21055","deal_id":"local_69d0a0bf9b85f1.05338169","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:52:13"}
[2026-04-04 16:52:13] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a0bf9b85f1.05338169","contact_id":"21055","existing_deal_found":true,"existing_contact_id":"21055","existing_title":"معامله دوم 9124406400 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:52:13"}
[2026-04-04 16:52:13] [INFO] DealController.save validated payments {"deal_id":"local_69d0a0bf9b85f1.05338169","contact_id":"21055","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 16:52:13] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21055","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:52:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a0bf9b85f1.05338169","contact_didar_id":"21055","title":"معامله دوم 9124406400 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124406400","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مرتضی کلانی","existing_deal":"YES","existing_deal_id":"local_69d0a0bf9b85f1.05338169","existing_deal_status":"Pending","server_time":"2026-04-04 16:52:13","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:52:13] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a0bf9b85f1.05338169","contact_id":"21055","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124406400 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:52:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:52:34] [INFO] Checking activity reminders 
[2026-04-04 16:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:52:37] [INFO] Checking activity reminders 
[2026-04-04 16:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:53:04] [INFO] Checking activity reminders 
[2026-04-04 16:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:53:07] [INFO] Checking activity reminders 
[2026-04-04 16:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:53:35] [INFO] Checking activity reminders 
[2026-04-04 16:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:53:37] [INFO] Checking activity reminders 
[2026-04-04 16:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:54:05] [INFO] Checking activity reminders 
[2026-04-04 16:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:54:07] [INFO] Checking activity reminders 
[2026-04-04 16:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:54:11] [INFO] Activity save request {"post_data":{"contact_id":"21055","deal_id":"local_69d0a0bf9b85f1.05338169","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 405 و دوره پیش بینی 405 \r\nجایی بود شرایط صحبت نداشت \r\nپیامک و پیام \r\nچک داره \/ یکساله نقد و چک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:54:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21055","note_was_empty":true}
[2026-04-04 16:54:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"21055","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:11] [INFO] Updating virtual stage {"contact_id":"21055","stage_name":"deal_registered","force":false}
[2026-04-04 16:54:11] [INFO] Virtual stage successfully saved {"contact_id":"21055","stage_name":"deal_registered"}
[2026-04-04 16:54:11] [INFO] Virtual stage updated after activity save {"contact_id":"21055"}
[2026-04-04 16:54:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a0bf9b85f1.05338169","stage":"تماس پیگیری","status_change":null}
[2026-04-04 16:54:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d110fb7f6ba7.91056188","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d110fb7f6ba7.91056188"}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:11] [INFO] Updating virtual stage {"contact_id":"21055","stage_name":"deal_registered","force":false}
[2026-04-04 16:54:11] [INFO] Virtual stage successfully saved {"contact_id":"21055","stage_name":"deal_registered"}
[2026-04-04 16:54:11] [INFO] Virtual stage updated after activity save {"contact_id":"21055"}
[2026-04-04 16:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21055","person_id":"19660"}
[2026-04-04 16:54:35] [INFO] Checking activity reminders 
[2026-04-04 16:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:54:37] [INFO] Checking activity reminders 
[2026-04-04 16:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:55:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 16:55:05] [INFO] Checking activity reminders 
[2026-04-04 16:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:55:08] [INFO] Checking activity reminders 
[2026-04-04 16:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:55:10] [INFO] Checking activity reminders 
[2026-04-04 16:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:55:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:55:35] [INFO] Checking activity reminders 
[2026-04-04 16:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:55:40] [INFO] Checking activity reminders 
[2026-04-04 16:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:56:05] [INFO] Checking activity reminders 
[2026-04-04 16:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:56:10] [INFO] Checking activity reminders 
[2026-04-04 16:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:56:13] [INFO] Checking activity reminders 
[2026-04-04 16:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:56:40] [INFO] Checking activity reminders 
[2026-04-04 16:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:57:11] [INFO] Checking activity reminders 
[2026-04-04 16:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:57:41] [INFO] Checking activity reminders 
[2026-04-04 16:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:57:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6291","deal_id":"local_69d0a2a7092976.33595905","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 16:57:58","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 16:57:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:57:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6291","is_new_deal":false}
[2026-04-04 16:57:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 16:57:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:57:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 16:57:58] [INFO] getContactPrimaryPhone called {"contact_id":"6291"}
[2026-04-04 16:57:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:57:58] [INFO] getContactPrimaryPhone result {"contact_id":"6291","person_found":true,"primary_phone":"9127514082"}
[2026-04-04 16:57:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127514082"}
[2026-04-04 16:57:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127514082","contact_id":"6291","deal_id":"local_69d0a2a7092976.33595905","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:57:58"}
[2026-04-04 16:57:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a2a7092976.33595905","contact_id":"6291","existing_deal_found":true,"existing_contact_id":"6291","existing_title":"معامله دوم 9127514082 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 16:57:58"}
[2026-04-04 16:57:58] [INFO] DealController.save validated payments {"deal_id":"local_69d0a2a7092976.33595905","contact_id":"6291","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-04 16:57:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6291","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 16:57:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a2a7092976.33595905","contact_didar_id":"6291","title":"معامله دوم 9127514082 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127514082","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرامی بهرامی","existing_deal":"YES","existing_deal_id":"local_69d0a2a7092976.33595905","existing_deal_status":"Pending","server_time":"2026-04-04 16:57:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 16:57:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:57:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a2a7092976.33595905","contact_id":"6291","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9127514082 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 16:57:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 16:57:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:58:11] [INFO] Checking activity reminders 
[2026-04-04 16:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:58:41] [INFO] Checking activity reminders 
[2026-04-04 16:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:59:11] [INFO] Checking activity reminders 
[2026-04-04 16:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 16:59:13] [INFO] Activity save request {"post_data":{"contact_id":"6291","deal_id":"local_69d0a2a7092976.33595905","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک\/ پیام در بله ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 16:59:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6291","note_was_empty":true}
[2026-04-04 16:59:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"6291","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:13] [INFO] Updating virtual stage {"contact_id":"6291","stage_name":"deal_registered","force":false}
[2026-04-04 16:59:13] [INFO] Virtual stage successfully saved {"contact_id":"6291","stage_name":"deal_registered"}
[2026-04-04 16:59:13] [INFO] Virtual stage updated after activity save {"contact_id":"6291"}
[2026-04-04 16:59:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a2a7092976.33595905","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-04 16:59:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d11229189782.68220335","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d11229189782.68220335"}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:13] [INFO] Updating virtual stage {"contact_id":"6291","stage_name":"deal_registered","force":false}
[2026-04-04 16:59:13] [INFO] Virtual stage successfully saved {"contact_id":"6291","stage_name":"deal_registered"}
[2026-04-04 16:59:13] [INFO] Virtual stage updated after activity save {"contact_id":"6291"}
[2026-04-04 16:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6291","person_id":"20872"}
[2026-04-04 16:59:41] [INFO] Checking activity reminders 
[2026-04-04 16:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 16:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:02:59] [INFO] Checking activity reminders 
[2026-04-04 17:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:02:59] [INFO] Checking activity reminders 
[2026-04-04 17:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:03:01] [INFO] Checking activity reminders 
[2026-04-04 17:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:03:31] [INFO] Checking activity reminders 
[2026-04-04 17:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:04:01] [INFO] Checking activity reminders 
[2026-04-04 17:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:04:31] [INFO] Checking activity reminders 
[2026-04-04 17:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:05:01] [INFO] Checking activity reminders 
[2026-04-04 17:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:05:31] [INFO] Checking activity reminders 
[2026-04-04 17:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:06:01] [INFO] Checking activity reminders 
[2026-04-04 17:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:06:31] [INFO] Checking activity reminders 
[2026-04-04 17:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:07:01] [INFO] Checking activity reminders 
[2026-04-04 17:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:07:32] [INFO] Checking activity reminders 
[2026-04-04 17:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:08:02] [INFO] Checking activity reminders 
[2026-04-04 17:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:08:32] [INFO] Checking activity reminders 
[2026-04-04 17:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:08:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7645","deal_id":"local_69ca8f98b8d4e5.33706867","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 17:08:59","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 17:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:08:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7645","is_new_deal":false}
[2026-04-04 17:08:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 17:08:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 17:08:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 17:08:59] [INFO] getContactPrimaryPhone called {"contact_id":"7645"}
[2026-04-04 17:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:08:59] [INFO] getContactPrimaryPhone result {"contact_id":"7645","person_found":true,"primary_phone":"9120755224"}
[2026-04-04 17:08:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120755224"}
[2026-04-04 17:08:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120755224","contact_id":"7645","deal_id":"local_69ca8f98b8d4e5.33706867","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 17:08:59"}
[2026-04-04 17:08:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8f98b8d4e5.33706867","contact_id":"7645","existing_deal_found":true,"existing_contact_id":"7645","existing_title":"معامله دوم 9120755224 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 17:08:59"}
[2026-04-04 17:08:59] [INFO] DealController.save validated payments {"deal_id":"local_69ca8f98b8d4e5.33706867","contact_id":"7645","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 17:08:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7645","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 17:08:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8f98b8d4e5.33706867","contact_didar_id":"7645","title":"معامله دوم 9120755224 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120755224","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پالیزبان","existing_deal":"YES","existing_deal_id":"local_69ca8f98b8d4e5.33706867","existing_deal_status":"Pending","server_time":"2026-04-04 17:08:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 17:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:08:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8f98b8d4e5.33706867","contact_id":"7645","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9120755224 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-04 17:08:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 17:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:09:02] [INFO] Checking activity reminders 
[2026-04-04 17:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:09:18] [INFO] Checking activity reminders 
[2026-04-04 17:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:09:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 17:09:48] [INFO] Checking activity reminders 
[2026-04-04 17:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:10:18] [INFO] Checking activity reminders 
[2026-04-04 17:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:10:48] [INFO] Checking activity reminders 
[2026-04-04 17:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:11:18] [INFO] Checking activity reminders 
[2026-04-04 17:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:11:48] [INFO] Checking activity reminders 
[2026-04-04 17:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:12:18] [INFO] Checking activity reminders 
[2026-04-04 17:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:12:48] [INFO] Checking activity reminders 
[2026-04-04 17:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:13:18] [INFO] Checking activity reminders 
[2026-04-04 17:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:13:48] [INFO] Checking activity reminders 
[2026-04-04 17:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:14:19] [INFO] Checking activity reminders 
[2026-04-04 17:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:14:49] [INFO] Checking activity reminders 
[2026-04-04 17:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:15:19] [INFO] Checking activity reminders 
[2026-04-04 17:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:15:49] [INFO] Checking activity reminders 
[2026-04-04 17:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:16:19] [INFO] Checking activity reminders 
[2026-04-04 17:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:16:49] [INFO] Checking activity reminders 
[2026-04-04 17:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:17:19] [INFO] Checking activity reminders 
[2026-04-04 17:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:17:49] [INFO] Checking activity reminders 
[2026-04-04 17:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:18:19] [INFO] Checking activity reminders 
[2026-04-04 17:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:18:49] [INFO] Checking activity reminders 
[2026-04-04 17:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:19:19] [INFO] Checking activity reminders 
[2026-04-04 17:19:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:19:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:19:50] [INFO] Checking activity reminders 
[2026-04-04 17:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:20:20] [INFO] Checking activity reminders 
[2026-04-04 17:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:20:38] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"check_reminders"}
[2026-04-04 17:20:38] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:20:38] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:20:50] [INFO] Checking activity reminders 
[2026-04-04 17:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:21:20] [INFO] Checking activity reminders 
[2026-04-04 17:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:21:50] [INFO] Checking activity reminders 
[2026-04-04 17:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:22:13] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:22:13] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:22:20] [INFO] Checking activity reminders 
[2026-04-04 17:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:22:50] [INFO] Checking activity reminders 
[2026-04-04 17:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:23:20] [INFO] Checking activity reminders 
[2026-04-04 17:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:23:21] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:23:21] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:23:21] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"save_activity"}
[2026-04-04 17:23:21] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"p4d1rjr5qv908oe79ivuvos2n9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:23:39] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-04 17:23:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 17:23:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:23:50] [INFO] Checking activity reminders 
[2026-04-04 17:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:24:09] [INFO] Checking activity reminders 
[2026-04-04 17:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:24:11] [INFO] Activity save request {"post_data":{"contact_id":"local_6999b97d7efb47.54533896","deal_id":"local_6999b97d8169c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ پیام گذاشتم گفتم فعلا با داداششون میخواستن شریکی بیان که داداششون مخالفت کردن گفتن هزینه بالاست ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-04 17:24:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","database_didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","user_email":"hanaficars.academy5@gmail.com","user_name":"خانم  بردبار","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم  بردبار","contact_id":"local_6999b97d7efb47.54533896","note_was_empty":true}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-04-04 17:24:11] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-04-04 17:24:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6999b97d8169c","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-04 17:24:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d118038a2724.47977988","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d118038a2724.47977988"}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:11] [INFO] Updating virtual stage {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered","force":false}
[2026-04-04 17:24:11] [INFO] Virtual stage successfully saved {"contact_id":"local_6999b97d7efb47.54533896","stage_name":"deal_registered"}
[2026-04-04 17:24:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_6999b97d7efb47.54533896"}
[2026-04-04 17:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999b97d7efb47.54533896","person_id":"21753"}
[2026-04-04 17:24:20] [INFO] Checking activity reminders 
[2026-04-04 17:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:24:50] [INFO] Checking activity reminders 
[2026-04-04 17:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:25:21] [INFO] Checking activity reminders 
[2026-04-04 17:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:25:51] [INFO] Checking activity reminders 
[2026-04-04 17:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:26:21] [INFO] Checking activity reminders 
[2026-04-04 17:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:26:51] [INFO] Checking activity reminders 
[2026-04-04 17:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:27:21] [INFO] Checking activity reminders 
[2026-04-04 17:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:27:51] [INFO] Checking activity reminders 
[2026-04-04 17:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:28:21] [INFO] Checking activity reminders 
[2026-04-04 17:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:28:51] [INFO] Checking activity reminders 
[2026-04-04 17:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:29:21] [INFO] Checking activity reminders 
[2026-04-04 17:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:29:51] [INFO] Checking activity reminders 
[2026-04-04 17:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:30:21] [INFO] Checking activity reminders 
[2026-04-04 17:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:30:52] [INFO] Checking activity reminders 
[2026-04-04 17:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:31:22] [INFO] Checking activity reminders 
[2026-04-04 17:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:31:52] [INFO] Checking activity reminders 
[2026-04-04 17:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:32:07] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"check_reminders"}
[2026-04-04 17:32:07] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:32:07] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:32:22] [INFO] Checking activity reminders 
[2026-04-04 17:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:32:52] [INFO] Checking activity reminders 
[2026-04-04 17:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:33:22] [INFO] Checking activity reminders 
[2026-04-04 17:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:33:52] [INFO] Checking activity reminders 
[2026-04-04 17:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:34:22] [INFO] Checking activity reminders 
[2026-04-04 17:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:34:52] [INFO] Checking activity reminders 
[2026-04-04 17:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:35:22] [INFO] Checking activity reminders 
[2026-04-04 17:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:35:53] [INFO] Checking activity reminders 
[2026-04-04 17:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:36:23] [INFO] Checking activity reminders 
[2026-04-04 17:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:36:53] [INFO] Checking activity reminders 
[2026-04-04 17:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:37:23] [INFO] Checking activity reminders 
[2026-04-04 17:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:37:53] [INFO] Checking activity reminders 
[2026-04-04 17:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:38:23] [INFO] Checking activity reminders 
[2026-04-04 17:38:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:38:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:38:53] [INFO] Checking activity reminders 
[2026-04-04 17:38:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:38:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:39:23] [INFO] Checking activity reminders 
[2026-04-04 17:39:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:39:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:39:54] [INFO] Checking activity reminders 
[2026-04-04 17:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:40:24] [INFO] Checking activity reminders 
[2026-04-04 17:40:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:40:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:40:54] [INFO] Checking activity reminders 
[2026-04-04 17:40:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:40:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:41:24] [INFO] Checking activity reminders 
[2026-04-04 17:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:41:54] [INFO] Checking activity reminders 
[2026-04-04 17:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:42:24] [INFO] Checking activity reminders 
[2026-04-04 17:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:42:54] [INFO] Checking activity reminders 
[2026-04-04 17:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:43:24] [INFO] Checking activity reminders 
[2026-04-04 17:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:43:54] [INFO] Checking activity reminders 
[2026-04-04 17:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:44:24] [INFO] Checking activity reminders 
[2026-04-04 17:44:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:44:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:44:32] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-04 17:44:32] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:44:32] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:44:32] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-04 17:44:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:44:37] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 17:44:37] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 17:44:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 17:44:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 17:44:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 17:44:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 17:44:54] [INFO] Checking activity reminders 
[2026-04-04 17:44:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:44:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:45:08] [INFO] Checking activity reminders 
[2026-04-04 17:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:45:25] [INFO] Checking activity reminders 
[2026-04-04 17:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:45:55] [INFO] Checking activity reminders 
[2026-04-04 17:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:46:25] [INFO] Checking activity reminders 
[2026-04-04 17:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:46:55] [INFO] Checking activity reminders 
[2026-04-04 17:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:47:25] [INFO] Checking activity reminders 
[2026-04-04 17:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:47:44] [INFO] Checking activity reminders 
[2026-04-04 17:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:47:55] [INFO] Checking activity reminders 
[2026-04-04 17:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:48:25] [INFO] Checking activity reminders 
[2026-04-04 17:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:48:55] [INFO] Checking activity reminders 
[2026-04-04 17:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:49:25] [INFO] Checking activity reminders 
[2026-04-04 17:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:49:55] [INFO] Checking activity reminders 
[2026-04-04 17:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:50:25] [INFO] Checking activity reminders 
[2026-04-04 17:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:50:50] [WARNING] Auth check failed - not authenticated {"session_id":"s997tbpnqbkjieesrrq51bqmma","session_keys":[],"action":"log_client_event"}
[2026-04-04 17:50:50] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 17:50:50] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 17:50:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 17:50:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 17:50:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 17:50:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 17:50:56] [INFO] Checking activity reminders 
[2026-04-04 17:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:51:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-04 17:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-04-04 17:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53ca6a1b9a3.18868862","person_id":"21834"}
[2026-04-04 17:51:21] [INFO] Checking activity reminders 
[2026-04-04 17:51:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:51:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:51:26] [INFO] Checking activity reminders 
[2026-04-04 17:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:51:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:51:51] [INFO] Checking activity reminders 
[2026-04-04 17:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:51:56] [INFO] Checking activity reminders 
[2026-04-04 17:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:52:26] [INFO] Checking activity reminders 
[2026-04-04 17:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:52:56] [INFO] Checking activity reminders 
[2026-04-04 17:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:53:26] [INFO] Checking activity reminders 
[2026-04-04 17:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:53:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 17:53:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 17:53:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 17:53:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 17:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:53:47] [INFO] Checking activity reminders 
[2026-04-04 17:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:53:56] [INFO] Checking activity reminders 
[2026-04-04 17:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:53:59] [INFO] Checking activity reminders 
[2026-04-04 17:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:54:03] [INFO] Checking activity reminders 
[2026-04-04 17:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:54:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"معامله اول 5858585858","contact_id":"local_694fb862928935.14063521","deal_id":"local_6950d1ad991b37.37856709","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 17:54:04","session_id":"s997tbpnqbkjieesrrq51bqmma"}
[2026-04-04 17:54:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:54:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله اول 5858585858","contact_id":"local_694fb862928935.14063521","is_new_deal":false}
[2026-04-04 17:54:04] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله اول 5858585858"}
[2026-04-04 17:54:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله اول 5858585858"}
[2026-04-04 17:54:04] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"5858585858","pattern":"معامله_ordinal_phone"}
[2026-04-04 17:54:04] [INFO] getContactPrimaryPhone called {"contact_id":"local_694fb862928935.14063521"}
[2026-04-04 17:54:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:54:04] [INFO] getContactPrimaryPhone result {"contact_id":"local_694fb862928935.14063521","person_found":true,"primary_phone":"5858585858"}
[2026-04-04 17:54:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"5858585858","contact_primary_phone":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison called {"input_phone":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison cleaned {"original":"5858585858","cleaned":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison final result {"final":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison called {"input_phone":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison cleaned {"original":"5858585858","cleaned":"5858585858"}
[2026-04-04 17:54:04] [INFO] normalizePhoneForComparison final result {"final":"5858585858"}
[2026-04-04 17:54:04] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"5858585858","normalized_contact_phone":"5858585858","phones_match":true}
[2026-04-04 17:54:04] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله اول 5858585858","deal_phone":"5858585858","contact_phone":"5858585858","contact_id":"local_694fb862928935.14063521","validation":"PASSED"}
[2026-04-04 17:54:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","existing_deal_found":true,"existing_contact_id":"local_694fb862928935.14063521","existing_title":"معامله سوم 5858585858 | معامله اول 5858585858، پکیج مشاوره، کارشناسی حضوری","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 17:54:04"}
[2026-04-04 17:54:04] [INFO] DealController.save validated payments {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-04 17:54:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_694fb862928935.14063521","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 17:54:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950d1ad991b37.37856709","contact_didar_id":"local_694fb862928935.14063521","title":"معامله سوم 5858585858 | معامله اول 5858585858","base_title_used":"معامله سوم 5858585858","services_text":"معامله اول 5858585858","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":100000000,"payment_amount":3244444,"payments_present":true,"requested_services":["معامله اول 5858585858"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"امیر سهرابی نیا","existing_deal":"YES","existing_deal_id":"local_6950d1ad991b37.37856709","existing_deal_status":"Pending","server_time":"2026-04-04 17:54:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 17:54:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:54:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 5858585858 | معامله اول 5858585858","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":100000000,"payment_amount":3244444,"server_time":"2026-04-04 17:54:05","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 17:54:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 17:54:26] [INFO] Checking activity reminders 
[2026-04-04 17:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:54:33] [INFO] Checking activity reminders 
[2026-04-04 17:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:54:56] [INFO] Checking activity reminders 
[2026-04-04 17:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:55:03] [INFO] Checking activity reminders 
[2026-04-04 17:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:55:26] [INFO] Checking activity reminders 
[2026-04-04 17:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:55:34] [INFO] Checking activity reminders 
[2026-04-04 17:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:55:56] [INFO] Checking activity reminders 
[2026-04-04 17:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:56:04] [INFO] Checking activity reminders 
[2026-04-04 17:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:56:27] [INFO] Checking activity reminders 
[2026-04-04 17:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:56:34] [INFO] Checking activity reminders 
[2026-04-04 17:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:56:57] [INFO] Checking activity reminders 
[2026-04-04 17:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:57:04] [INFO] Checking activity reminders 
[2026-04-04 17:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:57:34] [INFO] Checking activity reminders 
[2026-04-04 17:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:57:38] [INFO] Checking activity reminders 
[2026-04-04 17:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:58:04] [INFO] Checking activity reminders 
[2026-04-04 17:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:58:08] [INFO] Checking activity reminders 
[2026-04-04 17:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:58:35] [INFO] Checking activity reminders 
[2026-04-04 17:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:58:39] [INFO] Checking activity reminders 
[2026-04-04 17:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:59:05] [INFO] Checking activity reminders 
[2026-04-04 17:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:59:09] [INFO] Checking activity reminders 
[2026-04-04 17:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:59:35] [INFO] Checking activity reminders 
[2026-04-04 17:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 17:59:39] [INFO] Checking activity reminders 
[2026-04-04 17:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 17:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:00:05] [INFO] Checking activity reminders 
[2026-04-04 18:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:00:09] [INFO] Checking activity reminders 
[2026-04-04 18:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:00:35] [INFO] Checking activity reminders 
[2026-04-04 18:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:00:39] [INFO] Checking activity reminders 
[2026-04-04 18:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:01:09] [INFO] Checking activity reminders 
[2026-04-04 18:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:01:39] [INFO] Checking activity reminders 
[2026-04-04 18:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:01:57] [INFO] Checking activity reminders 
[2026-04-04 18:01:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:01:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:01:59] [INFO] Checking activity reminders 
[2026-04-04 18:01:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:01:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:02:29] [INFO] Checking activity reminders 
[2026-04-04 18:02:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:02:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:02:36] [INFO] Checking activity reminders 
[2026-04-04 18:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:02:38] [INFO] Checking activity reminders 
[2026-04-04 18:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:02:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:02:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:02:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:02:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:03:00] [INFO] Checking activity reminders 
[2026-04-04 18:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:03:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:03:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:03:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:03:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:03:30] [INFO] Checking activity reminders 
[2026-04-04 18:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:03:34] [INFO] Checking activity reminders 
[2026-04-04 18:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:04:00] [INFO] Checking activity reminders 
[2026-04-04 18:04:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:04:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:04:30] [INFO] Checking activity reminders 
[2026-04-04 18:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:05:00] [INFO] Checking activity reminders 
[2026-04-04 18:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:05:30] [INFO] Checking activity reminders 
[2026-04-04 18:05:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:05:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:06:00] [INFO] Checking activity reminders 
[2026-04-04 18:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:06:30] [INFO] Checking activity reminders 
[2026-04-04 18:06:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:06:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:06:56] [INFO] Checking activity reminders 
[2026-04-04 18:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:06:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:06:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:06:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:06:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:07:00] [INFO] Checking activity reminders 
[2026-04-04 18:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:07:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:07:28] [INFO] Checking activity reminders 
[2026-04-04 18:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:07:30] [INFO] Checking activity reminders 
[2026-04-04 18:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:07:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"معامله اول 5858585858","contact_id":"local_694fb862928935.14063521","deal_id":"local_6950d1ad991b37.37856709","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 18:07:47","session_id":"s997tbpnqbkjieesrrq51bqmma"}
[2026-04-04 18:07:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:07:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"معامله اول 5858585858","contact_id":"local_694fb862928935.14063521","is_new_deal":false}
[2026-04-04 18:07:47] [INFO] extractPhoneFromDealTitle called {"input_title":"معامله اول 5858585858"}
[2026-04-04 18:07:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"معامله اول 5858585858"}
[2026-04-04 18:07:47] [INFO] extractPhoneFromDealTitle found match {"matched_phone":"5858585858","pattern":"معامله_ordinal_phone"}
[2026-04-04 18:07:47] [INFO] getContactPrimaryPhone called {"contact_id":"local_694fb862928935.14063521"}
[2026-04-04 18:07:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:07:47] [INFO] getContactPrimaryPhone result {"contact_id":"local_694fb862928935.14063521","person_found":true,"primary_phone":"5858585858"}
[2026-04-04 18:07:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"5858585858","contact_primary_phone":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison called {"input_phone":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison cleaned {"original":"5858585858","cleaned":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison final result {"final":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison called {"input_phone":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison cleaned {"original":"5858585858","cleaned":"5858585858"}
[2026-04-04 18:07:47] [INFO] normalizePhoneForComparison final result {"final":"5858585858"}
[2026-04-04 18:07:47] [INFO] DEAL_PHONE_VALIDATION_NORMALIZED {"normalized_deal_phone":"5858585858","normalized_contact_phone":"5858585858","phones_match":true}
[2026-04-04 18:07:47] [INFO] DEAL_PHONE_VALIDATION_PASSED {"deal_title":"معامله اول 5858585858","deal_phone":"5858585858","contact_phone":"5858585858","contact_id":"local_694fb862928935.14063521","validation":"PASSED"}
[2026-04-04 18:07:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","existing_deal_found":true,"existing_contact_id":"local_694fb862928935.14063521","existing_title":"معامله سوم 5858585858 | معامله اول 5858585858","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 18:07:47"}
[2026-04-04 18:07:47] [INFO] DealController.save validated payments {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-04 18:07:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_694fb862928935.14063521","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 18:07:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950d1ad991b37.37856709","contact_didar_id":"local_694fb862928935.14063521","title":"معامله سوم 5858585858 | معامله اول 5858585858","base_title_used":"معامله سوم 5858585858","services_text":"معامله اول 5858585858","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":100000000,"payment_amount":12244445,"payments_present":true,"requested_services":["معامله اول 5858585858"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"امیر سهرابی نیا","existing_deal":"YES","existing_deal_id":"local_6950d1ad991b37.37856709","existing_deal_status":"Pending","server_time":"2026-04-04 18:07:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 18:07:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:07:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 5858585858 | معامله اول 5858585858","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":100000000,"payment_amount":12244445,"server_time":"2026-04-04 18:07:47","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 18:07:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:07:58] [INFO] Checking activity reminders 
[2026-04-04 18:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:08:01] [INFO] Checking activity reminders 
[2026-04-04 18:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:08:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"چکاپ کسب و کار","contact_id":"local_694fb862928935.14063521","deal_id":"local_6950d1ad991b37.37856709","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 18:08:09","session_id":"s997tbpnqbkjieesrrq51bqmma"}
[2026-04-04 18:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:08:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"چکاپ کسب و کار","contact_id":"local_694fb862928935.14063521","is_new_deal":false}
[2026-04-04 18:08:09] [INFO] extractPhoneFromDealTitle called {"input_title":"چکاپ کسب و کار"}
[2026-04-04 18:08:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"چکاپ کسب و کار"}
[2026-04-04 18:08:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"چکاپ کسب و کار"}
[2026-04-04 18:08:09] [INFO] getContactPrimaryPhone called {"contact_id":"local_694fb862928935.14063521"}
[2026-04-04 18:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:08:09] [INFO] getContactPrimaryPhone result {"contact_id":"local_694fb862928935.14063521","person_found":true,"primary_phone":"5858585858"}
[2026-04-04 18:08:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"5858585858"}
[2026-04-04 18:08:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"5858585858","contact_id":"local_694fb862928935.14063521","deal_id":"local_6950d1ad991b37.37856709","is_new_deal":false,"incoming_title":"چکاپ کسب و کار","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 18:08:09"}
[2026-04-04 18:08:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","existing_deal_found":true,"existing_contact_id":"local_694fb862928935.14063521","existing_title":"معامله سوم 5858585858 | معامله اول 5858585858","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-04 18:08:09"}
[2026-04-04 18:08:09] [INFO] DealController.save validated payments {"deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-04 18:08:09] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_694fb862928935.14063521","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-04 18:08:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950d1ad991b37.37856709","contact_didar_id":"local_694fb862928935.14063521","title":"معامله سوم 5858585858 | چکاپ کسب و کار","base_title_used":"معامله سوم 5858585858","services_text":"چکاپ کسب و کار","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":100000000,"payment_amount":12244445,"payments_present":true,"requested_services":["چکاپ کسب و کار"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"امیر سهرابی نیا","existing_deal":"YES","existing_deal_id":"local_6950d1ad991b37.37856709","existing_deal_status":"Pending","server_time":"2026-04-04 18:08:09","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-04 18:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:08:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950d1ad991b37.37856709","contact_id":"local_694fb862928935.14063521","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 5858585858 | چکاپ کسب و کار","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":100000000,"payment_amount":12244445,"server_time":"2026-04-04 18:08:09","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 18:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694fb862928935.14063521","person_id":"21367"}
[2026-04-04 18:08:28] [INFO] Checking activity reminders 
[2026-04-04 18:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:08:31] [INFO] Checking activity reminders 
[2026-04-04 18:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:08:58] [INFO] Checking activity reminders 
[2026-04-04 18:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:09:01] [INFO] Checking activity reminders 
[2026-04-04 18:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:09:28] [INFO] Checking activity reminders 
[2026-04-04 18:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:09:31] [INFO] Checking activity reminders 
[2026-04-04 18:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:09:58] [INFO] Checking activity reminders 
[2026-04-04 18:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:10:01] [INFO] Checking activity reminders 
[2026-04-04 18:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:10:29] [INFO] Checking activity reminders 
[2026-04-04 18:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:10:31] [INFO] Checking activity reminders 
[2026-04-04 18:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:10:59] [INFO] Checking activity reminders 
[2026-04-04 18:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:11:01] [INFO] Checking activity reminders 
[2026-04-04 18:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:11:06] [INFO] Activity save request {"post_data":{"contact_id":"7645","deal_id":"local_69ca8f98b8d4e5.33706867","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شهرستان بود \r\n600 نقد \r\n20 گرم طلای فیزیکی \r\nپرزنت 405 \/ پشتیبانی استاد \r\n6 ماهه \r\nپیامک و پیام در بله \r\nدفعه ی پیش مانده حساب پرداخت نکرد و از کانال حذف شد \r\nتمدید نقدی فقط انجام بشه  \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 18:11:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7645","note_was_empty":true}
[2026-04-04 18:11:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"7645","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:06] [INFO] Updating virtual stage {"contact_id":"7645","stage_name":"deal_registered","force":false}
[2026-04-04 18:11:06] [INFO] Virtual stage successfully saved {"contact_id":"7645","stage_name":"deal_registered"}
[2026-04-04 18:11:06] [INFO] Virtual stage updated after activity save {"contact_id":"7645"}
[2026-04-04 18:11:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8f98b8d4e5.33706867","stage":"تماس پیگیری","status_change":null}
[2026-04-04 18:11:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d12302314477.17364507","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d12302314477.17364507"}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:06] [INFO] Updating virtual stage {"contact_id":"7645","stage_name":"deal_registered","force":false}
[2026-04-04 18:11:06] [INFO] Virtual stage successfully saved {"contact_id":"7645","stage_name":"deal_registered"}
[2026-04-04 18:11:06] [INFO] Virtual stage updated after activity save {"contact_id":"7645"}
[2026-04-04 18:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-04 18:11:29] [INFO] Checking activity reminders 
[2026-04-04 18:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:11:31] [INFO] Checking activity reminders 
[2026-04-04 18:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:11:59] [INFO] Checking activity reminders 
[2026-04-04 18:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:12:01] [INFO] Checking activity reminders 
[2026-04-04 18:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:12:29] [INFO] Checking activity reminders 
[2026-04-04 18:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:12:31] [INFO] Checking activity reminders 
[2026-04-04 18:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:12:59] [INFO] Checking activity reminders 
[2026-04-04 18:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:13:01] [INFO] Checking activity reminders 
[2026-04-04 18:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:13:29] [INFO] Checking activity reminders 
[2026-04-04 18:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:13:32] [INFO] Checking activity reminders 
[2026-04-04 18:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:14:00] [INFO] Checking activity reminders 
[2026-04-04 18:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:14:02] [INFO] Checking activity reminders 
[2026-04-04 18:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:14:30] [INFO] Checking activity reminders 
[2026-04-04 18:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:14:32] [INFO] Checking activity reminders 
[2026-04-04 18:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:15:00] [INFO] Checking activity reminders 
[2026-04-04 18:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:15:02] [INFO] Checking activity reminders 
[2026-04-04 18:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:15:30] [INFO] Checking activity reminders 
[2026-04-04 18:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:15:32] [INFO] Checking activity reminders 
[2026-04-04 18:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:16:00] [INFO] Checking activity reminders 
[2026-04-04 18:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:16:02] [INFO] Checking activity reminders 
[2026-04-04 18:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:16:30] [INFO] Checking activity reminders 
[2026-04-04 18:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:16:32] [INFO] Checking activity reminders 
[2026-04-04 18:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:17:00] [INFO] Checking activity reminders 
[2026-04-04 18:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:17:02] [INFO] Checking activity reminders 
[2026-04-04 18:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:17:30] [INFO] Checking activity reminders 
[2026-04-04 18:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:17:33] [INFO] Checking activity reminders 
[2026-04-04 18:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:18:01] [INFO] Checking activity reminders 
[2026-04-04 18:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:18:03] [INFO] Checking activity reminders 
[2026-04-04 18:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:18:31] [INFO] Checking activity reminders 
[2026-04-04 18:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:18:33] [INFO] Checking activity reminders 
[2026-04-04 18:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:19:01] [INFO] Checking activity reminders 
[2026-04-04 18:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:19:03] [INFO] Checking activity reminders 
[2026-04-04 18:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:19:33] [INFO] Checking activity reminders 
[2026-04-04 18:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:19:43] [INFO] Checking activity reminders 
[2026-04-04 18:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:20:01] [INFO] Checking activity reminders 
[2026-04-04 18:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:20:02] [INFO] Checking activity reminders 
[2026-04-04 18:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:20:03] [INFO] Checking activity reminders 
[2026-04-04 18:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:20:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"930","deal_id":"local_69d0a15c2edf04.89125463","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 18:20:31","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 18:20:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:20:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"930","is_new_deal":false}
[2026-04-04 18:20:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:20:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:20:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:20:31] [INFO] getContactPrimaryPhone called {"contact_id":"930"}
[2026-04-04 18:20:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:20:31] [INFO] getContactPrimaryPhone result {"contact_id":"930","person_found":true,"primary_phone":"9125204955"}
[2026-04-04 18:20:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125204955"}
[2026-04-04 18:20:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125204955","contact_id":"930","deal_id":"local_69d0a15c2edf04.89125463","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 18:20:31"}
[2026-04-04 18:20:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","existing_deal_found":true,"existing_contact_id":"930","existing_title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 18:20:31"}
[2026-04-04 18:20:31] [INFO] DealController.save validated payments {"deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 18:20:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"930","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 18:20:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a15c2edf04.89125463","contact_didar_id":"930","title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله چهارم 9125204955","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر ملکی","existing_deal":"YES","existing_deal_id":"local_69d0a15c2edf04.89125463","existing_deal_status":"Pending","server_time":"2026-04-04 18:20:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 18:20:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:20:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 18:20:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 18:20:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:20:34] [INFO] Checking activity reminders 
[2026-04-04 18:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:21:04] [INFO] Checking activity reminders 
[2026-04-04 18:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:21:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"930","deal_id":"local_69d0a15c2edf04.89125463","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 18:21:27","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 18:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:21:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"930","is_new_deal":false}
[2026-04-04 18:21:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:21:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:21:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-04 18:21:27] [INFO] getContactPrimaryPhone called {"contact_id":"930"}
[2026-04-04 18:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:21:27] [INFO] getContactPrimaryPhone result {"contact_id":"930","person_found":true,"primary_phone":"9125204955"}
[2026-04-04 18:21:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125204955"}
[2026-04-04 18:21:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125204955","contact_id":"930","deal_id":"local_69d0a15c2edf04.89125463","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 18:21:27"}
[2026-04-04 18:21:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","existing_deal_found":true,"existing_contact_id":"930","existing_title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 18:21:27"}
[2026-04-04 18:21:27] [INFO] DealController.save validated payments {"deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-04 18:21:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"930","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 18:21:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a15c2edf04.89125463","contact_didar_id":"930","title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله چهارم 9125204955","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر ملکی","existing_deal":"YES","existing_deal_id":"local_69d0a15c2edf04.89125463","existing_deal_status":"Pending","server_time":"2026-04-04 18:21:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 18:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:21:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a15c2edf04.89125463","contact_id":"930","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9125204955 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-04 18:21:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 18:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:21:34] [INFO] Checking activity reminders 
[2026-04-04 18:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:22:04] [INFO] Checking activity reminders 
[2026-04-04 18:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:22:34] [INFO] Checking activity reminders 
[2026-04-04 18:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:22:34] [INFO] Activity save request {"post_data":{"contact_id":"930","deal_id":"local_69d0a15c2edf04.89125463","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پرزنت 6 ماهه کانال 405\r\nدوره پیش بینی \r\nدر صورت تایید خودش اطلاع میده \r\nدر بله 404 داره پیگیری میکنه ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 18:22:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"930","note_was_empty":true}
[2026-04-04 18:22:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"930","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:34] [INFO] Updating virtual stage {"contact_id":"930","stage_name":"deal_registered","force":false}
[2026-04-04 18:22:34] [INFO] Virtual stage successfully saved {"contact_id":"930","stage_name":"deal_registered"}
[2026-04-04 18:22:34] [INFO] Virtual stage updated after activity save {"contact_id":"930"}
[2026-04-04 18:22:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a15c2edf04.89125463","stage":"تماس پیگیری","status_change":null}
[2026-04-04 18:22:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d125b28995f0.59894561","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69d125b28995f0.59894561"}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:34] [INFO] Updating virtual stage {"contact_id":"930","stage_name":"deal_registered","force":false}
[2026-04-04 18:22:34] [INFO] Virtual stage successfully saved {"contact_id":"930","stage_name":"deal_registered"}
[2026-04-04 18:22:34] [INFO] Virtual stage updated after activity save {"contact_id":"930"}
[2026-04-04 18:22:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"930","person_id":"18635"}
[2026-04-04 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-04 18:22:56] [INFO] Checking activity reminders 
[2026-04-04 18:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:22:58] [INFO] Checking activity reminders 
[2026-04-04 18:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:23:01] [INFO] Checking activity reminders 
[2026-04-04 18:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:23:31] [INFO] Checking activity reminders 
[2026-04-04 18:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:23:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7645","person_id":"10885"}
[2026-04-04 18:24:02] [INFO] Checking activity reminders 
[2026-04-04 18:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:24:11] [INFO] Checking activity reminders 
[2026-04-04 18:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:24:12] [INFO] Checking activity reminders 
[2026-04-04 18:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:24:42] [INFO] Checking activity reminders 
[2026-04-04 18:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:25:13] [INFO] Checking activity reminders 
[2026-04-04 18:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:25:43] [INFO] Checking activity reminders 
[2026-04-04 18:25:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:25:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:26:13] [INFO] Checking activity reminders 
[2026-04-04 18:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:26:43] [INFO] Checking activity reminders 
[2026-04-04 18:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:27:13] [INFO] Checking activity reminders 
[2026-04-04 18:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:27:43] [INFO] Checking activity reminders 
[2026-04-04 18:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:28:14] [INFO] Checking activity reminders 
[2026-04-04 18:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:28:44] [INFO] Checking activity reminders 
[2026-04-04 18:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:29:14] [INFO] Checking activity reminders 
[2026-04-04 18:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:29:44] [INFO] Checking activity reminders 
[2026-04-04 18:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:30:14] [INFO] Checking activity reminders 
[2026-04-04 18:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:30:44] [INFO] Checking activity reminders 
[2026-04-04 18:30:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:30:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:31:14] [INFO] Checking activity reminders 
[2026-04-04 18:31:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:31:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:31:44] [INFO] Checking activity reminders 
[2026-04-04 18:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:32:15] [INFO] Checking activity reminders 
[2026-04-04 18:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:32:45] [INFO] Checking activity reminders 
[2026-04-04 18:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:33:15] [INFO] Checking activity reminders 
[2026-04-04 18:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:33:45] [INFO] Checking activity reminders 
[2026-04-04 18:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:34:15] [INFO] Checking activity reminders 
[2026-04-04 18:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:34:45] [INFO] Checking activity reminders 
[2026-04-04 18:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:35:15] [INFO] Checking activity reminders 
[2026-04-04 18:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:35:45] [INFO] Checking activity reminders 
[2026-04-04 18:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:36:15] [INFO] Checking activity reminders 
[2026-04-04 18:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:36:46] [INFO] Checking activity reminders 
[2026-04-04 18:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:37:16] [INFO] Checking activity reminders 
[2026-04-04 18:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:37:46] [INFO] Checking activity reminders 
[2026-04-04 18:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:38:00] [INFO] Checking activity reminders 
[2026-04-04 18:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:38:02] [INFO] Checking activity reminders 
[2026-04-04 18:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:38:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:38:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:38:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:38:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:38:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:38:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:38:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:38:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:38:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:38:16] [INFO] Checking activity reminders 
[2026-04-04 18:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:38:41] [INFO] Checking activity reminders 
[2026-04-04 18:38:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:38:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:38:46] [INFO] Checking activity reminders 
[2026-04-04 18:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:39:16] [INFO] Checking activity reminders 
[2026-04-04 18:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:39:47] [INFO] Checking activity reminders 
[2026-04-04 18:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:40:17] [INFO] Checking activity reminders 
[2026-04-04 18:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:40:47] [INFO] Checking activity reminders 
[2026-04-04 18:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:41:17] [INFO] Checking activity reminders 
[2026-04-04 18:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:41:47] [INFO] Checking activity reminders 
[2026-04-04 18:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:42:17] [INFO] Checking activity reminders 
[2026-04-04 18:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:42:47] [INFO] Checking activity reminders 
[2026-04-04 18:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:43:18] [INFO] Checking activity reminders 
[2026-04-04 18:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:43:48] [INFO] Checking activity reminders 
[2026-04-04 18:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:43:58] [INFO] Checking activity reminders 
[2026-04-04 18:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:44:18] [INFO] Checking activity reminders 
[2026-04-04 18:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:44:31] [INFO] Checking activity reminders 
[2026-04-04 18:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:44:32] [INFO] Checking activity reminders 
[2026-04-04 18:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:44:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:44:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:44:48] [INFO] Checking activity reminders 
[2026-04-04 18:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:45:06] [INFO] Checking activity reminders 
[2026-04-04 18:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:45:18] [INFO] Checking activity reminders 
[2026-04-04 18:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:45:36] [INFO] Checking activity reminders 
[2026-04-04 18:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:45:48] [INFO] Checking activity reminders 
[2026-04-04 18:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:46:18] [INFO] Checking activity reminders 
[2026-04-04 18:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:46:48] [INFO] Checking activity reminders 
[2026-04-04 18:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:47:18] [INFO] Checking activity reminders 
[2026-04-04 18:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:47:48] [INFO] Checking activity reminders 
[2026-04-04 18:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:48:19] [INFO] Checking activity reminders 
[2026-04-04 18:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:48:49] [INFO] Checking activity reminders 
[2026-04-04 18:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:49:19] [INFO] Checking activity reminders 
[2026-04-04 18:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:49:49] [INFO] Checking activity reminders 
[2026-04-04 18:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:50:19] [INFO] Checking activity reminders 
[2026-04-04 18:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:50:49] [INFO] Checking activity reminders 
[2026-04-04 18:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:51:19] [INFO] Checking activity reminders 
[2026-04-04 18:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:51:50] [INFO] Checking activity reminders 
[2026-04-04 18:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:52:20] [INFO] Checking activity reminders 
[2026-04-04 18:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:52:50] [INFO] Checking activity reminders 
[2026-04-04 18:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:53:20] [INFO] Checking activity reminders 
[2026-04-04 18:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:53:51] [INFO] Checking activity reminders 
[2026-04-04 18:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:54:21] [INFO] Checking activity reminders 
[2026-04-04 18:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:54:51] [INFO] Checking activity reminders 
[2026-04-04 18:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:55:21] [INFO] Checking activity reminders 
[2026-04-04 18:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:55:51] [INFO] Checking activity reminders 
[2026-04-04 18:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:55:55] [INFO] Checking activity reminders 
[2026-04-04 18:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:55:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 18:55:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 18:56:02] [ERROR] Failed to get KPI drilldown {"table_id":"performance_cards","metric_key":"sales_total","row":{"date":"","owner_didar_id":"","owner_name":"","product_name":"","failure_reason":"","activity_type":"","stage":""},"exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 't.destination_card_number' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php","line":6483,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(6483): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(3531): App\\Repositories\\KpiRepository->runSelectAll()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(5120): App\\Repositories\\KpiRepository->getPaymentsByDealIds()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2822): App\\Repositories\\KpiRepository->buildSimpleDealLeadDrilldownByIds()\n#4 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2609): App\\Repositories\\KpiRepository->getSalesTotalCardDrilldownUiOracle()\n#5 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2133): App\\Repositories\\KpiRepository->getSalesTotalCardDrilldown()\n#6 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2094): App\\Repositories\\KpiRepository->getPerformanceCardDrilldown()\n#7 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/KpiService.php(428): App\\Repositories\\KpiRepository->getKpiDrilldown()\n#8 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/KpiController.php(494): App\\Services\\KpiService->getKpiDrilldown()\n#9 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(355): App\\Controllers\\KpiController->getKpiDrilldown()\n#10 {main}"}}
[2026-04-04 18:56:12] [ERROR] Failed to get KPI drilldown {"table_id":"performance_cards","metric_key":"outstanding_amount_sum","row":{"date":"","owner_didar_id":"","owner_name":"","product_name":"","failure_reason":"","activity_type":"","stage":""},"exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 't.destination_card_number' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php","line":6483,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(6483): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(3531): App\\Repositories\\KpiRepository->runSelectAll()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(5120): App\\Repositories\\KpiRepository->getPaymentsByDealIds()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(5054): App\\Repositories\\KpiRepository->buildSimpleDealLeadDrilldownByIds()\n#4 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2145): App\\Repositories\\KpiRepository->getFinancialPerformanceCardDrilldownUiOracle()\n#5 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2094): App\\Repositories\\KpiRepository->getPerformanceCardDrilldown()\n#6 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/KpiService.php(428): App\\Repositories\\KpiRepository->getKpiDrilldown()\n#7 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/KpiController.php(494): App\\Services\\KpiService->getKpiDrilldown()\n#8 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(355): App\\Controllers\\KpiController->getKpiDrilldown()\n#9 {main}"}}
[2026-04-04 18:56:16] [ERROR] Failed to get KPI drilldown {"table_id":"performance_cards","metric_key":"sales_total","row":{"date":"","owner_didar_id":"","owner_name":"","product_name":"","failure_reason":"","activity_type":"","stage":""},"exception":{"message":"SQLSTATE[42S22]: Column not found: 1054 Unknown column 't.destination_card_number' in 'field list'","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php","line":6483,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(6483): PDO->prepare()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(3531): App\\Repositories\\KpiRepository->runSelectAll()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(5120): App\\Repositories\\KpiRepository->getPaymentsByDealIds()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2822): App\\Repositories\\KpiRepository->buildSimpleDealLeadDrilldownByIds()\n#4 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2609): App\\Repositories\\KpiRepository->getSalesTotalCardDrilldownUiOracle()\n#5 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2133): App\\Repositories\\KpiRepository->getSalesTotalCardDrilldown()\n#6 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Repositories\/KpiRepository.php(2094): App\\Repositories\\KpiRepository->getPerformanceCardDrilldown()\n#7 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/KpiService.php(428): App\\Repositories\\KpiRepository->getKpiDrilldown()\n#8 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/KpiController.php(494): App\\Services\\KpiService->getKpiDrilldown()\n#9 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(355): App\\Controllers\\KpiController->getKpiDrilldown()\n#10 {main}"}}
[2026-04-04 18:56:21] [INFO] Checking activity reminders 
[2026-04-04 18:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:56:27] [INFO] Checking activity reminders 
[2026-04-04 18:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:56:51] [INFO] Checking activity reminders 
[2026-04-04 18:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:57:21] [INFO] Checking activity reminders 
[2026-04-04 18:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:57:51] [INFO] Checking activity reminders 
[2026-04-04 18:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:58:21] [INFO] Checking activity reminders 
[2026-04-04 18:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:58:52] [INFO] Checking activity reminders 
[2026-04-04 18:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:59:22] [INFO] Checking activity reminders 
[2026-04-04 18:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 18:59:52] [INFO] Checking activity reminders 
[2026-04-04 18:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 18:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:00:22] [INFO] Checking activity reminders 
[2026-04-04 19:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:00:52] [INFO] Checking activity reminders 
[2026-04-04 19:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:01:22] [INFO] Checking activity reminders 
[2026-04-04 19:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:01:52] [INFO] Checking activity reminders 
[2026-04-04 19:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:02:23] [INFO] Checking activity reminders 
[2026-04-04 19:02:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:02:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:02:53] [INFO] Checking activity reminders 
[2026-04-04 19:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:03:12] [INFO] Checking activity reminders 
[2026-04-04 19:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:03:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:03:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:03:23] [INFO] Checking activity reminders 
[2026-04-04 19:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:03:53] [INFO] Checking activity reminders 
[2026-04-04 19:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:04:23] [INFO] Checking activity reminders 
[2026-04-04 19:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:04:53] [INFO] Checking activity reminders 
[2026-04-04 19:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:05:23] [INFO] Checking activity reminders 
[2026-04-04 19:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:05:53] [INFO] Checking activity reminders 
[2026-04-04 19:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:06:23] [INFO] Checking activity reminders 
[2026-04-04 19:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:06:53] [INFO] Checking activity reminders 
[2026-04-04 19:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:07:23] [INFO] Checking activity reminders 
[2026-04-04 19:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:07:54] [INFO] Checking activity reminders 
[2026-04-04 19:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:08:24] [INFO] Checking activity reminders 
[2026-04-04 19:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:08:42] [INFO] Checking activity reminders 
[2026-04-04 19:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:08:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 19:08:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:08:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:08:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:08:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:08:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:08:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:08:54] [INFO] Checking activity reminders 
[2026-04-04 19:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:09:24] [INFO] Checking activity reminders 
[2026-04-04 19:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:09:37] [INFO] Checking activity reminders 
[2026-04-04 19:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:09:54] [INFO] Checking activity reminders 
[2026-04-04 19:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:10:24] [INFO] Checking activity reminders 
[2026-04-04 19:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:10:54] [INFO] Checking activity reminders 
[2026-04-04 19:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:11:24] [INFO] Checking activity reminders 
[2026-04-04 19:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:11:52] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"check_reminders"}
[2026-04-04 19:11:52] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 19:11:52] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 19:11:54] [INFO] Checking activity reminders 
[2026-04-04 19:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:11:58] [WARNING] Auth check failed - not authenticated {"session_id":"2247ctpd2o9l1b324jbojag7bd","session_keys":[],"action":"log_client_event"}
[2026-04-04 19:11:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 19:11:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 19:11:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 19:11:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:11:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:11:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:12:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:12:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:12:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:12:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:12:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:12:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:12:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:12:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:12:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:12:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:12:24] [INFO] Checking activity reminders 
[2026-04-04 19:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:12:29] [INFO] Checking activity reminders 
[2026-04-04 19:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:12:55] [INFO] Checking activity reminders 
[2026-04-04 19:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:12:59] [INFO] Checking activity reminders 
[2026-04-04 19:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:13:19] [INFO] Checking activity reminders 
[2026-04-04 19:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:13:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 19:13:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:13:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:13:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:13:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:13:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:13:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:13:25] [INFO] Checking activity reminders 
[2026-04-04 19:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:13:29] [INFO] Checking activity reminders 
[2026-04-04 19:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:13:55] [INFO] Checking activity reminders 
[2026-04-04 19:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:13:59] [INFO] Checking activity reminders 
[2026-04-04 19:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:14:25] [INFO] Checking activity reminders 
[2026-04-04 19:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:14:29] [INFO] Checking activity reminders 
[2026-04-04 19:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:14:55] [INFO] Checking activity reminders 
[2026-04-04 19:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:14:59] [INFO] Checking activity reminders 
[2026-04-04 19:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:15:01] [INFO] Checking activity reminders 
[2026-04-04 19:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:15:25] [INFO] Checking activity reminders 
[2026-04-04 19:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:15:29] [INFO] Checking activity reminders 
[2026-04-04 19:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:15:55] [INFO] Checking activity reminders 
[2026-04-04 19:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:16:25] [INFO] Checking activity reminders 
[2026-04-04 19:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:16:27] [INFO] Checking activity reminders 
[2026-04-04 19:16:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:16:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:16:55] [INFO] Checking activity reminders 
[2026-04-04 19:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:17:25] [INFO] Checking activity reminders 
[2026-04-04 19:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:17:56] [INFO] Checking activity reminders 
[2026-04-04 19:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:18:26] [INFO] Checking activity reminders 
[2026-04-04 19:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:18:56] [INFO] Checking activity reminders 
[2026-04-04 19:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:19:26] [INFO] Checking activity reminders 
[2026-04-04 19:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:19:56] [INFO] Checking activity reminders 
[2026-04-04 19:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:20:26] [INFO] Checking activity reminders 
[2026-04-04 19:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:20:56] [INFO] Checking activity reminders 
[2026-04-04 19:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:21:20] [INFO] Checking activity reminders 
[2026-04-04 19:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:21:26] [INFO] Checking activity reminders 
[2026-04-04 19:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:21:57] [INFO] Checking activity reminders 
[2026-04-04 19:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:22:27] [INFO] Checking activity reminders 
[2026-04-04 19:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:22:57] [INFO] Checking activity reminders 
[2026-04-04 19:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:23:27] [INFO] Checking activity reminders 
[2026-04-04 19:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:23:57] [INFO] Checking activity reminders 
[2026-04-04 19:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:24:27] [INFO] Checking activity reminders 
[2026-04-04 19:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:24:57] [INFO] Checking activity reminders 
[2026-04-04 19:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:25:27] [INFO] Checking activity reminders 
[2026-04-04 19:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:25:57] [INFO] Checking activity reminders 
[2026-04-04 19:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:26:27] [INFO] Checking activity reminders 
[2026-04-04 19:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:26:58] [INFO] Checking activity reminders 
[2026-04-04 19:26:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:26:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:27:28] [INFO] Checking activity reminders 
[2026-04-04 19:27:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:27:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:27:58] [INFO] Checking activity reminders 
[2026-04-04 19:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:28:28] [INFO] Checking activity reminders 
[2026-04-04 19:28:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:28:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:28:58] [INFO] Checking activity reminders 
[2026-04-04 19:28:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:28:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:29:28] [INFO] Checking activity reminders 
[2026-04-04 19:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:29:58] [INFO] Checking activity reminders 
[2026-04-04 19:29:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:29:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:30:28] [INFO] Checking activity reminders 
[2026-04-04 19:30:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:30:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:30:58] [INFO] Checking activity reminders 
[2026-04-04 19:30:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:30:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:31:28] [INFO] Checking activity reminders 
[2026-04-04 19:31:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:31:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:31:57] [INFO] Checking activity reminders 
[2026-04-04 19:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:31:59] [INFO] Checking activity reminders 
[2026-04-04 19:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:31:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 19:31:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 19:32:29] [INFO] Checking activity reminders 
[2026-04-04 19:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:32:56] [INFO] Checking activity reminders 
[2026-04-04 19:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:32:59] [INFO] Checking activity reminders 
[2026-04-04 19:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:33:29] [INFO] Checking activity reminders 
[2026-04-04 19:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:33:31] [INFO] Checking activity reminders 
[2026-04-04 19:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:33:59] [INFO] Checking activity reminders 
[2026-04-04 19:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:34:29] [INFO] Checking activity reminders 
[2026-04-04 19:34:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:34:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:34:59] [INFO] Checking activity reminders 
[2026-04-04 19:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:35:19] [INFO] Checking activity reminders 
[2026-04-04 19:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:35:29] [INFO] Checking activity reminders 
[2026-04-04 19:35:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:35:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:35:59] [INFO] Checking activity reminders 
[2026-04-04 19:35:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:35:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:36:29] [INFO] Checking activity reminders 
[2026-04-04 19:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:37:00] [INFO] Checking activity reminders 
[2026-04-04 19:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:37:30] [INFO] Checking activity reminders 
[2026-04-04 19:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:38:00] [INFO] Checking activity reminders 
[2026-04-04 19:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:38:30] [INFO] Checking activity reminders 
[2026-04-04 19:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:39:00] [INFO] Checking activity reminders 
[2026-04-04 19:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:39:30] [INFO] Checking activity reminders 
[2026-04-04 19:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:40:00] [INFO] Checking activity reminders 
[2026-04-04 19:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:40:31] [INFO] Checking activity reminders 
[2026-04-04 19:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:41:01] [INFO] Checking activity reminders 
[2026-04-04 19:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:41:31] [INFO] Checking activity reminders 
[2026-04-04 19:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:42:01] [INFO] Checking activity reminders 
[2026-04-04 19:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:42:31] [INFO] Checking activity reminders 
[2026-04-04 19:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:43:01] [INFO] Checking activity reminders 
[2026-04-04 19:43:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:43:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:43:31] [INFO] Checking activity reminders 
[2026-04-04 19:43:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:43:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:44:02] [INFO] Checking activity reminders 
[2026-04-04 19:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:44:32] [INFO] Checking activity reminders 
[2026-04-04 19:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:45:02] [INFO] Checking activity reminders 
[2026-04-04 19:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:45:32] [INFO] Checking activity reminders 
[2026-04-04 19:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:46:02] [INFO] Checking activity reminders 
[2026-04-04 19:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:46:32] [INFO] Checking activity reminders 
[2026-04-04 19:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:47:02] [INFO] Checking activity reminders 
[2026-04-04 19:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:47:33] [INFO] Checking activity reminders 
[2026-04-04 19:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:48:03] [INFO] Checking activity reminders 
[2026-04-04 19:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:48:33] [INFO] Checking activity reminders 
[2026-04-04 19:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:49:03] [INFO] Checking activity reminders 
[2026-04-04 19:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:49:20] [INFO] Checking activity reminders 
[2026-04-04 19:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:49:33] [INFO] Checking activity reminders 
[2026-04-04 19:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:49:50] [INFO] Checking activity reminders 
[2026-04-04 19:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:50:03] [INFO] Checking activity reminders 
[2026-04-04 19:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:50:20] [INFO] Checking activity reminders 
[2026-04-04 19:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:50:33] [INFO] Checking activity reminders 
[2026-04-04 19:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:51:03] [INFO] Checking activity reminders 
[2026-04-04 19:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:51:33] [INFO] Checking activity reminders 
[2026-04-04 19:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:52:03] [INFO] Checking activity reminders 
[2026-04-04 19:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:52:34] [INFO] Checking activity reminders 
[2026-04-04 19:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:53:04] [INFO] Checking activity reminders 
[2026-04-04 19:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:53:34] [INFO] Checking activity reminders 
[2026-04-04 19:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:54:04] [INFO] Checking activity reminders 
[2026-04-04 19:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:54:35] [INFO] Checking activity reminders 
[2026-04-04 19:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:55:05] [INFO] Checking activity reminders 
[2026-04-04 19:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:55:35] [INFO] Checking activity reminders 
[2026-04-04 19:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:56:06] [INFO] Checking activity reminders 
[2026-04-04 19:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:56:36] [INFO] Checking activity reminders 
[2026-04-04 19:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:57:06] [INFO] Checking activity reminders 
[2026-04-04 19:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:57:36] [INFO] Checking activity reminders 
[2026-04-04 19:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:58:06] [INFO] Checking activity reminders 
[2026-04-04 19:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:58:36] [INFO] Checking activity reminders 
[2026-04-04 19:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:59:07] [INFO] Checking activity reminders 
[2026-04-04 19:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 19:59:37] [INFO] Checking activity reminders 
[2026-04-04 19:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 19:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:00:07] [INFO] Checking activity reminders 
[2026-04-04 20:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:00:38] [INFO] Checking activity reminders 
[2026-04-04 20:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:01:08] [INFO] Checking activity reminders 
[2026-04-04 20:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:01:38] [INFO] Checking activity reminders 
[2026-04-04 20:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:02:08] [INFO] Checking activity reminders 
[2026-04-04 20:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:02:39] [INFO] Checking activity reminders 
[2026-04-04 20:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:03:09] [INFO] Checking activity reminders 
[2026-04-04 20:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:03:39] [INFO] Checking activity reminders 
[2026-04-04 20:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:04:09] [INFO] Checking activity reminders 
[2026-04-04 20:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:04:39] [INFO] Checking activity reminders 
[2026-04-04 20:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:05:10] [INFO] Checking activity reminders 
[2026-04-04 20:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:05:40] [INFO] Checking activity reminders 
[2026-04-04 20:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:06:10] [INFO] Checking activity reminders 
[2026-04-04 20:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:06:37] [WARNING] Auth check failed - not authenticated {"session_id":"s997tbpnqbkjieesrrq51bqmma","session_keys":[],"action":"check_reminders"}
[2026-04-04 20:06:37] [WARNING] Auth check failed - not authenticated {"session_id":"s997tbpnqbkjieesrrq51bqmma","session_keys":[],"action":"log_client_event"}
[2026-04-04 20:06:37] [WARNING] Auth check failed - not authenticated {"session_id":"s997tbpnqbkjieesrrq51bqmma","session_keys":[],"action":"log_client_event"}
[2026-04-04 20:06:41] [INFO] Checking activity reminders 
[2026-04-04 20:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"s997tbpnqbkjieesrrq51bqmma","session_keys":[],"action":"log_client_event"}
[2026-04-04 20:06:43] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 20:06:43] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 20:06:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:06:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:07:00] [INFO] Checking activity reminders 
[2026-04-04 20:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:07:11] [INFO] Checking activity reminders 
[2026-04-04 20:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:07:21] [INFO] Checking activity reminders 
[2026-04-04 20:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:07:41] [INFO] Checking activity reminders 
[2026-04-04 20:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:08:11] [INFO] Checking activity reminders 
[2026-04-04 20:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:08:30] [INFO] Checking activity reminders 
[2026-04-04 20:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:08:42] [INFO] Checking activity reminders 
[2026-04-04 20:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:09:02] [INFO] Checking activity reminders 
[2026-04-04 20:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:09:12] [INFO] Checking activity reminders 
[2026-04-04 20:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:09:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:09:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:09:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:09:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:09:42] [INFO] Checking activity reminders 
[2026-04-04 20:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:10:12] [INFO] Checking activity reminders 
[2026-04-04 20:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:10:42] [INFO] Checking activity reminders 
[2026-04-04 20:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:11:13] [INFO] Checking activity reminders 
[2026-04-04 20:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:11:43] [INFO] Checking activity reminders 
[2026-04-04 20:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:12:14] [INFO] Checking activity reminders 
[2026-04-04 20:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:12:42] [INFO] Checking activity reminders 
[2026-04-04 20:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:12:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:12:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:12:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:12:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:12:44] [INFO] Checking activity reminders 
[2026-04-04 20:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:13:08] [INFO] Checking activity reminders 
[2026-04-04 20:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:13:15] [INFO] Checking activity reminders 
[2026-04-04 20:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:13:26] [INFO] Checking activity reminders 
[2026-04-04 20:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:13:47] [INFO] Checking activity reminders 
[2026-04-04 20:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:14:09] [INFO] Checking activity reminders 
[2026-04-04 20:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:14:18] [INFO] Checking activity reminders 
[2026-04-04 20:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:14:48] [INFO] Checking activity reminders 
[2026-04-04 20:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:15:18] [INFO] Checking activity reminders 
[2026-04-04 20:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:15:49] [INFO] Checking activity reminders 
[2026-04-04 20:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:16:19] [INFO] Checking activity reminders 
[2026-04-04 20:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:16:49] [INFO] Checking activity reminders 
[2026-04-04 20:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:17:19] [INFO] Checking activity reminders 
[2026-04-04 20:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:17:50] [INFO] Checking activity reminders 
[2026-04-04 20:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:18:10] [INFO] Checking activity reminders 
[2026-04-04 20:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:18:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:18:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:18:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:18:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:18:21] [INFO] Checking activity reminders 
[2026-04-04 20:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:18:43] [INFO] Checking activity reminders 
[2026-04-04 20:18:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:18:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:18:51] [INFO] Checking activity reminders 
[2026-04-04 20:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:19:13] [INFO] Checking activity reminders 
[2026-04-04 20:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:19:21] [INFO] Checking activity reminders 
[2026-04-04 20:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:19:43] [INFO] Checking activity reminders 
[2026-04-04 20:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:19:51] [INFO] Checking activity reminders 
[2026-04-04 20:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:20:13] [INFO] Checking activity reminders 
[2026-04-04 20:20:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:20:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:20:23] [INFO] Checking activity reminders 
[2026-04-04 20:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:20:54] [INFO] Checking activity reminders 
[2026-04-04 20:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:21:24] [INFO] Checking activity reminders 
[2026-04-04 20:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:21:27] [WARNING] Auth check failed - not authenticated {"session_id":"hc91aqqkurj3p2bi40jep5j4ck","session_keys":[],"action":"log_client_event"}
[2026-04-04 20:21:27] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-04 20:21:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:21:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-04 20:21:55] [INFO] Checking activity reminders 
[2026-04-04 20:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:21:58] [INFO] Checking activity reminders 
[2026-04-04 20:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:00] [INFO] Checking activity reminders 
[2026-04-04 20:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:22:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:22:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:22:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:22:22] [INFO] Checking activity reminders 
[2026-04-04 20:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:25] [INFO] Checking activity reminders 
[2026-04-04 20:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:27] [INFO] Checking activity reminders 
[2026-04-04 20:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:29] [INFO] Checking activity reminders 
[2026-04-04 20:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:55] [INFO] Checking activity reminders 
[2026-04-04 20:22:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:22:57] [INFO] Checking activity reminders 
[2026-04-04 20:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:23:13] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8967","deal_id":"local_694a942326c3b2.34659195","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 20:23:13","session_id":"hc91aqqkurj3p2bi40jep5j4ck"}
[2026-04-04 20:23:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-04 20:23:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8967","is_new_deal":false}
[2026-04-04 20:23:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-04 20:23:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 20:23:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-04 20:23:13] [INFO] getContactPrimaryPhone called {"contact_id":"8967"}
[2026-04-04 20:23:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-04 20:23:13] [INFO] getContactPrimaryPhone result {"contact_id":"8967","person_found":true,"primary_phone":"9129156300"}
[2026-04-04 20:23:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129156300"}
[2026-04-04 20:23:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129156300","contact_id":"8967","deal_id":"local_694a942326c3b2.34659195","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 20:23:13"}
[2026-04-04 20:23:13] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","existing_deal_found":true,"existing_contact_id":"8967","existing_title":"معامله اول 9129156300 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-04 20:23:13"}
[2026-04-04 20:23:13] [INFO] DealController.save validated payments {"deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-04 20:23:13] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 20:23:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a942326c3b2.34659195","contact_didar_id":"8967","title":"معامله اول 9129156300 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9129156300","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مجتبی کریمی","existing_deal":"YES","existing_deal_id":"local_694a942326c3b2.34659195","existing_deal_status":"Pending","server_time":"2026-04-04 20:23:13","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-04 20:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-04 20:23:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a942326c3b2.34659195","contact_id":"8967","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9129156300 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-04 20:23:14","ip_address":"5.52.15.179","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-04 20:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-04 20:23:25] [INFO] Checking activity reminders 
[2026-04-04 20:23:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:23:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:23:56] [INFO] Checking activity reminders 
[2026-04-04 20:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:24:01] [INFO] Checking activity reminders 
[2026-04-04 20:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:24:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:24:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:24:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:24:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:24:26] [INFO] Checking activity reminders 
[2026-04-04 20:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:24:32] [INFO] Checking activity reminders 
[2026-04-04 20:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:24:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:24:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:24:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:24:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:24:43] [INFO] Checking activity reminders 
[2026-04-04 20:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:24:56] [INFO] Checking activity reminders 
[2026-04-04 20:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:25:13] [INFO] Checking activity reminders 
[2026-04-04 20:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:25:27] [INFO] Checking activity reminders 
[2026-04-04 20:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:25:31] [INFO] Checking activity reminders 
[2026-04-04 20:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:25:45] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9128456789","09128456789"]}
[2026-04-04 20:25:45] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9128456789","09128456789"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-04 20:25:45] [INFO] Didar write disabled; creating local lead only {"owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","mobile":"9128456789","full_name":"تست ایمپورت"}
[2026-04-04 20:25:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-04 20:25:45] [INFO] Notification created {"notification_id":"615","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"lead_assigned","show_popup":true}
[2026-04-04 20:25:57] [INFO] Checking activity reminders 
[2026-04-04 20:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:26:01] [INFO] Checking activity reminders 
[2026-04-04 20:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:26:27] [INFO] Checking activity reminders 
[2026-04-04 20:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:26:31] [INFO] Checking activity reminders 
[2026-04-04 20:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:26:57] [INFO] Checking activity reminders 
[2026-04-04 20:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:27:01] [INFO] Checking activity reminders 
[2026-04-04 20:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:27:29] [INFO] Checking activity reminders 
[2026-04-04 20:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:27:59] [INFO] Checking activity reminders 
[2026-04-04 20:27:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:27:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:28:29] [INFO] Checking activity reminders 
[2026-04-04 20:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:29:00] [INFO] Checking activity reminders 
[2026-04-04 20:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:29:32] [INFO] Checking activity reminders 
[2026-04-04 20:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:30:04] [INFO] Checking activity reminders 
[2026-04-04 20:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:30:36] [INFO] Checking activity reminders 
[2026-04-04 20:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:31:06] [INFO] Checking activity reminders 
[2026-04-04 20:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:31:36] [INFO] Checking activity reminders 
[2026-04-04 20:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:32:03] [INFO] Checking activity reminders 
[2026-04-04 20:32:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:32:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:32:33] [INFO] Checking activity reminders 
[2026-04-04 20:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:33:03] [INFO] Checking activity reminders 
[2026-04-04 20:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:33:20] [INFO] Checking activity reminders 
[2026-04-04 20:33:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:33:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:33:47] [INFO] Checking activity reminders 
[2026-04-04 20:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:34:17] [INFO] Checking activity reminders 
[2026-04-04 20:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:34:35] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 20:34:35] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 20:34:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 20:34:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:34:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:34:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:34:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:34:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:34:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:34:47] [INFO] Checking activity reminders 
[2026-04-04 20:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:35:05] [INFO] Checking activity reminders 
[2026-04-04 20:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:35:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 20:35:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 20:35:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 20:35:17] [INFO] Checking activity reminders 
[2026-04-04 20:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:35:46] [INFO] Checking activity reminders 
[2026-04-04 20:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:35:47] [INFO] Checking activity reminders 
[2026-04-04 20:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-04-04 20:36:09] [INFO] Checking activity reminders 
[2026-04-04 20:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:11] [INFO] Checking activity reminders 
[2026-04-04 20:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:16] [INFO] Checking activity reminders 
[2026-04-04 20:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:17] [INFO] Checking activity reminders 
[2026-04-04 20:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:20] [INFO] Checking activity reminders 
[2026-04-04 20:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:23] [INFO] Checking activity reminders 
[2026-04-04 20:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:30] [INFO] Checking activity reminders 
[2026-04-04 20:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:36:46] [INFO] Checking activity reminders 
[2026-04-04 20:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:37:01] [INFO] Checking activity reminders 
[2026-04-04 20:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:37:12] [INFO] Checking activity reminders 
[2026-04-04 20:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:37:31] [INFO] Checking activity reminders 
[2026-04-04 20:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:37:39] [INFO] Checking activity reminders 
[2026-04-04 20:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-04 20:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-04 20:38:01] [INFO] Checking activity reminders 
[2026-04-04 20:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:38:09] [INFO] Checking activity reminders 
[2026-04-04 20:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:38:31] [INFO] Checking activity reminders 
[2026-04-04 20:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:38:40] [INFO] Checking activity reminders 
[2026-04-04 20:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:39:02] [INFO] Checking activity reminders 
[2026-04-04 20:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:39:10] [INFO] Checking activity reminders 
[2026-04-04 20:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:39:32] [INFO] Checking activity reminders 
[2026-04-04 20:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:40:02] [INFO] Checking activity reminders 
[2026-04-04 20:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:40:32] [INFO] Checking activity reminders 
[2026-04-04 20:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:41:02] [INFO] Checking activity reminders 
[2026-04-04 20:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:41:34] [INFO] Checking activity reminders 
[2026-04-04 20:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:42:04] [INFO] Checking activity reminders 
[2026-04-04 20:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:42:34] [INFO] Checking activity reminders 
[2026-04-04 20:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:43:03] [INFO] Checking activity reminders 
[2026-04-04 20:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:43:06] [INFO] Checking activity reminders 
[2026-04-04 20:43:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:43:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:43:29] [INFO] Checking activity reminders 
[2026-04-04 20:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:43:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:43:59] [INFO] Checking activity reminders 
[2026-04-04 20:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:44:25] [INFO] Activity save request {"post_data":{"contact_id":"4373","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-04 20:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:44:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-04 20:44:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-04 20:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:44:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4373","note_was_empty":true}
[2026-04-04 20:44:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"4373","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-04 20:44:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d146f1f1fa03.99567886","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-04 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:44:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d146f1f1fa03.99567886"}
[2026-04-04 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:44:26] [INFO] Updating virtual stage {"contact_id":"4373","stage_name":"deal_registered","force":false}
[2026-04-04 20:44:26] [INFO] Virtual stage successfully saved {"contact_id":"4373","stage_name":"deal_registered"}
[2026-04-04 20:44:26] [INFO] Virtual stage updated after activity save {"contact_id":"4373"}
[2026-04-04 20:44:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-04 20:44:29] [INFO] Checking activity reminders 
[2026-04-04 20:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:44:59] [INFO] Checking activity reminders 
[2026-04-04 20:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:45:29] [INFO] Checking activity reminders 
[2026-04-04 20:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:45:59] [INFO] Checking activity reminders 
[2026-04-04 20:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:46:29] [INFO] Checking activity reminders 
[2026-04-04 20:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:47:00] [INFO] Checking activity reminders 
[2026-04-04 20:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:47:30] [INFO] Checking activity reminders 
[2026-04-04 20:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:48:00] [INFO] Checking activity reminders 
[2026-04-04 20:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:48:31] [INFO] Checking activity reminders 
[2026-04-04 20:48:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:48:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:49:01] [INFO] Checking activity reminders 
[2026-04-04 20:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:49:31] [INFO] Checking activity reminders 
[2026-04-04 20:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:50:01] [INFO] Checking activity reminders 
[2026-04-04 20:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:50:31] [INFO] Checking activity reminders 
[2026-04-04 20:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:51:01] [INFO] Checking activity reminders 
[2026-04-04 20:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:51:32] [INFO] Checking activity reminders 
[2026-04-04 20:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:51:46] [INFO] Checking activity reminders 
[2026-04-04 20:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:51:48] [INFO] Checking activity reminders 
[2026-04-04 20:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:52:18] [INFO] Checking activity reminders 
[2026-04-04 20:52:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:52:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:52:49] [INFO] Checking activity reminders 
[2026-04-04 20:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:53:19] [INFO] Checking activity reminders 
[2026-04-04 20:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:53:49] [INFO] Checking activity reminders 
[2026-04-04 20:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:53:56] [INFO] Checking activity reminders 
[2026-04-04 20:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:54:26] [INFO] Checking activity reminders 
[2026-04-04 20:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:54:56] [INFO] Checking activity reminders 
[2026-04-04 20:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:55:27] [INFO] Checking activity reminders 
[2026-04-04 20:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:55:57] [INFO] Checking activity reminders 
[2026-04-04 20:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:56:29] [INFO] Checking activity reminders 
[2026-04-04 20:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:56:59] [INFO] Checking activity reminders 
[2026-04-04 20:56:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:56:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:57:30] [INFO] Checking activity reminders 
[2026-04-04 20:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:58:00] [INFO] Checking activity reminders 
[2026-04-04 20:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:58:32] [INFO] Checking activity reminders 
[2026-04-04 20:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:59:02] [INFO] Checking activity reminders 
[2026-04-04 20:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 20:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-04 20:59:32] [INFO] Checking activity reminders 
[2026-04-04 20:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 20:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:00:02] [INFO] Checking activity reminders 
[2026-04-04 21:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:00:32] [INFO] Checking activity reminders 
[2026-04-04 21:00:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:00:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:00:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-04 21:00:55","session_id":"50v0o120n8lcl6dp38ic4ui1lg"}
[2026-04-04 21:00:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-04 21:00:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","is_new_deal":false}
[2026-04-04 21:00:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 21:00:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 21:00:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-04 21:00:55] [INFO] getContactPrimaryPhone called {"contact_id":"16"}
[2026-04-04 21:00:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-04 21:00:55] [INFO] getContactPrimaryPhone result {"contact_id":"16","person_found":true,"primary_phone":"9373188118"}
[2026-04-04 21:00:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9373188118"}
[2026-04-04 21:00:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9373188118","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 21:00:55"}
[2026-04-04 21:00:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","existing_deal_found":true,"existing_contact_id":"16","existing_title":"معامله سوم 9373188118 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-04 21:00:55"}
[2026-04-04 21:00:55] [INFO] DealController.save validated payments {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-04 21:00:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-04 21:00:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c262a62d0d7.99793653","contact_didar_id":"16","title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9373188118","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدعباسی","existing_deal":"YES","existing_deal_id":"local_699c262a62d0d7.99793653","existing_deal_status":"Pending","server_time":"2026-04-04 21:00:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-04 21:00:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-04 21:00:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":10000000,"server_time":"2026-04-04 21:00:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-04 21:00:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-04 21:01:03] [INFO] Checking activity reminders 
[2026-04-04 21:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:01:20] [INFO] Checking activity reminders 
[2026-04-04 21:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:01:26] [INFO] Checking activity reminders 
[2026-04-04 21:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:01:28] [INFO] Checking activity reminders 
[2026-04-04 21:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:01:31] [INFO] Checking activity reminders 
[2026-04-04 21:01:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 21:01:32] [INFO] Checking activity reminders 
[2026-04-04 21:01:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 21:01:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-04 23:07:44] [WARNING] Auth check failed - not authenticated {"session_id":"6a0l1b22v52dfv8fkhu5d518pr","session_keys":[],"action":"log_client_event"}
[2026-04-04 23:07:45] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-04 23:07:45] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-04 23:07:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-04 23:07:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-04 23:07:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-04 23:07:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-04 23:08:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-04 23:08:15] [INFO] Checking activity reminders 
[2026-04-04 23:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-04 23:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:15:10] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-05 00:15:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 00:15:35] [INFO] Checking activity reminders 
[2026-04-05 00:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15926","person_id":"13569"}
[2026-04-05 00:16:06] [INFO] Checking activity reminders 
[2026-04-05 00:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:17:55] [INFO] Checking activity reminders 
[2026-04-05 00:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:19:42] [INFO] Checking activity reminders 
[2026-04-05 00:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:20:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-05 00:20:12] [INFO] Checking activity reminders 
[2026-04-05 00:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:20:42] [INFO] Checking activity reminders 
[2026-04-05 00:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:21:12] [INFO] Checking activity reminders 
[2026-04-05 00:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:21:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10581","person_id":"9717"}
[2026-04-05 00:21:43] [INFO] Checking activity reminders 
[2026-04-05 00:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:24:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-05 00:24:47] [INFO] Checking activity reminders 
[2026-04-05 00:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:25:18] [INFO] Checking activity reminders 
[2026-04-05 00:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:25:48] [INFO] Checking activity reminders 
[2026-04-05 00:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:26:18] [INFO] Checking activity reminders 
[2026-04-05 00:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:26:48] [INFO] Checking activity reminders 
[2026-04-05 00:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:26:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-04-05 00:27:18] [INFO] Checking activity reminders 
[2026-04-05 00:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:27:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10569","person_id":"15951"}
[2026-04-05 00:27:49] [INFO] Checking activity reminders 
[2026-04-05 00:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:28:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11263","person_id":"2202"}
[2026-04-05 00:28:19] [INFO] Checking activity reminders 
[2026-04-05 00:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:28:49] [INFO] Checking activity reminders 
[2026-04-05 00:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:29:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-05 00:29:19] [INFO] Checking activity reminders 
[2026-04-05 00:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:29:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-05 00:29:50] [INFO] Checking activity reminders 
[2026-04-05 00:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:30:20] [INFO] Checking activity reminders 
[2026-04-05 00:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:30:50] [INFO] Checking activity reminders 
[2026-04-05 00:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:31:20] [INFO] Checking activity reminders 
[2026-04-05 00:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:31:51] [INFO] Checking activity reminders 
[2026-04-05 00:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:32:21] [INFO] Checking activity reminders 
[2026-04-05 00:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:32:44] [INFO] Checking activity reminders 
[2026-04-05 00:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:32:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2893","person_id":"14834"}
[2026-04-05 00:33:14] [INFO] Checking activity reminders 
[2026-04-05 00:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2893","person_id":"14834"}
[2026-04-05 00:33:45] [INFO] Checking activity reminders 
[2026-04-05 00:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:34:15] [INFO] Checking activity reminders 
[2026-04-05 00:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:34:45] [INFO] Checking activity reminders 
[2026-04-05 00:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:34:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"974","person_id":"6980"}
[2026-04-05 00:35:15] [INFO] Checking activity reminders 
[2026-04-05 00:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-05 00:35:45] [INFO] Checking activity reminders 
[2026-04-05 00:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:36:16] [INFO] Checking activity reminders 
[2026-04-05 00:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-04-05 00:36:46] [INFO] Checking activity reminders 
[2026-04-05 00:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:36:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-04-05 00:36:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-04-05 00:36:53] [INFO] generateDealTitle result {"contact_id":"655","person_name":"سلیمان ابادی","mobile":"9915102110","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9915102110"}
[2026-04-05 00:37:16] [INFO] Checking activity reminders 
[2026-04-05 00:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:37:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5348","person_id":"2845"}
[2026-04-05 00:37:46] [INFO] Checking activity reminders 
[2026-04-05 00:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:38:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"496","person_id":"12975"}
[2026-04-05 00:38:16] [INFO] Checking activity reminders 
[2026-04-05 00:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:38:47] [INFO] Checking activity reminders 
[2026-04-05 00:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"905","person_id":"3198"}
[2026-04-05 00:39:17] [INFO] Checking activity reminders 
[2026-04-05 00:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:39:44] [INFO] Lead update received {"contact_id":"905","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 00:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"905","person_id":"3198"}
[2026-04-05 00:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"905","person_id":"3198"}
[2026-04-05 00:39:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"905"}
[2026-04-05 00:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"905","person_id":"3198"}
[2026-04-05 00:39:47] [INFO] Checking activity reminders 
[2026-04-05 00:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:40:17] [INFO] Checking activity reminders 
[2026-04-05 00:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:40:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1828","person_id":"10528"}
[2026-04-05 00:40:48] [INFO] Checking activity reminders 
[2026-04-05 00:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10377","person_id":"3338"}
[2026-04-05 00:41:18] [INFO] Checking activity reminders 
[2026-04-05 00:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6165","person_id":"11781"}
[2026-04-05 00:41:48] [INFO] Checking activity reminders 
[2026-04-05 00:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:42:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2953","person_id":"17170"}
[2026-04-05 00:42:18] [INFO] Checking activity reminders 
[2026-04-05 00:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:42:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"986","person_id":"8027"}
[2026-04-05 00:42:48] [INFO] Checking activity reminders 
[2026-04-05 00:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:43:23] [INFO] Checking activity reminders 
[2026-04-05 00:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:43:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5194","person_id":"9880"}
[2026-04-05 00:43:53] [INFO] Checking activity reminders 
[2026-04-05 00:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:44:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6337","person_id":"14027"}
[2026-04-05 00:44:24] [INFO] Checking activity reminders 
[2026-04-05 00:44:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:44:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6337","person_id":"14027"}
[2026-04-05 00:44:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6337","person_id":"14027"}
[2026-04-05 00:44:34] [INFO] generateDealTitle result {"contact_id":"6337","person_name":"کسری یوسفی","mobile":"9201406225","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9201406225"}
[2026-04-05 00:44:54] [INFO] Checking activity reminders 
[2026-04-05 00:44:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:44:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:45:52] [INFO] Checking activity reminders 
[2026-04-05 00:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:46:29] [INFO] Checking activity reminders 
[2026-04-05 00:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:46:59] [INFO] Checking activity reminders 
[2026-04-05 00:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:47:25] [INFO] Checking activity reminders 
[2026-04-05 00:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:47:56] [INFO] Checking activity reminders 
[2026-04-05 00:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:48:26] [INFO] Checking activity reminders 
[2026-04-05 00:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 00:49:11] [INFO] Checking activity reminders 
[2026-04-05 00:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 00:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 09:03:33] [WARNING] Auth check failed - not authenticated {"session_id":"ebs9oea01vh0qqm7n8ia9gg3lc","session_keys":[],"action":"log_client_event"}
[2026-04-05 09:03:33] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-05 09:03:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:16:06] [WARNING] Auth check failed - not authenticated {"session_id":"sbgvmjlq3upcab8oij8nl46lmu","session_keys":[],"action":"log_client_event"}
[2026-04-05 10:16:06] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-05 10:16:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:16:13] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-05 10:16:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:16:43] [INFO] Checking activity reminders 
[2026-04-05 10:16:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:16:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:17:13] [INFO] Checking activity reminders 
[2026-04-05 10:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:17:43] [INFO] Checking activity reminders 
[2026-04-05 10:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:18:13] [INFO] Checking activity reminders 
[2026-04-05 10:18:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:18:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:18:43] [INFO] Checking activity reminders 
[2026-04-05 10:18:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:18:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:19:14] [INFO] Checking activity reminders 
[2026-04-05 10:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:19:44] [INFO] Checking activity reminders 
[2026-04-05 10:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:20:14] [INFO] Checking activity reminders 
[2026-04-05 10:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:20:44] [INFO] Checking activity reminders 
[2026-04-05 10:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:21:14] [INFO] Checking activity reminders 
[2026-04-05 10:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:21:44] [INFO] Checking activity reminders 
[2026-04-05 10:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:22:14] [INFO] Checking activity reminders 
[2026-04-05 10:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:22:44] [INFO] Checking activity reminders 
[2026-04-05 10:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:23:14] [INFO] Checking activity reminders 
[2026-04-05 10:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:23:45] [INFO] Checking activity reminders 
[2026-04-05 10:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:24:15] [INFO] Checking activity reminders 
[2026-04-05 10:24:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:24:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:24:45] [INFO] Checking activity reminders 
[2026-04-05 10:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:25:15] [INFO] Checking activity reminders 
[2026-04-05 10:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:25:45] [INFO] Checking activity reminders 
[2026-04-05 10:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:26:15] [INFO] Checking activity reminders 
[2026-04-05 10:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:26:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-04-05 10:26:45] [INFO] Checking activity reminders 
[2026-04-05 10:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:27:15] [INFO] Checking activity reminders 
[2026-04-05 10:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:27:45] [INFO] Checking activity reminders 
[2026-04-05 10:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:28:16] [INFO] Checking activity reminders 
[2026-04-05 10:28:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:28:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:28:46] [INFO] Checking activity reminders 
[2026-04-05 10:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:28:48] [INFO] Checking activity reminders 
[2026-04-05 10:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:29:18] [INFO] Checking activity reminders 
[2026-04-05 10:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:29:48] [INFO] Checking activity reminders 
[2026-04-05 10:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:30:18] [INFO] Checking activity reminders 
[2026-04-05 10:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:30:49] [INFO] Checking activity reminders 
[2026-04-05 10:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:31:19] [INFO] Checking activity reminders 
[2026-04-05 10:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:31:49] [INFO] Checking activity reminders 
[2026-04-05 10:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:32:19] [INFO] Checking activity reminders 
[2026-04-05 10:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:32:49] [INFO] Checking activity reminders 
[2026-04-05 10:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:33:19] [INFO] Checking activity reminders 
[2026-04-05 10:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:33:49] [INFO] Checking activity reminders 
[2026-04-05 10:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:34:19] [INFO] Checking activity reminders 
[2026-04-05 10:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:34:35] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 10:34:35] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-05 10:34:35] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 10:34:41] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 10:34:41] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 10:34:41] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 10:34:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:34:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 10:34:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 10:34:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 10:34:50] [INFO] Checking activity reminders 
[2026-04-05 10:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:35:12] [INFO] Checking activity reminders 
[2026-04-05 10:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:35:20] [INFO] Checking activity reminders 
[2026-04-05 10:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:35:50] [INFO] Checking activity reminders 
[2026-04-05 10:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:36:20] [INFO] Checking activity reminders 
[2026-04-05 10:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:36:25] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-05 10:36:25] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-05 10:36:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:36:50] [INFO] Checking activity reminders 
[2026-04-05 10:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:36:55] [INFO] Checking activity reminders 
[2026-04-05 10:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:37:20] [INFO] Checking activity reminders 
[2026-04-05 10:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:37:25] [INFO] Checking activity reminders 
[2026-04-05 10:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:37:30] [INFO] Checking activity reminders 
[2026-04-05 10:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:37:50] [INFO] Checking activity reminders 
[2026-04-05 10:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:37:56] [INFO] Checking activity reminders 
[2026-04-05 10:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:38:20] [INFO] Checking activity reminders 
[2026-04-05 10:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:38:26] [INFO] Checking activity reminders 
[2026-04-05 10:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:38:50] [INFO] Checking activity reminders 
[2026-04-05 10:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:38:56] [INFO] Checking activity reminders 
[2026-04-05 10:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:39:20] [INFO] Checking activity reminders 
[2026-04-05 10:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:39:25] [INFO] Checking activity reminders 
[2026-04-05 10:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:39:26] [INFO] Checking activity reminders 
[2026-04-05 10:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:39:56] [INFO] Checking activity reminders 
[2026-04-05 10:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:39:56] [INFO] Checking activity reminders 
[2026-04-05 10:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:40:26] [INFO] Checking activity reminders 
[2026-04-05 10:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:40:26] [INFO] Checking activity reminders 
[2026-04-05 10:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:40:56] [INFO] Checking activity reminders 
[2026-04-05 10:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:40:56] [INFO] Checking activity reminders 
[2026-04-05 10:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:41:26] [INFO] Checking activity reminders 
[2026-04-05 10:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:41:26] [INFO] Checking activity reminders 
[2026-04-05 10:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:41:56] [INFO] Checking activity reminders 
[2026-04-05 10:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:41:56] [INFO] Checking activity reminders 
[2026-04-05 10:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:42:26] [INFO] Checking activity reminders 
[2026-04-05 10:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:42:27] [INFO] Checking activity reminders 
[2026-04-05 10:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:42:56] [INFO] Checking activity reminders 
[2026-04-05 10:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:42:57] [INFO] Checking activity reminders 
[2026-04-05 10:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:43:26] [INFO] Checking activity reminders 
[2026-04-05 10:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:43:27] [INFO] Checking activity reminders 
[2026-04-05 10:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:43:57] [INFO] Checking activity reminders 
[2026-04-05 10:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:44:27] [INFO] Checking activity reminders 
[2026-04-05 10:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:44:57] [INFO] Checking activity reminders 
[2026-04-05 10:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:45:27] [INFO] Checking activity reminders 
[2026-04-05 10:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:45:57] [INFO] Checking activity reminders 
[2026-04-05 10:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:46:27] [INFO] Checking activity reminders 
[2026-04-05 10:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:46:57] [INFO] Checking activity reminders 
[2026-04-05 10:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:47:27] [INFO] Checking activity reminders 
[2026-04-05 10:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:47:29] [INFO] Checking activity reminders 
[2026-04-05 10:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:47:57] [INFO] Checking activity reminders 
[2026-04-05 10:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:48:27] [INFO] Checking activity reminders 
[2026-04-05 10:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:48:57] [INFO] Checking activity reminders 
[2026-04-05 10:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:49:28] [INFO] Checking activity reminders 
[2026-04-05 10:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:49:58] [INFO] Checking activity reminders 
[2026-04-05 10:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:50:25] [INFO] Checking activity reminders 
[2026-04-05 10:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:50:28] [INFO] Checking activity reminders 
[2026-04-05 10:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:50:55] [INFO] Checking activity reminders 
[2026-04-05 10:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:50:58] [INFO] Checking activity reminders 
[2026-04-05 10:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:51:25] [INFO] Checking activity reminders 
[2026-04-05 10:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:51:28] [INFO] Checking activity reminders 
[2026-04-05 10:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:51:38] [INFO] Checking activity reminders 
[2026-04-05 10:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:51:45] [INFO] generateDealTitle result {"contact_id":"2059","person_name":"میلاد مصطفی پور","mobile":"9129723462","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9129723462"}
[2026-04-05 10:51:55] [INFO] Checking activity reminders 
[2026-04-05 10:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:51:58] [INFO] Checking activity reminders 
[2026-04-05 10:51:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:51:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:04] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2059","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:52:04","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:52:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2059","is_new_deal":true}
[2026-04-05 10:52:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:52:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:52:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:52:04] [INFO] getContactPrimaryPhone called {"contact_id":"2059"}
[2026-04-05 10:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:52:04] [INFO] getContactPrimaryPhone result {"contact_id":"2059","person_found":true,"primary_phone":"9129723462"}
[2026-04-05 10:52:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129723462"}
[2026-04-05 10:52:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129723462","contact_id":"2059","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:52:04"}
[2026-04-05 10:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:52:04] [INFO] generateDealTitle result {"contact_id":"2059","person_name":"میلاد مصطفی پور","mobile":"9129723462","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9129723462"}
[2026-04-05 10:52:04] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2059","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:52:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2059","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:52:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2059","title":"معامله چهارم 9129723462 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9129723462","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد مصطفی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:52:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:52:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:52:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2059","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9129723462 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:52:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:52:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 10:52:12] [INFO] Checking activity reminders 
[2026-04-05 10:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:21] [INFO] Checking activity reminders 
[2026-04-05 10:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:24] [INFO] Checking activity reminders 
[2026-04-05 10:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:25] [INFO] Checking activity reminders 
[2026-04-05 10:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:28] [INFO] Checking activity reminders 
[2026-04-05 10:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:28] [INFO] Checking activity reminders 
[2026-04-05 10:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:38] [INFO] Checking activity reminders 
[2026-04-05 10:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:45] [INFO] Checking activity reminders 
[2026-04-05 10:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:49] [INFO] Checking activity reminders 
[2026-04-05 10:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:55] [INFO] Checking activity reminders 
[2026-04-05 10:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:52:56] [INFO] Checking activity reminders 
[2026-04-05 10:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:00] [INFO] Checking activity reminders 
[2026-04-05 10:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:07] [INFO] Checking activity reminders 
[2026-04-05 10:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:10] [INFO] Checking activity reminders 
[2026-04-05 10:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:16] [INFO] Checking activity reminders 
[2026-04-05 10:53:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:18] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 10:53:18] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 10:53:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 10:53:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 10:53:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 10:53:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 10:53:25] [INFO] Checking activity reminders 
[2026-04-05 10:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:32] [INFO] Checking activity reminders 
[2026-04-05 10:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:53:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:53:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:53:40] [INFO] generateDealTitle result {"contact_id":"20185","person_name":"اشکان  حسینی","mobile":"9130076516","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130076516"}
[2026-04-05 10:53:41] [INFO] Checking activity reminders 
[2026-04-05 10:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:00] [INFO] Checking activity reminders 
[2026-04-05 10:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:02] [DEBUG] findByPhone: Found person {"phones":["9128456789","09128456789"],"found_id":"21971","found_didar_id":"local_69d1429104c535.24317537","found_name":"تست ایمپورت"}
[2026-04-05 10:54:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 10:54:02] [INFO] Checking activity reminders 
[2026-04-05 10:54:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:03] [INFO] generateDealTitle result {"contact_id":"20185","person_name":"اشکان  حسینی","mobile":"9130076516","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130076516"}
[2026-04-05 10:54:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 10:54:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 10:54:11] [INFO] Checking activity reminders 
[2026-04-05 10:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20185","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:54:20","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20185","is_new_deal":true}
[2026-04-05 10:54:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:54:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:54:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:54:20] [INFO] getContactPrimaryPhone called {"contact_id":"20185"}
[2026-04-05 10:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:20] [INFO] getContactPrimaryPhone result {"contact_id":"20185","person_found":true,"primary_phone":"9130076516"}
[2026-04-05 10:54:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130076516"}
[2026-04-05 10:54:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130076516","contact_id":"20185","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:54:20"}
[2026-04-05 10:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:20] [INFO] generateDealTitle result {"contact_id":"20185","person_name":"اشکان  حسینی","mobile":"9130076516","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130076516"}
[2026-04-05 10:54:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20185","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:54:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20185","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:54:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20185","title":"معامله دوم 9130076516 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130076516","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اشکان  حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:54:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:54:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20185","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9130076516 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:54:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 10:54:30] [INFO] Checking activity reminders 
[2026-04-05 10:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:33] [INFO] Checking activity reminders 
[2026-04-05 10:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:49] [INFO] Checking activity reminders 
[2026-04-05 10:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:54:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:54:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:54:53] [INFO] generateDealTitle result {"contact_id":"20372","person_name":"اسماعیل فلاحتی","mobile":"9130530262","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130530262"}
[2026-04-05 10:55:00] [INFO] Checking activity reminders 
[2026-04-05 10:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:55:08] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20372","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:55:08","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:55:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20372","is_new_deal":true}
[2026-04-05 10:55:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:08] [INFO] getContactPrimaryPhone called {"contact_id":"20372"}
[2026-04-05 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:55:08] [INFO] getContactPrimaryPhone result {"contact_id":"20372","person_found":true,"primary_phone":"9130530262"}
[2026-04-05 10:55:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130530262"}
[2026-04-05 10:55:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130530262","contact_id":"20372","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:55:08"}
[2026-04-05 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:55:08] [INFO] generateDealTitle result {"contact_id":"20372","person_name":"اسماعیل فلاحتی","mobile":"9130530262","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130530262"}
[2026-04-05 10:55:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20372","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:55:08] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20372","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:55:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20372","title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130530262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل فلاحتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:55:08","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:55:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:55:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20372","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:55:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 10:55:24] [INFO] Checking activity reminders 
[2026-04-05 10:55:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:55:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:29] [INFO] generateDealTitle result {"contact_id":"20867","person_name":"کربلایی","mobile":"9130758155","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130758155"}
[2026-04-05 10:55:35] [INFO] Checking activity reminders 
[2026-04-05 10:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:55:45] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20867","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:55:45","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20867","is_new_deal":true}
[2026-04-05 10:55:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:55:45] [INFO] getContactPrimaryPhone called {"contact_id":"20867"}
[2026-04-05 10:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:45] [INFO] getContactPrimaryPhone result {"contact_id":"20867","person_found":true,"primary_phone":"9130758155"}
[2026-04-05 10:55:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130758155"}
[2026-04-05 10:55:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130758155","contact_id":"20867","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:55:45"}
[2026-04-05 10:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:45] [INFO] generateDealTitle result {"contact_id":"20867","person_name":"کربلایی","mobile":"9130758155","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130758155"}
[2026-04-05 10:55:45] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20867","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:55:45] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20867","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:55:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20867","title":"معامله دوم 9130758155 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130758155","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کربلایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:55:45","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:55:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:55:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20867","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9130758155 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:55:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:55:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 10:56:00] [INFO] Checking activity reminders 
[2026-04-05 10:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:01] [INFO] Checking activity reminders 
[2026-04-05 10:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:05] [INFO] generateDealTitle result {"contact_id":"20946","person_name":"مسعود ترکان","mobile":"9131190268","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131190268"}
[2026-04-05 10:56:10] [INFO] Checking activity reminders 
[2026-04-05 10:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:56:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20946","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:56:22","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20946","is_new_deal":true}
[2026-04-05 10:56:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:22] [INFO] getContactPrimaryPhone called {"contact_id":"20946"}
[2026-04-05 10:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:22] [INFO] getContactPrimaryPhone result {"contact_id":"20946","person_found":true,"primary_phone":"9131190268"}
[2026-04-05 10:56:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131190268"}
[2026-04-05 10:56:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131190268","contact_id":"20946","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:56:22"}
[2026-04-05 10:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:22] [INFO] generateDealTitle result {"contact_id":"20946","person_name":"مسعود ترکان","mobile":"9131190268","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131190268"}
[2026-04-05 10:56:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20946","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:56:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20946","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:56:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20946","title":"معامله دوم 9131190268 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131190268","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مسعود ترکان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:56:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:56:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20946","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9131190268 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:56:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 10:56:31] [INFO] Checking activity reminders 
[2026-04-05 10:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:32] [INFO] Lead update received {"contact_id":"9210","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 10:56:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:56:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:56:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9210"}
[2026-04-05 10:56:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:56:34] [INFO] Checking activity reminders 
[2026-04-05 10:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:40] [INFO] generateDealTitle result {"contact_id":"11409","person_name":"خانم سعادت","mobile":"9132064895","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9132064895"}
[2026-04-05 10:56:40] [INFO] Checking activity reminders 
[2026-04-05 10:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:46] [INFO] Checking activity reminders 
[2026-04-05 10:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:56:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b81178870152.22109174","person_id":"21884"}
[2026-04-05 10:56:54] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11409","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:56:54","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11409","is_new_deal":true}
[2026-04-05 10:56:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:56:54] [INFO] getContactPrimaryPhone called {"contact_id":"11409"}
[2026-04-05 10:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:54] [INFO] getContactPrimaryPhone result {"contact_id":"11409","person_found":true,"primary_phone":"9132064895"}
[2026-04-05 10:56:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132064895"}
[2026-04-05 10:56:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132064895","contact_id":"11409","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:56:54"}
[2026-04-05 10:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:54] [INFO] generateDealTitle result {"contact_id":"11409","person_name":"خانم سعادت","mobile":"9132064895","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9132064895"}
[2026-04-05 10:56:54] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11409","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:56:54] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11409","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:56:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11409","title":"معامله سوم 9132064895 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9132064895","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم سعادت","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:56:54","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:56:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:56:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11409","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9132064895 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:56:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:56:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 10:57:02] [INFO] Checking activity reminders 
[2026-04-05 10:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:10] [INFO] Checking activity reminders 
[2026-04-05 10:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:11] [INFO] Checking activity reminders 
[2026-04-05 10:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-05 10:57:31] [INFO] Checking activity reminders 
[2026-04-05 10:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:32] [INFO] Checking activity reminders 
[2026-04-05 10:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:57:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:57:38] [INFO] generateDealTitle result {"contact_id":"9900","person_name":"یزدخواستی","mobile":"9132674126","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132674126"}
[2026-04-05 10:57:40] [INFO] Checking activity reminders 
[2026-04-05 10:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:57:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9210","deal_id":"local_6949587228e707.04050979","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:57:47","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 10:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:57:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9210","is_new_deal":false}
[2026-04-05 10:57:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 10:57:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 10:57:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 10:57:47] [INFO] getContactPrimaryPhone called {"contact_id":"9210"}
[2026-04-05 10:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:57:47] [INFO] getContactPrimaryPhone result {"contact_id":"9210","person_found":true,"primary_phone":"9171013730"}
[2026-04-05 10:57:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171013730"}
[2026-04-05 10:57:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171013730","contact_id":"9210","deal_id":"local_6949587228e707.04050979","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 10:57:47"}
[2026-04-05 10:57:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_6949587228e707.04050979","contact_id":"9210","existing_deal_found":true,"existing_contact_id":"9210","existing_title":"معامله اول 9171013730 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 10:57:47"}
[2026-04-05 10:57:47] [INFO] DealController.save validated payments {"deal_id":"local_6949587228e707.04050979","contact_id":"9210","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 10:57:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9210","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 10:57:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6949587228e707.04050979","contact_didar_id":"9210","title":"معامله اول 9171013730 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9171013730","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابراهیم تابنده","existing_deal":"YES","existing_deal_id":"local_6949587228e707.04050979","existing_deal_status":"Pending","server_time":"2026-04-05 10:57:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 10:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:57:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:57:48] [INFO] Deal success processed {"contact_id":"9210","person_name":"ابراهیم تابنده","products_count":1}
[2026-04-05 10:57:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6949587228e707.04050979","contact_id":"9210","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9171013730 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":27000000,"server_time":"2026-04-05 10:57:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:57:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:58:02] [INFO] Checking activity reminders 
[2026-04-05 10:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:02] [INFO] Checking activity reminders 
[2026-04-05 10:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:04] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9900","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:58:04","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:58:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9900","is_new_deal":true}
[2026-04-05 10:58:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:58:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:58:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:58:04] [INFO] getContactPrimaryPhone called {"contact_id":"9900"}
[2026-04-05 10:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:58:04] [INFO] getContactPrimaryPhone result {"contact_id":"9900","person_found":true,"primary_phone":"9132674126"}
[2026-04-05 10:58:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132674126"}
[2026-04-05 10:58:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132674126","contact_id":"9900","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:58:04"}
[2026-04-05 10:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:58:04] [INFO] generateDealTitle result {"contact_id":"9900","person_name":"یزدخواستی","mobile":"9132674126","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132674126"}
[2026-04-05 10:58:04] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9900","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:58:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9900","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:58:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9900","title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132674126","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یزدخواستی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:58:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:58:04] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:58:04] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9900","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:58:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 10:58:10] [INFO] Checking activity reminders 
[2026-04-05 10:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:21] [INFO] Checking activity reminders 
[2026-04-05 10:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-05 10:58:32] [INFO] Checking activity reminders 
[2026-04-05 10:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:36] [INFO] Checking activity reminders 
[2026-04-05 10:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:58:40] [INFO] Checking activity reminders 
[2026-04-05 10:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:58:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:58:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:58:43] [INFO] generateDealTitle result {"contact_id":"1117","person_name":"محمد سجادی","mobile":"9132966165","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9132966165"}
[2026-04-05 10:58:59] [INFO] Activity save request {"post_data":{"contact_id":"9210","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"با توجه به شرایط جنگ فعلا 6 ماهه در کانال بدون پشتیبانی \r\nتعدیل نیرو \r\n27 ولریز ","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 10:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:58:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 10:58:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 10:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:58:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9210","note_was_empty":true}
[2026-04-05 10:58:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"9210","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 10:58:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d20f3b718bb3.72167274","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 10:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:58:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d20f3b718bb3.72167274"}
[2026-04-05 10:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:58:59] [INFO] Updating virtual stage {"contact_id":"9210","stage_name":"deal_registered","force":false}
[2026-04-05 10:58:59] [INFO] Virtual stage successfully saved {"contact_id":"9210","stage_name":"deal_registered"}
[2026-04-05 10:58:59] [INFO] Virtual stage updated after activity save {"contact_id":"9210"}
[2026-04-05 10:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 10:59:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1117","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:59:01","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:59:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1117","is_new_deal":true}
[2026-04-05 10:59:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:01] [INFO] getContactPrimaryPhone called {"contact_id":"1117"}
[2026-04-05 10:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:59:01] [INFO] getContactPrimaryPhone result {"contact_id":"1117","person_found":true,"primary_phone":"9132966165"}
[2026-04-05 10:59:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132966165"}
[2026-04-05 10:59:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132966165","contact_id":"1117","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:59:01"}
[2026-04-05 10:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:59:01] [INFO] generateDealTitle result {"contact_id":"1117","person_name":"محمد سجادی","mobile":"9132966165","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9132966165"}
[2026-04-05 10:59:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1117","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:59:01] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1117","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:59:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1117","title":"معامله سوم 9132966165 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9132966165","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد سجادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:59:01","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:59:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:59:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1117","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9132966165 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:59:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 10:59:02] [INFO] Checking activity reminders 
[2026-04-05 10:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:59:15] [INFO] Checking activity reminders 
[2026-04-05 10:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:59:22] [INFO] Checking activity reminders 
[2026-04-05 10:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:32] [INFO] generateDealTitle result {"contact_id":"5552","person_name":"کلانتری","mobile":"9133547605","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9133547605"}
[2026-04-05 10:59:32] [INFO] Checking activity reminders 
[2026-04-05 10:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:59:45] [INFO] Checking activity reminders 
[2026-04-05 10:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 10:59:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5552","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 10:59:47","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 10:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5552","is_new_deal":true}
[2026-04-05 10:59:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 10:59:47] [INFO] getContactPrimaryPhone called {"contact_id":"5552"}
[2026-04-05 10:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:47] [INFO] getContactPrimaryPhone result {"contact_id":"5552","person_found":true,"primary_phone":"9133547605"}
[2026-04-05 10:59:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133547605"}
[2026-04-05 10:59:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133547605","contact_id":"5552","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 10:59:47"}
[2026-04-05 10:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:47] [INFO] generateDealTitle result {"contact_id":"5552","person_name":"کلانتری","mobile":"9133547605","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9133547605"}
[2026-04-05 10:59:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5552","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 10:59:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5552","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 10:59:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5552","title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9133547605","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کلانتری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 10:59:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 10:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 10:59:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5552","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 10:59:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 10:59:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 10:59:53] [INFO] Checking activity reminders 
[2026-04-05 10:59:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 10:59:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:02] [INFO] Checking activity reminders 
[2026-04-05 11:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:03] [INFO] Checking activity reminders 
[2026-04-05 11:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:07] [INFO] Checking activity reminders 
[2026-04-05 11:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:11] [INFO] generateDealTitle result {"contact_id":"20964","person_name":"محسن گل افتاب","mobile":"9133748289","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133748289"}
[2026-04-05 11:00:15] [INFO] Checking activity reminders 
[2026-04-05 11:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:24] [INFO] Checking activity reminders 
[2026-04-05 11:00:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20964","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:00:25","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20964","is_new_deal":true}
[2026-04-05 11:00:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:00:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:00:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:00:25] [INFO] getContactPrimaryPhone called {"contact_id":"20964"}
[2026-04-05 11:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:25] [INFO] getContactPrimaryPhone result {"contact_id":"20964","person_found":true,"primary_phone":"9133748289"}
[2026-04-05 11:00:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133748289"}
[2026-04-05 11:00:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133748289","contact_id":"20964","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:00:25"}
[2026-04-05 11:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:25] [INFO] generateDealTitle result {"contact_id":"20964","person_name":"محسن گل افتاب","mobile":"9133748289","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133748289"}
[2026-04-05 11:00:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20964","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:00:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20964","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:00:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20964","title":"معامله دوم 9133748289 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9133748289","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن گل افتاب","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:00:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:00:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20964","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9133748289 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:00:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 11:00:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c5fb515789.14047675","person_id":"21858"}
[2026-04-05 11:00:37] [INFO] Checking activity reminders 
[2026-04-05 11:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:38] [INFO] Checking activity reminders 
[2026-04-05 11:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:00:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:00:43] [INFO] generateDealTitle result {"contact_id":"15532","person_name":"حسنی","mobile":"9134556865","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134556865"}
[2026-04-05 11:00:45] [INFO] Checking activity reminders 
[2026-04-05 11:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:00:54] [INFO] Checking activity reminders 
[2026-04-05 11:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:07] [INFO] Checking activity reminders 
[2026-04-05 11:01:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:08] [INFO] Checking activity reminders 
[2026-04-05 11:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:15] [INFO] Checking activity reminders 
[2026-04-05 11:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15532","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:01:15","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:01:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15532","is_new_deal":true}
[2026-04-05 11:01:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:15] [INFO] getContactPrimaryPhone called {"contact_id":"15532"}
[2026-04-05 11:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:01:15] [INFO] getContactPrimaryPhone result {"contact_id":"15532","person_found":true,"primary_phone":"9134556865"}
[2026-04-05 11:01:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134556865"}
[2026-04-05 11:01:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134556865","contact_id":"15532","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:01:15"}
[2026-04-05 11:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:01:15] [INFO] generateDealTitle result {"contact_id":"15532","person_name":"حسنی","mobile":"9134556865","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9134556865"}
[2026-04-05 11:01:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15532","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:01:15] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15532","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:01:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15532","title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9134556865","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسنی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:01:15","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:01:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:01:15] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:01:15] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15532","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:01:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:01:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 11:01:24] [INFO] Checking activity reminders 
[2026-04-05 11:01:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:01:34] [INFO] Checking activity reminders 
[2026-04-05 11:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:38] [INFO] Checking activity reminders 
[2026-04-05 11:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:39] [INFO] generateDealTitle result {"contact_id":"16695","person_name":"عرب زاده","mobile":"9135502844","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135502844"}
[2026-04-05 11:01:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:01:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:01:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:01:45] [INFO] Checking activity reminders 
[2026-04-05 11:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:54] [INFO] Checking activity reminders 
[2026-04-05 11:01:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:01:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:01:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16695","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:01:56","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16695","is_new_deal":true}
[2026-04-05 11:01:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:01:56] [INFO] getContactPrimaryPhone called {"contact_id":"16695"}
[2026-04-05 11:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:56] [INFO] getContactPrimaryPhone result {"contact_id":"16695","person_found":true,"primary_phone":"9135502844"}
[2026-04-05 11:01:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135502844"}
[2026-04-05 11:01:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135502844","contact_id":"16695","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:01:56"}
[2026-04-05 11:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:56] [INFO] generateDealTitle result {"contact_id":"16695","person_name":"عرب زاده","mobile":"9135502844","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135502844"}
[2026-04-05 11:01:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16695","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:01:56] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16695","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:01:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16695","title":"معامله دوم 9135502844 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9135502844","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:01:56","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:01:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:01:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16695","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9135502844 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:01:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 11:02:08] [INFO] Checking activity reminders 
[2026-04-05 11:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:08] [INFO] Checking activity reminders 
[2026-04-05 11:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:14] [INFO] generateDealTitle result {"contact_id":"15035","person_name":"رضا نصر آزادانی","mobile":"9135509182","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135509182"}
[2026-04-05 11:02:15] [INFO] Checking activity reminders 
[2026-04-05 11:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:24] [INFO] Checking activity reminders 
[2026-04-05 11:02:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15035","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:02:30","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15035","is_new_deal":true}
[2026-04-05 11:02:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:02:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:02:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:02:30] [INFO] getContactPrimaryPhone called {"contact_id":"15035"}
[2026-04-05 11:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:30] [INFO] getContactPrimaryPhone result {"contact_id":"15035","person_found":true,"primary_phone":"9135509182"}
[2026-04-05 11:02:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135509182"}
[2026-04-05 11:02:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135509182","contact_id":"15035","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:02:30"}
[2026-04-05 11:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:30] [INFO] generateDealTitle result {"contact_id":"15035","person_name":"رضا نصر آزادانی","mobile":"9135509182","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135509182"}
[2026-04-05 11:02:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15035","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:02:30] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15035","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:02:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15035","title":"معامله دوم 9135509182 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9135509182","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا نصر آزادانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:02:30","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:02:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15035","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9135509182 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:02:30","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:02:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:02:38] [INFO] Checking activity reminders 
[2026-04-05 11:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:43] [INFO] Checking activity reminders 
[2026-04-05 11:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:45] [INFO] Checking activity reminders 
[2026-04-05 11:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:02:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:02:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:02:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:02:53] [INFO] generateDealTitle result {"contact_id":"1211","person_name":"محمدحسین زین الدینی","mobile":"9135603622","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9135603622"}
[2026-04-05 11:02:54] [INFO] Checking activity reminders 
[2026-04-05 11:02:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:02:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1211","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:03:07","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:03:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1211","is_new_deal":true}
[2026-04-05 11:03:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:07] [INFO] getContactPrimaryPhone called {"contact_id":"1211"}
[2026-04-05 11:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:03:07] [INFO] getContactPrimaryPhone result {"contact_id":"1211","person_found":true,"primary_phone":"9135603622"}
[2026-04-05 11:03:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135603622"}
[2026-04-05 11:03:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135603622","contact_id":"1211","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:03:07"}
[2026-04-05 11:03:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:03:08] [INFO] generateDealTitle result {"contact_id":"1211","person_name":"محمدحسین زین الدینی","mobile":"9135603622","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9135603622"}
[2026-04-05 11:03:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1211","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:03:08] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1211","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:03:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1211","title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135603622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین زین الدینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:03:08","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:03:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:03:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:03:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1211","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:03:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:03:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 11:03:08] [INFO] Checking activity reminders 
[2026-04-05 11:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:13] [INFO] Checking activity reminders 
[2026-04-05 11:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:20] [INFO] Checking activity reminders 
[2026-04-05 11:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:24] [INFO] Checking activity reminders 
[2026-04-05 11:03:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:25] [INFO] Checking activity reminders 
[2026-04-05 11:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:28] [INFO] generateDealTitle result {"contact_id":"5545","person_name":"محمد موسوی","mobile":"9137218262","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9137218262"}
[2026-04-05 11:03:38] [INFO] Checking activity reminders 
[2026-04-05 11:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5545","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:03:43","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5545","is_new_deal":true}
[2026-04-05 11:03:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:03:43] [INFO] getContactPrimaryPhone called {"contact_id":"5545"}
[2026-04-05 11:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:43] [INFO] getContactPrimaryPhone result {"contact_id":"5545","person_found":true,"primary_phone":"9137218262"}
[2026-04-05 11:03:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9137218262"}
[2026-04-05 11:03:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9137218262","contact_id":"5545","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:03:43"}
[2026-04-05 11:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:43] [INFO] generateDealTitle result {"contact_id":"5545","person_name":"محمد موسوی","mobile":"9137218262","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9137218262"}
[2026-04-05 11:03:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5545","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:03:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5545","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:03:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5545","title":"معامله سوم 9137218262 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9137218262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد موسوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:03:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:03:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5545","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9137218262 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:03:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:03:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 11:03:50] [INFO] Checking activity reminders 
[2026-04-05 11:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:57] [INFO] Checking activity reminders 
[2026-04-05 11:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:03:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:02] [INFO] generateDealTitle result {"contact_id":"5239","person_name":"فهیمی","mobile":"9139092610","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9139092610"}
[2026-04-05 11:04:08] [INFO] Checking activity reminders 
[2026-04-05 11:04:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5239","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:04:17","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5239","is_new_deal":true}
[2026-04-05 11:04:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:04:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:04:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:04:17] [INFO] getContactPrimaryPhone called {"contact_id":"5239"}
[2026-04-05 11:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:17] [INFO] getContactPrimaryPhone result {"contact_id":"5239","person_found":true,"primary_phone":"9139092610"}
[2026-04-05 11:04:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139092610"}
[2026-04-05 11:04:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139092610","contact_id":"5239","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:04:17"}
[2026-04-05 11:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:17] [INFO] generateDealTitle result {"contact_id":"5239","person_name":"فهیمی","mobile":"9139092610","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9139092610"}
[2026-04-05 11:04:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5239","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:04:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5239","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:04:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5239","title":"معامله دوم 9139092610 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9139092610","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فهیمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:04:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:04:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5239","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9139092610 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:04:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 11:04:25] [INFO] Checking activity reminders 
[2026-04-05 11:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:30] [INFO] Checking activity reminders 
[2026-04-05 11:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-04-05 11:04:39] [INFO] Checking activity reminders 
[2026-04-05 11:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:43] [INFO] Checking activity reminders 
[2026-04-05 11:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:52] [INFO] Checking activity reminders 
[2026-04-05 11:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:55] [INFO] Checking activity reminders 
[2026-04-05 11:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:04:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:04:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:04:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:04:59] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_100","person_name":"نصیرزاده","mobile":"9141034212","existing_deals":0,"ordinal":"اول","title":"معامله اول 9141034212"}
[2026-04-05 11:05:09] [INFO] Checking activity reminders 
[2026-04-05 11:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:05:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:05:13","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 11:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:05:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","is_new_deal":true}
[2026-04-05 11:05:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:05:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:05:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:05:13] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_100"}
[2026-04-05 11:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:05:13] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_100","person_found":true,"primary_phone":"9141034212"}
[2026-04-05 11:05:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141034212"}
[2026-04-05 11:05:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141034212","contact_id":"local_1403_09_26_100","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 11:05:13"}
[2026-04-05 11:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:05:13] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_100","person_name":"نصیرزاده","mobile":"9141034212","existing_deals":0,"ordinal":"اول","title":"معامله اول 9141034212"}
[2026-04-05 11:05:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_100","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 11:05:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_100","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 11:05:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_100","title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9141034212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصیرزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 11:05:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 11:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:05:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 11:05:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_100","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 11:05:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:05:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 11:05:25] [INFO] Checking activity reminders 
[2026-04-05 11:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:05:39] [INFO] Checking activity reminders 
[2026-04-05 11:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:05:55] [INFO] Checking activity reminders 
[2026-04-05 11:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:06:09] [INFO] Checking activity reminders 
[2026-04-05 11:06:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:06:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:06:25] [INFO] Checking activity reminders 
[2026-04-05 11:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:06:39] [INFO] Checking activity reminders 
[2026-04-05 11:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:06:56] [INFO] Checking activity reminders 
[2026-04-05 11:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:07:09] [INFO] Checking activity reminders 
[2026-04-05 11:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:07:26] [INFO] Checking activity reminders 
[2026-04-05 11:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:07:39] [INFO] Checking activity reminders 
[2026-04-05 11:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:07:56] [INFO] Checking activity reminders 
[2026-04-05 11:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:08:01] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 11:08:01] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 11:08:01] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 11:08:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 11:08:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:08:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:08:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:08:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:08:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:08:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:08:10] [INFO] Checking activity reminders 
[2026-04-05 11:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:08:26] [INFO] Checking activity reminders 
[2026-04-05 11:08:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:08:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:08:31] [INFO] Checking activity reminders 
[2026-04-05 11:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:08:40] [INFO] Checking activity reminders 
[2026-04-05 11:08:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:08:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:01] [INFO] Checking activity reminders 
[2026-04-05 11:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:10] [INFO] Checking activity reminders 
[2026-04-05 11:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:32] [INFO] Checking activity reminders 
[2026-04-05 11:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:40] [INFO] Checking activity reminders 
[2026-04-05 11:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:40] [INFO] Checking activity reminders 
[2026-04-05 11:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:09:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:09:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:09:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:09:58] [INFO] Checking activity reminders 
[2026-04-05 11:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:10] [INFO] Checking activity reminders 
[2026-04-05 11:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:10] [INFO] Checking activity reminders 
[2026-04-05 11:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:28] [INFO] Checking activity reminders 
[2026-04-05 11:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:40] [INFO] Checking activity reminders 
[2026-04-05 11:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:40] [INFO] Checking activity reminders 
[2026-04-05 11:10:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:10:41] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:10:41] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:10:41] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:10:58] [INFO] Checking activity reminders 
[2026-04-05 11:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:10] [INFO] Checking activity reminders 
[2026-04-05 11:11:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:12] [INFO] Checking activity reminders 
[2026-04-05 11:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:29] [INFO] Checking activity reminders 
[2026-04-05 11:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:40] [INFO] Checking activity reminders 
[2026-04-05 11:11:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:42] [INFO] Checking activity reminders 
[2026-04-05 11:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:59] [INFO] Checking activity reminders 
[2026-04-05 11:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:11:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:11:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:12:10] [INFO] Checking activity reminders 
[2026-04-05 11:12:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:12:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:12:12] [INFO] Checking activity reminders 
[2026-04-05 11:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:12:29] [INFO] Checking activity reminders 
[2026-04-05 11:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:12:40] [INFO] Checking activity reminders 
[2026-04-05 11:12:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:12:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:12:59] [INFO] Checking activity reminders 
[2026-04-05 11:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:13:10] [INFO] Checking activity reminders 
[2026-04-05 11:13:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:13:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:13:29] [INFO] Checking activity reminders 
[2026-04-05 11:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:13:40] [INFO] Checking activity reminders 
[2026-04-05 11:13:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:13:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:13:59] [INFO] Checking activity reminders 
[2026-04-05 11:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:14:10] [INFO] Checking activity reminders 
[2026-04-05 11:14:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:14:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:14:29] [INFO] Checking activity reminders 
[2026-04-05 11:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:14:40] [INFO] Checking activity reminders 
[2026-04-05 11:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:14:59] [INFO] Checking activity reminders 
[2026-04-05 11:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:15:10] [INFO] Checking activity reminders 
[2026-04-05 11:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:15:29] [INFO] Checking activity reminders 
[2026-04-05 11:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:15:41] [INFO] Checking activity reminders 
[2026-04-05 11:15:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:15:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:15:59] [INFO] Checking activity reminders 
[2026-04-05 11:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:16:11] [INFO] Checking activity reminders 
[2026-04-05 11:16:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:16:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:16:30] [INFO] Checking activity reminders 
[2026-04-05 11:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:16:41] [INFO] Checking activity reminders 
[2026-04-05 11:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:17:00] [INFO] Checking activity reminders 
[2026-04-05 11:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:17:11] [INFO] Checking activity reminders 
[2026-04-05 11:17:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:17:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:17:30] [INFO] Checking activity reminders 
[2026-04-05 11:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:17:41] [INFO] Checking activity reminders 
[2026-04-05 11:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:18:00] [INFO] Checking activity reminders 
[2026-04-05 11:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:18:11] [INFO] Checking activity reminders 
[2026-04-05 11:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:18:30] [INFO] Checking activity reminders 
[2026-04-05 11:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:18:41] [INFO] Checking activity reminders 
[2026-04-05 11:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:19:00] [INFO] Checking activity reminders 
[2026-04-05 11:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:19:11] [INFO] Checking activity reminders 
[2026-04-05 11:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:19:30] [INFO] Checking activity reminders 
[2026-04-05 11:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:19:41] [INFO] Checking activity reminders 
[2026-04-05 11:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:20:00] [INFO] Checking activity reminders 
[2026-04-05 11:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:20:11] [INFO] Checking activity reminders 
[2026-04-05 11:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:20:30] [INFO] Checking activity reminders 
[2026-04-05 11:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:20:41] [INFO] Checking activity reminders 
[2026-04-05 11:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:00] [INFO] Checking activity reminders 
[2026-04-05 11:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:11] [INFO] Checking activity reminders 
[2026-04-05 11:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:31] [INFO] Checking activity reminders 
[2026-04-05 11:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:41] [INFO] Checking activity reminders 
[2026-04-05 11:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:41] [INFO] Checking activity reminders 
[2026-04-05 11:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:21:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:21:43] [INFO] generateDealTitle result {"contact_id":"local_69d1429104c535.24317537","person_name":"تست ایمپورت","mobile":"9128456789","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128456789"}
[2026-04-05 11:22:01] [INFO] Checking activity reminders 
[2026-04-05 11:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:22:11] [INFO] Checking activity reminders 
[2026-04-05 11:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:22:11] [INFO] Checking activity reminders 
[2026-04-05 11:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:22:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:22:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:22:23] [INFO] Activity save request {"post_data":{"contact_id":"11149","deal_id":"local_69d0a9c4c9bf92.03066512","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سرمایه ای فعلا نداره به علت جنگ به چالش خورده احتمالا تابستون اطلاع میده","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:22:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11149","note_was_empty":true}
[2026-04-05 11:22:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"11149","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:23] [INFO] Updating virtual stage {"contact_id":"11149","stage_name":"deal_registered","force":false}
[2026-04-05 11:22:23] [INFO] Virtual stage successfully saved {"contact_id":"11149","stage_name":"deal_registered"}
[2026-04-05 11:22:23] [INFO] Virtual stage updated after activity save {"contact_id":"11149"}
[2026-04-05 11:22:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a9c4c9bf92.03066512","stage":"تماس پیگیری","status_change":null}
[2026-04-05 11:22:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d214b795b639.47467516","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69d214b795b639.47467516"}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:23] [INFO] Updating virtual stage {"contact_id":"11149","stage_name":"deal_registered","force":false}
[2026-04-05 11:22:23] [INFO] Virtual stage successfully saved {"contact_id":"11149","stage_name":"deal_registered"}
[2026-04-05 11:22:23] [INFO] Virtual stage updated after activity save {"contact_id":"11149"}
[2026-04-05 11:22:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11149","person_id":"8092"}
[2026-04-05 11:22:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:22:31] [INFO] Checking activity reminders 
[2026-04-05 11:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:22:41] [INFO] Checking activity reminders 
[2026-04-05 11:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:22:41] [INFO] Checking activity reminders 
[2026-04-05 11:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:01] [INFO] Checking activity reminders 
[2026-04-05 11:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:11] [INFO] Checking activity reminders 
[2026-04-05 11:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:11] [INFO] Checking activity reminders 
[2026-04-05 11:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:27] [INFO] Checking activity reminders 
[2026-04-05 11:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:31] [INFO] Checking activity reminders 
[2026-04-05 11:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:23:42] [INFO] Checking activity reminders 
[2026-04-05 11:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:24:01] [INFO] Checking activity reminders 
[2026-04-05 11:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:24:12] [INFO] Checking activity reminders 
[2026-04-05 11:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:24:31] [INFO] Checking activity reminders 
[2026-04-05 11:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:24:41] [INFO] Activity save request {"post_data":{"contact_id":"843","deal_id":"local_69d0a8ec62c904.21083183","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:24:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"843","note_was_empty":true}
[2026-04-05 11:24:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"843","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:41] [INFO] Updating virtual stage {"contact_id":"843","stage_name":"deal_registered","force":false}
[2026-04-05 11:24:41] [INFO] Virtual stage successfully saved {"contact_id":"843","stage_name":"deal_registered"}
[2026-04-05 11:24:41] [INFO] Virtual stage updated after activity save {"contact_id":"843"}
[2026-04-05 11:24:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a8ec62c904.21083183","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 11:24:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21541b25801.24309331","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21541b25801.24309331"}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:41] [INFO] Updating virtual stage {"contact_id":"843","stage_name":"deal_registered","force":false}
[2026-04-05 11:24:41] [INFO] Virtual stage successfully saved {"contact_id":"843","stage_name":"deal_registered"}
[2026-04-05 11:24:41] [INFO] Virtual stage updated after activity save {"contact_id":"843"}
[2026-04-05 11:24:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 11:24:42] [INFO] Checking activity reminders 
[2026-04-05 11:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:24:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:25:01] [INFO] Checking activity reminders 
[2026-04-05 11:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:25:12] [INFO] Checking activity reminders 
[2026-04-05 11:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:25:31] [INFO] Checking activity reminders 
[2026-04-05 11:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:25:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:25:42] [INFO] Checking activity reminders 
[2026-04-05 11:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:26:02] [INFO] Checking activity reminders 
[2026-04-05 11:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:26:12] [INFO] Checking activity reminders 
[2026-04-05 11:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:26:32] [INFO] Checking activity reminders 
[2026-04-05 11:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:26:42] [INFO] Checking activity reminders 
[2026-04-05 11:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:26:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12047","deal_id":"local_69b31584dec9a4.60414186","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:26:52","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 11:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:26:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12047","is_new_deal":false}
[2026-04-05 11:26:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 11:26:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:26:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 11:26:52] [INFO] getContactPrimaryPhone called {"contact_id":"12047"}
[2026-04-05 11:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:26:52] [INFO] getContactPrimaryPhone result {"contact_id":"12047","person_found":true,"primary_phone":"9365369437"}
[2026-04-05 11:26:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365369437"}
[2026-04-05 11:26:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365369437","contact_id":"12047","deal_id":"local_69b31584dec9a4.60414186","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 11:26:52"}
[2026-04-05 11:26:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b31584dec9a4.60414186","contact_id":"12047","existing_deal_found":true,"existing_contact_id":"12047","existing_title":"معامله سوم 9365369437 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 11:26:52"}
[2026-04-05 11:26:52] [INFO] DealController.save validated payments {"deal_id":"local_69b31584dec9a4.60414186","contact_id":"12047","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 11:26:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12047","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 11:26:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b31584dec9a4.60414186","contact_didar_id":"12047","title":"معامله سوم 9365369437 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9365369437","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مظفری مظفری","existing_deal":"YES","existing_deal_id":"local_69b31584dec9a4.60414186","existing_deal_status":"Pending","server_time":"2026-04-05 11:26:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 11:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:26:52] [INFO] Deal success processed {"contact_id":"12047","person_name":"مظفری مظفری","products_count":1}
[2026-04-05 11:26:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b31584dec9a4.60414186","contact_id":"12047","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9365369437 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-05 11:26:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 11:27:02] [INFO] Checking activity reminders 
[2026-04-05 11:27:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:27:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:27:13] [INFO] Checking activity reminders 
[2026-04-05 11:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:27:30] [INFO] Activity save request {"post_data":{"contact_id":"1762","deal_id":"local_69d0a94fec1b85.40659680","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مدل بچه پرو صحبت میکنه. میگه شب عید نداشتم از جیب میخورم فعلا قصد ندارم\r\n6ماهه هم گفتم گفت پولی ندارم به اون صورت خودم اطلاع میدم","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:27:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1762","note_was_empty":true}
[2026-04-05 11:27:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"1762","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:30] [INFO] Updating virtual stage {"contact_id":"1762","stage_name":"deal_registered","force":false}
[2026-04-05 11:27:30] [INFO] Virtual stage successfully saved {"contact_id":"1762","stage_name":"deal_registered"}
[2026-04-05 11:27:30] [INFO] Virtual stage updated after activity save {"contact_id":"1762"}
[2026-04-05 11:27:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a94fec1b85.40659680","stage":"تماس پیگیری","status_change":null}
[2026-04-05 11:27:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d215eab36709.21039818","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69d215eab36709.21039818"}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:30] [INFO] Updating virtual stage {"contact_id":"1762","stage_name":"deal_registered","force":false}
[2026-04-05 11:27:30] [INFO] Virtual stage successfully saved {"contact_id":"1762","stage_name":"deal_registered"}
[2026-04-05 11:27:30] [INFO] Virtual stage updated after activity save {"contact_id":"1762"}
[2026-04-05 11:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1762","person_id":"7911"}
[2026-04-05 11:27:32] [INFO] Checking activity reminders 
[2026-04-05 11:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:27:43] [INFO] Checking activity reminders 
[2026-04-05 11:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:27:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:27:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:28:02] [INFO] Checking activity reminders 
[2026-04-05 11:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:28:13] [INFO] Checking activity reminders 
[2026-04-05 11:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:28:32] [INFO] Checking activity reminders 
[2026-04-05 11:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:28:41] [INFO] Checking activity reminders 
[2026-04-05 11:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:28:43] [INFO] Checking activity reminders 
[2026-04-05 11:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:28:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:28:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:28:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:29:02] [INFO] Checking activity reminders 
[2026-04-05 11:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:29:13] [INFO] Checking activity reminders 
[2026-04-05 11:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:29:32] [INFO] Checking activity reminders 
[2026-04-05 11:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:29:43] [INFO] Checking activity reminders 
[2026-04-05 11:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:29:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5965","deal_id":"local_695a6d82c597b9.51976679","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 11:29:44","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 11:29:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:29:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5965","is_new_deal":false}
[2026-04-05 11:29:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 11:29:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 11:29:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 11:29:44] [INFO] getContactPrimaryPhone called {"contact_id":"5965"}
[2026-04-05 11:29:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:29:44] [INFO] getContactPrimaryPhone result {"contact_id":"5965","person_found":true,"primary_phone":"9170006426"}
[2026-04-05 11:29:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170006426"}
[2026-04-05 11:29:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170006426","contact_id":"5965","deal_id":"local_695a6d82c597b9.51976679","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 11:29:44"}
[2026-04-05 11:29:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6d82c597b9.51976679","contact_id":"5965","existing_deal_found":true,"existing_contact_id":"5965","existing_title":"معامله چهارم 9170006426 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 11:29:44"}
[2026-04-05 11:29:44] [INFO] DealController.save validated payments {"deal_id":"local_695a6d82c597b9.51976679","contact_id":"5965","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 11:29:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5965","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 11:29:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6d82c597b9.51976679","contact_didar_id":"5965","title":"معامله چهارم 9170006426 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9170006426","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسن زاده","existing_deal":"YES","existing_deal_id":"local_695a6d82c597b9.51976679","existing_deal_status":"Pending","server_time":"2026-04-05 11:29:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 11:29:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:29:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:29:44] [INFO] Deal success processed {"contact_id":"5965","person_name":"حسن زاده","products_count":1}
[2026-04-05 11:29:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6d82c597b9.51976679","contact_id":"5965","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9170006426 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":27000000,"server_time":"2026-04-05 11:29:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 11:29:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5965","person_id":"2760"}
[2026-04-05 11:29:47] [INFO] Activity save request {"post_data":{"contact_id":"8974","deal_id":"local_69d0a98057c492.49604936","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"گفت پارسالم نبودم کانال اموزش دیگه داشته نمیخواد باشه ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 11:29:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8974","note_was_empty":true}
[2026-04-05 11:29:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"8974","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Updating virtual stage {"contact_id":"8974","stage_name":"deal_registered","force":false}
[2026-04-05 11:29:47] [INFO] Virtual stage successfully saved {"contact_id":"8974","stage_name":"deal_registered"}
[2026-04-05 11:29:47] [INFO] Virtual stage updated after activity save {"contact_id":"8974"}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a98057c492.49604936","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 11:29:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d216732361b8.07893237","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d216732361b8.07893237"}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:47] [INFO] Updating virtual stage {"contact_id":"8974","stage_name":"deal_registered","force":false}
[2026-04-05 11:29:47] [INFO] Virtual stage successfully saved {"contact_id":"8974","stage_name":"deal_registered"}
[2026-04-05 11:29:47] [INFO] Virtual stage updated after activity save {"contact_id":"8974"}
[2026-04-05 11:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-05 11:29:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:29:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-05 11:30:02] [INFO] Checking activity reminders 
[2026-04-05 11:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:30:07] [INFO] Checking activity reminders 
[2026-04-05 11:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:30:13] [INFO] Checking activity reminders 
[2026-04-05 11:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:30:32] [INFO] Checking activity reminders 
[2026-04-05 11:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:30:43] [INFO] Checking activity reminders 
[2026-04-05 11:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:31:02] [INFO] Checking activity reminders 
[2026-04-05 11:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:31:13] [INFO] Checking activity reminders 
[2026-04-05 11:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:31:33] [INFO] Checking activity reminders 
[2026-04-05 11:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:31:35] [INFO] Activity save request {"post_data":{"contact_id":"15111","deal_id":"local_69d0aa6016ada1.62048894","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پولی نداره پارسالم حذف شده از کانال مناسبش نیست","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 11:31:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15111","note_was_empty":true}
[2026-04-05 11:31:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"15111","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Updating virtual stage {"contact_id":"15111","stage_name":"deal_registered","force":false}
[2026-04-05 11:31:35] [INFO] Virtual stage successfully saved {"contact_id":"15111","stage_name":"deal_registered"}
[2026-04-05 11:31:35] [INFO] Virtual stage updated after activity save {"contact_id":"15111"}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0aa6016ada1.62048894","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 11:31:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d216df468401.59369437","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69d216df468401.59369437"}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:35] [INFO] Updating virtual stage {"contact_id":"15111","stage_name":"deal_registered","force":false}
[2026-04-05 11:31:35] [INFO] Virtual stage successfully saved {"contact_id":"15111","stage_name":"deal_registered"}
[2026-04-05 11:31:35] [INFO] Virtual stage updated after activity save {"contact_id":"15111"}
[2026-04-05 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-05 11:31:43] [INFO] Checking activity reminders 
[2026-04-05 11:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:32:03] [INFO] Checking activity reminders 
[2026-04-05 11:32:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:32:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:32:13] [INFO] Checking activity reminders 
[2026-04-05 11:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:32:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:33] [INFO] Checking activity reminders 
[2026-04-05 11:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:32:44] [INFO] Checking activity reminders 
[2026-04-05 11:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:32:55] [INFO] Activity save request {"post_data":{"contact_id":"15969","deal_id":"local_699d85682e9d76.56309449","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"الکی ش میزاره","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 11:32:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15969","note_was_empty":true}
[2026-04-05 11:32:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"15969","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Updating virtual stage {"contact_id":"15969","stage_name":"deal_registered","force":false}
[2026-04-05 11:32:55] [INFO] Virtual stage successfully saved {"contact_id":"15969","stage_name":"deal_registered"}
[2026-04-05 11:32:55] [INFO] Virtual stage updated after activity save {"contact_id":"15969"}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d85682e9d76.56309449","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 11:32:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d2172f5223e2.45021278","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69d2172f5223e2.45021278"}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:32:55] [INFO] Updating virtual stage {"contact_id":"15969","stage_name":"deal_registered","force":false}
[2026-04-05 11:32:55] [INFO] Virtual stage successfully saved {"contact_id":"15969","stage_name":"deal_registered"}
[2026-04-05 11:32:55] [INFO] Virtual stage updated after activity save {"contact_id":"15969"}
[2026-04-05 11:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15969","person_id":"4644"}
[2026-04-05 11:33:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:03] [INFO] Checking activity reminders 
[2026-04-05 11:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:14] [INFO] Checking activity reminders 
[2026-04-05 11:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:17] [INFO] Checking activity reminders 
[2026-04-05 11:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:33:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:33:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:33:29] [INFO] Checking activity reminders 
[2026-04-05 11:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:33] [INFO] Checking activity reminders 
[2026-04-05 11:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:33:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:33:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:33:44] [INFO] Checking activity reminders 
[2026-04-05 11:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:47] [INFO] Checking activity reminders 
[2026-04-05 11:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:33:50] [INFO] Activity save request {"post_data":{"contact_id":"21663","deal_id":"local_69bbeaae569565.94495590","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ \/ عید تمدید صحبت کردم ارسال ش کارت بزنه نزده هنوز","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:33:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21663","note_was_empty":true}
[2026-04-05 11:33:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"21663","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:50] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-05 11:33:50] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-05 11:33:50] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-05 11:33:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeaae569565.94495590","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-05 11:33:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21766319384.28959161","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21766319384.28959161"}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:50] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-05 11:33:50] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-05 11:33:50] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-05 11:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-05 11:33:59] [INFO] Checking activity reminders 
[2026-04-05 11:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:03] [INFO] Checking activity reminders 
[2026-04-05 11:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:14] [INFO] Checking activity reminders 
[2026-04-05 11:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:18] [INFO] Checking activity reminders 
[2026-04-05 11:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:30] [INFO] Checking activity reminders 
[2026-04-05 11:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:33] [INFO] Checking activity reminders 
[2026-04-05 11:34:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-05 11:34:42] [INFO] Checking activity reminders 
[2026-04-05 11:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:34:44] [INFO] Checking activity reminders 
[2026-04-05 11:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:00] [INFO] Checking activity reminders 
[2026-04-05 11:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:03] [INFO] Checking activity reminders 
[2026-04-05 11:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:12] [INFO] Checking activity reminders 
[2026-04-05 11:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:14] [INFO] Checking activity reminders 
[2026-04-05 11:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:30] [INFO] Checking activity reminders 
[2026-04-05 11:35:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:30] [INFO] Checking activity reminders 
[2026-04-05 11:35:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:34] [INFO] Checking activity reminders 
[2026-04-05 11:35:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:35:44] [INFO] Checking activity reminders 
[2026-04-05 11:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:00] [INFO] Checking activity reminders 
[2026-04-05 11:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:04] [INFO] Checking activity reminders 
[2026-04-05 11:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:14] [INFO] Checking activity reminders 
[2026-04-05 11:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:30] [INFO] Checking activity reminders 
[2026-04-05 11:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:34] [INFO] Checking activity reminders 
[2026-04-05 11:36:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:44] [INFO] Checking activity reminders 
[2026-04-05 11:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:47] [INFO] Checking activity reminders 
[2026-04-05 11:36:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:36:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:36:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 11:36:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 11:36:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 11:36:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 11:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:36:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 11:37:01] [INFO] Checking activity reminders 
[2026-04-05 11:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:04] [INFO] Checking activity reminders 
[2026-04-05 11:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:14] [INFO] Checking activity reminders 
[2026-04-05 11:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:25] [INFO] Checking activity reminders 
[2026-04-05 11:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:31] [INFO] Checking activity reminders 
[2026-04-05 11:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 11:37:34] [INFO] Checking activity reminders 
[2026-04-05 11:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:37:44] [INFO] Checking activity reminders 
[2026-04-05 11:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:01] [INFO] Checking activity reminders 
[2026-04-05 11:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:04] [INFO] Checking activity reminders 
[2026-04-05 11:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:14] [INFO] Checking activity reminders 
[2026-04-05 11:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:31] [INFO] Checking activity reminders 
[2026-04-05 11:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:34] [INFO] Checking activity reminders 
[2026-04-05 11:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:38:44] [INFO] Checking activity reminders 
[2026-04-05 11:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:01] [INFO] Checking activity reminders 
[2026-04-05 11:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:04] [INFO] Checking activity reminders 
[2026-04-05 11:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:06] [INFO] Checking activity reminders 
[2026-04-05 11:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:15] [INFO] Checking activity reminders 
[2026-04-05 11:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:31] [INFO] Checking activity reminders 
[2026-04-05 11:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:34] [INFO] Checking activity reminders 
[2026-04-05 11:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:39:45] [INFO] Checking activity reminders 
[2026-04-05 11:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:02] [INFO] Checking activity reminders 
[2026-04-05 11:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:05] [INFO] Checking activity reminders 
[2026-04-05 11:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:15] [INFO] Checking activity reminders 
[2026-04-05 11:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:32] [INFO] Checking activity reminders 
[2026-04-05 11:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:35] [INFO] Checking activity reminders 
[2026-04-05 11:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:40:45] [INFO] Checking activity reminders 
[2026-04-05 11:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:02] [INFO] Checking activity reminders 
[2026-04-05 11:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:05] [INFO] Checking activity reminders 
[2026-04-05 11:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:15] [INFO] Checking activity reminders 
[2026-04-05 11:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:32] [INFO] Checking activity reminders 
[2026-04-05 11:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:35] [INFO] Checking activity reminders 
[2026-04-05 11:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:41:45] [INFO] Checking activity reminders 
[2026-04-05 11:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:02] [INFO] Checking activity reminders 
[2026-04-05 11:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:05] [INFO] Checking activity reminders 
[2026-04-05 11:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:15] [INFO] Checking activity reminders 
[2026-04-05 11:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:32] [INFO] Checking activity reminders 
[2026-04-05 11:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:35] [INFO] Checking activity reminders 
[2026-04-05 11:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:42:46] [INFO] Checking activity reminders 
[2026-04-05 11:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:03] [INFO] Checking activity reminders 
[2026-04-05 11:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:05] [INFO] Checking activity reminders 
[2026-04-05 11:43:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:12] [INFO] Checking activity reminders 
[2026-04-05 11:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:16] [INFO] Checking activity reminders 
[2026-04-05 11:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:33] [INFO] Checking activity reminders 
[2026-04-05 11:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:35] [INFO] Checking activity reminders 
[2026-04-05 11:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:42] [INFO] Checking activity reminders 
[2026-04-05 11:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:43:46] [INFO] Checking activity reminders 
[2026-04-05 11:43:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:43:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:03] [INFO] Checking activity reminders 
[2026-04-05 11:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:05] [INFO] Checking activity reminders 
[2026-04-05 11:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:16] [INFO] Checking activity reminders 
[2026-04-05 11:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:27] [INFO] Checking activity reminders 
[2026-04-05 11:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:35] [INFO] Checking activity reminders 
[2026-04-05 11:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:35] [INFO] Checking activity reminders 
[2026-04-05 11:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:46] [INFO] Checking activity reminders 
[2026-04-05 11:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:44:57] [INFO] Checking activity reminders 
[2026-04-05 11:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:05] [INFO] Checking activity reminders 
[2026-04-05 11:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:05] [INFO] Checking activity reminders 
[2026-04-05 11:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:16] [INFO] Checking activity reminders 
[2026-04-05 11:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:28] [INFO] Checking activity reminders 
[2026-04-05 11:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:35] [INFO] Checking activity reminders 
[2026-04-05 11:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:35] [INFO] Checking activity reminders 
[2026-04-05 11:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:47] [INFO] Checking activity reminders 
[2026-04-05 11:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:45:47] [WARNING] Auth check failed - not authenticated {"session_id":"ebs9oea01vh0qqm7n8ia9gg3lc","session_keys":[],"action":"check_reminders"}
[2026-04-05 11:45:47] [WARNING] Auth check failed - not authenticated {"session_id":"ebs9oea01vh0qqm7n8ia9gg3lc","session_keys":[],"action":"log_client_event"}
[2026-04-05 11:45:47] [WARNING] Auth check failed - not authenticated {"session_id":"ebs9oea01vh0qqm7n8ia9gg3lc","session_keys":[],"action":"log_client_event"}
[2026-04-05 11:46:05] [INFO] Checking activity reminders 
[2026-04-05 11:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:46:05] [INFO] Checking activity reminders 
[2026-04-05 11:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:46:17] [INFO] Checking activity reminders 
[2026-04-05 11:46:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:46:35] [INFO] Checking activity reminders 
[2026-04-05 11:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:46:36] [INFO] Checking activity reminders 
[2026-04-05 11:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:46:47] [INFO] Checking activity reminders 
[2026-04-05 11:46:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:46:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:47:06] [INFO] Checking activity reminders 
[2026-04-05 11:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:47:18] [INFO] Checking activity reminders 
[2026-04-05 11:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:47:36] [INFO] Checking activity reminders 
[2026-04-05 11:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:47:48] [INFO] Checking activity reminders 
[2026-04-05 11:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:48:06] [INFO] Checking activity reminders 
[2026-04-05 11:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:48:18] [INFO] Checking activity reminders 
[2026-04-05 11:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:48:36] [INFO] Checking activity reminders 
[2026-04-05 11:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:48:48] [INFO] Checking activity reminders 
[2026-04-05 11:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:49:06] [INFO] Checking activity reminders 
[2026-04-05 11:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:49:18] [INFO] Checking activity reminders 
[2026-04-05 11:49:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:49:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:49:36] [INFO] Checking activity reminders 
[2026-04-05 11:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:49:48] [INFO] Checking activity reminders 
[2026-04-05 11:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:50:06] [INFO] Checking activity reminders 
[2026-04-05 11:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:50:36] [INFO] Checking activity reminders 
[2026-04-05 11:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:50:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:06] [INFO] Checking activity reminders 
[2026-04-05 11:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:51:18] [INFO] Activity save request {"post_data":{"contact_id":"21638","deal_id":"local_69b73be32e0585.78940642","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"پیگیری واریزی عدم پاسخ ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:51:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21638","note_was_empty":true}
[2026-04-05 11:51:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"21638","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:18] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-04-05 11:51:18] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-04-05 11:51:18] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-04-05 11:51:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73be32e0585.78940642","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-05 11:51:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21b7e94cb28.31225491","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21b7e94cb28.31225491"}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:18] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-04-05 11:51:18] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-04-05 11:51:18] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-04-05 11:51:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-05 11:51:36] [INFO] Checking activity reminders 
[2026-04-05 11:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:52:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:07] [INFO] Checking activity reminders 
[2026-04-05 11:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:52:31] [INFO] Activity save request {"post_data":{"contact_id":"6032","deal_id":"local_69b741d85e67d4.37217572","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ \/ ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 11:52:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6032","note_was_empty":true}
[2026-04-05 11:52:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"6032","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Updating virtual stage {"contact_id":"6032","stage_name":"deal_registered","force":false}
[2026-04-05 11:52:31] [INFO] Virtual stage successfully saved {"contact_id":"6032","stage_name":"deal_registered"}
[2026-04-05 11:52:31] [INFO] Virtual stage updated after activity save {"contact_id":"6032"}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b741d85e67d4.37217572","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 11:52:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21bc75b3c92.81508184","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21bc75b3c92.81508184"}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:31] [INFO] Updating virtual stage {"contact_id":"6032","stage_name":"deal_registered","force":false}
[2026-04-05 11:52:31] [INFO] Virtual stage successfully saved {"contact_id":"6032","stage_name":"deal_registered"}
[2026-04-05 11:52:31] [INFO] Virtual stage updated after activity save {"contact_id":"6032"}
[2026-04-05 11:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6032","person_id":"17259"}
[2026-04-05 11:52:37] [INFO] Checking activity reminders 
[2026-04-05 11:52:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:52:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:52:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:52:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:07] [INFO] Checking activity reminders 
[2026-04-05 11:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:53:12] [INFO] Activity save request {"post_data":{"contact_id":"local_694be5a86fbec8.05562235","deal_id":"local_694bebe0a19596.60429707","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"تماس مجدد عدم پاسخ ارسال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:53:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_694be5a86fbec8.05562235","note_was_empty":true}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:12] [INFO] Updating virtual stage {"contact_id":"local_694be5a86fbec8.05562235","stage_name":"deal_registered","force":false}
[2026-04-05 11:53:12] [INFO] Virtual stage successfully saved {"contact_id":"local_694be5a86fbec8.05562235","stage_name":"deal_registered"}
[2026-04-05 11:53:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_694be5a86fbec8.05562235"}
[2026-04-05 11:53:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694bebe0a19596.60429707","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 11:53:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21bf0759d94.09810786","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21bf0759d94.09810786"}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:12] [INFO] Updating virtual stage {"contact_id":"local_694be5a86fbec8.05562235","stage_name":"deal_registered","force":false}
[2026-04-05 11:53:12] [INFO] Virtual stage successfully saved {"contact_id":"local_694be5a86fbec8.05562235","stage_name":"deal_registered"}
[2026-04-05 11:53:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_694be5a86fbec8.05562235"}
[2026-04-05 11:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694be5a86fbec8.05562235","person_id":"21344"}
[2026-04-05 11:53:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15757","person_id":"14259"}
[2026-04-05 11:53:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:37] [INFO] Checking activity reminders 
[2026-04-05 11:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:53:46] [INFO] Activity save request {"post_data":{"contact_id":"local_695a0a933f4dc9.41819757","deal_id":"local_695a0a9343044","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"مجدد خاموش","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:53:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_695a0a933f4dc9.41819757","note_was_empty":true}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:46] [INFO] Updating virtual stage {"contact_id":"local_695a0a933f4dc9.41819757","stage_name":"deal_registered","force":false}
[2026-04-05 11:53:46] [INFO] Virtual stage successfully saved {"contact_id":"local_695a0a933f4dc9.41819757","stage_name":"deal_registered"}
[2026-04-05 11:53:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_695a0a933f4dc9.41819757"}
[2026-04-05 11:53:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a0a9343044","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 11:53:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21c1228a226.50003255","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21c1228a226.50003255"}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:53:46] [INFO] Updating virtual stage {"contact_id":"local_695a0a933f4dc9.41819757","stage_name":"deal_registered","force":false}
[2026-04-05 11:53:46] [INFO] Virtual stage successfully saved {"contact_id":"local_695a0a933f4dc9.41819757","stage_name":"deal_registered"}
[2026-04-05 11:53:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_695a0a933f4dc9.41819757"}
[2026-04-05 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695a0a933f4dc9.41819757","person_id":"21494"}
[2026-04-05 11:54:07] [INFO] Checking activity reminders 
[2026-04-05 11:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:54:37] [INFO] Checking activity reminders 
[2026-04-05 11:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:55:07] [INFO] Checking activity reminders 
[2026-04-05 11:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:55:13] [INFO] Checking activity reminders 
[2026-04-05 11:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:55:37] [INFO] Checking activity reminders 
[2026-04-05 11:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:55:43] [INFO] Checking activity reminders 
[2026-04-05 11:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:56:02] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 11:56:02] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"check_reminders"}
[2026-04-05 11:56:02] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 11:56:07] [INFO] Checking activity reminders 
[2026-04-05 11:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:56:13] [INFO] Checking activity reminders 
[2026-04-05 11:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:56:37] [INFO] Checking activity reminders 
[2026-04-05 11:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:56:43] [INFO] Checking activity reminders 
[2026-04-05 11:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:57:08] [INFO] Checking activity reminders 
[2026-04-05 11:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:57:13] [INFO] Checking activity reminders 
[2026-04-05 11:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-05 11:57:38] [INFO] Checking activity reminders 
[2026-04-05 11:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:57:43] [INFO] Checking activity reminders 
[2026-04-05 11:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:57:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:08] [INFO] Checking activity reminders 
[2026-04-05 11:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:58:13] [INFO] Checking activity reminders 
[2026-04-05 11:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:58:38] [INFO] Checking activity reminders 
[2026-04-05 11:58:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:58:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:58:43] [INFO] Checking activity reminders 
[2026-04-05 11:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:58:53] [INFO] Activity save request {"post_data":{"contact_id":"20975","deal_id":"local_695cc6296137d7.60716197","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم پاسخ هدف تمدید کانال ارال پیامک","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 11:58:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20975","note_was_empty":true}
[2026-04-05 11:58:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"20975","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:53] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-04-05 11:58:53] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-04-05 11:58:53] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-04-05 11:58:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cc6296137d7.60716197","stage":"تماس پیگیری","status_change":null}
[2026-04-05 11:58:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21d45b98050.51122433","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21d45b98050.51122433"}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:58:53] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-04-05 11:58:53] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-04-05 11:58:53] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-04-05 11:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-05 11:59:08] [INFO] Checking activity reminders 
[2026-04-05 11:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:59:13] [INFO] Checking activity reminders 
[2026-04-05 11:59:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:59:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:59:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 11:59:38] [INFO] Checking activity reminders 
[2026-04-05 11:59:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:59:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 11:59:44] [INFO] Checking activity reminders 
[2026-04-05 11:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 11:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:00:08] [INFO] Checking activity reminders 
[2026-04-05 12:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:00:14] [INFO] Checking activity reminders 
[2026-04-05 12:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:00:17] [INFO] Activity save request {"post_data":{"contact_id":"11501","deal_id":"local_69c7ec1ae3af15.92709012","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"نمیخواد باشه ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 12:00:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11501","note_was_empty":true}
[2026-04-05 12:00:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"11501","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Updating virtual stage {"contact_id":"11501","stage_name":"deal_registered","force":false}
[2026-04-05 12:00:17] [INFO] Virtual stage successfully saved {"contact_id":"11501","stage_name":"deal_registered"}
[2026-04-05 12:00:17] [INFO] Virtual stage updated after activity save {"contact_id":"11501"}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7ec1ae3af15.92709012","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 12:00:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21d99bf6802.21188679","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21d99bf6802.21188679"}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:17] [INFO] Updating virtual stage {"contact_id":"11501","stage_name":"deal_registered","force":false}
[2026-04-05 12:00:17] [INFO] Virtual stage successfully saved {"contact_id":"11501","stage_name":"deal_registered"}
[2026-04-05 12:00:17] [INFO] Virtual stage updated after activity save {"contact_id":"11501"}
[2026-04-05 12:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11501","person_id":"18687"}
[2026-04-05 12:00:38] [INFO] Checking activity reminders 
[2026-04-05 12:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:00:44] [INFO] Checking activity reminders 
[2026-04-05 12:00:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:00:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:09] [INFO] Checking activity reminders 
[2026-04-05 12:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:01:13] [INFO] Activity save request {"post_data":{"contact_id":"16868","deal_id":"local_69bbea877a3c67.70642549","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فعلا نمیخواد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 12:01:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16868","note_was_empty":true}
[2026-04-05 12:01:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"16868","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Updating virtual stage {"contact_id":"16868","stage_name":"deal_registered","force":false}
[2026-04-05 12:01:13] [INFO] Virtual stage successfully saved {"contact_id":"16868","stage_name":"deal_registered"}
[2026-04-05 12:01:13] [INFO] Virtual stage updated after activity save {"contact_id":"16868"}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbea877a3c67.70642549","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 12:01:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21dd12fffb9.20940952","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21dd12fffb9.20940952"}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:13] [INFO] Updating virtual stage {"contact_id":"16868","stage_name":"deal_registered","force":false}
[2026-04-05 12:01:13] [INFO] Virtual stage successfully saved {"contact_id":"16868","stage_name":"deal_registered"}
[2026-04-05 12:01:13] [INFO] Virtual stage updated after activity save {"contact_id":"16868"}
[2026-04-05 12:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16868","person_id":"7004"}
[2026-04-05 12:01:14] [INFO] Checking activity reminders 
[2026-04-05 12:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8325","person_id":"1099"}
[2026-04-05 12:01:39] [INFO] Checking activity reminders 
[2026-04-05 12:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:01:44] [INFO] Checking activity reminders 
[2026-04-05 12:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:01:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:09] [INFO] Checking activity reminders 
[2026-04-05 12:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:02:14] [INFO] Checking activity reminders 
[2026-04-05 12:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:02:19] [INFO] Activity save request {"post_data":{"contact_id":"1390","deal_id":"local_69b73c136950d8.21935620","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فعلا نمیخواد باشه شرایط نداره","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 12:02:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1390","note_was_empty":true}
[2026-04-05 12:02:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"1390","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Updating virtual stage {"contact_id":"1390","stage_name":"deal_registered","force":false}
[2026-04-05 12:02:19] [INFO] Virtual stage successfully saved {"contact_id":"1390","stage_name":"deal_registered"}
[2026-04-05 12:02:19] [INFO] Virtual stage updated after activity save {"contact_id":"1390"}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73c136950d8.21935620","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 12:02:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21e130849f5.33501956","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21e130849f5.33501956"}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:19] [INFO] Updating virtual stage {"contact_id":"1390","stage_name":"deal_registered","force":false}
[2026-04-05 12:02:19] [INFO] Virtual stage successfully saved {"contact_id":"1390","stage_name":"deal_registered"}
[2026-04-05 12:02:19] [INFO] Virtual stage updated after activity save {"contact_id":"1390"}
[2026-04-05 12:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1390","person_id":"19006"}
[2026-04-05 12:02:40] [INFO] Checking activity reminders 
[2026-04-05 12:02:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:02:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:02:44] [INFO] Checking activity reminders 
[2026-04-05 12:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:02:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:10] [INFO] Checking activity reminders 
[2026-04-05 12:03:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:03:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:03:14] [INFO] Checking activity reminders 
[2026-04-05 12:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:03:18] [INFO] Activity save request {"post_data":{"contact_id":"15061","deal_id":"local_69b7425067a3b3.46700206","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"عدم رضایت از سیگنال استاد و برخورد","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"other","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-05 12:03:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15061","note_was_empty":true}
[2026-04-05 12:03:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"15061","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Updating virtual stage {"contact_id":"15061","stage_name":"deal_registered","force":false}
[2026-04-05 12:03:18] [INFO] Virtual stage successfully saved {"contact_id":"15061","stage_name":"deal_registered"}
[2026-04-05 12:03:18] [INFO] Virtual stage updated after activity save {"contact_id":"15061"}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7425067a3b3.46700206","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-05 12:03:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d21e4ebad6d5.24715997","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d21e4ebad6d5.24715997"}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:18] [INFO] Updating virtual stage {"contact_id":"15061","stage_name":"deal_registered","force":false}
[2026-04-05 12:03:18] [INFO] Virtual stage successfully saved {"contact_id":"15061","stage_name":"deal_registered"}
[2026-04-05 12:03:18] [INFO] Virtual stage updated after activity save {"contact_id":"15061"}
[2026-04-05 12:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15061","person_id":"17397"}
[2026-04-05 12:03:40] [INFO] Checking activity reminders 
[2026-04-05 12:03:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:03:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:03:44] [INFO] Checking activity reminders 
[2026-04-05 12:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:04:10] [INFO] Checking activity reminders 
[2026-04-05 12:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:04:14] [INFO] Checking activity reminders 
[2026-04-05 12:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:04:40] [INFO] Checking activity reminders 
[2026-04-05 12:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:04:44] [INFO] Checking activity reminders 
[2026-04-05 12:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:05:10] [INFO] Checking activity reminders 
[2026-04-05 12:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:05:40] [INFO] Checking activity reminders 
[2026-04-05 12:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:06:10] [INFO] Checking activity reminders 
[2026-04-05 12:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:06:41] [INFO] Checking activity reminders 
[2026-04-05 12:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:07:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 12:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:08:17] [INFO] Checking activity reminders 
[2026-04-05 12:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:08:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 12:08:22] [INFO] Checking activity reminders 
[2026-04-05 12:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:08:52] [INFO] Checking activity reminders 
[2026-04-05 12:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:09:22] [INFO] Checking activity reminders 
[2026-04-05 12:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:09:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:09:33","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:09:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20921","is_new_deal":false}
[2026-04-05 12:09:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 12:09:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 12:09:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 12:09:33] [INFO] getContactPrimaryPhone called {"contact_id":"20921"}
[2026-04-05 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:09:33] [INFO] getContactPrimaryPhone result {"contact_id":"20921","person_found":true,"primary_phone":"9126500045"}
[2026-04-05 12:09:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126500045"}
[2026-04-05 12:09:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126500045","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 12:09:33"}
[2026-04-05 12:09:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","existing_deal_found":true,"existing_contact_id":"20921","existing_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 12:09:33"}
[2026-04-05 12:09:33] [INFO] DealController.save validated payments {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 12:09:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20921","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 12:09:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a249044f46.42652161","contact_didar_id":"20921","title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9126500045","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سبحان کنجانی","existing_deal":"YES","existing_deal_id":"local_69d0a249044f46.42652161","existing_deal_status":"Pending","server_time":"2026-04-05 12:09:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:09:33] [INFO] Deal success processed {"contact_id":"20921","person_name":"سبحان کنجانی","products_count":1}
[2026-04-05 12:09:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-05 12:09:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 12:09:52] [INFO] Checking activity reminders 
[2026-04-05 12:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:10:23] [INFO] Checking activity reminders 
[2026-04-05 12:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:10:44] [INFO] Checking activity reminders 
[2026-04-05 12:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:10:53] [INFO] Checking activity reminders 
[2026-04-05 12:10:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:10:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:10:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 12:10:58] [INFO] Checking activity reminders 
[2026-04-05 12:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:11:14] [INFO] Checking activity reminders 
[2026-04-05 12:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:11:28] [INFO] Checking activity reminders 
[2026-04-05 12:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:11:44] [INFO] Checking activity reminders 
[2026-04-05 12:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:11:58] [INFO] Checking activity reminders 
[2026-04-05 12:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:12:15] [INFO] Checking activity reminders 
[2026-04-05 12:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:12:28] [INFO] Checking activity reminders 
[2026-04-05 12:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:12:30] [INFO] Checking activity reminders 
[2026-04-05 12:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:12:58] [INFO] Checking activity reminders 
[2026-04-05 12:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:13:28] [INFO] Checking activity reminders 
[2026-04-05 12:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:13:58] [INFO] Checking activity reminders 
[2026-04-05 12:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:14:29] [INFO] Checking activity reminders 
[2026-04-05 12:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:14:59] [INFO] Checking activity reminders 
[2026-04-05 12:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:15:29] [INFO] Checking activity reminders 
[2026-04-05 12:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:15:59] [INFO] Checking activity reminders 
[2026-04-05 12:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:16:29] [INFO] Checking activity reminders 
[2026-04-05 12:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:16:59] [INFO] Checking activity reminders 
[2026-04-05 12:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:17:29] [INFO] Checking activity reminders 
[2026-04-05 12:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:17:59] [INFO] Checking activity reminders 
[2026-04-05 12:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:18:29] [INFO] Checking activity reminders 
[2026-04-05 12:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:18:59] [INFO] Checking activity reminders 
[2026-04-05 12:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:19:29] [INFO] Checking activity reminders 
[2026-04-05 12:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:19:59] [INFO] Checking activity reminders 
[2026-04-05 12:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:20:29] [INFO] Checking activity reminders 
[2026-04-05 12:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:20:30] [INFO] Checking activity reminders 
[2026-04-05 12:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:20:58] [INFO] Checking activity reminders 
[2026-04-05 12:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:21:00] [INFO] Checking activity reminders 
[2026-04-05 12:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:21:30] [INFO] Checking activity reminders 
[2026-04-05 12:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:21:38] [INFO] Checking activity reminders 
[2026-04-05 12:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:21:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 12:21:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 12:21:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 12:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:21:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:21:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:21:49] [INFO] generateDealTitle result {"contact_id":"21147","person_name":"9123657452","mobile":"9123657452","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123657452"}
[2026-04-05 12:22:00] [INFO] Checking activity reminders 
[2026-04-05 12:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:22:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21147","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:22:05","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:22:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:22:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21147","is_new_deal":true}
[2026-04-05 12:22:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:22:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:22:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:22:05] [INFO] getContactPrimaryPhone called {"contact_id":"21147"}
[2026-04-05 12:22:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:22:05] [INFO] getContactPrimaryPhone result {"contact_id":"21147","person_found":true,"primary_phone":"9123657452"}
[2026-04-05 12:22:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123657452"}
[2026-04-05 12:22:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123657452","contact_id":"21147","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:22:05"}
[2026-04-05 12:22:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:22:05] [INFO] generateDealTitle result {"contact_id":"21147","person_name":"9123657452","mobile":"9123657452","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123657452"}
[2026-04-05 12:22:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21147","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:22:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21147","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:22:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21147","title":"معامله دوم 9123657452 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123657452","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"9123657452","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:22:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:22:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:22:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:22:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21147","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9123657452 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:22:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:22:13] [INFO] Checking activity reminders 
[2026-04-05 12:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:22:24] [INFO] Checking activity reminders 
[2026-04-05 12:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-05 12:22:30] [INFO] Checking activity reminders 
[2026-04-05 12:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:22:44] [INFO] Checking activity reminders 
[2026-04-05 12:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:23:00] [INFO] Checking activity reminders 
[2026-04-05 12:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:23:16] [INFO] Checking activity reminders 
[2026-04-05 12:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:23:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:30] [INFO] Checking activity reminders 
[2026-04-05 12:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:23:35] [INFO] Lead update received {"contact_id":"20504","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 12:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:35] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20504"}
[2026-04-05 12:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:23:39] [INFO] generateDealTitle result {"contact_id":"20504","person_name":"اقای بلالی","mobile":"9122620782","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122620782"}
[2026-04-05 12:23:46] [INFO] Checking activity reminders 
[2026-04-05 12:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:24:00] [INFO] Checking activity reminders 
[2026-04-05 12:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:24:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20504","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:24:00","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:24:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:24:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20504","is_new_deal":true}
[2026-04-05 12:24:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:24:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:24:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:24:00] [INFO] getContactPrimaryPhone called {"contact_id":"20504"}
[2026-04-05 12:24:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:24:00] [INFO] getContactPrimaryPhone result {"contact_id":"20504","person_found":true,"primary_phone":"9122620782"}
[2026-04-05 12:24:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122620782"}
[2026-04-05 12:24:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122620782","contact_id":"20504","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:24:00"}
[2026-04-05 12:24:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:24:00] [INFO] generateDealTitle result {"contact_id":"20504","person_name":"اقای بلالی","mobile":"9122620782","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122620782"}
[2026-04-05 12:24:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20504","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:24:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20504","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:24:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20504","title":"معامله دوم 9122620782 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122620782","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای بلالی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:24:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:24:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:24:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:24:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20504","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9122620782 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:24:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:24:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:24:23] [INFO] Checking activity reminders 
[2026-04-05 12:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-05 12:24:30] [INFO] Checking activity reminders 
[2026-04-05 12:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:24:51] [INFO] Checking activity reminders 
[2026-04-05 12:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:24:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 12:25:00] [INFO] Checking activity reminders 
[2026-04-05 12:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:25:30] [INFO] Checking activity reminders 
[2026-04-05 12:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:25:36] [INFO] Checking activity reminders 
[2026-04-05 12:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:25:56] [INFO] Checking activity reminders 
[2026-04-05 12:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:25:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-04-05 12:26:00] [INFO] Checking activity reminders 
[2026-04-05 12:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:26:16] [INFO] Checking activity reminders 
[2026-04-05 12:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-05 12:26:30] [INFO] Checking activity reminders 
[2026-04-05 12:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:26:42] [INFO] Checking activity reminders 
[2026-04-05 12:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:26:54] [INFO] Checking activity reminders 
[2026-04-05 12:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:27:00] [INFO] Checking activity reminders 
[2026-04-05 12:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:27:05] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9188708706","09188708706"]}
[2026-04-05 12:27:05] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9188708706","09188708706"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:27:05] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9188708706","full_name":"لید جدید"}
[2026-04-05 12:27:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-05 12:27:05] [INFO] Notification created {"notification_id":"616","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:27:16] [INFO] Checking activity reminders 
[2026-04-05 12:27:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:27:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:27:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:20] [INFO] generateDealTitle result {"contact_id":"21415","person_name":"9170808282","mobile":"9170808282","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170808282"}
[2026-04-05 12:27:31] [INFO] Checking activity reminders 
[2026-04-05 12:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:27:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21415","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:27:36","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:27:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21415","is_new_deal":true}
[2026-04-05 12:27:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:27:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:27:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:27:36] [INFO] getContactPrimaryPhone called {"contact_id":"21415"}
[2026-04-05 12:27:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:36] [INFO] getContactPrimaryPhone result {"contact_id":"21415","person_found":true,"primary_phone":"9170808282"}
[2026-04-05 12:27:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170808282"}
[2026-04-05 12:27:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170808282","contact_id":"21415","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:27:36"}
[2026-04-05 12:27:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:36] [INFO] generateDealTitle result {"contact_id":"21415","person_name":"9170808282","mobile":"9170808282","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9170808282"}
[2026-04-05 12:27:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21415","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:27:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21415","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:27:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21415","title":"معامله دوم 9170808282 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9170808282","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"9170808282","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:27:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:27:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:27:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21415","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170808282 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:27:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:27:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 12:27:48] [INFO] Checking activity reminders 
[2026-04-05 12:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:27:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-05 12:27:58] [INFO] Checking activity reminders 
[2026-04-05 12:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:28:01] [INFO] Checking activity reminders 
[2026-04-05 12:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:05] [INFO] generateDealTitle result {"contact_id":"21119","person_name":"آهنگری","mobile":"9192792365","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9192792365"}
[2026-04-05 12:28:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21119","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:28:20","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21119","is_new_deal":true}
[2026-04-05 12:28:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:20] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-05 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:20] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-05 12:28:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-05 12:28:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:28:20"}
[2026-04-05 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:20] [INFO] generateDealTitle result {"contact_id":"21119","person_name":"آهنگری","mobile":"9192792365","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9192792365"}
[2026-04-05 12:28:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21119","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:28:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:28:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:28:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:28:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:28:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 12:28:27] [INFO] Checking activity reminders 
[2026-04-05 12:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:28:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:31] [INFO] Checking activity reminders 
[2026-04-05 12:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:28:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:34] [INFO] generateDealTitle result {"contact_id":"8143","person_name":"پوررضایی","mobile":"9131597479","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131597479"}
[2026-04-05 12:28:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8143","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:28:50","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8143","is_new_deal":true}
[2026-04-05 12:28:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:28:50] [INFO] getContactPrimaryPhone called {"contact_id":"8143"}
[2026-04-05 12:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:50] [INFO] getContactPrimaryPhone result {"contact_id":"8143","person_found":true,"primary_phone":"9131597479"}
[2026-04-05 12:28:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131597479"}
[2026-04-05 12:28:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131597479","contact_id":"8143","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:28:50"}
[2026-04-05 12:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:50] [INFO] generateDealTitle result {"contact_id":"8143","person_name":"پوررضایی","mobile":"9131597479","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9131597479"}
[2026-04-05 12:28:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8143","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:28:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8143","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:28:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8143","title":"معامله دوم 9131597479 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131597479","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پوررضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:28:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:28:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:28:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8143","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9131597479 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:28:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:28:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 12:28:56] [INFO] Checking activity reminders 
[2026-04-05 12:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:29:01] [INFO] Checking activity reminders 
[2026-04-05 12:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:29:08] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9179199930","09179199930"]}
[2026-04-05 12:29:08] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9179199930","09179199930"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:29:08] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9179199930","full_name":"لید جدید"}
[2026-04-05 12:29:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-05 12:29:08] [INFO] Notification created {"notification_id":"617","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:29:14] [INFO] Checking activity reminders 
[2026-04-05 12:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:29:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:26] [INFO] Lead update received {"contact_id":"1850","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 12:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:26] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1850"}
[2026-04-05 12:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:30] [INFO] generateDealTitle result {"contact_id":"1850","person_name":"زندی زندی","mobile":"9121710061","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121710061"}
[2026-04-05 12:29:31] [INFO] Checking activity reminders 
[2026-04-05 12:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:29:45] [INFO] Checking activity reminders 
[2026-04-05 12:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:29:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1850","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:29:49","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1850","is_new_deal":true}
[2026-04-05 12:29:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:29:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:29:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:29:49] [INFO] getContactPrimaryPhone called {"contact_id":"1850"}
[2026-04-05 12:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:49] [INFO] getContactPrimaryPhone result {"contact_id":"1850","person_found":true,"primary_phone":"9121710061"}
[2026-04-05 12:29:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121710061"}
[2026-04-05 12:29:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121710061","contact_id":"1850","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:29:49"}
[2026-04-05 12:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:49] [INFO] generateDealTitle result {"contact_id":"1850","person_name":"زندی زندی","mobile":"9121710061","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9121710061"}
[2026-04-05 12:29:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1850","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:29:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1850","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:29:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1850","title":"معامله دوم 9121710061 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121710061","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"زندی زندی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:29:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:29:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1850","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9121710061 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:29:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:29:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:29:56] [INFO] Checking activity reminders 
[2026-04-05 12:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:30:01] [INFO] Checking activity reminders 
[2026-04-05 12:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:30:08] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9334780676","09334780676"]}
[2026-04-05 12:30:08] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9334780676","09334780676"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:30:08] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9334780676","full_name":"لید جدید"}
[2026-04-05 12:30:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-05 12:30:08] [INFO] Notification created {"notification_id":"618","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:30:17] [INFO] Checking activity reminders 
[2026-04-05 12:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:22] [INFO] generateDealTitle result {"contact_id":"9112","person_name":"سرشار","mobile":"9158828113","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9158828113"}
[2026-04-05 12:30:31] [INFO] Checking activity reminders 
[2026-04-05 12:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:30:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9112","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:30:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9112","is_new_deal":true}
[2026-04-05 12:30:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:30:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:30:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:30:38] [INFO] getContactPrimaryPhone called {"contact_id":"9112"}
[2026-04-05 12:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:38] [INFO] getContactPrimaryPhone result {"contact_id":"9112","person_found":true,"primary_phone":"9158828113"}
[2026-04-05 12:30:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9158828113"}
[2026-04-05 12:30:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9158828113","contact_id":"9112","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:30:38"}
[2026-04-05 12:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:38] [INFO] generateDealTitle result {"contact_id":"9112","person_name":"سرشار","mobile":"9158828113","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9158828113"}
[2026-04-05 12:30:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9112","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:30:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9112","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:30:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9112","title":"معامله سوم 9158828113 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9158828113","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سرشار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:30:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:30:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9112","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9158828113 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:30:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:30:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 12:30:46] [INFO] Checking activity reminders 
[2026-04-05 12:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:30:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-05 12:31:00] [INFO] Checking activity reminders 
[2026-04-05 12:31:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:31:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:31:01] [INFO] Checking activity reminders 
[2026-04-05 12:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:31:12] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9913102532","09913102532"]}
[2026-04-05 12:31:12] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9913102532","09913102532"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:31:12] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9913102532","full_name":"لید جدید"}
[2026-04-05 12:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-05 12:31:12] [INFO] Notification created {"notification_id":"619","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:31:20] [INFO] Checking activity reminders 
[2026-04-05 12:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:31:31] [INFO] Checking activity reminders 
[2026-04-05 12:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:31:32] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9120931841","09120931841"]}
[2026-04-05 12:31:32] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9120931841","09120931841"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:31:32] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9120931841","full_name":"لید جدید"}
[2026-04-05 12:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-05 12:31:32] [INFO] Notification created {"notification_id":"620","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:31:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:31:41] [INFO] Checking activity reminders 
[2026-04-05 12:31:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:31:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:31:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:31:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:31:46] [INFO] generateDealTitle result {"contact_id":"3441","person_name":"مهدی صارمی","mobile":"9033297843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9033297843"}
[2026-04-05 12:32:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3441","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:32:01","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:32:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3441","is_new_deal":true}
[2026-04-05 12:32:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:32:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:32:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:32:01] [INFO] getContactPrimaryPhone called {"contact_id":"3441"}
[2026-04-05 12:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:32:01] [INFO] getContactPrimaryPhone result {"contact_id":"3441","person_found":true,"primary_phone":"9033297843"}
[2026-04-05 12:32:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9033297843"}
[2026-04-05 12:32:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9033297843","contact_id":"3441","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:32:01"}
[2026-04-05 12:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:32:01] [INFO] generateDealTitle result {"contact_id":"3441","person_name":"مهدی صارمی","mobile":"9033297843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9033297843"}
[2026-04-05 12:32:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3441","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:32:01] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"3441","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:32:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3441","title":"معامله دوم 9033297843 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9033297843","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی صارمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:32:01","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:32:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:32:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3441","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9033297843 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:32:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:32:01] [INFO] Checking activity reminders 
[2026-04-05 12:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:32:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:32:11] [INFO] Checking activity reminders 
[2026-04-05 12:32:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:32:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21324","person_id":"12566"}
[2026-04-05 12:32:27] [INFO] Checking activity reminders 
[2026-04-05 12:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:32:28] [INFO] Activity save request {"post_data":{"contact_id":"12740","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"فیزیک چک در تاریخ 1\/16 تحویل خانم افراش\r\n","activity_duration":"0","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:32:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 12:32:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:32:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12740","note_was_empty":true}
[2026-04-05 12:32:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"12740","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 12:32:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d225245ef2a0.00994229","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:32:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69d225245ef2a0.00994229"}
[2026-04-05 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:32:28] [INFO] Updating virtual stage {"contact_id":"12740","stage_name":"deal_registered","force":false}
[2026-04-05 12:32:28] [INFO] Virtual stage successfully saved {"contact_id":"12740","stage_name":"deal_registered"}
[2026-04-05 12:32:28] [INFO] Virtual stage updated after activity save {"contact_id":"12740"}
[2026-04-05 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-05 12:32:32] [INFO] Checking activity reminders 
[2026-04-05 12:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:32:39] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9352417035","09352417035"]}
[2026-04-05 12:32:39] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9352417035","09352417035"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:32:39] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9352417035","full_name":"لید جدید"}
[2026-04-05 12:32:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-05 12:32:39] [INFO] Notification created {"notification_id":"621","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:32:50] [INFO] Checking activity reminders 
[2026-04-05 12:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:32:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8460","person_id":"16452"}
[2026-04-05 12:33:02] [INFO] Checking activity reminders 
[2026-04-05 12:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:33:05] [INFO] Checking activity reminders 
[2026-04-05 12:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:33:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-05 12:33:15] [INFO] Checking activity reminders 
[2026-04-05 12:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:33:29] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9910168276","09910168276"]}
[2026-04-05 12:33:29] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9910168276","09910168276"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:33:29] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9910168276","full_name":"لید جدید"}
[2026-04-05 12:33:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-05 12:33:29] [INFO] Notification created {"notification_id":"622","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:33:32] [INFO] Checking activity reminders 
[2026-04-05 12:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:33:44] [INFO] Checking activity reminders 
[2026-04-05 12:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:33:54] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9121435465","09121435465"]}
[2026-04-05 12:33:54] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9121435465","09121435465"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:33:54] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9121435465","full_name":"لید جدید"}
[2026-04-05 12:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 12:33:54] [INFO] Notification created {"notification_id":"623","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:34:02] [INFO] Checking activity reminders 
[2026-04-05 12:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:04] [INFO] Checking activity reminders 
[2026-04-05 12:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 12:34:16] [INFO] Checking activity reminders 
[2026-04-05 12:34:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:25] [INFO] Checking activity reminders 
[2026-04-05 12:34:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:29] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9384574534","09384574534"]}
[2026-04-05 12:34:29] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9384574534","09384574534"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 12:34:29] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9384574534","full_name":"لید جدید"}
[2026-04-05 12:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-05 12:34:29] [INFO] Notification created {"notification_id":"624","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-05 12:34:32] [INFO] Checking activity reminders 
[2026-04-05 12:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:36] [INFO] Checking activity reminders 
[2026-04-05 12:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:34:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:41] [INFO] generateDealTitle result {"contact_id":"8150","person_name":"امیر سامی","mobile":"9148286037","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9148286037"}
[2026-04-05 12:34:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8150","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:34:59","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8150","is_new_deal":true}
[2026-04-05 12:34:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:34:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:34:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:34:59] [INFO] getContactPrimaryPhone called {"contact_id":"8150"}
[2026-04-05 12:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:59] [INFO] getContactPrimaryPhone result {"contact_id":"8150","person_found":true,"primary_phone":"9148286037"}
[2026-04-05 12:34:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9148286037"}
[2026-04-05 12:34:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9148286037","contact_id":"8150","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:34:59"}
[2026-04-05 12:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:59] [INFO] generateDealTitle result {"contact_id":"8150","person_name":"امیر سامی","mobile":"9148286037","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9148286037"}
[2026-04-05 12:34:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8150","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:34:59] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8150","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:34:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8150","title":"معامله دوم 9148286037 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9148286037","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر سامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:34:59","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:34:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:34:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8150","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9148286037 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:34:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:34:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 12:35:02] [INFO] Checking activity reminders 
[2026-04-05 12:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:35:06] [INFO] Checking activity reminders 
[2026-04-05 12:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:35:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:13] [INFO] generateDealTitle result {"contact_id":"20228","person_name":"احمدی","mobile":"9195256814","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195256814"}
[2026-04-05 12:35:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20228","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:35:29","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 12:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20228","is_new_deal":true}
[2026-04-05 12:35:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:35:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:35:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:35:29] [INFO] getContactPrimaryPhone called {"contact_id":"20228"}
[2026-04-05 12:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:29] [INFO] getContactPrimaryPhone result {"contact_id":"20228","person_found":true,"primary_phone":"9195256814"}
[2026-04-05 12:35:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195256814"}
[2026-04-05 12:35:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195256814","contact_id":"20228","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:35:29"}
[2026-04-05 12:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:29] [INFO] generateDealTitle result {"contact_id":"20228","person_name":"احمدی","mobile":"9195256814","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9195256814"}
[2026-04-05 12:35:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20228","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 12:35:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20228","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:35:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20228","title":"معامله دوم 9195256814 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9195256814","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 12:35:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 12:35:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20228","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9195256814 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:35:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:35:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 12:35:32] [INFO] Checking activity reminders 
[2026-04-05 12:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:35:36] [INFO] Checking activity reminders 
[2026-04-05 12:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:35:52] [INFO] Checking activity reminders 
[2026-04-05 12:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-05 12:36:02] [INFO] Checking activity reminders 
[2026-04-05 12:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:36:02] [INFO] Checking activity reminders 
[2026-04-05 12:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:36:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-05 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:36:33] [INFO] Checking activity reminders 
[2026-04-05 12:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:37:03] [INFO] Checking activity reminders 
[2026-04-05 12:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:37:21] [INFO] Checking activity reminders 
[2026-04-05 12:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:37:33] [INFO] Checking activity reminders 
[2026-04-05 12:37:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:37:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:37:40] [INFO] Checking activity reminders 
[2026-04-05 12:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:38:03] [INFO] Checking activity reminders 
[2026-04-05 12:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:38:21] [INFO] Checking activity reminders 
[2026-04-05 12:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:38:33] [INFO] Checking activity reminders 
[2026-04-05 12:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:39:03] [INFO] Checking activity reminders 
[2026-04-05 12:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:39:33] [INFO] Checking activity reminders 
[2026-04-05 12:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:39:57] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:39:57] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-05 12:39:57] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:40:04] [INFO] Checking activity reminders 
[2026-04-05 12:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:40:34] [INFO] Checking activity reminders 
[2026-04-05 12:40:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:40:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:41:04] [INFO] Checking activity reminders 
[2026-04-05 12:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:41:34] [INFO] Checking activity reminders 
[2026-04-05 12:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:41:39] [INFO] Checking activity reminders 
[2026-04-05 12:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:42:04] [INFO] Checking activity reminders 
[2026-04-05 12:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:42:09] [INFO] Checking activity reminders 
[2026-04-05 12:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:42:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 12:42:34] [INFO] Checking activity reminders 
[2026-04-05 12:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:42:40] [INFO] Checking activity reminders 
[2026-04-05 12:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:43:04] [INFO] Checking activity reminders 
[2026-04-05 12:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:43:10] [INFO] Checking activity reminders 
[2026-04-05 12:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:43:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-05 12:43:35] [INFO] Checking activity reminders 
[2026-04-05 12:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:43:40] [INFO] Checking activity reminders 
[2026-04-05 12:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:44:05] [INFO] Checking activity reminders 
[2026-04-05 12:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:44:10] [INFO] Checking activity reminders 
[2026-04-05 12:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:44:35] [INFO] Checking activity reminders 
[2026-04-05 12:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:45:05] [INFO] Checking activity reminders 
[2026-04-05 12:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:45:35] [INFO] Checking activity reminders 
[2026-04-05 12:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:46:05] [INFO] Checking activity reminders 
[2026-04-05 12:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:46:35] [INFO] Checking activity reminders 
[2026-04-05 12:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:46:54] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:46:54] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"get_field_configurations"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"get_deal"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:02] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:04] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:05] [INFO] Checking activity reminders 
[2026-04-05 12:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:47:12] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 12:47:12] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 12:47:12] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 12:47:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 12:47:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 12:47:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 12:47:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 12:47:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:35] [INFO] Checking activity reminders 
[2026-04-05 12:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:47:42] [INFO] Checking activity reminders 
[2026-04-05 12:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:47:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69d1429104c535.24317537","deal_id":"local_69d1429114fed","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 12:47:51","session_id":"ttsvndscifsstc4epjkt25a9ak"}
[2026-04-05 12:47:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69d1429104c535.24317537","is_new_deal":false}
[2026-04-05 12:47:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 12:47:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:47:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 12:47:51] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d1429104c535.24317537"}
[2026-04-05 12:47:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:51] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d1429104c535.24317537","person_found":true,"primary_phone":"9128456789"}
[2026-04-05 12:47:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128456789"}
[2026-04-05 12:47:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128456789","contact_id":"local_69d1429104c535.24317537","deal_id":"local_69d1429114fed","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:47:51"}
[2026-04-05 12:47:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d1429114fed","contact_id":"local_69d1429104c535.24317537","existing_deal_found":true,"existing_contact_id":"local_69d1429104c535.24317537","existing_title":"معامله اول 9128456789","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 12:47:51"}
[2026-04-05 12:47:51] [INFO] DealController.save validated payments {"deal_id":"local_69d1429114fed","contact_id":"local_69d1429104c535.24317537","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 12:47:51] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69d1429104c535.24317537","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 12:47:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d1429114fed","contact_didar_id":"local_69d1429104c535.24317537","title":"معامله اول 9128456789 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9128456789","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"تست ایمپورت","existing_deal":"YES","existing_deal_id":"local_69d1429114fed","existing_deal_status":"Pending","server_time":"2026-04-05 12:47:51","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 12:47:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d1429114fed","contact_id":"local_69d1429104c535.24317537","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9128456789 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 12:47:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 12:47:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:47:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 12:48:05] [INFO] Checking activity reminders 
[2026-04-05 12:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:48:12] [INFO] Checking activity reminders 
[2026-04-05 12:48:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:48:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:48:35] [INFO] Checking activity reminders 
[2026-04-05 12:48:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:48:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:48:42] [INFO] Checking activity reminders 
[2026-04-05 12:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:49:05] [INFO] Checking activity reminders 
[2026-04-05 12:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:49:12] [INFO] Checking activity reminders 
[2026-04-05 12:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:49:36] [INFO] Checking activity reminders 
[2026-04-05 12:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:50:06] [INFO] Checking activity reminders 
[2026-04-05 12:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:50:36] [INFO] Checking activity reminders 
[2026-04-05 12:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:51:06] [INFO] Checking activity reminders 
[2026-04-05 12:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:51:09] [INFO] Checking activity reminders 
[2026-04-05 12:51:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:51:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:51:36] [INFO] Checking activity reminders 
[2026-04-05 12:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:51:39] [INFO] Checking activity reminders 
[2026-04-05 12:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:52:06] [INFO] Checking activity reminders 
[2026-04-05 12:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:52:36] [INFO] Checking activity reminders 
[2026-04-05 12:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:53:06] [INFO] Checking activity reminders 
[2026-04-05 12:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:53:37] [INFO] Checking activity reminders 
[2026-04-05 12:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:53:46] [INFO] Checking activity reminders 
[2026-04-05 12:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 12:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 12:54:07] [INFO] Checking activity reminders 
[2026-04-05 12:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:54:16] [INFO] Checking activity reminders 
[2026-04-05 12:54:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:54:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:54:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-05 12:54:37] [INFO] Checking activity reminders 
[2026-04-05 12:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:54:46] [INFO] Checking activity reminders 
[2026-04-05 12:54:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:54:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:55:07] [INFO] Checking activity reminders 
[2026-04-05 12:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:55:16] [INFO] Checking activity reminders 
[2026-04-05 12:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:55:37] [INFO] Checking activity reminders 
[2026-04-05 12:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:55:46] [INFO] Checking activity reminders 
[2026-04-05 12:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:56:07] [INFO] Checking activity reminders 
[2026-04-05 12:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:56:16] [INFO] Checking activity reminders 
[2026-04-05 12:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:56:37] [INFO] Checking activity reminders 
[2026-04-05 12:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:56:46] [INFO] Checking activity reminders 
[2026-04-05 12:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:57:07] [INFO] Checking activity reminders 
[2026-04-05 12:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:57:16] [INFO] Checking activity reminders 
[2026-04-05 12:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:57:37] [INFO] Checking activity reminders 
[2026-04-05 12:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:57:46] [INFO] Checking activity reminders 
[2026-04-05 12:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:58:07] [INFO] Checking activity reminders 
[2026-04-05 12:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:58:16] [INFO] Checking activity reminders 
[2026-04-05 12:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:58:38] [INFO] Checking activity reminders 
[2026-04-05 12:58:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:58:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:58:46] [INFO] Checking activity reminders 
[2026-04-05 12:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:08] [INFO] Checking activity reminders 
[2026-04-05 12:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:10] [INFO] Checking activity reminders 
[2026-04-05 12:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:16] [INFO] Checking activity reminders 
[2026-04-05 12:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:38] [INFO] Checking activity reminders 
[2026-04-05 12:59:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:40] [INFO] Checking activity reminders 
[2026-04-05 12:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 12:59:47] [INFO] Checking activity reminders 
[2026-04-05 12:59:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 12:59:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:08] [INFO] Checking activity reminders 
[2026-04-05 13:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:10] [INFO] Checking activity reminders 
[2026-04-05 13:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:17] [INFO] Checking activity reminders 
[2026-04-05 13:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:38] [INFO] Checking activity reminders 
[2026-04-05 13:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:40] [INFO] Checking activity reminders 
[2026-04-05 13:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:00:47] [INFO] Checking activity reminders 
[2026-04-05 13:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:08] [INFO] Checking activity reminders 
[2026-04-05 13:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:10] [INFO] Checking activity reminders 
[2026-04-05 13:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:17] [INFO] Checking activity reminders 
[2026-04-05 13:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:38] [INFO] Checking activity reminders 
[2026-04-05 13:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:40] [INFO] Checking activity reminders 
[2026-04-05 13:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:01:47] [INFO] Checking activity reminders 
[2026-04-05 13:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:08] [INFO] Checking activity reminders 
[2026-04-05 13:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:10] [INFO] Checking activity reminders 
[2026-04-05 13:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:17] [INFO] Checking activity reminders 
[2026-04-05 13:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:38] [INFO] Checking activity reminders 
[2026-04-05 13:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:47] [INFO] Checking activity reminders 
[2026-04-05 13:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:02:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:03:08] [INFO] Checking activity reminders 
[2026-04-05 13:03:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:03:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:03:17] [INFO] Checking activity reminders 
[2026-04-05 13:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:03:38] [INFO] Checking activity reminders 
[2026-04-05 13:03:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:03:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:03:47] [INFO] Checking activity reminders 
[2026-04-05 13:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:04:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3155","deal_id":"local_699b127371b638.63924387","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 13:04:08","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 13:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3155","is_new_deal":false}
[2026-04-05 13:04:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 13:04:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 13:04:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 13:04:08] [INFO] getContactPrimaryPhone called {"contact_id":"3155"}
[2026-04-05 13:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:08] [INFO] getContactPrimaryPhone result {"contact_id":"3155","person_found":true,"primary_phone":"9102121228"}
[2026-04-05 13:04:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102121228"}
[2026-04-05 13:04:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102121228","contact_id":"3155","deal_id":"local_699b127371b638.63924387","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:04:08"}
[2026-04-05 13:04:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b127371b638.63924387","contact_id":"3155","existing_deal_found":true,"existing_contact_id":"3155","existing_title":"معامله سوم 9102121228 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:04:08"}
[2026-04-05 13:04:08] [INFO] DealController.save validated payments {"deal_id":"local_699b127371b638.63924387","contact_id":"3155","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 13:04:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3155","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 13:04:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b127371b638.63924387","contact_didar_id":"3155","title":"معامله سوم 9102121228 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9102121228","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فریدونیان","existing_deal":"YES","existing_deal_id":"local_699b127371b638.63924387","existing_deal_status":"Pending","server_time":"2026-04-05 13:04:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 13:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:08] [INFO] Deal success processed {"contact_id":"3155","person_name":"فریدونیان","products_count":1}
[2026-04-05 13:04:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b127371b638.63924387","contact_id":"3155","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9102121228 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-05 13:04:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 13:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:09] [INFO] Checking activity reminders 
[2026-04-05 13:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:04:17] [INFO] Checking activity reminders 
[2026-04-05 13:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:04:25] [INFO] Lead update received {"contact_id":"3155","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"3155"}
[2026-04-05 13:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3155","person_id":"14545"}
[2026-04-05 13:04:39] [INFO] Checking activity reminders 
[2026-04-05 13:04:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:04:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:04:47] [INFO] Checking activity reminders 
[2026-04-05 13:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:05:09] [INFO] Checking activity reminders 
[2026-04-05 13:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:05:17] [INFO] Checking activity reminders 
[2026-04-05 13:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:05:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:05:39] [INFO] Checking activity reminders 
[2026-04-05 13:05:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:05:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:05:47] [INFO] Checking activity reminders 
[2026-04-05 13:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:06:09] [INFO] Checking activity reminders 
[2026-04-05 13:06:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:06:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:06:17] [INFO] Checking activity reminders 
[2026-04-05 13:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:06:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:06:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:06:32] [INFO] generateDealTitle result {"contact_id":"4040","person_name":"فاطمه منصوری","mobile":"9365377130","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9365377130"}
[2026-04-05 13:06:39] [INFO] Checking activity reminders 
[2026-04-05 13:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:06:47] [INFO] Checking activity reminders 
[2026-04-05 13:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:06:48] [INFO] Checking activity reminders 
[2026-04-05 13:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:07:09] [INFO] Checking activity reminders 
[2026-04-05 13:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:07:17] [INFO] Checking activity reminders 
[2026-04-05 13:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:07:39] [INFO] Checking activity reminders 
[2026-04-05 13:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:07:47] [INFO] Checking activity reminders 
[2026-04-05 13:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:11] [INFO] Checking activity reminders 
[2026-04-05 13:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:16] [INFO] Checking activity reminders 
[2026-04-05 13:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:18] [INFO] Checking activity reminders 
[2026-04-05 13:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 13:08:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 13:08:41] [INFO] Checking activity reminders 
[2026-04-05 13:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:46] [INFO] Checking activity reminders 
[2026-04-05 13:08:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:48] [INFO] Checking activity reminders 
[2026-04-05 13:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11360","person_id":"12223"}
[2026-04-05 13:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11330","person_id":"17742"}
[2026-04-05 13:08:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9112","deal_id":"local_69d224b65a5116.94553415","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 13:08:56","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 13:08:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:08:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9112","is_new_deal":false}
[2026-04-05 13:08:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:08:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:08:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:08:56] [INFO] getContactPrimaryPhone called {"contact_id":"9112"}
[2026-04-05 13:08:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:08:56] [INFO] getContactPrimaryPhone result {"contact_id":"9112","person_found":true,"primary_phone":"9158828113"}
[2026-04-05 13:08:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9158828113"}
[2026-04-05 13:08:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9158828113","contact_id":"9112","deal_id":"local_69d224b65a5116.94553415","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:08:56"}
[2026-04-05 13:08:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d224b65a5116.94553415","contact_id":"9112","existing_deal_found":true,"existing_contact_id":"9112","existing_title":"معامله سوم 9158828113 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:08:56"}
[2026-04-05 13:08:56] [INFO] DealController.save validated payments {"deal_id":"local_69d224b65a5116.94553415","contact_id":"9112","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 13:08:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9112","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 13:08:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d224b65a5116.94553415","contact_didar_id":"9112","title":"معامله سوم 9158828113 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9158828113","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سرشار","existing_deal":"YES","existing_deal_id":"local_69d224b65a5116.94553415","existing_deal_status":"Pending","server_time":"2026-04-05 13:08:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 13:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:08:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d224b65a5116.94553415","contact_id":"9112","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9158828113 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 13:08:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 13:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:08:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6717","person_id":"4511"}
[2026-04-05 13:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 13:09:11] [INFO] Checking activity reminders 
[2026-04-05 13:09:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:09:16] [INFO] Checking activity reminders 
[2026-04-05 13:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:09:18] [INFO] Checking activity reminders 
[2026-04-05 13:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-05 13:09:42] [INFO] Checking activity reminders 
[2026-04-05 13:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:09:46] [INFO] Checking activity reminders 
[2026-04-05 13:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:09:48] [INFO] Checking activity reminders 
[2026-04-05 13:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:12] [INFO] Checking activity reminders 
[2026-04-05 13:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:14] [INFO] Activity save request {"post_data":{"contact_id":"9112","deal_id":"local_69d224b65a5116.94553415","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خودرو و طلای فیزیکی سرمایه گذاری \r\nپرزنت 6 ماهه \/ پشتیبانی \r\nارسال لینک پرداخت \r\nدر خرید سکه ها خیلی متضرر شده \r\n","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 13:10:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9112","note_was_empty":true}
[2026-04-05 13:10:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"9112","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:14] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-05 13:10:14] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-05 13:10:14] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-05 13:10:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224b65a5116.94553415","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-05 13:10:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d22dfe9f7fc0.64284890","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69d22dfe9f7fc0.64284890"}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:14] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-05 13:10:14] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-05 13:10:14] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-05 13:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-05 13:10:17] [INFO] Checking activity reminders 
[2026-04-05 13:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:18] [INFO] Checking activity reminders 
[2026-04-05 13:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:10:42] [INFO] Checking activity reminders 
[2026-04-05 13:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:47] [INFO] Checking activity reminders 
[2026-04-05 13:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:10:48] [INFO] Checking activity reminders 
[2026-04-05 13:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:13] [INFO] Checking activity reminders 
[2026-04-05 13:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:17] [INFO] Checking activity reminders 
[2026-04-05 13:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:18] [INFO] Checking activity reminders 
[2026-04-05 13:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:43] [INFO] Checking activity reminders 
[2026-04-05 13:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:47] [INFO] Checking activity reminders 
[2026-04-05 13:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:11:48] [INFO] Checking activity reminders 
[2026-04-05 13:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:12:17] [INFO] Checking activity reminders 
[2026-04-05 13:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:12:18] [INFO] Checking activity reminders 
[2026-04-05 13:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:12:48] [INFO] Checking activity reminders 
[2026-04-05 13:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:12:48] [INFO] Checking activity reminders 
[2026-04-05 13:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:13:18] [INFO] Checking activity reminders 
[2026-04-05 13:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:13:18] [INFO] Checking activity reminders 
[2026-04-05 13:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:13:41] [INFO] Checking activity reminders 
[2026-04-05 13:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:13:48] [INFO] Checking activity reminders 
[2026-04-05 13:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:13:48] [INFO] Checking activity reminders 
[2026-04-05 13:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:14:18] [INFO] Checking activity reminders 
[2026-04-05 13:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:14:18] [INFO] Checking activity reminders 
[2026-04-05 13:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:14:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:14:43] [INFO] Checking activity reminders 
[2026-04-05 13:14:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:14:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:14:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:14:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:14:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:14:48] [INFO] Checking activity reminders 
[2026-04-05 13:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:14:48] [INFO] Checking activity reminders 
[2026-04-05 13:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:14] [INFO] Checking activity reminders 
[2026-04-05 13:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:18] [INFO] Checking activity reminders 
[2026-04-05 13:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:19] [INFO] Checking activity reminders 
[2026-04-05 13:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:15:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:15:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:15:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:15:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:15:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:15:44] [INFO] Checking activity reminders 
[2026-04-05 13:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:48] [INFO] Checking activity reminders 
[2026-04-05 13:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:49] [INFO] Checking activity reminders 
[2026-04-05 13:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:15:53] [INFO] Lead update received {"contact_id":"21415","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:15:53] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21415"}
[2026-04-05 13:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:16:14] [INFO] Checking activity reminders 
[2026-04-05 13:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:16:18] [INFO] Checking activity reminders 
[2026-04-05 13:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:16:19] [INFO] Checking activity reminders 
[2026-04-05 13:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:16:48] [INFO] Checking activity reminders 
[2026-04-05 13:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:16:49] [INFO] Checking activity reminders 
[2026-04-05 13:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:17:18] [INFO] Checking activity reminders 
[2026-04-05 13:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:17:19] [INFO] Checking activity reminders 
[2026-04-05 13:17:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:17:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:17:49] [INFO] Checking activity reminders 
[2026-04-05 13:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:17:49] [INFO] Checking activity reminders 
[2026-04-05 13:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:18:19] [INFO] Checking activity reminders 
[2026-04-05 13:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:18:19] [INFO] Checking activity reminders 
[2026-04-05 13:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:18:49] [INFO] Checking activity reminders 
[2026-04-05 13:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:18:49] [INFO] Checking activity reminders 
[2026-04-05 13:18:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:18:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:19:19] [INFO] Checking activity reminders 
[2026-04-05 13:19:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:19:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:19:19] [INFO] Checking activity reminders 
[2026-04-05 13:19:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:19:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:19:49] [INFO] Checking activity reminders 
[2026-04-05 13:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:19:50] [INFO] Checking activity reminders 
[2026-04-05 13:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:19] [INFO] Checking activity reminders 
[2026-04-05 13:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:20] [INFO] Checking activity reminders 
[2026-04-05 13:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:21] [INFO] Checking activity reminders 
[2026-04-05 13:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:20:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:20:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:20:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4480","person_id":"11253"}
[2026-04-05 13:20:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4480","person_id":"11253"}
[2026-04-05 13:20:49] [INFO] Checking activity reminders 
[2026-04-05 13:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:50] [INFO] Checking activity reminders 
[2026-04-05 13:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:20:51] [INFO] Checking activity reminders 
[2026-04-05 13:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:21:19] [INFO] Checking activity reminders 
[2026-04-05 13:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:21:20] [INFO] Checking activity reminders 
[2026-04-05 13:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:21:22] [INFO] Checking activity reminders 
[2026-04-05 13:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:21:49] [INFO] Checking activity reminders 
[2026-04-05 13:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:21:52] [INFO] Checking activity reminders 
[2026-04-05 13:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:22:20] [INFO] Checking activity reminders 
[2026-04-05 13:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:22:22] [INFO] Checking activity reminders 
[2026-04-05 13:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:22:50] [INFO] Checking activity reminders 
[2026-04-05 13:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:22:52] [INFO] Checking activity reminders 
[2026-04-05 13:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:20] [INFO] Checking activity reminders 
[2026-04-05 13:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:22] [INFO] Checking activity reminders 
[2026-04-05 13:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:50] [INFO] Checking activity reminders 
[2026-04-05 13:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:50] [INFO] Checking activity reminders 
[2026-04-05 13:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:52] [INFO] Checking activity reminders 
[2026-04-05 13:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:23:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 13:23:55","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 13:23:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:23:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","is_new_deal":false}
[2026-04-05 13:23:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 13:23:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 13:23:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 13:23:55] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_100"}
[2026-04-05 13:23:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:23:55] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_100","person_found":true,"primary_phone":"9141034212"}
[2026-04-05 13:23:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141034212"}
[2026-04-05 13:23:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141034212","contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:23:55"}
[2026-04-05 13:23:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_100","existing_title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:23:55"}
[2026-04-05 13:23:55] [INFO] DealController.save validated payments {"deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 13:23:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_100","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 13:23:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d210b11b2196.48242971","contact_didar_id":"local_1403_09_26_100","title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9141034212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصیرزاده","existing_deal":"YES","existing_deal_id":"local_69d210b11b2196.48242971","existing_deal_status":"Pending","server_time":"2026-04-05 13:23:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 13:23:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:23:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 13:23:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 13:23:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:20] [INFO] Checking activity reminders 
[2026-04-05 13:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:20] [INFO] Checking activity reminders 
[2026-04-05 13:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:22] [INFO] Checking activity reminders 
[2026-04-05 13:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:50] [INFO] Checking activity reminders 
[2026-04-05 13:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:50] [INFO] Checking activity reminders 
[2026-04-05 13:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:52] [INFO] Checking activity reminders 
[2026-04-05 13:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:24:54] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \r\nپیامک و پیام در بله ارسال شد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 13:24:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_100","note_was_empty":true}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:54] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered","force":false}
[2026-04-05 13:24:54] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered"}
[2026-04-05 13:24:54] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_100"}
[2026-04-05 13:24:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d210b11b2196.48242971","stage":"تماس پیگیری","status_change":null}
[2026-04-05 13:24:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d2316e200a74.55555226","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69d2316e200a74.55555226"}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:24:54] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered","force":false}
[2026-04-05 13:24:54] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered"}
[2026-04-05 13:24:54] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_100"}
[2026-04-05 13:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-05 13:25:20] [INFO] Checking activity reminders 
[2026-04-05 13:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:25:20] [INFO] Checking activity reminders 
[2026-04-05 13:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:25:22] [INFO] Checking activity reminders 
[2026-04-05 13:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:25:50] [INFO] Checking activity reminders 
[2026-04-05 13:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:25:50] [INFO] Checking activity reminders 
[2026-04-05 13:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:25:52] [INFO] Checking activity reminders 
[2026-04-05 13:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:20] [INFO] Checking activity reminders 
[2026-04-05 13:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:20] [INFO] Checking activity reminders 
[2026-04-05 13:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:22] [INFO] Checking activity reminders 
[2026-04-05 13:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:50] [INFO] Checking activity reminders 
[2026-04-05 13:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:50] [INFO] Checking activity reminders 
[2026-04-05 13:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:52] [INFO] Checking activity reminders 
[2026-04-05 13:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:26:54] [INFO] Checking activity reminders 
[2026-04-05 13:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:20] [INFO] Checking activity reminders 
[2026-04-05 13:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:22] [INFO] Checking activity reminders 
[2026-04-05 13:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:24] [INFO] Checking activity reminders 
[2026-04-05 13:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:50] [INFO] Checking activity reminders 
[2026-04-05 13:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:52] [INFO] Checking activity reminders 
[2026-04-05 13:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:27:54] [INFO] Checking activity reminders 
[2026-04-05 13:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:20] [INFO] Checking activity reminders 
[2026-04-05 13:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:22] [INFO] Checking activity reminders 
[2026-04-05 13:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:24] [INFO] Checking activity reminders 
[2026-04-05 13:28:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:50] [INFO] Checking activity reminders 
[2026-04-05 13:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:53] [INFO] Checking activity reminders 
[2026-04-05 13:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:28:54] [INFO] Checking activity reminders 
[2026-04-05 13:28:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:28:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:21] [INFO] Checking activity reminders 
[2026-04-05 13:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:23] [INFO] Checking activity reminders 
[2026-04-05 13:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:24] [INFO] Checking activity reminders 
[2026-04-05 13:29:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:51] [INFO] Checking activity reminders 
[2026-04-05 13:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:53] [INFO] Checking activity reminders 
[2026-04-05 13:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:29:55] [INFO] Checking activity reminders 
[2026-04-05 13:29:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:29:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10894","person_id":"20755"}
[2026-04-05 13:30:15] [INFO] Activity save request {"post_data":{"contact_id":"21415","deal_id":"local_69d22400afcc19.74863539","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کامند خصوصی عسلویه \/ بیشتر خودرو کار میکرده\r\nتارا . دنا . \r\n207 سواری \r\nنقدینگی 700 ت \r\nطلا رو 21 خریده ماشین خوش قیمت خریده 19 فروخته \/ \r\nکانال 79\/ 6ماهه 39ت تا 2:30 اطلاع \r\nتکلیفش مشخص نیست دید دادم ذهنیت دادم مجاب شد اطلاع بده \r\n","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 13:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 13:30:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 13:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21415","note_was_empty":true}
[2026-04-05 13:30:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"21415","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 13:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:15] [INFO] Updating virtual stage {"contact_id":"21415","stage_name":"deal_registered","force":false}
[2026-04-05 13:30:15] [INFO] Virtual stage successfully saved {"contact_id":"21415","stage_name":"deal_registered"}
[2026-04-05 13:30:15] [INFO] Virtual stage updated after activity save {"contact_id":"21415"}
[2026-04-05 13:30:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22400afcc19.74863539","stage":"تماس پیگیری","status_change":null}
[2026-04-05 13:30:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d232afe47b04.57939488","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 13:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d232afe47b04.57939488"}
[2026-04-05 13:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:15] [INFO] Updating virtual stage {"contact_id":"21415","stage_name":"deal_registered","force":false}
[2026-04-05 13:30:15] [INFO] Virtual stage successfully saved {"contact_id":"21415","stage_name":"deal_registered"}
[2026-04-05 13:30:15] [INFO] Virtual stage updated after activity save {"contact_id":"21415"}
[2026-04-05 13:30:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-05 13:30:21] [INFO] Checking activity reminders 
[2026-04-05 13:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:23] [INFO] Checking activity reminders 
[2026-04-05 13:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:25] [INFO] Checking activity reminders 
[2026-04-05 13:30:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:30:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:30:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:30:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:30:51] [INFO] Checking activity reminders 
[2026-04-05 13:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:53] [INFO] Checking activity reminders 
[2026-04-05 13:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:30:55] [INFO] Checking activity reminders 
[2026-04-05 13:30:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:30:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:21] [INFO] Checking activity reminders 
[2026-04-05 13:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:31:23] [INFO] Checking activity reminders 
[2026-04-05 13:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:25] [INFO] Checking activity reminders 
[2026-04-05 13:31:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:51] [INFO] Checking activity reminders 
[2026-04-05 13:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:52] [INFO] Lead update received {"contact_id":"local_69d2257aea1c66.58004540","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:31:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d2257aea1c66.58004540"}
[2026-04-05 13:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:31:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:31:54] [INFO] Checking activity reminders 
[2026-04-05 13:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:55] [INFO] Checking activity reminders 
[2026-04-05 13:31:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:31:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:31:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-05 13:32:10] [INFO] Activity save request {"post_data":{"contact_id":"local_69d2257aea1c66.58004540","deal_id":"local_69d2257af1e9a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"باباشو میبرد دکتر ساعت 4 تماس","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 13:32:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d2257aea1c66.58004540","note_was_empty":true}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:10] [INFO] Updating virtual stage {"contact_id":"local_69d2257aea1c66.58004540","stage_name":"new","force":false}
[2026-04-05 13:32:10] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2257aea1c66.58004540","stage_name":"new"}
[2026-04-05 13:32:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2257aea1c66.58004540"}
[2026-04-05 13:32:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2257af1e9a","stage":"تماس پیگیری","status_change":null}
[2026-04-05 13:32:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d233221bc0a3.71314536","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d233221bc0a3.71314536"}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:10] [INFO] Updating virtual stage {"contact_id":"local_69d2257aea1c66.58004540","stage_name":"deal_registered","force":false}
[2026-04-05 13:32:10] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2257aea1c66.58004540","stage_name":"deal_registered"}
[2026-04-05 13:32:10] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2257aea1c66.58004540"}
[2026-04-05 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2257aea1c66.58004540","person_id":"21983"}
[2026-04-05 13:32:21] [INFO] Checking activity reminders 
[2026-04-05 13:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:24] [INFO] Checking activity reminders 
[2026-04-05 13:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:25] [INFO] Checking activity reminders 
[2026-04-05 13:32:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:32] [INFO] Checking activity reminders 
[2026-04-05 13:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:51] [INFO] Checking activity reminders 
[2026-04-05 13:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:55] [INFO] Checking activity reminders 
[2026-04-05 13:32:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:32:55] [INFO] Checking activity reminders 
[2026-04-05 13:32:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:32:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:03] [INFO] Checking activity reminders 
[2026-04-05 13:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:33:21] [INFO] Checking activity reminders 
[2026-04-05 13:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:25] [INFO] Checking activity reminders 
[2026-04-05 13:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:33] [INFO] Checking activity reminders 
[2026-04-05 13:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:51] [INFO] Checking activity reminders 
[2026-04-05 13:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:55] [INFO] Checking activity reminders 
[2026-04-05 13:33:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:33:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-05 13:34:03] [INFO] Checking activity reminders 
[2026-04-05 13:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:34:21] [INFO] Checking activity reminders 
[2026-04-05 13:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:34:26] [INFO] Checking activity reminders 
[2026-04-05 13:34:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:34:33] [INFO] Checking activity reminders 
[2026-04-05 13:34:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:34:51] [INFO] Checking activity reminders 
[2026-04-05 13:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:34:56] [INFO] Checking activity reminders 
[2026-04-05 13:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:03] [INFO] Checking activity reminders 
[2026-04-05 13:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:22] [INFO] Checking activity reminders 
[2026-04-05 13:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:26] [INFO] Checking activity reminders 
[2026-04-05 13:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:33] [INFO] Checking activity reminders 
[2026-04-05 13:35:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:52] [INFO] Checking activity reminders 
[2026-04-05 13:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:52] [INFO] Checking activity reminders 
[2026-04-05 13:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-05 13:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-05 13:35:54] [INFO] generateDealTitle result {"contact_id":"2675","person_name":"پارسایی پارسایی","mobile":"9399745818","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9399745818"}
[2026-04-05 13:35:56] [INFO] Checking activity reminders 
[2026-04-05 13:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:03] [INFO] Checking activity reminders 
[2026-04-05 13:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:22] [INFO] Checking activity reminders 
[2026-04-05 13:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:25] [INFO] Checking activity reminders 
[2026-04-05 13:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:26] [INFO] Checking activity reminders 
[2026-04-05 13:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:33] [INFO] Lead update received {"contact_id":"21147","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:36:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:36:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:36:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21147"}
[2026-04-05 13:36:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:36:33] [INFO] Checking activity reminders 
[2026-04-05 13:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:52] [INFO] Checking activity reminders 
[2026-04-05 13:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:56] [INFO] Checking activity reminders 
[2026-04-05 13:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:36:59] [INFO] Checking activity reminders 
[2026-04-05 13:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:03] [INFO] Checking activity reminders 
[2026-04-05 13:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:19] [INFO] Checking activity reminders 
[2026-04-05 13:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:22] [INFO] Checking activity reminders 
[2026-04-05 13:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:26] [INFO] Checking activity reminders 
[2026-04-05 13:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4225","person_id":"8754"}
[2026-04-05 13:37:34] [INFO] Checking activity reminders 
[2026-04-05 13:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:49] [INFO] Checking activity reminders 
[2026-04-05 13:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:52] [INFO] Checking activity reminders 
[2026-04-05 13:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:37:56] [INFO] Checking activity reminders 
[2026-04-05 13:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:04] [INFO] Checking activity reminders 
[2026-04-05 13:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:22] [INFO] Checking activity reminders 
[2026-04-05 13:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:26] [INFO] Checking activity reminders 
[2026-04-05 13:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:34] [INFO] Checking activity reminders 
[2026-04-05 13:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:45] [INFO] Checking activity reminders 
[2026-04-05 13:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:52] [INFO] Checking activity reminders 
[2026-04-05 13:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:38:56] [INFO] Checking activity reminders 
[2026-04-05 13:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:02] [INFO] Checking activity reminders 
[2026-04-05 13:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:04] [INFO] Checking activity reminders 
[2026-04-05 13:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12689","person_id":"4596"}
[2026-04-05 13:39:22] [INFO] Checking activity reminders 
[2026-04-05 13:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:26] [INFO] Checking activity reminders 
[2026-04-05 13:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:39:35] [INFO] Checking activity reminders 
[2026-04-05 13:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:43] [INFO] Lead update received {"contact_id":"21147","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:39:43] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21147"}
[2026-04-05 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:39:52] [INFO] Checking activity reminders 
[2026-04-05 13:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:39:57] [INFO] Checking activity reminders 
[2026-04-05 13:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:05] [INFO] Checking activity reminders 
[2026-04-05 13:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:22] [INFO] Checking activity reminders 
[2026-04-05 13:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:23] [INFO] Checking activity reminders 
[2026-04-05 13:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:27] [INFO] Checking activity reminders 
[2026-04-05 13:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:35] [INFO] Checking activity reminders 
[2026-04-05 13:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:52] [INFO] Checking activity reminders 
[2026-04-05 13:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:40:57] [INFO] Checking activity reminders 
[2026-04-05 13:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:00] [INFO] Checking activity reminders 
[2026-04-05 13:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:05] [INFO] Checking activity reminders 
[2026-04-05 13:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:19] [INFO] Activity save request {"post_data":{"contact_id":"21147","deal_id":"local_69d222b5bf78f7.66883481","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"کانال 404 زمتون عضو شده سی ار ام اکسل ثبت بوده فعالیت ها اینجا مثل خیلی از فعالیت های دیگه نیست \r\nتماس تمدید عدم پاسخ ارسال پیامک پیگیری \/ ","activity_duration":"0","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 13:41:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21147","note_was_empty":true}
[2026-04-05 13:41:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"21147","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:19] [INFO] Updating virtual stage {"contact_id":"21147","stage_name":"deal_registered","force":false}
[2026-04-05 13:41:19] [INFO] Virtual stage successfully saved {"contact_id":"21147","stage_name":"deal_registered"}
[2026-04-05 13:41:19] [INFO] Virtual stage updated after activity save {"contact_id":"21147"}
[2026-04-05 13:41:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d222b5bf78f7.66883481","stage":"تماس پیگیری","status_change":null}
[2026-04-05 13:41:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d235478fe1c6.48641117","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d235478fe1c6.48641117"}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:19] [INFO] Updating virtual stage {"contact_id":"21147","stage_name":"deal_registered","force":false}
[2026-04-05 13:41:19] [INFO] Virtual stage successfully saved {"contact_id":"21147","stage_name":"deal_registered"}
[2026-04-05 13:41:19] [INFO] Virtual stage updated after activity save {"contact_id":"21147"}
[2026-04-05 13:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-05 13:41:23] [INFO] Checking activity reminders 
[2026-04-05 13:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:27] [INFO] Checking activity reminders 
[2026-04-05 13:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:35] [INFO] Checking activity reminders 
[2026-04-05 13:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:53] [INFO] Checking activity reminders 
[2026-04-05 13:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:57] [INFO] Checking activity reminders 
[2026-04-05 13:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:41:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-05 13:41:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-05 13:42:23] [INFO] Checking activity reminders 
[2026-04-05 13:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:42:27] [INFO] Checking activity reminders 
[2026-04-05 13:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:42:53] [INFO] Checking activity reminders 
[2026-04-05 13:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:42:57] [INFO] Checking activity reminders 
[2026-04-05 13:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:02] [INFO] Checking activity reminders 
[2026-04-05 13:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:23] [INFO] Checking activity reminders 
[2026-04-05 13:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:27] [INFO] Checking activity reminders 
[2026-04-05 13:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:32] [INFO] Checking activity reminders 
[2026-04-05 13:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12689","person_id":"4596"}
[2026-04-05 13:43:53] [INFO] Checking activity reminders 
[2026-04-05 13:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:43:57] [INFO] Checking activity reminders 
[2026-04-05 13:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:44:23] [INFO] Checking activity reminders 
[2026-04-05 13:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:44:27] [INFO] Checking activity reminders 
[2026-04-05 13:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:44:53] [INFO] Checking activity reminders 
[2026-04-05 13:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:44:57] [INFO] Checking activity reminders 
[2026-04-05 13:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:45:23] [INFO] Checking activity reminders 
[2026-04-05 13:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:45:28] [INFO] Checking activity reminders 
[2026-04-05 13:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:45:53] [INFO] Checking activity reminders 
[2026-04-05 13:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:45:54] [INFO] Checking activity reminders 
[2026-04-05 13:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:45:58] [INFO] Checking activity reminders 
[2026-04-05 13:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:05] [INFO] Checking activity reminders 
[2026-04-05 13:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:46:25] [INFO] Checking activity reminders 
[2026-04-05 13:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:28] [INFO] Checking activity reminders 
[2026-04-05 13:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:30] [INFO] Checking activity reminders 
[2026-04-05 13:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:46:38] [INFO] Checking activity reminders 
[2026-04-05 13:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:46:45] [INFO] Lead update received {"contact_id":"2861","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 13:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:46:45] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2861"}
[2026-04-05 13:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:46:55] [INFO] Checking activity reminders 
[2026-04-05 13:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:47:25] [INFO] Checking activity reminders 
[2026-04-05 13:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:30] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:47:55] [INFO] Checking activity reminders 
[2026-04-05 13:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:48:25] [INFO] Checking activity reminders 
[2026-04-05 13:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:48:55] [INFO] Checking activity reminders 
[2026-04-05 13:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:49:25] [INFO] Checking activity reminders 
[2026-04-05 13:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:49:56] [INFO] Checking activity reminders 
[2026-04-05 13:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:50:26] [INFO] Checking activity reminders 
[2026-04-05 13:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:50:52] [INFO] Checking activity reminders 
[2026-04-05 13:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:50:56] [INFO] Checking activity reminders 
[2026-04-05 13:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:15] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:51:15] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"check_reminders"}
[2026-04-05 13:51:15] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:51:20] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 13:51:20] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 13:51:20] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 13:51:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:51:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:51:23] [INFO] Checking activity reminders 
[2026-04-05 13:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:26] [INFO] Checking activity reminders 
[2026-04-05 13:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:53] [INFO] Checking activity reminders 
[2026-04-05 13:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:56] [INFO] Checking activity reminders 
[2026-04-05 13:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:57] [INFO] Checking activity reminders 
[2026-04-05 13:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:51:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 13:51:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 13:51:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 13:52:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"4040","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 13:52:16","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"4040","is_new_deal":true}
[2026-04-05 13:52:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:52:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:52:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 13:52:16] [INFO] getContactPrimaryPhone called {"contact_id":"4040"}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:16] [INFO] getContactPrimaryPhone result {"contact_id":"4040","person_found":true,"primary_phone":"9365377130"}
[2026-04-05 13:52:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365377130"}
[2026-04-05 13:52:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365377130","contact_id":"4040","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 13:52:16"}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:16] [INFO] generateDealTitle result {"contact_id":"4040","person_name":"فاطمه منصوری","mobile":"9365377130","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9365377130"}
[2026-04-05 13:52:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4040","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 13:52:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4040","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 13:52:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4040","title":"معامله دوم 9365377130 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9365377130","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فاطمه منصوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 13:52:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:16] [INFO] Deal success processed {"contact_id":"4040","person_name":"فاطمه منصوری","products_count":1}
[2026-04-05 13:52:16] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 13:52:16] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4040","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9365377130 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-05 13:52:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 13:52:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 13:52:23] [INFO] Checking activity reminders 
[2026-04-05 13:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:52:26] [INFO] Checking activity reminders 
[2026-04-05 13:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:52:28] [INFO] Checking activity reminders 
[2026-04-05 13:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b92e89d8be69.70262482","person_id":"21894"}
[2026-04-05 13:52:53] [INFO] Checking activity reminders 
[2026-04-05 13:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:52:56] [INFO] Checking activity reminders 
[2026-04-05 13:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:52:58] [INFO] Checking activity reminders 
[2026-04-05 13:52:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:52:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 13:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 13:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 13:53:23] [INFO] Checking activity reminders 
[2026-04-05 13:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:26] [INFO] Checking activity reminders 
[2026-04-05 13:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:29] [INFO] Checking activity reminders 
[2026-04-05 13:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کارشناسی حضوری","contact_id":"local_697897aaa47eb0.87826667","deal_id":"local_697897aaa55ee","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 13:53:43","session_id":"9pc2icgnqj7qjikr2bptpl08di"}
[2026-04-05 13:53:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کارشناسی حضوری","contact_id":"local_697897aaa47eb0.87826667","is_new_deal":false}
[2026-04-05 13:53:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کارشناسی حضوری"}
[2026-04-05 13:53:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کارشناسی حضوری"}
[2026-04-05 13:53:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کارشناسی حضوری"}
[2026-04-05 13:53:43] [INFO] getContactPrimaryPhone called {"contact_id":"local_697897aaa47eb0.87826667"}
[2026-04-05 13:53:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:43] [INFO] getContactPrimaryPhone result {"contact_id":"local_697897aaa47eb0.87826667","person_found":true,"primary_phone":"1232312312"}
[2026-04-05 13:53:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1232312312"}
[2026-04-05 13:53:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1232312312","contact_id":"local_697897aaa47eb0.87826667","deal_id":"local_697897aaa55ee","is_new_deal":false,"incoming_title":"کارشناسی حضوری","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 13:53:43"}
[2026-04-05 13:53:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_697897aaa55ee","contact_id":"local_697897aaa47eb0.87826667","existing_deal_found":true,"existing_contact_id":"local_697897aaa47eb0.87826667","existing_title":"معامله اول 1232312312","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 13:53:43"}
[2026-04-05 13:53:43] [INFO] DealController.save validated payments {"deal_id":"local_697897aaa55ee","contact_id":"local_697897aaa47eb0.87826667","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 13:53:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_697897aaa47eb0.87826667","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 13:53:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_697897aaa55ee","contact_didar_id":"local_697897aaa47eb0.87826667","title":"معامله اول 1232312312 | کارشناسی حضوری","base_title_used":"معامله اول 1232312312","services_text":"کارشناسی حضوری","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":10000000,"payment_amount":0,"payments_present":false,"requested_services":["کارشناسی حضوری"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید 12","existing_deal":"YES","existing_deal_id":"local_697897aaa55ee","existing_deal_status":"Pending","server_time":"2026-04-05 13:53:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 13:53:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_697897aaa55ee","contact_id":"local_697897aaa47eb0.87826667","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 1232312312 | کارشناسی حضوری","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":10000000,"payment_amount":0,"server_time":"2026-04-05 13:53:43","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 13:53:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 13:53:53] [INFO] Checking activity reminders 
[2026-04-05 13:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:56] [INFO] Checking activity reminders 
[2026-04-05 13:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:53:57] [INFO] Checking activity reminders 
[2026-04-05 13:53:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:53:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:54:23] [INFO] Checking activity reminders 
[2026-04-05 13:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:54:53] [INFO] Checking activity reminders 
[2026-04-05 13:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:55:44] [INFO] Checking activity reminders 
[2026-04-05 13:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:56:32] [INFO] Checking activity reminders 
[2026-04-05 13:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:56:34] [INFO] Checking activity reminders 
[2026-04-05 13:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:56:36] [INFO] Checking activity reminders 
[2026-04-05 13:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:57:06] [INFO] Checking activity reminders 
[2026-04-05 13:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:57:36] [INFO] Checking activity reminders 
[2026-04-05 13:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 13:58:54] [INFO] Checking activity reminders 
[2026-04-05 13:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 13:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:04:00] [INFO] Checking activity reminders 
[2026-04-05 14:04:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:04:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:04:30] [INFO] Checking activity reminders 
[2026-04-05 14:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 14:05:00] [INFO] Checking activity reminders 
[2026-04-05 14:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:05:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 14:05:12","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 14:05:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","is_new_deal":false}
[2026-04-05 14:05:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:05:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:05:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:05:12] [INFO] getContactPrimaryPhone called {"contact_id":"1117"}
[2026-04-05 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 14:05:12] [INFO] getContactPrimaryPhone result {"contact_id":"1117","person_found":true,"primary_phone":"9132966165"}
[2026-04-05 14:05:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132966165"}
[2026-04-05 14:05:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132966165","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:05:12"}
[2026-04-05 14:05:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","existing_deal_found":true,"existing_contact_id":"1117","existing_title":"معامله سوم 9132966165 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:05:12"}
[2026-04-05 14:05:12] [INFO] DealController.save validated payments {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 14:05:12] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1117","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 14:05:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f3d98db67.30310510","contact_didar_id":"1117","title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9132966165","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد سجادی","existing_deal":"YES","existing_deal_id":"local_69d20f3d98db67.30310510","existing_deal_status":"Pending","server_time":"2026-04-05 14:05:12","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 14:05:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-05 14:05:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 14:05:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-05 14:05:21] [INFO] Checking activity reminders 
[2026-04-05 14:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:06:24] [INFO] Checking activity reminders 
[2026-04-05 14:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:06:25] [INFO] Checking activity reminders 
[2026-04-05 14:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:06:27] [INFO] Checking activity reminders 
[2026-04-05 14:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:08:01] [INFO] Checking activity reminders 
[2026-04-05 14:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:08:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2861","deal_id":"17431","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 14:08:12","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 14:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:08:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2861","is_new_deal":false}
[2026-04-05 14:08:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 14:08:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 14:08:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 14:08:12] [INFO] getContactPrimaryPhone called {"contact_id":"2861"}
[2026-04-05 14:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:08:12] [INFO] getContactPrimaryPhone result {"contact_id":"2861","person_found":true,"primary_phone":"9179939177"}
[2026-04-05 14:08:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9179939177"}
[2026-04-05 14:08:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9179939177","contact_id":"2861","deal_id":"17431","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:08:12"}
[2026-04-05 14:08:12] [INFO] DealController.save existing deal lookup {"deal_id":"17431","contact_id":"2861","existing_deal_found":true,"existing_contact_id":"2861","existing_title":"معامله 9179939177","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:08:12"}
[2026-04-05 14:08:12] [INFO] DealController.save validated payments {"deal_id":"17431","contact_id":"2861","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-05 14:08:12] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2861","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 14:08:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"17431","contact_didar_id":"2861","title":"معامله 9179939177 | کانال VIP با پشتیبانی","base_title_used":"معامله 9179939177","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد امین بحری نژآد","existing_deal":"YES","existing_deal_id":"17431","existing_deal_status":"Pending","server_time":"2026-04-05 14:08:12","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 14:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:08:12] [INFO] Deal success processed {"contact_id":"2861","person_name":"محمد امین بحری نژآد","products_count":1}
[2026-04-05 14:08:12] [INFO] ensureDealProductsFromText: products synced {"deal_id":"17431","product_ids":[23]}
[2026-04-05 14:08:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"17431","contact_id":"2861","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله 9179939177 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-05 14:08:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 14:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:11:26] [INFO] Checking activity reminders 
[2026-04-05 14:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:11:56] [INFO] Checking activity reminders 
[2026-04-05 14:11:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:11:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:12:00] [INFO] Checking activity reminders 
[2026-04-05 14:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:12:04] [INFO] Checking activity reminders 
[2026-04-05 14:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:12:11] [INFO] Checking activity reminders 
[2026-04-05 14:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:12:41] [INFO] Checking activity reminders 
[2026-04-05 14:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:13:11] [INFO] Checking activity reminders 
[2026-04-05 14:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:13:30] [INFO] Checking activity reminders 
[2026-04-05 14:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:13:41] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:13:41] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-04-05 14:13:41] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-04-05 14:13:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 14:13:41] [INFO] Checking activity reminders 
[2026-04-05 14:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:14:11] [INFO] Checking activity reminders 
[2026-04-05 14:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:14:12] [INFO] Checking activity reminders 
[2026-04-05 14:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:14:41] [INFO] Checking activity reminders 
[2026-04-05 14:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:14:42] [INFO] Checking activity reminders 
[2026-04-05 14:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:15:12] [INFO] Checking activity reminders 
[2026-04-05 14:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:15:12] [INFO] Checking activity reminders 
[2026-04-05 14:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:15:42] [INFO] Checking activity reminders 
[2026-04-05 14:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:16:12] [INFO] Checking activity reminders 
[2026-04-05 14:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:16:42] [INFO] Checking activity reminders 
[2026-04-05 14:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:16:55] [INFO] Checking activity reminders 
[2026-04-05 14:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16402","person_id":"13903"}
[2026-04-05 14:17:12] [INFO] Checking activity reminders 
[2026-04-05 14:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:17:25] [INFO] Checking activity reminders 
[2026-04-05 14:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:17:42] [INFO] Checking activity reminders 
[2026-04-05 14:17:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:17:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:17:55] [INFO] Checking activity reminders 
[2026-04-05 14:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:18:12] [INFO] Checking activity reminders 
[2026-04-05 14:18:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:18:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:18:42] [INFO] Checking activity reminders 
[2026-04-05 14:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:19:12] [INFO] Checking activity reminders 
[2026-04-05 14:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:19:43] [INFO] Checking activity reminders 
[2026-04-05 14:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:20:13] [INFO] Checking activity reminders 
[2026-04-05 14:20:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:20:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:20:43] [INFO] Checking activity reminders 
[2026-04-05 14:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:21:13] [INFO] Checking activity reminders 
[2026-04-05 14:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:21:43] [INFO] Checking activity reminders 
[2026-04-05 14:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:22:13] [INFO] Checking activity reminders 
[2026-04-05 14:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:22:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15035","deal_id":"local_69d2100e4470e8.16765666","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 14:22:35","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 14:22:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:22:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15035","is_new_deal":false}
[2026-04-05 14:22:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:22:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:22:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 14:22:35] [INFO] getContactPrimaryPhone called {"contact_id":"15035"}
[2026-04-05 14:22:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:22:35] [INFO] getContactPrimaryPhone result {"contact_id":"15035","person_found":true,"primary_phone":"9135509182"}
[2026-04-05 14:22:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135509182"}
[2026-04-05 14:22:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135509182","contact_id":"15035","deal_id":"local_69d2100e4470e8.16765666","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:22:35"}
[2026-04-05 14:22:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2100e4470e8.16765666","contact_id":"15035","existing_deal_found":true,"existing_contact_id":"15035","existing_title":"معامله دوم 9135509182 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 14:22:35"}
[2026-04-05 14:22:35] [INFO] DealController.save validated payments {"deal_id":"local_69d2100e4470e8.16765666","contact_id":"15035","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 14:22:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15035","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 14:22:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2100e4470e8.16765666","contact_didar_id":"15035","title":"معامله دوم 9135509182 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9135509182","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا نصر آزادانی","existing_deal":"YES","existing_deal_id":"local_69d2100e4470e8.16765666","existing_deal_status":"Pending","server_time":"2026-04-05 14:22:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 14:22:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:22:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2100e4470e8.16765666","contact_id":"15035","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9135509182 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-05 14:22:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 14:22:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:22:44] [INFO] Checking activity reminders 
[2026-04-05 14:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:23:12] [INFO] Activity save request {"post_data":{"contact_id":"15035","deal_id":"local_69d2100e4470e8.16765666","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی چک داره \r\nفعلا 6 ماهه بدون پشتیبانی \r\nارسال پیامک\r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 14:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:14] [INFO] Checking activity reminders 
[2026-04-05 14:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:23:21] [INFO] Activity save request {"post_data":{"contact_id":"15035","deal_id":"local_69d2100e4470e8.16765666","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی چک داره \r\nفعلا 6 ماهه بدون پشتیبانی \r\nارسال پیامک\r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 14:23:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Activity save request {"post_data":{"contact_id":"15035","deal_id":"local_69d2100e4470e8.16765666","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"خیلی چک داره \r\nفعلا 6 ماهه بدون پشتیبانی \r\nارسال پیامک\r\n","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 14:23:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15035","note_was_empty":true}
[2026-04-05 14:23:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"15035","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Updating virtual stage {"contact_id":"15035","stage_name":"deal_registered","force":false}
[2026-04-05 14:23:30] [INFO] Virtual stage successfully saved {"contact_id":"15035","stage_name":"deal_registered"}
[2026-04-05 14:23:30] [INFO] Virtual stage updated after activity save {"contact_id":"15035"}
[2026-04-05 14:23:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2100e4470e8.16765666","stage":"تماس پیگیری","status_change":null}
[2026-04-05 14:23:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d23f2a5d50a3.50637407","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69d23f2a5d50a3.50637407"}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:30] [INFO] Updating virtual stage {"contact_id":"15035","stage_name":"deal_registered","force":false}
[2026-04-05 14:23:30] [INFO] Virtual stage successfully saved {"contact_id":"15035","stage_name":"deal_registered"}
[2026-04-05 14:23:30] [INFO] Virtual stage updated after activity save {"contact_id":"15035"}
[2026-04-05 14:23:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15035","person_id":"15980"}
[2026-04-05 14:23:44] [INFO] Checking activity reminders 
[2026-04-05 14:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:23:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 14:24:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 14:24:14] [INFO] Checking activity reminders 
[2026-04-05 14:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:24:44] [INFO] Checking activity reminders 
[2026-04-05 14:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:25:14] [INFO] Checking activity reminders 
[2026-04-05 14:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:25:44] [INFO] Checking activity reminders 
[2026-04-05 14:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:26:14] [INFO] Checking activity reminders 
[2026-04-05 14:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 14:26:32] [INFO] Checking activity reminders 
[2026-04-05 14:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:26:39] [INFO] Checking activity reminders 
[2026-04-05 14:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:26:44] [INFO] Checking activity reminders 
[2026-04-05 14:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:26:50] [INFO] Checking activity reminders 
[2026-04-05 14:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:27:20] [INFO] Checking activity reminders 
[2026-04-05 14:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:27:36] [INFO] Checking activity reminders 
[2026-04-05 14:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:27:50] [INFO] Checking activity reminders 
[2026-04-05 14:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:28:21] [INFO] Checking activity reminders 
[2026-04-05 14:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:28:51] [INFO] Checking activity reminders 
[2026-04-05 14:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:29:21] [INFO] Checking activity reminders 
[2026-04-05 14:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:29:51] [INFO] Checking activity reminders 
[2026-04-05 14:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:30:21] [INFO] Checking activity reminders 
[2026-04-05 14:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:30:51] [INFO] Checking activity reminders 
[2026-04-05 14:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:31:21] [INFO] Checking activity reminders 
[2026-04-05 14:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:31:51] [INFO] Checking activity reminders 
[2026-04-05 14:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:32:21] [INFO] Checking activity reminders 
[2026-04-05 14:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:32:51] [INFO] Checking activity reminders 
[2026-04-05 14:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:33:21] [INFO] Checking activity reminders 
[2026-04-05 14:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:33:51] [INFO] Checking activity reminders 
[2026-04-05 14:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:34:22] [INFO] Checking activity reminders 
[2026-04-05 14:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:34:52] [INFO] Checking activity reminders 
[2026-04-05 14:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:35:22] [INFO] Checking activity reminders 
[2026-04-05 14:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-05 14:35:51] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:52] [INFO] Checking activity reminders 
[2026-04-05 14:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:35:52] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:53] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:54] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:56] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:58] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:35:58] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 14:36:22] [INFO] Checking activity reminders 
[2026-04-05 14:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 14:36:52] [INFO] Checking activity reminders 
[2026-04-05 14:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 14:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:08:15] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:08:15] [INFO] Checking activity reminders 
[2026-04-05 15:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:08:15] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:08:15] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:08:45] [INFO] Checking activity reminders 
[2026-04-05 15:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:09:15] [INFO] Checking activity reminders 
[2026-04-05 15:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:09:18] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:09:18] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:09:18] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:09:45] [INFO] Checking activity reminders 
[2026-04-05 15:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:10:15] [INFO] Checking activity reminders 
[2026-04-05 15:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:10:46] [INFO] Checking activity reminders 
[2026-04-05 15:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:11:00] [INFO] Checking activity reminders 
[2026-04-05 15:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:11:02] [INFO] Checking activity reminders 
[2026-04-05 15:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:11:04] [INFO] Checking activity reminders 
[2026-04-05 15:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:11:34] [INFO] Checking activity reminders 
[2026-04-05 15:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:12:04] [INFO] Checking activity reminders 
[2026-04-05 15:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:12:34] [INFO] Checking activity reminders 
[2026-04-05 15:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:13:04] [INFO] Checking activity reminders 
[2026-04-05 15:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:13:35] [INFO] Checking activity reminders 
[2026-04-05 15:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:14:05] [INFO] Checking activity reminders 
[2026-04-05 15:14:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:14:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:14:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:14:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:14:19] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:14:35] [INFO] Checking activity reminders 
[2026-04-05 15:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:15:05] [INFO] Checking activity reminders 
[2026-04-05 15:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:15:35] [INFO] Checking activity reminders 
[2026-04-05 15:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:16:05] [INFO] Checking activity reminders 
[2026-04-05 15:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:16:35] [INFO] Checking activity reminders 
[2026-04-05 15:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:17:05] [INFO] Checking activity reminders 
[2026-04-05 15:17:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:17:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:17:21] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:17:21] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:17:21] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:17:35] [INFO] Checking activity reminders 
[2026-04-05 15:17:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:17:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:18:05] [INFO] Checking activity reminders 
[2026-04-05 15:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:18:17] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:18:17] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:18:17] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:18:36] [INFO] Checking activity reminders 
[2026-04-05 15:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:19:06] [INFO] Checking activity reminders 
[2026-04-05 15:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:19:14] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:19:14] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:19:36] [INFO] Checking activity reminders 
[2026-04-05 15:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:20:06] [INFO] Checking activity reminders 
[2026-04-05 15:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:20:36] [INFO] Checking activity reminders 
[2026-04-05 15:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:21:06] [INFO] Checking activity reminders 
[2026-04-05 15:21:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:21:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:21:43] [INFO] Checking activity reminders 
[2026-04-05 15:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:22:13] [INFO] Checking activity reminders 
[2026-04-05 15:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:22:44] [INFO] Checking activity reminders 
[2026-04-05 15:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:23:14] [INFO] Checking activity reminders 
[2026-04-05 15:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:23:15] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:15] [WARNING] Auth check failed - not authenticated {"session_id":"9pc2icgnqj7qjikr2bptpl08di","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:23:16] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 15:23:16] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 15:23:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:23:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:23:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:23:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:23:29] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"get_products"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"get_leads"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:31] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:33] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:34] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:34] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:35] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:35] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:35] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:36] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:36] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:36] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:37] [INFO] Activity type repair executed {"backup_path":"\/home\/hanafiv1\/cr.hanafi.vip\/latest db backup.sql","backup_activity_type_rows":81222,"current_broken_rows":1472,"matched_rows":1301,"updated_rows":0,"match_sources":{"stage":710,"lookup":590,"composite":1},"mode":"preview","preview":[{"id":28,"didar_activity_id":"0520dbbf-2323-4963-8f9b-c1cad4cdfb5e","old_title":"نامشخص","new_title":"تماس عدم پاسخ","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_no_answer"},{"id":29,"didar_activity_id":"a221add9-f849-4d90-8972-ac2e6393aa94","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_followup"},{"id":31,"didar_activity_id":"2ed96d8f-c23c-4236-bc7c-7c4767cc32d3","old_title":"نامشخص","new_title":"ناموفق","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"without_purchase"},{"id":36,"didar_activity_id":"face399d-039f-46a6-a82c-8f25a41e3762","old_title":"نامشخص","new_title":"تماس عدم پاسخ","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_no_answer"},{"id":37,"didar_activity_id":"308620a2-9077-4806-a058-f114d2d25b8a","old_title":"نامشخص","new_title":"برگزاری دوره","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"course_delivered"},{"id":38,"didar_activity_id":"f0dc47dd-184d-4c57-b548-da4fc6f82e02","old_title":"نامشخص","new_title":"پیگیری مانده حساب","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"payment_followup"},{"id":40,"didar_activity_id":"42ed8e5e-f1f3-409e-a621-1d28883f93b6","old_title":"نامشخص","new_title":"پرداخت","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"payment"},{"id":146,"didar_activity_id":"35473c02-4841-441f-ba70-b940bdb8ffb0","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":147,"didar_activity_id":"28f95ac1-3bd7-4be3-ad8b-365bf0b95ca4","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":148,"didar_activity_id":"702938ed-f555-420c-a320-52c53aff2fab","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":149,"didar_activity_id":"4efd68c8-4c8d-4757-98fe-84be37954af3","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":150,"didar_activity_id":"c08e00bb-803d-4782-afa9-edfaadeee644","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":151,"didar_activity_id":"a4bbc0f9-c0e5-4d6c-952f-89a19de678a0","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":152,"didar_activity_id":"19205e5f-2cf2-4c5d-93b2-c38ae961cd50","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":153,"didar_activity_id":"3b4031d7-230c-499e-8f3a-e13702f1561c","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":154,"didar_activity_id":"d24de3b4-7466-4114-84eb-dbad579c4bcc","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":155,"didar_activity_id":"dd1a2ea7-b1c8-45ce-b25c-4c4dbdf0134a","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":156,"didar_activity_id":"46d52591-f192-4736-97f7-290a00adb0bd","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":157,"didar_activity_id":"2c895e93-e347-426f-acb2-4b5be64454bd","old_title":"نامشخص","new_title":"ارسال لینک پرداخت","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"ارسال لینک پرداخت"},{"id":158,"didar_activity_id":"b3f0ae1f-2ee5-4092-b8d8-1e0d7aff87cd","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"}]}
[2026-04-05 15:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"get_leads"}
[2026-04-05 15:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"get_leads"}
[2026-04-05 15:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:39] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:44] [INFO] Checking activity reminders 
[2026-04-05 15:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:23:47] [INFO] Checking activity reminders 
[2026-04-05 15:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:23:52] [WARNING] Auth check failed - not authenticated {"session_id":"8uplalu7njkgiestoj66ptn36l","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:23:52] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-05 15:23:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:24:01] [INFO] Activity type repair executed {"backup_path":"\/home\/hanafiv1\/cr.hanafi.vip\/latest db backup.sql","backup_activity_type_rows":81222,"current_broken_rows":1472,"matched_rows":1301,"updated_rows":1301,"match_sources":{"stage":710,"lookup":590,"composite":1},"mode":"apply","preview":[{"id":28,"didar_activity_id":"0520dbbf-2323-4963-8f9b-c1cad4cdfb5e","old_title":"نامشخص","new_title":"تماس عدم پاسخ","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_no_answer"},{"id":29,"didar_activity_id":"a221add9-f849-4d90-8972-ac2e6393aa94","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_followup"},{"id":31,"didar_activity_id":"2ed96d8f-c23c-4236-bc7c-7c4767cc32d3","old_title":"نامشخص","new_title":"ناموفق","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"without_purchase"},{"id":36,"didar_activity_id":"face399d-039f-46a6-a82c-8f25a41e3762","old_title":"نامشخص","new_title":"تماس عدم پاسخ","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"contact_no_answer"},{"id":37,"didar_activity_id":"308620a2-9077-4806-a058-f114d2d25b8a","old_title":"نامشخص","new_title":"برگزاری دوره","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"course_delivered"},{"id":38,"didar_activity_id":"f0dc47dd-184d-4c57-b548-da4fc6f82e02","old_title":"نامشخص","new_title":"پیگیری مانده حساب","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"payment_followup"},{"id":40,"didar_activity_id":"42ed8e5e-f1f3-409e-a621-1d28883f93b6","old_title":"نامشخص","new_title":"پرداخت","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"payment"},{"id":146,"didar_activity_id":"35473c02-4841-441f-ba70-b940bdb8ffb0","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":147,"didar_activity_id":"28f95ac1-3bd7-4be3-ad8b-365bf0b95ca4","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":148,"didar_activity_id":"702938ed-f555-420c-a320-52c53aff2fab","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":149,"didar_activity_id":"4efd68c8-4c8d-4757-98fe-84be37954af3","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":150,"didar_activity_id":"c08e00bb-803d-4782-afa9-edfaadeee644","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":151,"didar_activity_id":"a4bbc0f9-c0e5-4d6c-952f-89a19de678a0","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":152,"didar_activity_id":"19205e5f-2cf2-4c5d-93b2-c38ae961cd50","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":153,"didar_activity_id":"3b4031d7-230c-499e-8f3a-e13702f1561c","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":154,"didar_activity_id":"d24de3b4-7466-4114-84eb-dbad579c4bcc","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":155,"didar_activity_id":"dd1a2ea7-b1c8-45ce-b25c-4c4dbdf0134a","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":156,"didar_activity_id":"46d52591-f192-4736-97f7-290a00adb0bd","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"},{"id":157,"didar_activity_id":"2c895e93-e347-426f-acb2-4b5be64454bd","old_title":"نامشخص","new_title":"ارسال لینک پرداخت","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"ارسال لینک پرداخت"},{"id":158,"didar_activity_id":"b3f0ae1f-2ee5-4092-b8d8-1e0d7aff87cd","old_title":"نامشخص","new_title":"تماس پیگیری","match_source":"stage","activity_type_id":"234abfe3-1df8-4e30-a5ed-f181f74d069a","stage":"تماس پیگیری"}]}
[2026-04-05 15:24:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:24:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:24:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:24:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:24:14] [INFO] Checking activity reminders 
[2026-04-05 15:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:17] [INFO] Checking activity reminders 
[2026-04-05 15:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:22] [INFO] Checking activity reminders 
[2026-04-05 15:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:45] [INFO] Checking activity reminders 
[2026-04-05 15:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:47] [INFO] Checking activity reminders 
[2026-04-05 15:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:52] [INFO] Checking activity reminders 
[2026-04-05 15:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:24:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6999bb457cd140.72890768","person_id":"21757"}
[2026-04-05 15:25:15] [INFO] Checking activity reminders 
[2026-04-05 15:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:25:17] [INFO] Checking activity reminders 
[2026-04-05 15:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:25:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:25:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:25:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:25:23] [INFO] Checking activity reminders 
[2026-04-05 15:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:25:28] [INFO] Activity save request {"post_data":{"contact_id":"843","deal_id":"local_69d0a8ec62c904.21083183","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا شرایط نداره 6ماه دوم احتمالا میاد","activity_duration":"10","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 15:25:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"843","note_was_empty":true}
[2026-04-05 15:25:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"843","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:28] [INFO] Updating virtual stage {"contact_id":"843","stage_name":"deal_registered","force":false}
[2026-04-05 15:25:28] [INFO] Virtual stage successfully saved {"contact_id":"843","stage_name":"deal_registered"}
[2026-04-05 15:25:28] [INFO] Virtual stage updated after activity save {"contact_id":"843"}
[2026-04-05 15:25:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a8ec62c904.21083183","stage":"تماس پیگیری","status_change":null}
[2026-04-05 15:25:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d24db04396a3.80717489","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69d24db04396a3.80717489"}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:28] [INFO] Updating virtual stage {"contact_id":"843","stage_name":"deal_registered","force":false}
[2026-04-05 15:25:28] [INFO] Virtual stage successfully saved {"contact_id":"843","stage_name":"deal_registered"}
[2026-04-05 15:25:28] [INFO] Virtual stage updated after activity save {"contact_id":"843"}
[2026-04-05 15:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"843","person_id":"9984"}
[2026-04-05 15:25:45] [INFO] Checking activity reminders 
[2026-04-05 15:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:25:47] [INFO] Checking activity reminders 
[2026-04-05 15:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:25:53] [INFO] Checking activity reminders 
[2026-04-05 15:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:15] [INFO] Checking activity reminders 
[2026-04-05 15:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:17] [INFO] Checking activity reminders 
[2026-04-05 15:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:23] [INFO] Checking activity reminders 
[2026-04-05 15:26:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:45] [INFO] Checking activity reminders 
[2026-04-05 15:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:47] [INFO] Checking activity reminders 
[2026-04-05 15:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:26:53] [INFO] Checking activity reminders 
[2026-04-05 15:26:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:26:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:15] [INFO] Checking activity reminders 
[2026-04-05 15:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:17] [INFO] Checking activity reminders 
[2026-04-05 15:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:23] [INFO] Checking activity reminders 
[2026-04-05 15:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:45] [INFO] Checking activity reminders 
[2026-04-05 15:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:50] [INFO] Checking activity reminders 
[2026-04-05 15:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:27:53] [INFO] Checking activity reminders 
[2026-04-05 15:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:15] [INFO] Checking activity reminders 
[2026-04-05 15:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:20] [INFO] Checking activity reminders 
[2026-04-05 15:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:23] [INFO] Checking activity reminders 
[2026-04-05 15:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:28:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:28:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:28:46] [INFO] Checking activity reminders 
[2026-04-05 15:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:50] [INFO] Checking activity reminders 
[2026-04-05 15:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:28:53] [INFO] Checking activity reminders 
[2026-04-05 15:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:29:16] [INFO] Checking activity reminders 
[2026-04-05 15:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:29:23] [INFO] Checking activity reminders 
[2026-04-05 15:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:29:46] [INFO] Checking activity reminders 
[2026-04-05 15:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:29:53] [INFO] Checking activity reminders 
[2026-04-05 15:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:30:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:30:16] [INFO] Checking activity reminders 
[2026-04-05 15:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:30:23] [INFO] Checking activity reminders 
[2026-04-05 15:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:30:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:30:46] [INFO] Checking activity reminders 
[2026-04-05 15:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:31:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:31:16] [INFO] Checking activity reminders 
[2026-04-05 15:31:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:31:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:31:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:31:38] [INFO] Checking activity reminders 
[2026-04-05 15:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:31:46] [INFO] Checking activity reminders 
[2026-04-05 15:31:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:31:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:32:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:32:08] [INFO] Checking activity reminders 
[2026-04-05 15:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:32:16] [INFO] Checking activity reminders 
[2026-04-05 15:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:32:46] [INFO] Checking activity reminders 
[2026-04-05 15:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:32:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:32:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:32:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:32:56] [INFO] Checking activity reminders 
[2026-04-05 15:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_products"}
[2026-04-05 15:33:13] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_leads"}
[2026-04-05 15:33:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_leads"}
[2026-04-05 15:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:16] [INFO] Checking activity reminders 
[2026-04-05 15:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:33:18] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:33:47] [INFO] Checking activity reminders 
[2026-04-05 15:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:34:03] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 15:34:03] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 15:34:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:34:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:34:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:34:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:34:14] [INFO] Checking activity reminders 
[2026-04-05 15:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:34:17] [INFO] Checking activity reminders 
[2026-04-05 15:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:34] [INFO] Checking activity reminders 
[2026-04-05 15:34:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-05 15:34:47] [INFO] Checking activity reminders 
[2026-04-05 15:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:56] [INFO] Checking activity reminders 
[2026-04-05 15:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:57] [INFO] Checking activity reminders 
[2026-04-05 15:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:34:58] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 15:34:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 15:34:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 15:34:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:34:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 15:34:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 15:34:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 15:35:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 15:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:35:17] [INFO] Checking activity reminders 
[2026-04-05 15:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:35:26] [INFO] Checking activity reminders 
[2026-04-05 15:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:35:29] [INFO] Checking activity reminders 
[2026-04-05 15:35:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:35:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:35:31] [INFO] Checking activity reminders 
[2026-04-05 15:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:35:47] [INFO] Checking activity reminders 
[2026-04-05 15:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:35:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 15:35:58","session_id":"ttsvndscifsstc4epjkt25a9ak"}
[2026-04-05 15:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:35:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20875","is_new_deal":false}
[2026-04-05 15:35:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:35:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:35:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:35:58] [INFO] getContactPrimaryPhone called {"contact_id":"20875"}
[2026-04-05 15:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:35:58] [INFO] getContactPrimaryPhone result {"contact_id":"20875","person_found":true,"primary_phone":"9193400253"}
[2026-04-05 15:35:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193400253"}
[2026-04-05 15:35:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193400253","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 15:35:58"}
[2026-04-05 15:35:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","existing_deal_found":true,"existing_contact_id":"20875","existing_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 15:35:58"}
[2026-04-05 15:35:58] [INFO] DealController.save validated payments {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","payments_count":1,"status":"Pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 15:35:58] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20875","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 15:35:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699f170c1e62f1.09215329","contact_didar_id":"20875","title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193400253","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"Pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جواد بیگی","existing_deal":"YES","existing_deal_id":"local_699f170c1e62f1.09215329","existing_deal_status":"Pending","server_time":"2026-04-05 15:35:58","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 15:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:35:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","deal_status":"Pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-04-05 15:35:58","ip_address":"5.112.206.158","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 15:35:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:00] [INFO] Checking activity reminders 
[2026-04-05 15:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:36:04] [INFO] Checking activity reminders 
[2026-04-05 15:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:36:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 15:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:17] [INFO] Checking activity reminders 
[2026-04-05 15:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:36:30] [INFO] Checking activity reminders 
[2026-04-05 15:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:36:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 15:36:37","session_id":"ttsvndscifsstc4epjkt25a9ak"}
[2026-04-05 15:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20875","is_new_deal":false}
[2026-04-05 15:36:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:36:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:36:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 15:36:37] [INFO] getContactPrimaryPhone called {"contact_id":"20875"}
[2026-04-05 15:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:37] [INFO] getContactPrimaryPhone result {"contact_id":"20875","person_found":true,"primary_phone":"9193400253"}
[2026-04-05 15:36:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193400253"}
[2026-04-05 15:36:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193400253","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 15:36:37"}
[2026-04-05 15:36:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","existing_deal_found":true,"existing_contact_id":"20875","existing_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 15:36:37"}
[2026-04-05 15:36:37] [INFO] DealController.save validated payments {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","payments_count":1,"status":"Pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 15:36:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20875","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 15:36:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699f170c1e62f1.09215329","contact_didar_id":"20875","title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193400253","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"Pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جواد بیگی","existing_deal":"YES","existing_deal_id":"local_699f170c1e62f1.09215329","existing_deal_status":"Pending","server_time":"2026-04-05 15:36:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 15:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","deal_status":"Pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-04-05 15:36:37","ip_address":"5.112.206.158","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 15:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:36:41] [INFO] Checking activity reminders 
[2026-04-05 15:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:36:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10894","person_id":"20755"}
[2026-04-05 15:36:47] [INFO] Checking activity reminders 
[2026-04-05 15:36:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:36:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:37:11] [INFO] Checking activity reminders 
[2026-04-05 15:37:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:37:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:37:17] [INFO] Checking activity reminders 
[2026-04-05 15:37:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:37:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:37:47] [INFO] Checking activity reminders 
[2026-04-05 15:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:38:17] [INFO] Checking activity reminders 
[2026-04-05 15:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:38:39] [INFO] Checking activity reminders 
[2026-04-05 15:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:38:47] [INFO] Checking activity reminders 
[2026-04-05 15:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:39:09] [INFO] Checking activity reminders 
[2026-04-05 15:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:39:18] [INFO] Checking activity reminders 
[2026-04-05 15:39:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:39:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:39:39] [INFO] Checking activity reminders 
[2026-04-05 15:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:39:48] [INFO] Checking activity reminders 
[2026-04-05 15:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:40:09] [INFO] Checking activity reminders 
[2026-04-05 15:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:40:18] [INFO] Checking activity reminders 
[2026-04-05 15:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:40:39] [INFO] Checking activity reminders 
[2026-04-05 15:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:40:48] [INFO] Checking activity reminders 
[2026-04-05 15:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:41:09] [INFO] Checking activity reminders 
[2026-04-05 15:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:41:18] [INFO] Checking activity reminders 
[2026-04-05 15:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:41:39] [INFO] Checking activity reminders 
[2026-04-05 15:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:41:48] [INFO] Checking activity reminders 
[2026-04-05 15:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:42:09] [INFO] Checking activity reminders 
[2026-04-05 15:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:42:18] [INFO] Checking activity reminders 
[2026-04-05 15:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:42:39] [INFO] Checking activity reminders 
[2026-04-05 15:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:42:48] [INFO] Checking activity reminders 
[2026-04-05 15:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:43:09] [INFO] Checking activity reminders 
[2026-04-05 15:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:43:19] [INFO] Checking activity reminders 
[2026-04-05 15:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:43:39] [INFO] Checking activity reminders 
[2026-04-05 15:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:43:49] [INFO] Checking activity reminders 
[2026-04-05 15:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:43:49] [INFO] Checking activity reminders 
[2026-04-05 15:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:10] [INFO] Checking activity reminders 
[2026-04-05 15:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:19] [INFO] Checking activity reminders 
[2026-04-05 15:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:21] [INFO] Checking activity reminders 
[2026-04-05 15:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-05 15:44:42] [INFO] Checking activity reminders 
[2026-04-05 15:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:49] [INFO] Checking activity reminders 
[2026-04-05 15:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:44:51] [INFO] Checking activity reminders 
[2026-04-05 15:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:45:12] [INFO] Checking activity reminders 
[2026-04-05 15:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:45:19] [INFO] Checking activity reminders 
[2026-04-05 15:45:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:45:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:45:42] [INFO] Checking activity reminders 
[2026-04-05 15:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:45:49] [INFO] Checking activity reminders 
[2026-04-05 15:45:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:45:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:46:13] [INFO] Checking activity reminders 
[2026-04-05 15:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:46:16] [INFO] Checking activity reminders 
[2026-04-05 15:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 15:46:20] [INFO] Checking activity reminders 
[2026-04-05 15:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:46:43] [INFO] Checking activity reminders 
[2026-04-05 15:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:46:50] [INFO] Checking activity reminders 
[2026-04-05 15:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:47:13] [INFO] Checking activity reminders 
[2026-04-05 15:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:47:20] [INFO] Checking activity reminders 
[2026-04-05 15:47:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:47:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:47:43] [INFO] Checking activity reminders 
[2026-04-05 15:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:47:50] [INFO] Checking activity reminders 
[2026-04-05 15:47:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:47:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:48:13] [INFO] Checking activity reminders 
[2026-04-05 15:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:48:20] [INFO] Checking activity reminders 
[2026-04-05 15:48:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:48:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:48:50] [INFO] Checking activity reminders 
[2026-04-05 15:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:49:20] [INFO] Checking activity reminders 
[2026-04-05 15:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:49:50] [INFO] Checking activity reminders 
[2026-04-05 15:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:50:20] [INFO] Checking activity reminders 
[2026-04-05 15:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:50:51] [INFO] Checking activity reminders 
[2026-04-05 15:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:51:21] [INFO] Checking activity reminders 
[2026-04-05 15:51:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:51:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:51:51] [INFO] Checking activity reminders 
[2026-04-05 15:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:52:21] [INFO] Checking activity reminders 
[2026-04-05 15:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:52:51] [INFO] Checking activity reminders 
[2026-04-05 15:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:53:21] [INFO] Checking activity reminders 
[2026-04-05 15:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:53:51] [INFO] Checking activity reminders 
[2026-04-05 15:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:54:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2059","deal_id":"local_69d20d9c80e805.61126014","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 15:54:01","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 15:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:54:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2059","is_new_deal":false}
[2026-04-05 15:54:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 15:54:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 15:54:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 15:54:01] [INFO] getContactPrimaryPhone called {"contact_id":"2059"}
[2026-04-05 15:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:54:01] [INFO] getContactPrimaryPhone result {"contact_id":"2059","person_found":true,"primary_phone":"9129723462"}
[2026-04-05 15:54:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129723462"}
[2026-04-05 15:54:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129723462","contact_id":"2059","deal_id":"local_69d20d9c80e805.61126014","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 15:54:01"}
[2026-04-05 15:54:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20d9c80e805.61126014","contact_id":"2059","existing_deal_found":true,"existing_contact_id":"2059","existing_title":"معامله چهارم 9129723462 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 15:54:01"}
[2026-04-05 15:54:01] [INFO] DealController.save validated payments {"deal_id":"local_69d20d9c80e805.61126014","contact_id":"2059","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 15:54:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2059","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 15:54:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20d9c80e805.61126014","contact_didar_id":"2059","title":"معامله چهارم 9129723462 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9129723462","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد مصطفی پور","existing_deal":"YES","existing_deal_id":"local_69d20d9c80e805.61126014","existing_deal_status":"Pending","server_time":"2026-04-05 15:54:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 15:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:54:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20d9c80e805.61126014","contact_id":"2059","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9129723462 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-05 15:54:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 15:54:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:54:21] [INFO] Checking activity reminders 
[2026-04-05 15:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:54:51] [INFO] Checking activity reminders 
[2026-04-05 15:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:55:21] [INFO] Checking activity reminders 
[2026-04-05 15:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:55:51] [INFO] Checking activity reminders 
[2026-04-05 15:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:56:22] [INFO] Checking activity reminders 
[2026-04-05 15:56:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:56:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:56:52] [INFO] Checking activity reminders 
[2026-04-05 15:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:57:22] [INFO] Checking activity reminders 
[2026-04-05 15:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:57:28] [INFO] Activity save request {"post_data":{"contact_id":"2059","deal_id":"local_69d20d9c80e805.61126014","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"لوازم خانگی در بانه \r\nکل سرمایه در ملک و زمین \/ نتونسته نقد کنه \r\nسرمایه برای نوسان گیری در کانال نداره \r\nپرزنت 405 \/ 6 ماهه \r\nارسال پیام استاد در بله \r\n","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 15:57:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Activity save request {"post_data":{"contact_id":"2059","deal_id":"local_69d20d9c80e805.61126014","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"لوازم خانگی در بانه \r\nکل سرمایه در ملک و زمین \/ نتونسته نقد کنه \r\nسرمایه برای نوسان گیری در کانال نداره \r\nپرزنت 405 \/ 6 ماهه \r\nارسال پیام استاد در بله \r\n","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 15:57:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2059","note_was_empty":true}
[2026-04-05 15:57:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"2059","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Updating virtual stage {"contact_id":"2059","stage_name":"deal_registered","force":false}
[2026-04-05 15:57:33] [INFO] Virtual stage successfully saved {"contact_id":"2059","stage_name":"deal_registered"}
[2026-04-05 15:57:33] [INFO] Virtual stage updated after activity save {"contact_id":"2059"}
[2026-04-05 15:57:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20d9c80e805.61126014","stage":"تماس پیگیری","status_change":null}
[2026-04-05 15:57:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d25535a7a803.45685688","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d25535a7a803.45685688"}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:33] [INFO] Updating virtual stage {"contact_id":"2059","stage_name":"deal_registered","force":false}
[2026-04-05 15:57:33] [INFO] Virtual stage successfully saved {"contact_id":"2059","stage_name":"deal_registered"}
[2026-04-05 15:57:33] [INFO] Virtual stage updated after activity save {"contact_id":"2059"}
[2026-04-05 15:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2059","person_id":"20289"}
[2026-04-05 15:57:52] [INFO] Checking activity reminders 
[2026-04-05 15:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 15:58:22] [INFO] Checking activity reminders 
[2026-04-05 15:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:58:52] [INFO] Checking activity reminders 
[2026-04-05 15:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:59:22] [INFO] Checking activity reminders 
[2026-04-05 15:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 15:59:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 15:59:23","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 15:59:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 15:59:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9900","is_new_deal":false}
[2026-04-05 15:59:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 15:59:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 15:59:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 15:59:23] [INFO] getContactPrimaryPhone called {"contact_id":"9900"}
[2026-04-05 15:59:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 15:59:23] [INFO] getContactPrimaryPhone result {"contact_id":"9900","person_found":true,"primary_phone":"9132674126"}
[2026-04-05 15:59:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132674126"}
[2026-04-05 15:59:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132674126","contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 15:59:23"}
[2026-04-05 15:59:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","existing_deal_found":true,"existing_contact_id":"9900","existing_title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 15:59:23"}
[2026-04-05 15:59:23] [INFO] DealController.save validated payments {"deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 15:59:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9900","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 15:59:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f0441e9d1.62640784","contact_didar_id":"9900","title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132674126","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یزدخواستی","existing_deal":"YES","existing_deal_id":"local_69d20f0441e9d1.62640784","existing_deal_status":"Pending","server_time":"2026-04-05 15:59:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 15:59:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 15:59:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 15:59:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 15:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 15:59:52] [INFO] Checking activity reminders 
[2026-04-05 15:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 15:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:00:10] [INFO] Activity save request {"post_data":{"contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"همسرش فوت شده \/ سرپرستی 2 تا بچه \r\nسرمایه جهت عضویت در کانال و استفاده از صحبت های استاد نداره ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Activity save request {"post_data":{"contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"همسرش فوت شده \/ سرپرستی 2 تا بچه \r\nسرمایه جهت عضویت در کانال و استفاده از صحبت های استاد نداره ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 16:00:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9900","note_was_empty":true}
[2026-04-05 16:00:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"9900","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Updating virtual stage {"contact_id":"9900","stage_name":"deal_registered","force":false}
[2026-04-05 16:00:18] [INFO] Virtual stage successfully saved {"contact_id":"9900","stage_name":"deal_registered"}
[2026-04-05 16:00:18] [INFO] Virtual stage updated after activity save {"contact_id":"9900"}
[2026-04-05 16:00:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20f0441e9d1.62640784","stage":"تماس پیگیری","status_change":null}
[2026-04-05 16:00:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d255dac12b04.21973417","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d255dac12b04.21973417"}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:18] [INFO] Updating virtual stage {"contact_id":"9900","stage_name":"deal_registered","force":false}
[2026-04-05 16:00:18] [INFO] Virtual stage successfully saved {"contact_id":"9900","stage_name":"deal_registered"}
[2026-04-05 16:00:18] [INFO] Virtual stage updated after activity save {"contact_id":"9900"}
[2026-04-05 16:00:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-05 16:00:22] [INFO] Checking activity reminders 
[2026-04-05 16:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:00:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:00:47] [INFO] Checking activity reminders 
[2026-04-05 16:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-05 16:01:17] [INFO] Checking activity reminders 
[2026-04-05 16:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:01:35] [INFO] Checking activity reminders 
[2026-04-05 16:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:01:47] [INFO] Checking activity reminders 
[2026-04-05 16:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:02:05] [INFO] Checking activity reminders 
[2026-04-05 16:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:02:17] [INFO] Checking activity reminders 
[2026-04-05 16:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:02:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:02:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:02:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:02:35] [INFO] Checking activity reminders 
[2026-04-05 16:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:02:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:02:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:02:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:02:47] [INFO] Checking activity reminders 
[2026-04-05 16:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:03:05] [INFO] Checking activity reminders 
[2026-04-05 16:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:03:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-05 16:03:17] [INFO] Checking activity reminders 
[2026-04-05 16:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:03:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 16:03:47] [INFO] Checking activity reminders 
[2026-04-05 16:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:03:52] [INFO] Checking activity reminders 
[2026-04-05 16:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:04:17] [INFO] Checking activity reminders 
[2026-04-05 16:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:04:22] [INFO] Checking activity reminders 
[2026-04-05 16:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:04:47] [INFO] Checking activity reminders 
[2026-04-05 16:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:04:52] [INFO] Checking activity reminders 
[2026-04-05 16:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:05:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-05 16:05:18] [INFO] Checking activity reminders 
[2026-04-05 16:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:05:23] [INFO] Checking activity reminders 
[2026-04-05 16:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:05:48] [INFO] Checking activity reminders 
[2026-04-05 16:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:05:53] [INFO] Checking activity reminders 
[2026-04-05 16:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:06:18] [INFO] Checking activity reminders 
[2026-04-05 16:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:06:23] [INFO] Checking activity reminders 
[2026-04-05 16:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:06:48] [INFO] Checking activity reminders 
[2026-04-05 16:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:06:53] [INFO] Checking activity reminders 
[2026-04-05 16:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:07:18] [INFO] Checking activity reminders 
[2026-04-05 16:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:07:23] [INFO] Checking activity reminders 
[2026-04-05 16:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:07:48] [INFO] Checking activity reminders 
[2026-04-05 16:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:07:48] [INFO] Checking activity reminders 
[2026-04-05 16:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:07:53] [INFO] Checking activity reminders 
[2026-04-05 16:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:08:18] [INFO] Checking activity reminders 
[2026-04-05 16:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:08:23] [INFO] Checking activity reminders 
[2026-04-05 16:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:08:48] [INFO] Checking activity reminders 
[2026-04-05 16:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:08:54] [INFO] Checking activity reminders 
[2026-04-05 16:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:08:58] [INFO] Checking activity reminders 
[2026-04-05 16:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:09:18] [INFO] Checking activity reminders 
[2026-04-05 16:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:09:24] [INFO] Checking activity reminders 
[2026-04-05 16:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:09:40] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:09:40] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-04-05 16:09:40] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-04-05 16:09:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:09:48] [INFO] Checking activity reminders 
[2026-04-05 16:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:09:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 16:09:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 16:10:11] [INFO] Checking activity reminders 
[2026-04-05 16:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:10:18] [INFO] Checking activity reminders 
[2026-04-05 16:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:10:31","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:10:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-05 16:10:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","is_new_deal":false}
[2026-04-05 16:10:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:10:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:10:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:10:31] [INFO] getContactPrimaryPhone called {"contact_id":"2895"}
[2026-04-05 16:10:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-05 16:10:31] [INFO] getContactPrimaryPhone result {"contact_id":"2895","person_found":true,"primary_phone":"9121187661"}
[2026-04-05 16:10:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121187661"}
[2026-04-05 16:10:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121187661","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:10:31"}
[2026-04-05 16:10:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","existing_deal_found":true,"existing_contact_id":"2895","existing_title":"معامله سوم 9121187661 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:10:31"}
[2026-04-05 16:10:31] [INFO] DealController.save validated payments {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","payments_count":1,"status":"Pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 16:10:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2895","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:10:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c67258d30.73196954","contact_didar_id":"2895","title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9121187661","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"Pending","payable_amount":27000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عماد آذر","existing_deal":"YES","existing_deal_id":"local_69b72c67258d30.73196954","existing_deal_status":"Pending","server_time":"2026-04-05 16:10:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 16:10:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-05 16:10:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"Pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":15000000,"server_time":"2026-04-05 16:10:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:10:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-05 16:10:35] [INFO] Checking activity reminders 
[2026-04-05 16:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:36] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:10:36","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 16:10:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:10:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-05 16:10:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:10:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:10:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:10:36] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-05 16:10:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:10:36] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-05 16:10:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-05 16:10:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:10:36"}
[2026-04-05 16:10:36] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | CIP","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:10:36"}
[2026-04-05 16:10:36] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 16:10:36] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:10:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":200000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-05 16:10:36","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-05 16:10:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:10:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":200000000,"payment_amount":0,"server_time":"2026-04-05 16:10:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:10:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:10:41] [INFO] Checking activity reminders 
[2026-04-05 16:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:45] [INFO] Checking activity reminders 
[2026-04-05 16:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:48] [INFO] Checking activity reminders 
[2026-04-05 16:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:49] [INFO] Checking activity reminders 
[2026-04-05 16:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:10:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:10:49] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 16:10:49] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 16:10:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:10:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:10:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:10:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:10:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:10:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:10:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 16:11:20] [INFO] Checking activity reminders 
[2026-04-05 16:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:20] [INFO] Checking activity reminders 
[2026-04-05 16:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:22] [INFO] Checking activity reminders 
[2026-04-05 16:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 16:11:38] [INFO] Checking activity reminders 
[2026-04-05 16:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:11:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:11:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:11:41] [INFO] Checking activity reminders 
[2026-04-05 16:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:50] [INFO] Checking activity reminders 
[2026-04-05 16:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:11:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:11:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:11:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:12:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:12:11] [INFO] Checking activity reminders 
[2026-04-05 16:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:12:20] [INFO] Checking activity reminders 
[2026-04-05 16:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:12:38] [INFO] Checking activity reminders 
[2026-04-05 16:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:12:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:12:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:12:44] [INFO] Checking activity reminders 
[2026-04-05 16:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:12:46] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:12:46] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"agent"}
[2026-04-05 16:12:46] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"agent","via_master":true}
[2026-04-05 16:12:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:12:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:13:14] [INFO] Checking activity reminders 
[2026-04-05 16:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:13:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:13:16","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 16:13:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:13:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-05 16:13:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:13:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:13:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:13:16] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-05 16:13:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:13:16] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-05 16:13:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-05 16:13:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:13:16"}
[2026-04-05 16:13:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:13:16"}
[2026-04-05 16:13:16] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 16:13:16] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:13:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":200000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-05 16:13:16","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-05 16:13:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:13:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":200000000,"payment_amount":0,"server_time":"2026-04-05 16:13:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:13:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:13:17] [INFO] Checking activity reminders 
[2026-04-05 16:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 16:13:44] [INFO] Checking activity reminders 
[2026-04-05 16:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:13:47] [INFO] Checking activity reminders 
[2026-04-05 16:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:13:49] [INFO] Checking activity reminders 
[2026-04-05 16:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:13:53] [INFO] Checking activity reminders 
[2026-04-05 16:13:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:13:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:14:17] [INFO] Checking activity reminders 
[2026-04-05 16:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:14:23] [INFO] Checking activity reminders 
[2026-04-05 16:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:14:47] [INFO] Checking activity reminders 
[2026-04-05 16:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:14:53] [INFO] Checking activity reminders 
[2026-04-05 16:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:15:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:15:14","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 16:15:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-05 16:15:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:14] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-05 16:15:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:14] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-05 16:15:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-05 16:15:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:15:14"}
[2026-04-05 16:15:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:15:14"}
[2026-04-05 16:15:18] [INFO] Checking activity reminders 
[2026-04-05 16:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:15:23] [INFO] Checking activity reminders 
[2026-04-05 16:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:15:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:15:23","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-05 16:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-05 16:15:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:15:23] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-05 16:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:23] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-05 16:15:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-05 16:15:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:15:23"}
[2026-04-05 16:15:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-05 16:15:23"}
[2026-04-05 16:15:23] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"Pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 16:15:23] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:15:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"Pending","payable_amount":200000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-05 16:15:23","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-05 16:15:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"Pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":10000000,"server_time":"2026-04-05 16:15:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:15:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 16:15:48] [INFO] Checking activity reminders 
[2026-04-05 16:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:15:53] [INFO] Checking activity reminders 
[2026-04-05 16:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:16:18] [INFO] Checking activity reminders 
[2026-04-05 16:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:16:23] [INFO] Checking activity reminders 
[2026-04-05 16:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:16:26] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:16:31] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:16:31] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 16:16:31] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 16:16:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:16:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:16:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:16:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:16:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:16:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:16:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:16:53] [INFO] Checking activity reminders 
[2026-04-05 16:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:16:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:16:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:16:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:17:04] [INFO] Checking activity reminders 
[2026-04-05 16:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:17:23] [INFO] Checking activity reminders 
[2026-04-05 16:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:17:34] [INFO] Checking activity reminders 
[2026-04-05 16:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:17:53] [INFO] Checking activity reminders 
[2026-04-05 16:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:18:04] [INFO] Checking activity reminders 
[2026-04-05 16:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:18:23] [INFO] Checking activity reminders 
[2026-04-05 16:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:18:35] [INFO] Checking activity reminders 
[2026-04-05 16:18:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:18:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:18:54] [INFO] Checking activity reminders 
[2026-04-05 16:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:19:05] [INFO] Checking activity reminders 
[2026-04-05 16:19:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:19:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:19:24] [INFO] Checking activity reminders 
[2026-04-05 16:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:19:35] [INFO] Checking activity reminders 
[2026-04-05 16:19:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:19:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:19:54] [INFO] Checking activity reminders 
[2026-04-05 16:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:20:05] [INFO] Checking activity reminders 
[2026-04-05 16:20:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:20:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:20:24] [INFO] Checking activity reminders 
[2026-04-05 16:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:20:35] [INFO] Checking activity reminders 
[2026-04-05 16:20:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:20:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:20:54] [INFO] Checking activity reminders 
[2026-04-05 16:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:21:05] [INFO] Checking activity reminders 
[2026-04-05 16:21:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:21:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:21:24] [INFO] Checking activity reminders 
[2026-04-05 16:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:21:35] [INFO] Checking activity reminders 
[2026-04-05 16:21:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:21:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:21:54] [INFO] Checking activity reminders 
[2026-04-05 16:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:22:05] [INFO] Checking activity reminders 
[2026-04-05 16:22:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:22:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:22:24] [INFO] Checking activity reminders 
[2026-04-05 16:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:22:35] [INFO] Checking activity reminders 
[2026-04-05 16:22:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:22:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:22:54] [INFO] Checking activity reminders 
[2026-04-05 16:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:23:06] [INFO] Checking activity reminders 
[2026-04-05 16:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:23:24] [INFO] Checking activity reminders 
[2026-04-05 16:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:23:36] [INFO] Checking activity reminders 
[2026-04-05 16:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:23:55] [INFO] Checking activity reminders 
[2026-04-05 16:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:24:06] [INFO] Checking activity reminders 
[2026-04-05 16:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:24:25] [INFO] Checking activity reminders 
[2026-04-05 16:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:24:37] [INFO] Checking activity reminders 
[2026-04-05 16:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:24:55] [INFO] Checking activity reminders 
[2026-04-05 16:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:25:07] [INFO] Checking activity reminders 
[2026-04-05 16:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:25:25] [INFO] Checking activity reminders 
[2026-04-05 16:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:25:37] [INFO] Checking activity reminders 
[2026-04-05 16:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:25:55] [INFO] Checking activity reminders 
[2026-04-05 16:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:26:07] [INFO] Checking activity reminders 
[2026-04-05 16:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:26:25] [INFO] Checking activity reminders 
[2026-04-05 16:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:26:37] [INFO] Checking activity reminders 
[2026-04-05 16:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:26:55] [INFO] Checking activity reminders 
[2026-04-05 16:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:27:07] [INFO] Checking activity reminders 
[2026-04-05 16:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:27:25] [INFO] Checking activity reminders 
[2026-04-05 16:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:27:37] [INFO] Checking activity reminders 
[2026-04-05 16:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:27:56] [INFO] Checking activity reminders 
[2026-04-05 16:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:28:07] [INFO] Checking activity reminders 
[2026-04-05 16:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:28:26] [INFO] Checking activity reminders 
[2026-04-05 16:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:28:37] [INFO] Checking activity reminders 
[2026-04-05 16:28:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:28:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:28:56] [INFO] Checking activity reminders 
[2026-04-05 16:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:29:07] [INFO] Checking activity reminders 
[2026-04-05 16:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:29:26] [INFO] Checking activity reminders 
[2026-04-05 16:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:29:38] [INFO] Checking activity reminders 
[2026-04-05 16:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:29:56] [INFO] Checking activity reminders 
[2026-04-05 16:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:30:08] [INFO] Checking activity reminders 
[2026-04-05 16:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:30:26] [INFO] Checking activity reminders 
[2026-04-05 16:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:30:38] [INFO] Checking activity reminders 
[2026-04-05 16:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:30:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:30:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:30:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:30:56] [INFO] Checking activity reminders 
[2026-04-05 16:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:31:08] [INFO] Checking activity reminders 
[2026-04-05 16:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:31:26] [INFO] Checking activity reminders 
[2026-04-05 16:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:31:38] [INFO] Checking activity reminders 
[2026-04-05 16:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:31:56] [INFO] Checking activity reminders 
[2026-04-05 16:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:32:08] [INFO] Checking activity reminders 
[2026-04-05 16:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:32:26] [INFO] Checking activity reminders 
[2026-04-05 16:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:32:38] [INFO] Checking activity reminders 
[2026-04-05 16:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:32:56] [INFO] Checking activity reminders 
[2026-04-05 16:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:33:08] [INFO] Checking activity reminders 
[2026-04-05 16:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:33:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:33:18","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:33:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:33:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5552","is_new_deal":false}
[2026-04-05 16:33:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:33:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:33:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:33:18] [INFO] getContactPrimaryPhone called {"contact_id":"5552"}
[2026-04-05 16:33:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:33:18] [INFO] getContactPrimaryPhone result {"contact_id":"5552","person_found":true,"primary_phone":"9133547605"}
[2026-04-05 16:33:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133547605"}
[2026-04-05 16:33:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133547605","contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:33:18"}
[2026-04-05 16:33:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","existing_deal_found":true,"existing_contact_id":"5552","existing_title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:33:18"}
[2026-04-05 16:33:18] [INFO] DealController.save validated payments {"deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 16:33:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5552","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:33:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f6b20c894.83343045","contact_didar_id":"5552","title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9133547605","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کلانتری","existing_deal":"YES","existing_deal_id":"local_69d20f6b20c894.83343045","existing_deal_status":"Pending","server_time":"2026-04-05 16:33:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 16:33:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:33:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 16:33:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:33:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:33:26] [INFO] Checking activity reminders 
[2026-04-05 16:33:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:33:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:33:38] [INFO] Checking activity reminders 
[2026-04-05 16:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:33:57] [INFO] Checking activity reminders 
[2026-04-05 16:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:34:08] [INFO] Checking activity reminders 
[2026-04-05 16:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:34:27] [INFO] Checking activity reminders 
[2026-04-05 16:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:34:27] [INFO] Activity save request {"post_data":{"contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:34:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Activity save request {"post_data":{"contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 16:34:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5552","note_was_empty":true}
[2026-04-05 16:34:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"5552","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Updating virtual stage {"contact_id":"5552","stage_name":"deal_registered","force":false}
[2026-04-05 16:34:37] [INFO] Virtual stage successfully saved {"contact_id":"5552","stage_name":"deal_registered"}
[2026-04-05 16:34:37] [INFO] Virtual stage updated after activity save {"contact_id":"5552"}
[2026-04-05 16:34:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20f6b20c894.83343045","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 16:34:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d25de597c147.13901326","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69d25de597c147.13901326"}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:37] [INFO] Updating virtual stage {"contact_id":"5552","stage_name":"deal_registered","force":false}
[2026-04-05 16:34:37] [INFO] Virtual stage successfully saved {"contact_id":"5552","stage_name":"deal_registered"}
[2026-04-05 16:34:37] [INFO] Virtual stage updated after activity save {"contact_id":"5552"}
[2026-04-05 16:34:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-05 16:34:38] [INFO] Checking activity reminders 
[2026-04-05 16:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:34:57] [INFO] Checking activity reminders 
[2026-04-05 16:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:35:09] [INFO] Checking activity reminders 
[2026-04-05 16:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:35:27] [INFO] Checking activity reminders 
[2026-04-05 16:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:35:39] [INFO] Checking activity reminders 
[2026-04-05 16:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:35:57] [INFO] Checking activity reminders 
[2026-04-05 16:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:36:09] [INFO] Checking activity reminders 
[2026-04-05 16:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:36:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:36:16","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:36:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1211","is_new_deal":false}
[2026-04-05 16:36:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:36:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:36:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:36:16] [INFO] getContactPrimaryPhone called {"contact_id":"1211"}
[2026-04-05 16:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:36:16] [INFO] getContactPrimaryPhone result {"contact_id":"1211","person_found":true,"primary_phone":"9135603622"}
[2026-04-05 16:36:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135603622"}
[2026-04-05 16:36:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135603622","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:36:16"}
[2026-04-05 16:36:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","existing_deal_found":true,"existing_contact_id":"1211","existing_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:36:16"}
[2026-04-05 16:36:16] [INFO] DealController.save validated payments {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 16:36:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1211","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:36:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d21034005ee8.26116387","contact_didar_id":"1211","title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135603622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین زین الدینی","existing_deal":"YES","existing_deal_id":"local_69d21034005ee8.26116387","existing_deal_status":"Pending","server_time":"2026-04-05 16:36:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 16:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:36:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 16:36:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:36:27] [INFO] Checking activity reminders 
[2026-04-05 16:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:36:39] [INFO] Checking activity reminders 
[2026-04-05 16:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:36:57] [INFO] Checking activity reminders 
[2026-04-05 16:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:09] [INFO] Checking activity reminders 
[2026-04-05 16:37:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:21] [INFO] Checking activity reminders 
[2026-04-05 16:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:24] [INFO] Checking activity reminders 
[2026-04-05 16:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:26] [INFO] Checking activity reminders 
[2026-04-05 16:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:39] [INFO] Checking activity reminders 
[2026-04-05 16:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:37:56] [INFO] Checking activity reminders 
[2026-04-05 16:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:38:09] [INFO] Checking activity reminders 
[2026-04-05 16:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:38:26] [INFO] Checking activity reminders 
[2026-04-05 16:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:38:39] [INFO] Checking activity reminders 
[2026-04-05 16:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:38:56] [INFO] Checking activity reminders 
[2026-04-05 16:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:09] [INFO] Checking activity reminders 
[2026-04-05 16:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:26] [INFO] Checking activity reminders 
[2026-04-05 16:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:32] [INFO] Activity save request {"post_data":{"contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 16:39:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1211","note_was_empty":true}
[2026-04-05 16:39:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"1211","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:32] [INFO] Updating virtual stage {"contact_id":"1211","stage_name":"deal_registered","force":false}
[2026-04-05 16:39:32] [INFO] Virtual stage successfully saved {"contact_id":"1211","stage_name":"deal_registered"}
[2026-04-05 16:39:32] [INFO] Virtual stage updated after activity save {"contact_id":"1211"}
[2026-04-05 16:39:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d21034005ee8.26116387","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 16:39:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d25f0c0ce3c1.75896286","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69d25f0c0ce3c1.75896286"}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:32] [INFO] Updating virtual stage {"contact_id":"1211","stage_name":"deal_registered","force":false}
[2026-04-05 16:39:32] [INFO] Virtual stage successfully saved {"contact_id":"1211","stage_name":"deal_registered"}
[2026-04-05 16:39:32] [INFO] Virtual stage updated after activity save {"contact_id":"1211"}
[2026-04-05 16:39:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 16:39:39] [INFO] Checking activity reminders 
[2026-04-05 16:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:42] [INFO] Checking activity reminders 
[2026-04-05 16:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:43] [INFO] Checking activity reminders 
[2026-04-05 16:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:39:45] [INFO] Checking activity reminders 
[2026-04-05 16:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:40:10] [INFO] Checking activity reminders 
[2026-04-05 16:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:40:15] [INFO] Checking activity reminders 
[2026-04-05 16:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:40:40] [INFO] Checking activity reminders 
[2026-04-05 16:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:40:46] [INFO] Checking activity reminders 
[2026-04-05 16:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:41:10] [INFO] Checking activity reminders 
[2026-04-05 16:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:41:13] [INFO] Checking activity reminders 
[2026-04-05 16:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:41:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:41:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:41:40] [INFO] Checking activity reminders 
[2026-04-05 16:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:41:43] [INFO] Checking activity reminders 
[2026-04-05 16:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:42:10] [INFO] Checking activity reminders 
[2026-04-05 16:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:42:14] [INFO] Checking activity reminders 
[2026-04-05 16:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:42:40] [INFO] Checking activity reminders 
[2026-04-05 16:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:42:44] [INFO] Checking activity reminders 
[2026-04-05 16:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:43:10] [INFO] Checking activity reminders 
[2026-04-05 16:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:43:13] [INFO] Checking activity reminders 
[2026-04-05 16:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:43:14] [INFO] Checking activity reminders 
[2026-04-05 16:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:43:44] [INFO] Checking activity reminders 
[2026-04-05 16:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:43:44] [INFO] Checking activity reminders 
[2026-04-05 16:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:44:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_694b7dc3b1eb32.82132705","deal_id":"local_699c0a001d3e56.52367787","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:44:11","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:44:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:44:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_694b7dc3b1eb32.82132705","is_new_deal":false}
[2026-04-05 16:44:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 16:44:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:44:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 16:44:11] [INFO] getContactPrimaryPhone called {"contact_id":"local_694b7dc3b1eb32.82132705"}
[2026-04-05 16:44:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:44:11] [INFO] getContactPrimaryPhone result {"contact_id":"local_694b7dc3b1eb32.82132705","person_found":true,"primary_phone":"9164601419"}
[2026-04-05 16:44:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9164601419"}
[2026-04-05 16:44:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9164601419","contact_id":"local_694b7dc3b1eb32.82132705","deal_id":"local_699c0a001d3e56.52367787","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:44:11"}
[2026-04-05 16:44:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c0a001d3e56.52367787","contact_id":"local_694b7dc3b1eb32.82132705","existing_deal_found":true,"existing_contact_id":"local_694b7dc3b1eb32.82132705","existing_title":"معامله دوم 9164601419 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:44:11"}
[2026-04-05 16:44:11] [INFO] DealController.save validated payments {"deal_id":"local_699c0a001d3e56.52367787","contact_id":"local_694b7dc3b1eb32.82132705","payments_count":3,"status":"Pending","pipeline_stage":"پرداخت"}
[2026-04-05 16:44:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_694b7dc3b1eb32.82132705","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:44:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c0a001d3e56.52367787","contact_didar_id":"local_694b7dc3b1eb32.82132705","title":"معامله دوم 9164601419 | کانال VIP","base_title_used":"معامله دوم 9164601419","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"Pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدرضا همایونی","existing_deal":"YES","existing_deal_id":"local_699c0a001d3e56.52367787","existing_deal_status":"Pending","server_time":"2026-04-05 16:44:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 16:44:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:44:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c0a001d3e56.52367787","contact_id":"local_694b7dc3b1eb32.82132705","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9164601419 | کانال VIP","deal_status":"Pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-05 16:44:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:44:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:44:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-05 16:44:14] [INFO] Checking activity reminders 
[2026-04-05 16:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:44:14] [INFO] Checking activity reminders 
[2026-04-05 16:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:44:44] [INFO] Checking activity reminders 
[2026-04-05 16:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:44:44] [INFO] Checking activity reminders 
[2026-04-05 16:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:45:14] [INFO] Checking activity reminders 
[2026-04-05 16:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:45:14] [INFO] Checking activity reminders 
[2026-04-05 16:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:45:44] [INFO] Checking activity reminders 
[2026-04-05 16:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:45:44] [INFO] Checking activity reminders 
[2026-04-05 16:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:46:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:46:14] [INFO] Checking activity reminders 
[2026-04-05 16:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:46:14] [INFO] Checking activity reminders 
[2026-04-05 16:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:46:17] [INFO] generateDealTitle result {"contact_id":"16071","person_name":"مهدی بالایی","mobile":"9146131685","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9146131685"}
[2026-04-05 16:46:44] [INFO] Checking activity reminders 
[2026-04-05 16:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:46:44] [INFO] Checking activity reminders 
[2026-04-05 16:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:47:14] [INFO] Checking activity reminders 
[2026-04-05 16:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:47:14] [INFO] Checking activity reminders 
[2026-04-05 16:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:47:44] [INFO] Checking activity reminders 
[2026-04-05 16:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:47:45] [INFO] Checking activity reminders 
[2026-04-05 16:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:47:51] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:47:59] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 16:47:59] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 16:47:59] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 16:47:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 16:47:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:47:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:47:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:48:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:48:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:48:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:48:14] [INFO] Checking activity reminders 
[2026-04-05 16:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:48:15] [INFO] Checking activity reminders 
[2026-04-05 16:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:48:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:48:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:48:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:48:29] [INFO] Checking activity reminders 
[2026-04-05 16:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:48:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16071","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:48:42","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16071","is_new_deal":true}
[2026-04-05 16:48:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:48:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:48:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 16:48:42] [INFO] getContactPrimaryPhone called {"contact_id":"16071"}
[2026-04-05 16:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:42] [INFO] getContactPrimaryPhone result {"contact_id":"16071","person_found":true,"primary_phone":"9146131685"}
[2026-04-05 16:48:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146131685"}
[2026-04-05 16:48:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146131685","contact_id":"16071","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:48:42"}
[2026-04-05 16:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:42] [INFO] generateDealTitle result {"contact_id":"16071","person_name":"مهدی بالایی","mobile":"9146131685","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9146131685"}
[2026-04-05 16:48:44] [INFO] Checking activity reminders 
[2026-04-05 16:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:48:45] [INFO] Checking activity reminders 
[2026-04-05 16:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:48:54] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"16071","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 16:48:54","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 16:48:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"16071","is_new_deal":true}
[2026-04-05 16:48:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 16:48:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 16:48:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 16:48:54] [INFO] getContactPrimaryPhone called {"contact_id":"16071"}
[2026-04-05 16:48:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:54] [INFO] getContactPrimaryPhone result {"contact_id":"16071","person_found":true,"primary_phone":"9146131685"}
[2026-04-05 16:48:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146131685"}
[2026-04-05 16:48:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146131685","contact_id":"16071","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 16:48:54"}
[2026-04-05 16:48:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:54] [INFO] generateDealTitle result {"contact_id":"16071","person_name":"مهدی بالایی","mobile":"9146131685","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9146131685"}
[2026-04-05 16:48:54] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16071","payments_count":2,"status":"Pending","pipeline_stage":"پرداخت"}
[2026-04-05 16:48:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16071","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 16:48:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16071","title":"معامله سوم 9146131685 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9146131685","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"Pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی بالایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 16:48:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 16:48:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 16:48:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16071","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9146131685 | کانال VIP با پشتیبانی شش ماهه","deal_status":"Pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-05 16:48:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 16:48:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:48:59] [INFO] Checking activity reminders 
[2026-04-05 16:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:14] [INFO] Checking activity reminders 
[2026-04-05 16:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:15] [INFO] Checking activity reminders 
[2026-04-05 16:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:29] [INFO] Checking activity reminders 
[2026-04-05 16:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:44] [INFO] Checking activity reminders 
[2026-04-05 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:45] [INFO] Checking activity reminders 
[2026-04-05 16:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:49:47] [INFO] Activity save request {"post_data":{"contact_id":"16071","deal_id":"local_69d2613e7d7077.99174624","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"به دلیل شرایط جنگ نقد و چک در کانال \r\nخرید و فروش خودرو \r\nسرمایه در طلای فیزیکی \r\n10 نقد \r\n29 چک ","activity_duration":"15","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 16:49:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16071","note_was_empty":true}
[2026-04-05 16:49:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"16071","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Updating virtual stage {"contact_id":"16071","stage_name":"deal_registered","force":false}
[2026-04-05 16:49:47] [INFO] Virtual stage successfully saved {"contact_id":"16071","stage_name":"deal_registered"}
[2026-04-05 16:49:47] [INFO] Virtual stage updated after activity save {"contact_id":"16071"}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2613e7d7077.99174624","stage":"اتمام","status_change":"Won"}
[2026-04-05 16:49:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d26173b9af81.49344117","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d26173b9af81.49344117"}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:49:47] [INFO] Updating virtual stage {"contact_id":"16071","stage_name":"deal_registered","force":false}
[2026-04-05 16:49:47] [INFO] Virtual stage successfully saved {"contact_id":"16071","stage_name":"deal_registered"}
[2026-04-05 16:49:47] [INFO] Virtual stage updated after activity save {"contact_id":"16071"}
[2026-04-05 16:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 16:50:14] [INFO] Checking activity reminders 
[2026-04-05 16:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:50:15] [INFO] Checking activity reminders 
[2026-04-05 16:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:50:45] [INFO] Checking activity reminders 
[2026-04-05 16:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:50:45] [INFO] Checking activity reminders 
[2026-04-05 16:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:51:15] [INFO] Checking activity reminders 
[2026-04-05 16:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:51:15] [INFO] Checking activity reminders 
[2026-04-05 16:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:51:45] [INFO] Checking activity reminders 
[2026-04-05 16:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:51:45] [INFO] Checking activity reminders 
[2026-04-05 16:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:52:15] [INFO] Checking activity reminders 
[2026-04-05 16:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:52:15] [INFO] Checking activity reminders 
[2026-04-05 16:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:52:45] [INFO] Checking activity reminders 
[2026-04-05 16:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:52:45] [INFO] Checking activity reminders 
[2026-04-05 16:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:53:15] [INFO] Checking activity reminders 
[2026-04-05 16:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:53:15] [INFO] Checking activity reminders 
[2026-04-05 16:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:53:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 16:53:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 16:53:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 16:53:45] [INFO] Checking activity reminders 
[2026-04-05 16:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:53:46] [INFO] Checking activity reminders 
[2026-04-05 16:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:54:15] [INFO] Checking activity reminders 
[2026-04-05 16:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:54:16] [INFO] Checking activity reminders 
[2026-04-05 16:54:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:54:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:54:26] [INFO] Checking activity reminders 
[2026-04-05 16:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:54:30] [INFO] Checking activity reminders 
[2026-04-05 16:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:54:46] [INFO] Checking activity reminders 
[2026-04-05 16:54:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:54:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:55:00] [INFO] Checking activity reminders 
[2026-04-05 16:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:55:16] [INFO] Checking activity reminders 
[2026-04-05 16:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:55:30] [INFO] Checking activity reminders 
[2026-04-05 16:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:55:46] [INFO] Checking activity reminders 
[2026-04-05 16:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:56:00] [INFO] Checking activity reminders 
[2026-04-05 16:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:56:16] [INFO] Checking activity reminders 
[2026-04-05 16:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:56:31] [INFO] Checking activity reminders 
[2026-04-05 16:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:56:46] [INFO] Checking activity reminders 
[2026-04-05 16:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:57:01] [INFO] Checking activity reminders 
[2026-04-05 16:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:57:16] [INFO] Checking activity reminders 
[2026-04-05 16:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:57:31] [INFO] Checking activity reminders 
[2026-04-05 16:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:57:55] [INFO] Checking activity reminders 
[2026-04-05 16:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:58:01] [INFO] Checking activity reminders 
[2026-04-05 16:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:58:25] [INFO] Checking activity reminders 
[2026-04-05 16:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:58:31] [INFO] Checking activity reminders 
[2026-04-05 16:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:58:59] [INFO] Checking activity reminders 
[2026-04-05 16:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:59:01] [INFO] Checking activity reminders 
[2026-04-05 16:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:59:31] [INFO] Checking activity reminders 
[2026-04-05 16:59:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:59:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:59:34] [INFO] Checking activity reminders 
[2026-04-05 16:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:59:43] [INFO] Checking activity reminders 
[2026-04-05 16:59:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:59:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 16:59:57] [INFO] Checking activity reminders 
[2026-04-05 16:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 16:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:00:01] [INFO] Checking activity reminders 
[2026-04-05 17:00:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:00:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:00:27] [INFO] Checking activity reminders 
[2026-04-05 17:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:00:31] [INFO] Checking activity reminders 
[2026-04-05 17:00:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:00:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:00:57] [INFO] Checking activity reminders 
[2026-04-05 17:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:01:01] [INFO] Checking activity reminders 
[2026-04-05 17:01:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:01:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:01:31] [INFO] Checking activity reminders 
[2026-04-05 17:01:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:01:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:02:02] [INFO] Checking activity reminders 
[2026-04-05 17:02:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:02:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:02:25] [INFO] Checking activity reminders 
[2026-04-05 17:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:02:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-05 17:02:32] [INFO] Checking activity reminders 
[2026-04-05 17:02:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:02:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:03:02] [INFO] Checking activity reminders 
[2026-04-05 17:03:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:03:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:03:02] [INFO] Checking activity reminders 
[2026-04-05 17:03:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:03:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:03:32] [INFO] Checking activity reminders 
[2026-04-05 17:03:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:03:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:04:02] [INFO] Checking activity reminders 
[2026-04-05 17:04:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:04:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:04:32] [INFO] Checking activity reminders 
[2026-04-05 17:04:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:04:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:05:02] [INFO] Checking activity reminders 
[2026-04-05 17:05:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:05:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:05:32] [INFO] Checking activity reminders 
[2026-04-05 17:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:02] [INFO] Checking activity reminders 
[2026-04-05 17:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:30] [INFO] Activity save request {"post_data":{"contact_id":"20946","deal_id":"local_69d20e9e813005.05360731","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 17:06:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20946","note_was_empty":true}
[2026-04-05 17:06:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"20946","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:30] [INFO] Updating virtual stage {"contact_id":"20946","stage_name":"deal_registered","force":false}
[2026-04-05 17:06:30] [INFO] Virtual stage successfully saved {"contact_id":"20946","stage_name":"deal_registered"}
[2026-04-05 17:06:30] [INFO] Virtual stage updated after activity save {"contact_id":"20946"}
[2026-04-05 17:06:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20e9e813005.05360731","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 17:06:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d2655e0ffa40.91729708","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69d2655e0ffa40.91729708"}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:30] [INFO] Updating virtual stage {"contact_id":"20946","stage_name":"deal_registered","force":false}
[2026-04-05 17:06:30] [INFO] Virtual stage successfully saved {"contact_id":"20946","stage_name":"deal_registered"}
[2026-04-05 17:06:30] [INFO] Virtual stage updated after activity save {"contact_id":"20946"}
[2026-04-05 17:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20946","person_id":"20143"}
[2026-04-05 17:06:32] [INFO] Checking activity reminders 
[2026-04-05 17:06:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:34] [INFO] Checking activity reminders 
[2026-04-05 17:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:36] [INFO] Checking activity reminders 
[2026-04-05 17:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:38] [INFO] Checking activity reminders 
[2026-04-05 17:06:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:40] [INFO] Checking activity reminders 
[2026-04-05 17:06:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:41] [INFO] Checking activity reminders 
[2026-04-05 17:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:06:43] [INFO] Checking activity reminders 
[2026-04-05 17:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:07:11] [INFO] Checking activity reminders 
[2026-04-05 17:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:07:14] [INFO] Checking activity reminders 
[2026-04-05 17:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:07:44] [INFO] Checking activity reminders 
[2026-04-05 17:07:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:07:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:08:14] [INFO] Checking activity reminders 
[2026-04-05 17:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:08:44] [INFO] Checking activity reminders 
[2026-04-05 17:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:09:10] [INFO] Checking activity reminders 
[2026-04-05 17:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:09:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:09:36] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:09:36","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 17:09:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:09:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1211","is_new_deal":false}
[2026-04-05 17:09:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 17:09:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 17:09:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 17:09:36] [INFO] getContactPrimaryPhone called {"contact_id":"1211"}
[2026-04-05 17:09:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:09:36] [INFO] getContactPrimaryPhone result {"contact_id":"1211","person_found":true,"primary_phone":"9135603622"}
[2026-04-05 17:09:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135603622"}
[2026-04-05 17:09:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135603622","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:09:36"}
[2026-04-05 17:09:36] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","existing_deal_found":true,"existing_contact_id":"1211","existing_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:09:36"}
[2026-04-05 17:09:36] [INFO] DealController.save validated payments {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 17:09:36] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1211","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 17:09:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d21034005ee8.26116387","contact_didar_id":"1211","title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135603622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین زین الدینی","existing_deal":"YES","existing_deal_id":"local_69d21034005ee8.26116387","existing_deal_status":"Pending","server_time":"2026-04-05 17:09:36","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 17:09:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:09:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 17:09:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:09:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:09:40] [INFO] Checking activity reminders 
[2026-04-05 17:09:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:09:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:10:10] [INFO] Checking activity reminders 
[2026-04-05 17:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:10:41] [INFO] Checking activity reminders 
[2026-04-05 17:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:11:11] [INFO] Checking activity reminders 
[2026-04-05 17:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:11:41] [INFO] Checking activity reminders 
[2026-04-05 17:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:12:11] [INFO] Checking activity reminders 
[2026-04-05 17:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:12:41] [INFO] Checking activity reminders 
[2026-04-05 17:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:13:11] [INFO] Checking activity reminders 
[2026-04-05 17:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:13:41] [INFO] Checking activity reminders 
[2026-04-05 17:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:14:10] [INFO] Activity save request {"post_data":{"contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ابان ماه رفته خدمت و سربازی \r\nدرگیر سربازی \/ نمیتونه گوشی چک کنه \r\nنتظر شرایط شو ثابت کنه خودش تماس میگیره \r\nپارسال هم بیعانه داد ولی تکمیل نکرد ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:14:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:11] [INFO] Checking activity reminders 
[2026-04-05 17:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:14:15] [INFO] Activity save request {"post_data":{"contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"ابان ماه رفته خدمت و سربازی \r\nدرگیر سربازی \/ نمیتونه گوشی چک کنه \r\nنتظر شرایط شو ثابت کنه خودش تماس میگیره \r\nپارسال هم بیعانه داد ولی تکمیل نکرد ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 17:14:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1211","note_was_empty":true}
[2026-04-05 17:14:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"1211","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:15] [INFO] Updating virtual stage {"contact_id":"1211","stage_name":"deal_registered","force":false}
[2026-04-05 17:14:15] [INFO] Virtual stage successfully saved {"contact_id":"1211","stage_name":"deal_registered"}
[2026-04-05 17:14:15] [INFO] Virtual stage updated after activity save {"contact_id":"1211"}
[2026-04-05 17:14:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d21034005ee8.26116387","stage":"تماس پیگیری","status_change":null}
[2026-04-05 17:14:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d2672f4131f2.31276631","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d2672f4131f2.31276631"}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:15] [INFO] Updating virtual stage {"contact_id":"1211","stage_name":"deal_registered","force":false}
[2026-04-05 17:14:15] [INFO] Virtual stage successfully saved {"contact_id":"1211","stage_name":"deal_registered"}
[2026-04-05 17:14:15] [INFO] Virtual stage updated after activity save {"contact_id":"1211"}
[2026-04-05 17:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-05 17:14:23] [INFO] Checking activity reminders 
[2026-04-05 17:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:14:25] [INFO] Checking activity reminders 
[2026-04-05 17:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:14:26] [INFO] Checking activity reminders 
[2026-04-05 17:14:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:14:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:14:51] [INFO] Checking activity reminders 
[2026-04-05 17:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-05 17:15:21] [INFO] Checking activity reminders 
[2026-04-05 17:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:15:51] [INFO] Checking activity reminders 
[2026-04-05 17:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:16:22] [INFO] Checking activity reminders 
[2026-04-05 17:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:16:52] [INFO] Checking activity reminders 
[2026-04-05 17:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:17:22] [INFO] Checking activity reminders 
[2026-04-05 17:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:17:52] [INFO] Checking activity reminders 
[2026-04-05 17:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:18:22] [INFO] Checking activity reminders 
[2026-04-05 17:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:18:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:18:27","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 17:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-05 17:18:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-05 17:18:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 17:18:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 17:18:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 17:18:27] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-05 17:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-05 17:18:27] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-05 17:18:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-05 17:18:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:18:27"}
[2026-04-05 17:18:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:18:27"}
[2026-04-05 17:18:27] [INFO] DealController.save validated payments {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","payments_count":2,"status":"Pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 17:18:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 17:18:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd13dc5ee115.33735493","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"Pending","payable_amount":27000000,"payment_amount":22000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"YES","existing_deal_id":"local_69cd13dc5ee115.33735493","existing_deal_status":"Pending","server_time":"2026-04-05 17:18:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 17:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-05 17:18:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"Pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":22000000,"server_time":"2026-04-05 17:18:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-05 17:18:52] [INFO] Checking activity reminders 
[2026-04-05 17:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:19:22] [INFO] Checking activity reminders 
[2026-04-05 17:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:19:52] [INFO] Checking activity reminders 
[2026-04-05 17:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:20:23] [INFO] Checking activity reminders 
[2026-04-05 17:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:20:53] [INFO] Checking activity reminders 
[2026-04-05 17:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:21:23] [INFO] Checking activity reminders 
[2026-04-05 17:21:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:21:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:21:42] [INFO] Checking activity reminders 
[2026-04-05 17:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:21:50] [INFO] Checking activity reminders 
[2026-04-05 17:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:21:52] [INFO] Checking activity reminders 
[2026-04-05 17:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:21:53] [INFO] Checking activity reminders 
[2026-04-05 17:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:22:23] [INFO] Checking activity reminders 
[2026-04-05 17:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:22:53] [INFO] Checking activity reminders 
[2026-04-05 17:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:23:24] [INFO] Checking activity reminders 
[2026-04-05 17:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:23:54] [INFO] Checking activity reminders 
[2026-04-05 17:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:24:24] [INFO] Checking activity reminders 
[2026-04-05 17:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:24:46] [INFO] Checking activity reminders 
[2026-04-05 17:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:25:16] [INFO] Checking activity reminders 
[2026-04-05 17:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:25:47] [INFO] Checking activity reminders 
[2026-04-05 17:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:26:17] [INFO] Checking activity reminders 
[2026-04-05 17:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:26:47] [INFO] Checking activity reminders 
[2026-04-05 17:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:27:17] [INFO] Checking activity reminders 
[2026-04-05 17:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:27:47] [INFO] Checking activity reminders 
[2026-04-05 17:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:28:17] [INFO] Checking activity reminders 
[2026-04-05 17:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:28:47] [INFO] Checking activity reminders 
[2026-04-05 17:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:29:15] [INFO] Checking activity reminders 
[2026-04-05 17:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:29:16] [INFO] Checking activity reminders 
[2026-04-05 17:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:29:46] [INFO] Checking activity reminders 
[2026-04-05 17:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:30:17] [INFO] Checking activity reminders 
[2026-04-05 17:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:30:48] [INFO] Checking activity reminders 
[2026-04-05 17:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:31:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:31:08","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 17:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20372","is_new_deal":false}
[2026-04-05 17:31:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 17:31:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 17:31:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 17:31:08] [INFO] getContactPrimaryPhone called {"contact_id":"20372"}
[2026-04-05 17:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:08] [INFO] getContactPrimaryPhone result {"contact_id":"20372","person_found":true,"primary_phone":"9130530262"}
[2026-04-05 17:31:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130530262"}
[2026-04-05 17:31:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130530262","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:31:08"}
[2026-04-05 17:31:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","existing_deal_found":true,"existing_contact_id":"20372","existing_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:31:08"}
[2026-04-05 17:31:08] [INFO] DealController.save validated payments {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 17:31:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20372","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 17:31:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20e546100a7.94477321","contact_didar_id":"20372","title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130530262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل فلاحتی","existing_deal":"YES","existing_deal_id":"local_69d20e546100a7.94477321","existing_deal_status":"Pending","server_time":"2026-04-05 17:31:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 17:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 17:31:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:31:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:18] [INFO] Checking activity reminders 
[2026-04-05 17:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:31:28] [INFO] Activity save request {"post_data":{"contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"بیپاسخ \r\nپیام در بله و پیامک \r\n","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 17:31:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20372","note_was_empty":true}
[2026-04-05 17:31:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"20372","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:28] [INFO] Updating virtual stage {"contact_id":"20372","stage_name":"deal_registered","force":false}
[2026-04-05 17:31:28] [INFO] Virtual stage successfully saved {"contact_id":"20372","stage_name":"deal_registered"}
[2026-04-05 17:31:28] [INFO] Virtual stage updated after activity save {"contact_id":"20372"}
[2026-04-05 17:31:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20e546100a7.94477321","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 17:31:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d26b3809c3c9.17319138","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69d26b3809c3c9.17319138"}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:28] [INFO] Updating virtual stage {"contact_id":"20372","stage_name":"deal_registered","force":false}
[2026-04-05 17:31:28] [INFO] Virtual stage successfully saved {"contact_id":"20372","stage_name":"deal_registered"}
[2026-04-05 17:31:28] [INFO] Virtual stage updated after activity save {"contact_id":"20372"}
[2026-04-05 17:31:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-05 17:31:48] [INFO] Checking activity reminders 
[2026-04-05 17:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:31:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:32:18] [INFO] Checking activity reminders 
[2026-04-05 17:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:32:48] [INFO] Checking activity reminders 
[2026-04-05 17:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:33:18] [INFO] Checking activity reminders 
[2026-04-05 17:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:33:48] [INFO] Checking activity reminders 
[2026-04-05 17:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:34:19] [INFO] Checking activity reminders 
[2026-04-05 17:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:34:49] [INFO] Checking activity reminders 
[2026-04-05 17:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:35:19] [INFO] Checking activity reminders 
[2026-04-05 17:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:35:49] [INFO] Checking activity reminders 
[2026-04-05 17:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:36:19] [INFO] Checking activity reminders 
[2026-04-05 17:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:36:49] [INFO] Checking activity reminders 
[2026-04-05 17:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:37:19] [INFO] Checking activity reminders 
[2026-04-05 17:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:37:50] [INFO] Checking activity reminders 
[2026-04-05 17:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:38:20] [INFO] Checking activity reminders 
[2026-04-05 17:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:38:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:38:45","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 17:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:38:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","is_new_deal":false}
[2026-04-05 17:38:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:38:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:38:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:38:45] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-05 17:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:38:45] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-05 17:38:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-05 17:38:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:38:45"}
[2026-04-05 17:38:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","existing_deal_found":true,"existing_contact_id":"21119","existing_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:38:45"}
[2026-04-05 17:38:45] [INFO] DealController.save validated payments {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 17:38:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 17:38:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2242cc75260.76890464","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"YES","existing_deal_id":"local_69d2242cc75260.76890464","existing_deal_status":"Pending","server_time":"2026-04-05 17:38:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 17:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:38:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 17:38:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:38:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:38:50] [INFO] Checking activity reminders 
[2026-04-05 17:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:39:20] [INFO] Checking activity reminders 
[2026-04-05 17:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:39:37] [WARNING] Auth check failed - not authenticated {"session_id":"cshvtji1vj82c49trfp9a4vgk9","session_keys":[],"action":"check_reminders"}
[2026-04-05 17:39:37] [WARNING] Auth check failed - not authenticated {"session_id":"cshvtji1vj82c49trfp9a4vgk9","session_keys":[],"action":"log_client_event"}
[2026-04-05 17:39:41] [WARNING] Auth check failed - not authenticated {"session_id":"cshvtji1vj82c49trfp9a4vgk9","session_keys":[],"action":"log_client_event"}
[2026-04-05 17:39:41] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 17:39:41] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 17:39:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 17:39:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:39:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:39:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:39:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:39:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:39:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:39:50] [INFO] Checking activity reminders 
[2026-04-05 17:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:40:12] [INFO] Checking activity reminders 
[2026-04-05 17:40:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:40:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:40:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:40:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:40:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:40:20] [INFO] Checking activity reminders 
[2026-04-05 17:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:40:42] [INFO] Checking activity reminders 
[2026-04-05 17:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:40:50] [INFO] Checking activity reminders 
[2026-04-05 17:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:41:12] [INFO] Checking activity reminders 
[2026-04-05 17:41:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:41:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:41:21] [INFO] Checking activity reminders 
[2026-04-05 17:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:41:32] [INFO] Checking activity reminders 
[2026-04-05 17:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:41:42] [INFO] Activity save request {"post_data":{"contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"600 میلیون چک وصول نشده داره \r\nبرای تاریخ 20 فروردین تسویه \r\nالان بیعانه واریز ","activity_duration":"0","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:41:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Activity save request {"post_data":{"contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"600 میلیون چک وصول نشده داره \r\nبرای تاریخ 20 فروردین تسویه \r\nالان بیعانه واریز ","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 17:41:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21119","note_was_empty":true}
[2026-04-05 17:41:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"21119","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-05 17:41:50] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-05 17:41:50] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-05 17:41:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2242cc75260.76890464","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-05 17:41:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d26da69e9a88.01501936","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d26da69e9a88.01501936"}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:50] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-05 17:41:50] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-05 17:41:50] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-05 17:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:41:51] [INFO] Checking activity reminders 
[2026-04-05 17:41:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:41:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:41:55] [INFO] Checking activity reminders 
[2026-04-05 17:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:42:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:42:21] [INFO] Checking activity reminders 
[2026-04-05 17:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:42:25] [INFO] Checking activity reminders 
[2026-04-05 17:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:42:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:42:37] [INFO] generateDealTitle result {"contact_id":"local_69b19fc3494035.29107056","person_name":"لید جدید","mobile":"1245649494","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 1245649494"}
[2026-04-05 17:42:51] [INFO] Checking activity reminders 
[2026-04-05 17:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:42:55] [INFO] Checking activity reminders 
[2026-04-05 17:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:43:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"آموزش دیتیلینگ","contact_id":"local_69b19fc3494035.29107056","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:43:00","session_id":"cshvtji1vj82c49trfp9a4vgk9"}
[2026-04-05 17:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:43:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"آموزش دیتیلینگ","contact_id":"local_69b19fc3494035.29107056","is_new_deal":true}
[2026-04-05 17:43:00] [INFO] extractPhoneFromDealTitle called {"input_title":"آموزش دیتیلینگ"}
[2026-04-05 17:43:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"آموزش دیتیلینگ"}
[2026-04-05 17:43:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"آموزش دیتیلینگ"}
[2026-04-05 17:43:00] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b19fc3494035.29107056"}
[2026-04-05 17:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:43:00] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b19fc3494035.29107056","person_found":true,"primary_phone":"1245649494"}
[2026-04-05 17:43:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1245649494"}
[2026-04-05 17:43:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1245649494","contact_id":"local_69b19fc3494035.29107056","deal_id":"","is_new_deal":true,"incoming_title":"آموزش دیتیلینگ","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 17:43:00"}
[2026-04-05 17:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:43:00] [INFO] generateDealTitle result {"contact_id":"local_69b19fc3494035.29107056","person_name":"لید جدید","mobile":"1245649494","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 1245649494"}
[2026-04-05 17:43:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69b19fc3494035.29107056","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 17:43:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b19fc3494035.29107056","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 17:43:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69b19fc3494035.29107056","title":"معامله دوم 1245649494 | آموزش دیتیلینگ","base_title_used":"معامله دوم 1245649494","services_text":"آموزش دیتیلینگ","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":15000000,"payment_amount":0,"payments_present":false,"requested_services":["آموزش دیتیلینگ"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 17:43:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 17:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:43:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 17:43:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69b19fc3494035.29107056","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 1245649494 | آموزش دیتیلینگ","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":15000000,"payment_amount":0,"server_time":"2026-04-05 17:43:00","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:43:21] [INFO] Checking activity reminders 
[2026-04-05 17:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:43:25] [INFO] Checking activity reminders 
[2026-04-05 17:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:43:51] [INFO] Checking activity reminders 
[2026-04-05 17:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:21] [INFO] Checking activity reminders 
[2026-04-05 17:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:21] [INFO] Checking activity reminders 
[2026-04-05 17:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 17:44:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:44:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:44:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:44:40] [INFO] Checking activity reminders 
[2026-04-05 17:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:44:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b19fc3494035.29107056","person_id":"21823"}
[2026-04-05 17:44:46] [INFO] Checking activity reminders 
[2026-04-05 17:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:52] [INFO] Checking activity reminders 
[2026-04-05 17:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:44:58] [INFO] Checking activity reminders 
[2026-04-05 17:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:45:22] [INFO] Checking activity reminders 
[2026-04-05 17:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:45:28] [INFO] Checking activity reminders 
[2026-04-05 17:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:45:58] [INFO] Checking activity reminders 
[2026-04-05 17:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:46:28] [INFO] Checking activity reminders 
[2026-04-05 17:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:46:47] [INFO] Checking activity reminders 
[2026-04-05 17:46:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:46:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:46:58] [INFO] Checking activity reminders 
[2026-04-05 17:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:47:27] [INFO] Checking activity reminders 
[2026-04-05 17:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:47:28] [INFO] Checking activity reminders 
[2026-04-05 17:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:47:39] [INFO] Checking activity reminders 
[2026-04-05 17:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:47:57] [INFO] Added column to transactions table {"column":"check_owner_name"}
[2026-04-05 17:47:57] [INFO] Added column to transactions table {"column":"tracking_code_last4"}
[2026-04-05 17:47:57] [INFO] Added column to deals table {"column":"created_by_didar_id"}
[2026-04-05 17:47:57] [INFO] Added column to deals table {"column":"created_by_name"}
[2026-04-05 17:47:59] [INFO] Checking activity reminders 
[2026-04-05 17:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:48:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 17:48:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:48:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:48:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:48:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 17:48:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:48:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:48:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:48:29] [INFO] Checking activity reminders 
[2026-04-05 17:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:48:51] [INFO] Checking activity reminders 
[2026-04-05 17:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:49:00] [INFO] Checking activity reminders 
[2026-04-05 17:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:13] [INFO] generateDealTitle result {"contact_id":"local_69d1429104c535.24317537","person_name":"تست ایمپورت","mobile":"9128456789","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128456789"}
[2026-04-05 17:49:22] [INFO] Checking activity reminders 
[2026-04-05 17:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:49:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"مدرک کارشناسی فنی و حرفه ای","contact_id":"local_69d1429104c535.24317537","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:49:23","session_id":"cshvtji1vj82c49trfp9a4vgk9"}
[2026-04-05 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مدرک کارشناسی فنی و حرفه ای","contact_id":"local_69d1429104c535.24317537","is_new_deal":true}
[2026-04-05 17:49:23] [INFO] extractPhoneFromDealTitle called {"input_title":"مدرک کارشناسی فنی و حرفه ای"}
[2026-04-05 17:49:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"مدرک کارشناسی فنی و حرفه ای"}
[2026-04-05 17:49:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مدرک کارشناسی فنی و حرفه ای"}
[2026-04-05 17:49:23] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d1429104c535.24317537"}
[2026-04-05 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:23] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d1429104c535.24317537","person_found":true,"primary_phone":"9128456789"}
[2026-04-05 17:49:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128456789"}
[2026-04-05 17:49:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128456789","contact_id":"local_69d1429104c535.24317537","deal_id":"","is_new_deal":true,"incoming_title":"مدرک کارشناسی فنی و حرفه ای","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-05 17:49:23"}
[2026-04-05 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:23] [INFO] generateDealTitle result {"contact_id":"local_69d1429104c535.24317537","person_name":"تست ایمپورت","mobile":"9128456789","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9128456789"}
[2026-04-05 17:49:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69d1429104c535.24317537","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-05 17:49:23] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69d1429104c535.24317537","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-05 17:49:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69d1429104c535.24317537","title":"معامله سوم 9128456789 | مدرک کارشناسی فنی و حرفه ای","base_title_used":"معامله سوم 9128456789","services_text":"مدرک کارشناسی فنی و حرفه ای","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":4500000,"payment_amount":0,"payments_present":false,"requested_services":["مدرک کارشناسی فنی و حرفه ای"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"تست ایمپورت","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-05 17:49:23","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-05 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-05 17:49:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69d1429104c535.24317537","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9128456789 | مدرک کارشناسی فنی و حرفه ای","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":4500000,"payment_amount":0,"server_time":"2026-04-05 17:49:23","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:49:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 17:49:31] [INFO] Checking activity reminders 
[2026-04-05 17:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:49:53] [INFO] Checking activity reminders 
[2026-04-05 17:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:50:02] [INFO] Checking activity reminders 
[2026-04-05 17:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 17:50:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_697897aaa47eb0.87826667","person_id":"21564"}
[2026-04-05 17:50:23] [INFO] Checking activity reminders 
[2026-04-05 17:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:50:32] [INFO] Checking activity reminders 
[2026-04-05 17:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:50:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 17:50:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:50:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:50:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:51:02] [INFO] Checking activity reminders 
[2026-04-05 17:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:51:13] [INFO] Checking activity reminders 
[2026-04-05 17:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:51:26] [INFO] Checking activity reminders 
[2026-04-05 17:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:51:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:51:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:51:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:51:32] [INFO] Checking activity reminders 
[2026-04-05 17:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:51:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 17:51:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 17:51:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 17:51:56] [INFO] Checking activity reminders 
[2026-04-05 17:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:52:02] [INFO] Checking activity reminders 
[2026-04-05 17:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:52:26] [INFO] Checking activity reminders 
[2026-04-05 17:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:52:32] [INFO] Checking activity reminders 
[2026-04-05 17:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:53:02] [INFO] Checking activity reminders 
[2026-04-05 17:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:53:32] [INFO] Checking activity reminders 
[2026-04-05 17:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:54:02] [INFO] Checking activity reminders 
[2026-04-05 17:54:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:54:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:54:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20867","deal_id":"local_69d20e79c9e8e7.85606887","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 17:54:30","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 17:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:54:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20867","is_new_deal":false}
[2026-04-05 17:54:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:54:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:54:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 17:54:30] [INFO] getContactPrimaryPhone called {"contact_id":"20867"}
[2026-04-05 17:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:54:30] [INFO] getContactPrimaryPhone result {"contact_id":"20867","person_found":true,"primary_phone":"9130758155"}
[2026-04-05 17:54:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130758155"}
[2026-04-05 17:54:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130758155","contact_id":"20867","deal_id":"local_69d20e79c9e8e7.85606887","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:54:30"}
[2026-04-05 17:54:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20e79c9e8e7.85606887","contact_id":"20867","existing_deal_found":true,"existing_contact_id":"20867","existing_title":"معامله دوم 9130758155 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 17:54:30"}
[2026-04-05 17:54:30] [INFO] DealController.save validated payments {"deal_id":"local_69d20e79c9e8e7.85606887","contact_id":"20867","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 17:54:30] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20867","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 17:54:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20e79c9e8e7.85606887","contact_didar_id":"20867","title":"معامله دوم 9130758155 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9130758155","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کربلایی","existing_deal":"YES","existing_deal_id":"local_69d20e79c9e8e7.85606887","existing_deal_status":"Pending","server_time":"2026-04-05 17:54:30","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 17:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:54:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20e79c9e8e7.85606887","contact_id":"20867","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130758155 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 17:54:30","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 17:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:54:32] [INFO] Checking activity reminders 
[2026-04-05 17:54:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:54:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:55:02] [INFO] Checking activity reminders 
[2026-04-05 17:55:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:55:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:55:33] [INFO] Checking activity reminders 
[2026-04-05 17:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:56:03] [INFO] Checking activity reminders 
[2026-04-05 17:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:56:16] [INFO] Activity save request {"post_data":{"contact_id":"20867","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"شهر اطراف اصفهان \r\nخیلی دوست داره تو کانال باشه ولی یکساله نمیتونه \r\nکلی چک داره هنوز نتونسته نقد کنه \r\nپرزنت 405\/ پیش بینی 6 ماهه با پشتیبانی استاد \r\nنقد و چک \r\nارسال اطلاعات در بله \r\n","activity_duration":"15","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 17:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:56:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 17:56:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 17:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:56:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20867","note_was_empty":true}
[2026-04-05 17:56:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"20867","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 17:56:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d271080eab27.97651005","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 17:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:56:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69d271080eab27.97651005"}
[2026-04-05 17:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:56:16] [INFO] Updating virtual stage {"contact_id":"20867","stage_name":"deal_registered","force":false}
[2026-04-05 17:56:16] [INFO] Virtual stage successfully saved {"contact_id":"20867","stage_name":"deal_registered"}
[2026-04-05 17:56:16] [INFO] Virtual stage updated after activity save {"contact_id":"20867"}
[2026-04-05 17:56:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-05 17:56:25] [INFO] Checking activity reminders 
[2026-04-05 17:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:56:55] [INFO] Checking activity reminders 
[2026-04-05 17:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:57:25] [INFO] Checking activity reminders 
[2026-04-05 17:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:57:56] [INFO] Checking activity reminders 
[2026-04-05 17:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:57:58] [INFO] Checking activity reminders 
[2026-04-05 17:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:58:00] [INFO] Checking activity reminders 
[2026-04-05 17:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:58:02] [INFO] Checking activity reminders 
[2026-04-05 17:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:58:03] [INFO] Checking activity reminders 
[2026-04-05 17:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:58:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 17:58:33] [INFO] Checking activity reminders 
[2026-04-05 17:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:59:04] [INFO] Checking activity reminders 
[2026-04-05 17:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 17:59:34] [INFO] Checking activity reminders 
[2026-04-05 17:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 17:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:00:04] [INFO] Checking activity reminders 
[2026-04-05 18:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:00:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 18:00:05","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 18:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 18:00:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","is_new_deal":false}
[2026-04-05 18:00:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 18:00:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 18:00:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 18:00:05] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-05 18:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 18:00:05] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-05 18:00:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-05 18:00:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 18:00:05"}
[2026-04-05 18:00:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","existing_deal_found":true,"existing_contact_id":"21119","existing_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 18:00:05"}
[2026-04-05 18:00:05] [INFO] DealController.save validated payments {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 18:00:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 18:00:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2242cc75260.76890464","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"YES","existing_deal_id":"local_69d2242cc75260.76890464","existing_deal_status":"Pending","server_time":"2026-04-05 18:00:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 18:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 18:00:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 18:00:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 18:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 18:00:34] [INFO] Checking activity reminders 
[2026-04-05 18:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:00:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:01:04] [INFO] Checking activity reminders 
[2026-04-05 18:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:05] [INFO] Checking activity reminders 
[2026-04-05 18:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:02:10] [INFO] Checking activity reminders 
[2026-04-05 18:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:11] [INFO] Checking activity reminders 
[2026-04-05 18:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:13] [INFO] Checking activity reminders 
[2026-04-05 18:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:14] [INFO] Checking activity reminders 
[2026-04-05 18:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:02:44] [INFO] Checking activity reminders 
[2026-04-05 18:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:03:14] [INFO] Checking activity reminders 
[2026-04-05 18:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:03:44] [INFO] Checking activity reminders 
[2026-04-05 18:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:04:14] [INFO] Checking activity reminders 
[2026-04-05 18:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:04:44] [INFO] Checking activity reminders 
[2026-04-05 18:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:05:14] [INFO] Checking activity reminders 
[2026-04-05 18:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:05:45] [INFO] Checking activity reminders 
[2026-04-05 18:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:06:15] [INFO] Checking activity reminders 
[2026-04-05 18:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:06:45] [INFO] Checking activity reminders 
[2026-04-05 18:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:07:15] [INFO] Checking activity reminders 
[2026-04-05 18:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:07:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 18:07:24","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 18:07:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15532","is_new_deal":false}
[2026-04-05 18:07:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 18:07:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 18:07:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 18:07:24] [INFO] getContactPrimaryPhone called {"contact_id":"15532"}
[2026-04-05 18:07:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:25] [INFO] getContactPrimaryPhone result {"contact_id":"15532","person_found":true,"primary_phone":"9134556865"}
[2026-04-05 18:07:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134556865"}
[2026-04-05 18:07:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134556865","contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 18:07:25"}
[2026-04-05 18:07:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","existing_deal_found":true,"existing_contact_id":"15532","existing_title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 18:07:25"}
[2026-04-05 18:07:25] [INFO] DealController.save validated payments {"deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-05 18:07:25] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15532","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 18:07:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20fc39e9293.51902719","contact_didar_id":"15532","title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9134556865","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسنی","existing_deal":"YES","existing_deal_id":"local_69d20fc39e9293.51902719","existing_deal_status":"Pending","server_time":"2026-04-05 18:07:25","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 18:07:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 18:07:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 18:07:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Activity save request {"post_data":{"contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 18:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 18:07:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 18:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15532","note_was_empty":true}
[2026-04-05 18:07:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"15532","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 18:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Updating virtual stage {"contact_id":"15532","stage_name":"deal_registered","force":false}
[2026-04-05 18:07:44] [INFO] Virtual stage successfully saved {"contact_id":"15532","stage_name":"deal_registered"}
[2026-04-05 18:07:44] [INFO] Virtual stage updated after activity save {"contact_id":"15532"}
[2026-04-05 18:07:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20fc39e9293.51902719","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-05 18:07:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d273b8d8bab7.68990052","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 18:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d273b8d8bab7.68990052"}
[2026-04-05 18:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:44] [INFO] Updating virtual stage {"contact_id":"15532","stage_name":"deal_registered","force":false}
[2026-04-05 18:07:44] [INFO] Virtual stage successfully saved {"contact_id":"15532","stage_name":"deal_registered"}
[2026-04-05 18:07:44] [INFO] Virtual stage updated after activity save {"contact_id":"15532"}
[2026-04-05 18:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 18:07:45] [INFO] Checking activity reminders 
[2026-04-05 18:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 18:08:15] [INFO] Checking activity reminders 
[2026-04-05 18:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:08:45] [INFO] Checking activity reminders 
[2026-04-05 18:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:09:15] [INFO] Checking activity reminders 
[2026-04-05 18:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:09:45] [INFO] Checking activity reminders 
[2026-04-05 18:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:10:15] [INFO] Checking activity reminders 
[2026-04-05 18:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:10:45] [INFO] Checking activity reminders 
[2026-04-05 18:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:11:16] [INFO] Checking activity reminders 
[2026-04-05 18:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:11:46] [INFO] Checking activity reminders 
[2026-04-05 18:11:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:11:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:12:16] [INFO] Checking activity reminders 
[2026-04-05 18:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:12:46] [INFO] Checking activity reminders 
[2026-04-05 18:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:13:16] [INFO] Checking activity reminders 
[2026-04-05 18:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:13:46] [INFO] Checking activity reminders 
[2026-04-05 18:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:14:16] [INFO] Checking activity reminders 
[2026-04-05 18:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:14:47] [INFO] Checking activity reminders 
[2026-04-05 18:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:15:17] [INFO] Checking activity reminders 
[2026-04-05 18:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:15:47] [INFO] Checking activity reminders 
[2026-04-05 18:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:16:17] [INFO] Checking activity reminders 
[2026-04-05 18:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:16:47] [INFO] Checking activity reminders 
[2026-04-05 18:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:17:17] [INFO] Checking activity reminders 
[2026-04-05 18:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:17:47] [INFO] Checking activity reminders 
[2026-04-05 18:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:18:18] [INFO] Checking activity reminders 
[2026-04-05 18:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:18:48] [INFO] Checking activity reminders 
[2026-04-05 18:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:19:18] [INFO] Checking activity reminders 
[2026-04-05 18:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:19:48] [INFO] Checking activity reminders 
[2026-04-05 18:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:20:18] [INFO] Checking activity reminders 
[2026-04-05 18:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:20:48] [INFO] Checking activity reminders 
[2026-04-05 18:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:21:18] [INFO] Checking activity reminders 
[2026-04-05 18:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:21:48] [INFO] Checking activity reminders 
[2026-04-05 18:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:22:18] [INFO] Checking activity reminders 
[2026-04-05 18:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:22:49] [INFO] Checking activity reminders 
[2026-04-05 18:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:23:19] [INFO] Checking activity reminders 
[2026-04-05 18:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:23:49] [INFO] Checking activity reminders 
[2026-04-05 18:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:24:19] [INFO] Checking activity reminders 
[2026-04-05 18:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:24:49] [INFO] Checking activity reminders 
[2026-04-05 18:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:24:59] [INFO] Checking activity reminders 
[2026-04-05 18:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:25:04] [INFO] Checking activity reminders 
[2026-04-05 18:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:25:19] [INFO] Checking activity reminders 
[2026-04-05 18:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:25:34] [INFO] Checking activity reminders 
[2026-04-05 18:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:25:49] [INFO] Checking activity reminders 
[2026-04-05 18:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:26:04] [INFO] Checking activity reminders 
[2026-04-05 18:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:26:19] [INFO] Checking activity reminders 
[2026-04-05 18:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:26:34] [INFO] Checking activity reminders 
[2026-04-05 18:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:26:49] [INFO] Checking activity reminders 
[2026-04-05 18:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:27:20] [INFO] Checking activity reminders 
[2026-04-05 18:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:27:50] [INFO] Checking activity reminders 
[2026-04-05 18:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:28:20] [INFO] Checking activity reminders 
[2026-04-05 18:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:28:50] [INFO] Checking activity reminders 
[2026-04-05 18:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 18:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-05 18:29:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-05 18:29:20] [INFO] Checking activity reminders 
[2026-04-05 18:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:29:24] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 18:29:24] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 18:29:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 18:29:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:29:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:29:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:29:50] [INFO] Checking activity reminders 
[2026-04-05 18:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:30:20] [INFO] Checking activity reminders 
[2026-04-05 18:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:30:20] [INFO] Checking activity reminders 
[2026-04-05 18:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:30:50] [INFO] Checking activity reminders 
[2026-04-05 18:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:31:20] [INFO] Checking activity reminders 
[2026-04-05 18:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:31:50] [INFO] Checking activity reminders 
[2026-04-05 18:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:32:20] [INFO] Checking activity reminders 
[2026-04-05 18:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:32:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-05 18:32:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 18:32:46] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 18:32:46] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 18:32:46] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 18:32:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 18:32:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:32:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:32:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:32:51] [INFO] Checking activity reminders 
[2026-04-05 18:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:33:16] [INFO] Checking activity reminders 
[2026-04-05 18:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:33:21] [INFO] Checking activity reminders 
[2026-04-05 18:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:33:47] [INFO] Checking activity reminders 
[2026-04-05 18:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:33:51] [INFO] Checking activity reminders 
[2026-04-05 18:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:34:17] [INFO] Checking activity reminders 
[2026-04-05 18:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:34:21] [INFO] Checking activity reminders 
[2026-04-05 18:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:34:47] [INFO] Checking activity reminders 
[2026-04-05 18:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:34:51] [INFO] Checking activity reminders 
[2026-04-05 18:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:35:17] [INFO] Checking activity reminders 
[2026-04-05 18:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:35:21] [INFO] Checking activity reminders 
[2026-04-05 18:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:35:47] [INFO] Checking activity reminders 
[2026-04-05 18:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:35:51] [INFO] Checking activity reminders 
[2026-04-05 18:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:36:17] [INFO] Checking activity reminders 
[2026-04-05 18:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:36:21] [INFO] Checking activity reminders 
[2026-04-05 18:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:36:47] [INFO] Checking activity reminders 
[2026-04-05 18:36:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:36:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:36:51] [INFO] Checking activity reminders 
[2026-04-05 18:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:37:17] [INFO] Checking activity reminders 
[2026-04-05 18:37:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:37:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:37:21] [INFO] Checking activity reminders 
[2026-04-05 18:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:37:47] [INFO] Checking activity reminders 
[2026-04-05 18:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:37:51] [INFO] Checking activity reminders 
[2026-04-05 18:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:38:19] [INFO] Checking activity reminders 
[2026-04-05 18:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:38:22] [INFO] Checking activity reminders 
[2026-04-05 18:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:38:49] [INFO] Checking activity reminders 
[2026-04-05 18:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:38:52] [INFO] Checking activity reminders 
[2026-04-05 18:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:39:19] [INFO] Checking activity reminders 
[2026-04-05 18:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:39:22] [INFO] Checking activity reminders 
[2026-04-05 18:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:39:49] [INFO] Checking activity reminders 
[2026-04-05 18:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:39:52] [INFO] Checking activity reminders 
[2026-04-05 18:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:40:20] [INFO] Checking activity reminders 
[2026-04-05 18:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:40:22] [INFO] Checking activity reminders 
[2026-04-05 18:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:40:50] [INFO] Checking activity reminders 
[2026-04-05 18:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:40:52] [INFO] Checking activity reminders 
[2026-04-05 18:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:41:20] [INFO] Checking activity reminders 
[2026-04-05 18:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:41:22] [INFO] Checking activity reminders 
[2026-04-05 18:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:41:50] [INFO] Checking activity reminders 
[2026-04-05 18:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:41:52] [INFO] Checking activity reminders 
[2026-04-05 18:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:42:20] [INFO] Checking activity reminders 
[2026-04-05 18:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:42:22] [INFO] Checking activity reminders 
[2026-04-05 18:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:42:50] [INFO] Checking activity reminders 
[2026-04-05 18:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:42:53] [INFO] Checking activity reminders 
[2026-04-05 18:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:43:23] [INFO] Checking activity reminders 
[2026-04-05 18:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:43:53] [INFO] Checking activity reminders 
[2026-04-05 18:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:44:23] [INFO] Checking activity reminders 
[2026-04-05 18:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:44:53] [INFO] Checking activity reminders 
[2026-04-05 18:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:45:23] [INFO] Checking activity reminders 
[2026-04-05 18:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:45:53] [INFO] Checking activity reminders 
[2026-04-05 18:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:46:23] [INFO] Checking activity reminders 
[2026-04-05 18:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:46:53] [INFO] Checking activity reminders 
[2026-04-05 18:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:47:24] [INFO] Checking activity reminders 
[2026-04-05 18:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:47:54] [INFO] Checking activity reminders 
[2026-04-05 18:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:48:24] [INFO] Checking activity reminders 
[2026-04-05 18:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:48:54] [INFO] Checking activity reminders 
[2026-04-05 18:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:49:24] [INFO] Checking activity reminders 
[2026-04-05 18:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:49:54] [INFO] Checking activity reminders 
[2026-04-05 18:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:50:24] [INFO] Checking activity reminders 
[2026-04-05 18:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:50:54] [INFO] Checking activity reminders 
[2026-04-05 18:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:51:24] [INFO] Checking activity reminders 
[2026-04-05 18:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:51:54] [INFO] Checking activity reminders 
[2026-04-05 18:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:52:22] [INFO] Checking activity reminders 
[2026-04-05 18:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:52:24] [INFO] Checking activity reminders 
[2026-04-05 18:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:52:26] [INFO] Checking activity reminders 
[2026-04-05 18:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:52:54] [INFO] Checking activity reminders 
[2026-04-05 18:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:53:25] [INFO] Checking activity reminders 
[2026-04-05 18:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:53:55] [INFO] Checking activity reminders 
[2026-04-05 18:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:54:25] [INFO] Checking activity reminders 
[2026-04-05 18:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:54:55] [INFO] Checking activity reminders 
[2026-04-05 18:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:55:25] [INFO] Checking activity reminders 
[2026-04-05 18:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:56:48] [INFO] Checking activity reminders 
[2026-04-05 18:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:56:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:56:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:56:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:56:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:56:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:57:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:57:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:57:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:57:22] [INFO] Checking activity reminders 
[2026-04-05 18:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:57:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 18:57:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 18:57:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 18:57:52] [INFO] Checking activity reminders 
[2026-04-05 18:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:58:22] [INFO] Checking activity reminders 
[2026-04-05 18:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:58:52] [INFO] Checking activity reminders 
[2026-04-05 18:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:59:22] [INFO] Checking activity reminders 
[2026-04-05 18:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:59:36] [INFO] Checking activity reminders 
[2026-04-05 18:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 18:59:52] [INFO] Checking activity reminders 
[2026-04-05 18:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 18:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:00:06] [INFO] Checking activity reminders 
[2026-04-05 19:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:00:22] [INFO] Checking activity reminders 
[2026-04-05 19:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:00:37] [INFO] Checking activity reminders 
[2026-04-05 19:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:00:52] [INFO] Checking activity reminders 
[2026-04-05 19:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:01:07] [INFO] Checking activity reminders 
[2026-04-05 19:01:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:01:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:01:22] [INFO] Checking activity reminders 
[2026-04-05 19:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:01:37] [INFO] Checking activity reminders 
[2026-04-05 19:01:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:01:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:01:52] [INFO] Checking activity reminders 
[2026-04-05 19:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:02:07] [INFO] Activity save request {"post_data":{"contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"از کانال عمومی و بودجه تونستم طلا 7 و 10 خرید کنم \/ پله ای و سود کردم \r\nدر کانال دیگه عضویت دارم با مبلغ کمتر \/ خرداد ماه تموم میشه و حتما میام در کانال استاد \r\nخودرو هنوز ثبت نامی تحویل نگرفتم \r\nدانش سیاسی و تحلیل های استاد بسیار بالاتر \r\nاز کانال عمومی استاد استفاده کردم \r\nحتما برای کانال اقدام میکنم ","activity_duration":"12","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 19:02:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15532","note_was_empty":true}
[2026-04-05 19:02:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"15532","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Updating virtual stage {"contact_id":"15532","stage_name":"deal_registered","force":false}
[2026-04-05 19:02:07] [INFO] Virtual stage successfully saved {"contact_id":"15532","stage_name":"deal_registered"}
[2026-04-05 19:02:07] [INFO] Virtual stage updated after activity save {"contact_id":"15532"}
[2026-04-05 19:02:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20fc39e9293.51902719","stage":"تماس پیگیری","status_change":null}
[2026-04-05 19:02:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d2807724bac0.20286894","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d2807724bac0.20286894"}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Updating virtual stage {"contact_id":"15532","stage_name":"deal_registered","force":false}
[2026-04-05 19:02:07] [INFO] Virtual stage successfully saved {"contact_id":"15532","stage_name":"deal_registered"}
[2026-04-05 19:02:07] [INFO] Virtual stage updated after activity save {"contact_id":"15532"}
[2026-04-05 19:02:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:07] [INFO] Checking activity reminders 
[2026-04-05 19:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:02:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:02:20","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15532","is_new_deal":false}
[2026-04-05 19:02:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 19:02:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 19:02:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 19:02:20] [INFO] getContactPrimaryPhone called {"contact_id":"15532"}
[2026-04-05 19:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:20] [INFO] getContactPrimaryPhone result {"contact_id":"15532","person_found":true,"primary_phone":"9134556865"}
[2026-04-05 19:02:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134556865"}
[2026-04-05 19:02:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134556865","contact_id":"15532","deal_id":"local_69d20fc39e9293.51902719","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:02:20"}
[2026-04-05 19:02:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","existing_deal_found":true,"existing_contact_id":"15532","existing_title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:02:20"}
[2026-04-05 19:02:20] [INFO] DealController.save validated payments {"deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 19:02:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15532","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:02:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20fc39e9293.51902719","contact_didar_id":"15532","title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9134556865","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسنی","existing_deal":"YES","existing_deal_id":"local_69d20fc39e9293.51902719","existing_deal_status":"Pending","server_time":"2026-04-05 19:02:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20fc39e9293.51902719","contact_id":"15532","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9134556865 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 19:02:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:02:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15532","person_id":"15940"}
[2026-04-05 19:02:22] [INFO] Checking activity reminders 
[2026-04-05 19:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:02:37] [INFO] Checking activity reminders 
[2026-04-05 19:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:02:53] [INFO] Checking activity reminders 
[2026-04-05 19:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:03:07] [INFO] Checking activity reminders 
[2026-04-05 19:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:03:23] [INFO] Checking activity reminders 
[2026-04-05 19:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:03:44] [INFO] Checking activity reminders 
[2026-04-05 19:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:03:50] [INFO] Checking activity reminders 
[2026-04-05 19:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:03:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 19:03:53] [INFO] Checking activity reminders 
[2026-04-05 19:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:04:09] [INFO] Checking activity reminders 
[2026-04-05 19:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:04:22] [INFO] Checking activity reminders 
[2026-04-05 19:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:04:23] [INFO] Checking activity reminders 
[2026-04-05 19:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:04:53] [INFO] Checking activity reminders 
[2026-04-05 19:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:04:53] [INFO] Checking activity reminders 
[2026-04-05 19:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:05:23] [INFO] Checking activity reminders 
[2026-04-05 19:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:05:23] [INFO] Checking activity reminders 
[2026-04-05 19:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:05:53] [INFO] Checking activity reminders 
[2026-04-05 19:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:05:53] [INFO] Checking activity reminders 
[2026-04-05 19:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:06:23] [INFO] Checking activity reminders 
[2026-04-05 19:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:06:23] [INFO] Checking activity reminders 
[2026-04-05 19:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:06:53] [INFO] Checking activity reminders 
[2026-04-05 19:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:06:53] [INFO] Checking activity reminders 
[2026-04-05 19:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:07:23] [INFO] Checking activity reminders 
[2026-04-05 19:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:07:23] [INFO] Checking activity reminders 
[2026-04-05 19:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:07:53] [INFO] Checking activity reminders 
[2026-04-05 19:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:07:53] [INFO] Checking activity reminders 
[2026-04-05 19:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:08:23] [INFO] Checking activity reminders 
[2026-04-05 19:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:08:23] [INFO] Checking activity reminders 
[2026-04-05 19:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:08:53] [INFO] Checking activity reminders 
[2026-04-05 19:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:08:53] [INFO] Checking activity reminders 
[2026-04-05 19:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:09:23] [INFO] Checking activity reminders 
[2026-04-05 19:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:09:24] [INFO] Checking activity reminders 
[2026-04-05 19:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:09:54] [INFO] Checking activity reminders 
[2026-04-05 19:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:09:54] [INFO] Checking activity reminders 
[2026-04-05 19:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:10:24] [INFO] Checking activity reminders 
[2026-04-05 19:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:10:24] [INFO] Checking activity reminders 
[2026-04-05 19:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:10:54] [INFO] Checking activity reminders 
[2026-04-05 19:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:10:54] [INFO] Checking activity reminders 
[2026-04-05 19:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:11:24] [INFO] Checking activity reminders 
[2026-04-05 19:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:11:24] [INFO] Checking activity reminders 
[2026-04-05 19:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:11:54] [INFO] Checking activity reminders 
[2026-04-05 19:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:11:54] [INFO] Checking activity reminders 
[2026-04-05 19:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:12:24] [INFO] Checking activity reminders 
[2026-04-05 19:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:12:24] [INFO] Checking activity reminders 
[2026-04-05 19:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:12:54] [INFO] Checking activity reminders 
[2026-04-05 19:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:12:54] [INFO] Checking activity reminders 
[2026-04-05 19:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:13:16] [INFO] Checking activity reminders 
[2026-04-05 19:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:13:25] [INFO] Checking activity reminders 
[2026-04-05 19:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:13:46] [INFO] Checking activity reminders 
[2026-04-05 19:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:13:55] [INFO] Checking activity reminders 
[2026-04-05 19:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:14:16] [INFO] Checking activity reminders 
[2026-04-05 19:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:14:25] [INFO] Checking activity reminders 
[2026-04-05 19:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:14:46] [INFO] Checking activity reminders 
[2026-04-05 19:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:14:55] [INFO] Checking activity reminders 
[2026-04-05 19:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:15:16] [INFO] Checking activity reminders 
[2026-04-05 19:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:15:25] [INFO] Checking activity reminders 
[2026-04-05 19:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:15:46] [INFO] Checking activity reminders 
[2026-04-05 19:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:15:55] [INFO] Checking activity reminders 
[2026-04-05 19:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:16:16] [INFO] Checking activity reminders 
[2026-04-05 19:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:16:17] [INFO] Checking activity reminders 
[2026-04-05 19:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:16:25] [INFO] Checking activity reminders 
[2026-04-05 19:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:16:47] [INFO] Checking activity reminders 
[2026-04-05 19:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:16:55] [INFO] Checking activity reminders 
[2026-04-05 19:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:17:17] [INFO] Checking activity reminders 
[2026-04-05 19:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:17:26] [INFO] Checking activity reminders 
[2026-04-05 19:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:17:48] [INFO] Checking activity reminders 
[2026-04-05 19:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:17:56] [INFO] Checking activity reminders 
[2026-04-05 19:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:18:18] [INFO] Checking activity reminders 
[2026-04-05 19:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:18:26] [INFO] Checking activity reminders 
[2026-04-05 19:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:18:48] [INFO] Checking activity reminders 
[2026-04-05 19:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:18:56] [INFO] Checking activity reminders 
[2026-04-05 19:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:19:18] [INFO] Checking activity reminders 
[2026-04-05 19:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:19:26] [INFO] Checking activity reminders 
[2026-04-05 19:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:19:48] [INFO] Checking activity reminders 
[2026-04-05 19:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:19:56] [INFO] Checking activity reminders 
[2026-04-05 19:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:20:18] [INFO] Checking activity reminders 
[2026-04-05 19:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:20:27] [INFO] Checking activity reminders 
[2026-04-05 19:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:20:49] [INFO] Checking activity reminders 
[2026-04-05 19:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:20:57] [INFO] Checking activity reminders 
[2026-04-05 19:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:20:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:21:19] [INFO] Checking activity reminders 
[2026-04-05 19:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:21:49] [INFO] Checking activity reminders 
[2026-04-05 19:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:22:19] [INFO] Checking activity reminders 
[2026-04-05 19:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:22:49] [INFO] Checking activity reminders 
[2026-04-05 19:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:23:19] [INFO] Checking activity reminders 
[2026-04-05 19:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:23:49] [INFO] Checking activity reminders 
[2026-04-05 19:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:23:50] [INFO] Checking activity reminders 
[2026-04-05 19:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:24:16] [INFO] Checking activity reminders 
[2026-04-05 19:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:24:19] [INFO] Checking activity reminders 
[2026-04-05 19:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:24:20] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9129750485","09129750485"]}
[2026-04-05 19:24:20] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9129750485","09129750485"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 19:24:20] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9129750485","full_name":"لید جدید"}
[2026-04-05 19:24:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:24:20] [INFO] Notification created {"notification_id":"625","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-05 19:24:32] [INFO] Checking activity reminders 
[2026-04-05 19:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:24:50] [INFO] Checking activity reminders 
[2026-04-05 19:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:24:52] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9163657985","09163657985"]}
[2026-04-05 19:24:52] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9163657985","09163657985"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-05 19:24:52] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9163657985","full_name":"لید جدید"}
[2026-04-05 19:24:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:24:52] [INFO] Notification created {"notification_id":"626","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-05 19:25:20] [INFO] Checking activity reminders 
[2026-04-05 19:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:25:50] [INFO] Checking activity reminders 
[2026-04-05 19:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:26:20] [INFO] Checking activity reminders 
[2026-04-05 19:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:26:50] [INFO] Checking activity reminders 
[2026-04-05 19:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:27:08] [INFO] Checking activity reminders 
[2026-04-05 19:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:27:10] [INFO] Checking activity reminders 
[2026-04-05 19:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:27:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11409","deal_id":"local_69d20ebed27959.88341138","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:27:26","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:27:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11409","is_new_deal":false}
[2026-04-05 19:27:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:27:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:27:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:27:26] [INFO] getContactPrimaryPhone called {"contact_id":"11409"}
[2026-04-05 19:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:27:26] [INFO] getContactPrimaryPhone result {"contact_id":"11409","person_found":true,"primary_phone":"9132064895"}
[2026-04-05 19:27:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132064895"}
[2026-04-05 19:27:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132064895","contact_id":"11409","deal_id":"local_69d20ebed27959.88341138","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:27:26"}
[2026-04-05 19:27:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20ebed27959.88341138","contact_id":"11409","existing_deal_found":true,"existing_contact_id":"11409","existing_title":"معامله سوم 9132064895 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:27:26"}
[2026-04-05 19:27:26] [INFO] DealController.save validated payments {"deal_id":"local_69d20ebed27959.88341138","contact_id":"11409","payments_count":1,"status":"Pending","pipeline_stage":"پرداخت"}
[2026-04-05 19:27:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11409","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:27:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20ebed27959.88341138","contact_didar_id":"11409","title":"معامله سوم 9132064895 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9132064895","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"Pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم سعادت","existing_deal":"YES","existing_deal_id":"local_69d20ebed27959.88341138","existing_deal_status":"Pending","server_time":"2026-04-05 19:27:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:27:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20ebed27959.88341138","contact_id":"11409","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132064895 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"Pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-05 19:27:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:27:40] [INFO] Checking activity reminders 
[2026-04-05 19:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:28:10] [INFO] Checking activity reminders 
[2026-04-05 19:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:28:40] [INFO] Checking activity reminders 
[2026-04-05 19:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:29:10] [INFO] Checking activity reminders 
[2026-04-05 19:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:29:40] [INFO] Checking activity reminders 
[2026-04-05 19:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:29:46] [INFO] Activity save request {"post_data":{"contact_id":"11409","deal_id":"local_69d20ebed27959.88341138","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"درگیر شیمی درمانی \/ سرکار نمیره \r\nفعلا 6 ماهه عضو هست \r\nهزینه های درمانش بالاست \r\nارسال شبا \r\nواریز ","activity_duration":"15","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 19:29:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11409","note_was_empty":true}
[2026-04-05 19:29:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"11409","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Updating virtual stage {"contact_id":"11409","stage_name":"deal_registered","force":false}
[2026-04-05 19:29:46] [INFO] Virtual stage successfully saved {"contact_id":"11409","stage_name":"deal_registered"}
[2026-04-05 19:29:46] [INFO] Virtual stage updated after activity save {"contact_id":"11409"}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20ebed27959.88341138","stage":"اتمام","status_change":"Won"}
[2026-04-05 19:29:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d286f2c57819.36510377","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d286f2c57819.36510377"}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:46] [INFO] Updating virtual stage {"contact_id":"11409","stage_name":"deal_registered","force":false}
[2026-04-05 19:29:46] [INFO] Virtual stage successfully saved {"contact_id":"11409","stage_name":"deal_registered"}
[2026-04-05 19:29:46] [INFO] Virtual stage updated after activity save {"contact_id":"11409"}
[2026-04-05 19:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11409","person_id":"16679"}
[2026-04-05 19:29:52] [INFO] Checking activity reminders 
[2026-04-05 19:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:30:22] [INFO] Checking activity reminders 
[2026-04-05 19:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:30:52] [INFO] Checking activity reminders 
[2026-04-05 19:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:31:23] [INFO] Checking activity reminders 
[2026-04-05 19:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:31:53] [INFO] Checking activity reminders 
[2026-04-05 19:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:32:23] [INFO] Checking activity reminders 
[2026-04-05 19:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:32:53] [INFO] Checking activity reminders 
[2026-04-05 19:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:33:23] [INFO] Checking activity reminders 
[2026-04-05 19:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:33:53] [INFO] Checking activity reminders 
[2026-04-05 19:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:34:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:34:02","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:34:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:34:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","is_new_deal":false}
[2026-04-05 19:34:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:34:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:34:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:34:02] [INFO] getContactPrimaryPhone called {"contact_id":"16"}
[2026-04-05 19:34:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:34:02] [INFO] getContactPrimaryPhone result {"contact_id":"16","person_found":true,"primary_phone":"9373188118"}
[2026-04-05 19:34:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9373188118"}
[2026-04-05 19:34:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9373188118","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:34:02"}
[2026-04-05 19:34:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","existing_deal_found":true,"existing_contact_id":"16","existing_title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:34:02"}
[2026-04-05 19:34:02] [INFO] DealController.save validated payments {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","payments_count":2,"status":"Pending","pipeline_stage":"پرداخت"}
[2026-04-05 19:34:02] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:34:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c262a62d0d7.99793653","contact_didar_id":"16","title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9373188118","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"Pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدعباسی","existing_deal":"YES","existing_deal_id":"local_699c262a62d0d7.99793653","existing_deal_status":"Pending","server_time":"2026-04-05 19:34:02","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:34:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:34:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"Pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-05 19:34:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:34:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:34:23] [INFO] Checking activity reminders 
[2026-04-05 19:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:35:13] [INFO] Checking activity reminders 
[2026-04-05 19:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:35:32] [INFO] Checking activity reminders 
[2026-04-05 19:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:35:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:35:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:36:02] [INFO] Checking activity reminders 
[2026-04-05 19:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:36:31] [INFO] Checking activity reminders 
[2026-04-05 19:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:36:38] [INFO] Checking activity reminders 
[2026-04-05 19:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:36:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5239","deal_id":"local_69d21079499582.36887205","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:36:48","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:36:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:36:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5239","is_new_deal":false}
[2026-04-05 19:36:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-05 19:36:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 19:36:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-05 19:36:48] [INFO] getContactPrimaryPhone called {"contact_id":"5239"}
[2026-04-05 19:36:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:36:48] [INFO] getContactPrimaryPhone result {"contact_id":"5239","person_found":true,"primary_phone":"9139092610"}
[2026-04-05 19:36:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139092610"}
[2026-04-05 19:36:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139092610","contact_id":"5239","deal_id":"local_69d21079499582.36887205","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:36:48"}
[2026-04-05 19:36:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d21079499582.36887205","contact_id":"5239","existing_deal_found":true,"existing_contact_id":"5239","existing_title":"معامله دوم 9139092610 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:36:48"}
[2026-04-05 19:36:48] [INFO] DealController.save validated payments {"deal_id":"local_69d21079499582.36887205","contact_id":"5239","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 19:36:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5239","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:36:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d21079499582.36887205","contact_didar_id":"5239","title":"معامله دوم 9139092610 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9139092610","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فهیمی","existing_deal":"YES","existing_deal_id":"local_69d21079499582.36887205","existing_deal_status":"Pending","server_time":"2026-04-05 19:36:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:36:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:36:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d21079499582.36887205","contact_id":"5239","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9139092610 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 19:36:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:36:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:03] [INFO] Activity save request {"post_data":{"contact_id":"5239","deal_id":"local_69d21079499582.36887205","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:37:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Activity save request {"post_data":{"contact_id":"5239","deal_id":"local_69d21079499582.36887205","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 19:37:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5239","note_was_empty":true}
[2026-04-05 19:37:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"5239","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Updating virtual stage {"contact_id":"5239","stage_name":"deal_registered","force":false}
[2026-04-05 19:37:08] [INFO] Virtual stage successfully saved {"contact_id":"5239","stage_name":"deal_registered"}
[2026-04-05 19:37:08] [INFO] Virtual stage updated after activity save {"contact_id":"5239"}
[2026-04-05 19:37:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d21079499582.36887205","stage":"تماس پیگیری","status_change":null}
[2026-04-05 19:37:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d288ac433b95.06049741","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69d288ac433b95.06049741"}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Updating virtual stage {"contact_id":"5239","stage_name":"deal_registered","force":false}
[2026-04-05 19:37:08] [INFO] Virtual stage successfully saved {"contact_id":"5239","stage_name":"deal_registered"}
[2026-04-05 19:37:08] [INFO] Virtual stage updated after activity save {"contact_id":"5239"}
[2026-04-05 19:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:37:08] [INFO] Checking activity reminders 
[2026-04-05 19:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:37:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:37:38] [INFO] Checking activity reminders 
[2026-04-05 19:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:38:09] [INFO] Checking activity reminders 
[2026-04-05 19:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:38:39] [INFO] Checking activity reminders 
[2026-04-05 19:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:39:09] [INFO] Checking activity reminders 
[2026-04-05 19:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:39:39] [INFO] Checking activity reminders 
[2026-04-05 19:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:40:09] [INFO] Checking activity reminders 
[2026-04-05 19:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:40:39] [INFO] Checking activity reminders 
[2026-04-05 19:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:40:39] [INFO] Checking activity reminders 
[2026-04-05 19:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:41:09] [INFO] Checking activity reminders 
[2026-04-05 19:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:41:09] [INFO] Checking activity reminders 
[2026-04-05 19:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:41:39] [INFO] Checking activity reminders 
[2026-04-05 19:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:41:39] [INFO] Checking activity reminders 
[2026-04-05 19:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:41:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:42:09] [INFO] Checking activity reminders 
[2026-04-05 19:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:42:09] [INFO] Checking activity reminders 
[2026-04-05 19:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:42:33] [INFO] Checking activity reminders 
[2026-04-05 19:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:42:40] [INFO] Checking activity reminders 
[2026-04-05 19:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:43:04] [INFO] Checking activity reminders 
[2026-04-05 19:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:43:10] [INFO] Checking activity reminders 
[2026-04-05 19:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:43:35] [INFO] Checking activity reminders 
[2026-04-05 19:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:43:40] [INFO] Checking activity reminders 
[2026-04-05 19:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-05 19:44:05] [INFO] Checking activity reminders 
[2026-04-05 19:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:10] [INFO] Checking activity reminders 
[2026-04-05 19:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:35] [INFO] Checking activity reminders 
[2026-04-05 19:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:40] [INFO] Checking activity reminders 
[2026-04-05 19:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:44] [INFO] Checking activity reminders 
[2026-04-05 19:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:44:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:44:59","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:44:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:44:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16","is_new_deal":false}
[2026-04-05 19:44:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:44:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:44:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-05 19:44:59] [INFO] getContactPrimaryPhone called {"contact_id":"16"}
[2026-04-05 19:44:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:44:59] [INFO] getContactPrimaryPhone result {"contact_id":"16","person_found":true,"primary_phone":"9373188118"}
[2026-04-05 19:44:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9373188118"}
[2026-04-05 19:44:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9373188118","contact_id":"16","deal_id":"local_699c262a62d0d7.99793653","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:44:59"}
[2026-04-05 19:44:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","existing_deal_found":true,"existing_contact_id":"16","existing_title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:44:59"}
[2026-04-05 19:44:59] [INFO] DealController.save validated payments {"deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","payments_count":2,"status":"Pending","pipeline_stage":"پرداخت"}
[2026-04-05 19:44:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:44:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699c262a62d0d7.99793653","contact_didar_id":"16","title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9373188118","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"Pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدعباسی","existing_deal":"YES","existing_deal_id":"local_699c262a62d0d7.99793653","existing_deal_status":"Pending","server_time":"2026-04-05 19:44:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:44:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:44:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699c262a62d0d7.99793653","contact_id":"16","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9373188118 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"Pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-05 19:44:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:44:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-05 19:45:06] [INFO] Checking activity reminders 
[2026-04-05 19:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:45:08] [INFO] Checking activity reminders 
[2026-04-05 19:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:45:28] [INFO] Lead update received {"contact_id":"local_69d285ac078524.46998604","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 19:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:45:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d285ac078524.46998604"}
[2026-04-05 19:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:45:36] [INFO] Checking activity reminders 
[2026-04-05 19:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:45:39] [INFO] Checking activity reminders 
[2026-04-05 19:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:45:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:45:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:45:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:46:06] [INFO] Checking activity reminders 
[2026-04-05 19:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:46:09] [INFO] Checking activity reminders 
[2026-04-05 19:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:46:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_69d285ac078524.46998604","deal_id":"local_69d285ac161b5","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:46:18","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:46:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_69d285ac078524.46998604","is_new_deal":false}
[2026-04-05 19:46:18] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-05 19:46:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-05 19:46:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-05 19:46:18] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d285ac078524.46998604"}
[2026-04-05 19:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:46:18] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d285ac078524.46998604","person_found":true,"primary_phone":"9129750485"}
[2026-04-05 19:46:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129750485"}
[2026-04-05 19:46:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129750485","contact_id":"local_69d285ac078524.46998604","deal_id":"local_69d285ac161b5","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:46:18"}
[2026-04-05 19:46:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d285ac161b5","contact_id":"local_69d285ac078524.46998604","existing_deal_found":true,"existing_contact_id":"local_69d285ac078524.46998604","existing_title":"معامله اول 9129750485","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:46:18"}
[2026-04-05 19:46:18] [INFO] DealController.save validated payments {"deal_id":"local_69d285ac161b5","contact_id":"local_69d285ac078524.46998604","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 19:46:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d285ac078524.46998604","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:46:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d285ac161b5","contact_didar_id":"local_69d285ac078524.46998604","title":"معامله اول 9129750485 | هوش خودرو","base_title_used":"معامله اول 9129750485","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7900000,"payment_amount":0,"payments_present":false,"requested_services":["هوش خودرو"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهنام خواجه ای","existing_deal":"YES","existing_deal_id":"local_69d285ac161b5","existing_deal_status":"Pending","server_time":"2026-04-05 19:46:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:46:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d285ac161b5","contact_id":"local_69d285ac078524.46998604","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9129750485 | هوش خودرو","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7900000,"payment_amount":0,"server_time":"2026-04-05 19:46:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 19:46:36] [INFO] Checking activity reminders 
[2026-04-05 19:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:47:06] [INFO] Checking activity reminders 
[2026-04-05 19:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:47:12] [INFO] Checking activity reminders 
[2026-04-05 19:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:47:14] [INFO] Checking activity reminders 
[2026-04-05 19:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:47:36] [INFO] Checking activity reminders 
[2026-04-05 19:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:47:44] [INFO] Checking activity reminders 
[2026-04-05 19:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:48:06] [INFO] Checking activity reminders 
[2026-04-05 19:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:48:14] [INFO] Checking activity reminders 
[2026-04-05 19:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:48:19] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 19:48:19] [INFO] Master password used for login {"user_id":"8","identifier":"خانم شکیبا","role":"agent"}
[2026-04-05 19:48:19] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":true}
[2026-04-05 19:48:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 19:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:48:44] [INFO] Checking activity reminders 
[2026-04-05 19:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:48:49] [INFO] Checking activity reminders 
[2026-04-05 19:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:49:14] [INFO] Checking activity reminders 
[2026-04-05 19:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:49:20] [INFO] Checking activity reminders 
[2026-04-05 19:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:49:33] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-05 19:49:33] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 19:49:33] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 19:49:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 19:49:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:49:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:49:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:49:45] [INFO] Checking activity reminders 
[2026-04-05 19:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:49:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:49:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:04] [INFO] Checking activity reminders 
[2026-04-05 19:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:50:10] [INFO] Lead update received {"contact_id":"local_69d285cc674a84.48649371","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-05 19:50:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:10] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d285cc674a84.48649371"}
[2026-04-05 19:50:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:15] [INFO] Checking activity reminders 
[2026-04-05 19:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:50:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:50:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:50:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:50:35] [INFO] Checking activity reminders 
[2026-04-05 19:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:50:45] [INFO] Checking activity reminders 
[2026-04-05 19:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:50:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:50:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:50:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:50:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:50:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:07] [INFO] Checking activity reminders 
[2026-04-05 19:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:51:08] [INFO] Checking activity reminders 
[2026-04-05 19:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:51:11] [INFO] Checking activity reminders 
[2026-04-05 19:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:51:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5239","person_id":"16055"}
[2026-04-05 19:51:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:51:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:51:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:51:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:51:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:51:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:51:38] [INFO] Checking activity reminders 
[2026-04-05 19:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:51:41] [INFO] Checking activity reminders 
[2026-04-05 19:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:51:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 19:51:59","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 19:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d285cc674a84.48649371","is_new_deal":false}
[2026-04-05 19:51:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 19:51:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 19:51:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 19:51:59] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-05 19:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:59] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d285cc674a84.48649371","person_found":true,"primary_phone":"9163657985"}
[2026-04-05 19:51:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163657985"}
[2026-04-05 19:51:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163657985","contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:51:59"}
[2026-04-05 19:51:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","existing_deal_found":true,"existing_contact_id":"local_69d285cc674a84.48649371","existing_title":"معامله اول 9163657985","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 19:51:59"}
[2026-04-05 19:51:59] [INFO] DealController.save validated payments {"deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 19:51:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d285cc674a84.48649371","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 19:51:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d285cc6e756","contact_didar_id":"local_69d285cc674a84.48649371","title":"معامله اول 9163657985 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9163657985","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدمهدی نصرتی","existing_deal":"YES","existing_deal_id":"local_69d285cc6e756","existing_deal_status":"Pending","server_time":"2026-04-05 19:51:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 19:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9163657985 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 19:51:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 19:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:51:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:52:09] [INFO] Checking activity reminders 
[2026-04-05 19:52:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:52:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:52:11] [INFO] Checking activity reminders 
[2026-04-05 19:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:52:39] [INFO] Checking activity reminders 
[2026-04-05 19:52:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:52:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:52:41] [INFO] Checking activity reminders 
[2026-04-05 19:52:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:52:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:53:01] [INFO] Activity save request {"post_data":{"contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"با سیگنال رایگان ملک فروخت \/ نقد شده \r\nخرید و فروش خودرو \r\nپسرخاله نیما هداوند \r\nدوره ی هوش و حضوری گذرونده \r\nپرزنت کانال 6 ماهه \r\nپشتیبانی استاد \r\nارسالدر بله ","activity_duration":"0","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:53:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Activity save request {"post_data":{"contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"با سیگنال رایگان ملک فروخت \/ نقد شده \r\nخرید و فروش خودرو \r\nپسرخاله نیما هداوند \r\nدوره ی هوش و حضوری گذرونده \r\nپرزنت کانال 6 ماهه \r\nپشتیبانی استاد \r\nارسالدر بله ","activity_duration":"13","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 19:53:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d285cc674a84.48649371","note_was_empty":true}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Updating virtual stage {"contact_id":"local_69d285cc674a84.48649371","stage_name":"new","force":false}
[2026-04-05 19:53:06] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285cc674a84.48649371","stage_name":"new"}
[2026-04-05 19:53:06] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-05 19:53:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d285cc6e756","stage":"تماس پیگیری","status_change":null}
[2026-04-05 19:53:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d28c6a683e26.33247653","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d28c6a683e26.33247653"}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:06] [INFO] Updating virtual stage {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered","force":false}
[2026-04-05 19:53:06] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered"}
[2026-04-05 19:53:06] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-05 19:53:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 19:53:09] [INFO] Checking activity reminders 
[2026-04-05 19:53:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:53:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:53:11] [INFO] Checking activity reminders 
[2026-04-05 19:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:53:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 19:53:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 19:53:39] [INFO] Checking activity reminders 
[2026-04-05 19:53:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:53:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:53:41] [INFO] Checking activity reminders 
[2026-04-05 19:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:54:09] [INFO] Checking activity reminders 
[2026-04-05 19:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:54:11] [INFO] Checking activity reminders 
[2026-04-05 19:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:54:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 19:54:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 19:54:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 19:54:39] [INFO] Checking activity reminders 
[2026-04-05 19:54:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:54:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:54:41] [INFO] Checking activity reminders 
[2026-04-05 19:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:54:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12047","person_id":"9829"}
[2026-04-05 19:55:10] [INFO] Checking activity reminders 
[2026-04-05 19:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:55:11] [INFO] Checking activity reminders 
[2026-04-05 19:55:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:55:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:55:40] [INFO] Checking activity reminders 
[2026-04-05 19:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:55:41] [INFO] Checking activity reminders 
[2026-04-05 19:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:56:10] [INFO] Checking activity reminders 
[2026-04-05 19:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:56:12] [INFO] Checking activity reminders 
[2026-04-05 19:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:56:40] [INFO] Checking activity reminders 
[2026-04-05 19:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:56:42] [INFO] Checking activity reminders 
[2026-04-05 19:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:57:10] [INFO] Checking activity reminders 
[2026-04-05 19:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:57:12] [INFO] Checking activity reminders 
[2026-04-05 19:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:57:40] [INFO] Checking activity reminders 
[2026-04-05 19:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:57:42] [INFO] Checking activity reminders 
[2026-04-05 19:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:58:10] [INFO] Checking activity reminders 
[2026-04-05 19:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:58:12] [INFO] Checking activity reminders 
[2026-04-05 19:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:58:41] [INFO] Checking activity reminders 
[2026-04-05 19:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:58:42] [INFO] Checking activity reminders 
[2026-04-05 19:58:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:58:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:59:11] [INFO] Checking activity reminders 
[2026-04-05 19:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:59:12] [INFO] Checking activity reminders 
[2026-04-05 19:59:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:59:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:59:41] [INFO] Checking activity reminders 
[2026-04-05 19:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 19:59:42] [INFO] Checking activity reminders 
[2026-04-05 19:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 19:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:00:11] [INFO] Checking activity reminders 
[2026-04-05 20:00:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:00:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:00:12] [INFO] Checking activity reminders 
[2026-04-05 20:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:00:41] [INFO] Checking activity reminders 
[2026-04-05 20:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:00:42] [INFO] Checking activity reminders 
[2026-04-05 20:00:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:00:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:01:11] [INFO] Checking activity reminders 
[2026-04-05 20:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:01:12] [INFO] Checking activity reminders 
[2026-04-05 20:01:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:01:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:01:41] [INFO] Checking activity reminders 
[2026-04-05 20:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:01:42] [INFO] Checking activity reminders 
[2026-04-05 20:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:02:11] [INFO] Checking activity reminders 
[2026-04-05 20:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:02:13] [INFO] Checking activity reminders 
[2026-04-05 20:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:02:41] [INFO] Checking activity reminders 
[2026-04-05 20:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:02:43] [INFO] Checking activity reminders 
[2026-04-05 20:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:03:11] [INFO] Checking activity reminders 
[2026-04-05 20:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:03:13] [INFO] Checking activity reminders 
[2026-04-05 20:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:03:41] [INFO] Checking activity reminders 
[2026-04-05 20:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:03:43] [INFO] Checking activity reminders 
[2026-04-05 20:03:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:03:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:04:12] [INFO] Checking activity reminders 
[2026-04-05 20:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:04:13] [INFO] Checking activity reminders 
[2026-04-05 20:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:04:42] [INFO] Checking activity reminders 
[2026-04-05 20:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:04:43] [INFO] Checking activity reminders 
[2026-04-05 20:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:05:12] [INFO] Checking activity reminders 
[2026-04-05 20:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:05:13] [INFO] Checking activity reminders 
[2026-04-05 20:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:05:42] [INFO] Checking activity reminders 
[2026-04-05 20:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:05:43] [INFO] Checking activity reminders 
[2026-04-05 20:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:06:12] [INFO] Checking activity reminders 
[2026-04-05 20:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:06:13] [INFO] Checking activity reminders 
[2026-04-05 20:06:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:06:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:06:42] [INFO] Checking activity reminders 
[2026-04-05 20:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:06:43] [INFO] Checking activity reminders 
[2026-04-05 20:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:06:48] [INFO] Checking activity reminders 
[2026-04-05 20:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:07:12] [INFO] Checking activity reminders 
[2026-04-05 20:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:07:18] [INFO] Checking activity reminders 
[2026-04-05 20:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:07:42] [INFO] Checking activity reminders 
[2026-04-05 20:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:07:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:07:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:07:48] [INFO] Checking activity reminders 
[2026-04-05 20:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:08:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:08:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:08:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:08:15] [INFO] Checking activity reminders 
[2026-04-05 20:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:08:18] [INFO] Checking activity reminders 
[2026-04-05 20:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:08:45] [INFO] Checking activity reminders 
[2026-04-05 20:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:08:48] [INFO] Checking activity reminders 
[2026-04-05 20:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:09:15] [INFO] Checking activity reminders 
[2026-04-05 20:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:09:18] [INFO] Checking activity reminders 
[2026-04-05 20:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:09:45] [INFO] Checking activity reminders 
[2026-04-05 20:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:09:48] [INFO] Checking activity reminders 
[2026-04-05 20:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:10:15] [INFO] Checking activity reminders 
[2026-04-05 20:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:10:18] [INFO] Checking activity reminders 
[2026-04-05 20:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:10:46] [INFO] Checking activity reminders 
[2026-04-05 20:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:10:48] [INFO] Checking activity reminders 
[2026-04-05 20:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:11:16] [INFO] Checking activity reminders 
[2026-04-05 20:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:11:19] [INFO] Checking activity reminders 
[2026-04-05 20:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:11:46] [INFO] Checking activity reminders 
[2026-04-05 20:11:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:11:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:11:49] [INFO] Checking activity reminders 
[2026-04-05 20:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:12:16] [INFO] Checking activity reminders 
[2026-04-05 20:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:12:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8150","deal_id":"local_69d225bb5d1347.31356213","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 20:12:18","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 20:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:12:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8150","is_new_deal":false}
[2026-04-05 20:12:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:12:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:12:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:12:18] [INFO] getContactPrimaryPhone called {"contact_id":"8150"}
[2026-04-05 20:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:12:18] [INFO] getContactPrimaryPhone result {"contact_id":"8150","person_found":true,"primary_phone":"9148286037"}
[2026-04-05 20:12:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9148286037"}
[2026-04-05 20:12:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9148286037","contact_id":"8150","deal_id":"local_69d225bb5d1347.31356213","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:12:18"}
[2026-04-05 20:12:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d225bb5d1347.31356213","contact_id":"8150","existing_deal_found":true,"existing_contact_id":"8150","existing_title":"معامله دوم 9148286037 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:12:18"}
[2026-04-05 20:12:18] [INFO] DealController.save validated payments {"deal_id":"local_69d225bb5d1347.31356213","contact_id":"8150","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 20:12:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8150","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 20:12:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d225bb5d1347.31356213","contact_didar_id":"8150","title":"معامله دوم 9148286037 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9148286037","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر سامی","existing_deal":"YES","existing_deal_id":"local_69d225bb5d1347.31356213","existing_deal_status":"Pending","server_time":"2026-04-05 20:12:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 20:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:12:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d225bb5d1347.31356213","contact_id":"8150","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9148286037 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 20:12:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 20:12:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:12:19] [INFO] Checking activity reminders 
[2026-04-05 20:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:12:46] [INFO] Checking activity reminders 
[2026-04-05 20:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:12:49] [INFO] Checking activity reminders 
[2026-04-05 20:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:13:16] [INFO] Checking activity reminders 
[2026-04-05 20:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:13:19] [INFO] Checking activity reminders 
[2026-04-05 20:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:13:47] [INFO] Checking activity reminders 
[2026-04-05 20:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:13:51] [INFO] Checking activity reminders 
[2026-04-05 20:13:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:13:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:13:54] [INFO] Checking activity reminders 
[2026-04-05 20:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:17] [INFO] Checking activity reminders 
[2026-04-05 20:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:24] [INFO] Checking activity reminders 
[2026-04-05 20:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:32] [INFO] Checking activity reminders 
[2026-04-05 20:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:34] [INFO] Checking activity reminders 
[2026-04-05 20:14:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:40] [INFO] Activity save request {"post_data":{"contact_id":"8150","deal_id":"local_69d225bb5d1347.31356213","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"سرمایه اش خیلی کم شده \r\n300 نقد \/ نوسان گیری بورس \r\nارسال اطلاعات در بله \r\n","activity_duration":"14","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 20:14:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8150","note_was_empty":true}
[2026-04-05 20:14:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"8150","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:40] [INFO] Updating virtual stage {"contact_id":"8150","stage_name":"deal_registered","force":false}
[2026-04-05 20:14:40] [INFO] Virtual stage successfully saved {"contact_id":"8150","stage_name":"deal_registered"}
[2026-04-05 20:14:40] [INFO] Virtual stage updated after activity save {"contact_id":"8150"}
[2026-04-05 20:14:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d225bb5d1347.31356213","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-05 20:14:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d29178e5e844.75635273","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69d29178e5e844.75635273"}
[2026-04-05 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:40] [INFO] Updating virtual stage {"contact_id":"8150","stage_name":"deal_registered","force":false}
[2026-04-05 20:14:40] [INFO] Virtual stage successfully saved {"contact_id":"8150","stage_name":"deal_registered"}
[2026-04-05 20:14:40] [INFO] Virtual stage updated after activity save {"contact_id":"8150"}
[2026-04-05 20:14:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-05 20:14:44] [INFO] Checking activity reminders 
[2026-04-05 20:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:47] [INFO] Checking activity reminders 
[2026-04-05 20:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:49] [INFO] Checking activity reminders 
[2026-04-05 20:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:51] [INFO] Checking activity reminders 
[2026-04-05 20:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:14:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:15:17] [INFO] Checking activity reminders 
[2026-04-05 20:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:15:21] [INFO] Checking activity reminders 
[2026-04-05 20:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:15:47] [INFO] Checking activity reminders 
[2026-04-05 20:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:15:51] [INFO] Checking activity reminders 
[2026-04-05 20:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:16:17] [INFO] Checking activity reminders 
[2026-04-05 20:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:16:21] [INFO] Checking activity reminders 
[2026-04-05 20:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:16:47] [INFO] Checking activity reminders 
[2026-04-05 20:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:16:51] [INFO] Checking activity reminders 
[2026-04-05 20:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:17:17] [INFO] Checking activity reminders 
[2026-04-05 20:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:17:22] [INFO] Checking activity reminders 
[2026-04-05 20:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:17:47] [INFO] Checking activity reminders 
[2026-04-05 20:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:17:52] [INFO] Checking activity reminders 
[2026-04-05 20:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:18:18] [INFO] Checking activity reminders 
[2026-04-05 20:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:18:22] [INFO] Checking activity reminders 
[2026-04-05 20:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:18:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:18:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:18:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:18:48] [INFO] Checking activity reminders 
[2026-04-05 20:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:18:52] [INFO] Checking activity reminders 
[2026-04-05 20:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:19:18] [INFO] Checking activity reminders 
[2026-04-05 20:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:19:22] [INFO] Checking activity reminders 
[2026-04-05 20:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:19:48] [INFO] Checking activity reminders 
[2026-04-05 20:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:19:52] [INFO] Checking activity reminders 
[2026-04-05 20:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:20:18] [INFO] Checking activity reminders 
[2026-04-05 20:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:20:22] [INFO] Checking activity reminders 
[2026-04-05 20:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:20:48] [INFO] Checking activity reminders 
[2026-04-05 20:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:20:52] [INFO] Checking activity reminders 
[2026-04-05 20:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:21:18] [INFO] Checking activity reminders 
[2026-04-05 20:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:21:22] [INFO] Checking activity reminders 
[2026-04-05 20:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:21:48] [INFO] Checking activity reminders 
[2026-04-05 20:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:21:52] [INFO] Checking activity reminders 
[2026-04-05 20:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:22:19] [INFO] Checking activity reminders 
[2026-04-05 20:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:22:22] [INFO] Checking activity reminders 
[2026-04-05 20:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:22:49] [INFO] Checking activity reminders 
[2026-04-05 20:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:22:52] [INFO] Checking activity reminders 
[2026-04-05 20:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:23:19] [INFO] Checking activity reminders 
[2026-04-05 20:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:23:22] [INFO] Checking activity reminders 
[2026-04-05 20:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:23:49] [INFO] Checking activity reminders 
[2026-04-05 20:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:23:53] [INFO] Checking activity reminders 
[2026-04-05 20:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:24:19] [INFO] Checking activity reminders 
[2026-04-05 20:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:24:23] [INFO] Checking activity reminders 
[2026-04-05 20:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:24:50] [INFO] Checking activity reminders 
[2026-04-05 20:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:24:53] [INFO] Checking activity reminders 
[2026-04-05 20:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:25:20] [INFO] Checking activity reminders 
[2026-04-05 20:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:25:23] [INFO] Checking activity reminders 
[2026-04-05 20:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:25:50] [INFO] Checking activity reminders 
[2026-04-05 20:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:25:53] [INFO] Checking activity reminders 
[2026-04-05 20:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:26:20] [INFO] Checking activity reminders 
[2026-04-05 20:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:26:43] [INFO] Checking activity reminders 
[2026-04-05 20:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:26:50] [INFO] Checking activity reminders 
[2026-04-05 20:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:27:13] [INFO] Checking activity reminders 
[2026-04-05 20:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:27:20] [INFO] Checking activity reminders 
[2026-04-05 20:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:27:43] [INFO] Checking activity reminders 
[2026-04-05 20:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:27:50] [INFO] Checking activity reminders 
[2026-04-05 20:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:28:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8143","deal_id":"local_69d2244aceb558.36642123","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 20:28:01","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:28:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"8143","is_new_deal":false}
[2026-04-05 20:28:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:28:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:28:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:28:01] [INFO] getContactPrimaryPhone called {"contact_id":"8143"}
[2026-04-05 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:28:01] [INFO] getContactPrimaryPhone result {"contact_id":"8143","person_found":true,"primary_phone":"9131597479"}
[2026-04-05 20:28:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131597479"}
[2026-04-05 20:28:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131597479","contact_id":"8143","deal_id":"local_69d2244aceb558.36642123","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:28:01"}
[2026-04-05 20:28:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2244aceb558.36642123","contact_id":"8143","existing_deal_found":true,"existing_contact_id":"8143","existing_title":"معامله دوم 9131597479 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:28:01"}
[2026-04-05 20:28:01] [INFO] DealController.save validated payments {"deal_id":"local_69d2244aceb558.36642123","contact_id":"8143","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-05 20:28:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8143","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 20:28:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2244aceb558.36642123","contact_didar_id":"8143","title":"معامله دوم 9131597479 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9131597479","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پوررضایی","existing_deal":"YES","existing_deal_id":"local_69d2244aceb558.36642123","existing_deal_status":"Pending","server_time":"2026-04-05 20:28:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:28:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2244aceb558.36642123","contact_id":"8143","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9131597479 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-05 20:28:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:28:13] [INFO] Checking activity reminders 
[2026-04-05 20:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:28:20] [INFO] Checking activity reminders 
[2026-04-05 20:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:28:43] [INFO] Checking activity reminders 
[2026-04-05 20:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:28:50] [INFO] Checking activity reminders 
[2026-04-05 20:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:29:13] [INFO] Checking activity reminders 
[2026-04-05 20:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:29:20] [INFO] Checking activity reminders 
[2026-04-05 20:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:29:43] [INFO] Activity save request {"post_data":{"contact_id":"8143","deal_id":"local_69d2244aceb558.36642123","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"یزد \r\n3 تا خودرو 206 و 207 داره \r\nترید و دلار سرمایه گذاری \r\nسکه و طلای فیزیکی \r\nدر کانال عمومی دنبال \r\nارسال ویس استاد در بله \r\nخیلی فکر میکنه \r\n20 دقیقه در مورد تحلیل ها و پیش بینی استاد مشاوره دادم \r\n","activity_duration":"20","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 20:29:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8143","note_was_empty":true}
[2026-04-05 20:29:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"8143","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Updating virtual stage {"contact_id":"8143","stage_name":"deal_registered","force":false}
[2026-04-05 20:29:43] [INFO] Virtual stage successfully saved {"contact_id":"8143","stage_name":"deal_registered"}
[2026-04-05 20:29:43] [INFO] Virtual stage updated after activity save {"contact_id":"8143"}
[2026-04-05 20:29:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2244aceb558.36642123","stage":"تماس پیگیری","status_change":null}
[2026-04-05 20:29:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d294ff4ec355.65070001","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69d294ff4ec355.65070001"}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Updating virtual stage {"contact_id":"8143","stage_name":"deal_registered","force":false}
[2026-04-05 20:29:43] [INFO] Virtual stage successfully saved {"contact_id":"8143","stage_name":"deal_registered"}
[2026-04-05 20:29:43] [INFO] Virtual stage updated after activity save {"contact_id":"8143"}
[2026-04-05 20:29:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8143","person_id":"16596"}
[2026-04-05 20:29:43] [INFO] Checking activity reminders 
[2026-04-05 20:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:29:47] [INFO] Checking activity reminders 
[2026-04-05 20:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:29:51] [INFO] Checking activity reminders 
[2026-04-05 20:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:30:17] [INFO] Checking activity reminders 
[2026-04-05 20:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:30:21] [INFO] Checking activity reminders 
[2026-04-05 20:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:30:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:30:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:30:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:30:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:30:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:30:47] [INFO] Checking activity reminders 
[2026-04-05 20:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:31:05] [INFO] Checking activity reminders 
[2026-04-05 20:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:31:17] [INFO] Checking activity reminders 
[2026-04-05 20:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:31:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 20:31:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 20:31:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 20:31:35] [INFO] Checking activity reminders 
[2026-04-05 20:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:31:39] [INFO] Activity save request {"post_data":{"contact_id":"local_69d285ac078524.46998604","deal_id":"local_69d285ac161b5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"1.5 ساله میشناسه \/ دنبال در اینستا \r\nیزد \r\nکار موبایل و تعمیرات \r\nعلاقه به خودرو \/\r\nپرزنت هوش و 2 روزه حضوری سازمان فنی حرفه ای و امیرکبیر \r\nارسال سرفصل ها در بله \r\nمثال دانشپذیران یزد \r\nکد ملی : 4470058262\r\n","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 20:31:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d285ac078524.46998604","note_was_empty":true}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:39] [INFO] Updating virtual stage {"contact_id":"local_69d285ac078524.46998604","stage_name":"new","force":false}
[2026-04-05 20:31:39] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285ac078524.46998604","stage_name":"new"}
[2026-04-05 20:31:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285ac078524.46998604"}
[2026-04-05 20:31:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d285ac161b5","stage":"تماس پیگیری","status_change":null}
[2026-04-05 20:31:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d29573162ec3.23436612","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d29573162ec3.23436612"}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:39] [INFO] Updating virtual stage {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered","force":false}
[2026-04-05 20:31:39] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered"}
[2026-04-05 20:31:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285ac078524.46998604"}
[2026-04-05 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-05 20:31:47] [INFO] Checking activity reminders 
[2026-04-05 20:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:31:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 20:32:05] [INFO] Checking activity reminders 
[2026-04-05 20:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:32:18] [INFO] Checking activity reminders 
[2026-04-05 20:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:32:35] [INFO] Checking activity reminders 
[2026-04-05 20:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:33:05] [INFO] Checking activity reminders 
[2026-04-05 20:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:33:36] [INFO] Checking activity reminders 
[2026-04-05 20:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:34:06] [INFO] Checking activity reminders 
[2026-04-05 20:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:34:36] [INFO] Checking activity reminders 
[2026-04-05 20:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:35:06] [INFO] Checking activity reminders 
[2026-04-05 20:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:35:36] [INFO] Checking activity reminders 
[2026-04-05 20:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:36:06] [INFO] Checking activity reminders 
[2026-04-05 20:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:36:36] [INFO] Checking activity reminders 
[2026-04-05 20:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:37:06] [INFO] Checking activity reminders 
[2026-04-05 20:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:37:36] [INFO] Checking activity reminders 
[2026-04-05 20:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:38:06] [INFO] Checking activity reminders 
[2026-04-05 20:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:38:36] [INFO] Checking activity reminders 
[2026-04-05 20:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:39:06] [INFO] Checking activity reminders 
[2026-04-05 20:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:39:36] [INFO] Checking activity reminders 
[2026-04-05 20:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:40:07] [INFO] Checking activity reminders 
[2026-04-05 20:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:40:37] [INFO] Checking activity reminders 
[2026-04-05 20:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:41:07] [INFO] Checking activity reminders 
[2026-04-05 20:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:41:21] [INFO] Checking activity reminders 
[2026-04-05 20:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:41:37] [INFO] Checking activity reminders 
[2026-04-05 20:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:41:51] [INFO] Checking activity reminders 
[2026-04-05 20:41:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:41:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 20:42:21] [INFO] Checking activity reminders 
[2026-04-05 20:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:42:51] [INFO] Checking activity reminders 
[2026-04-05 20:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:43:02] [INFO] Checking activity reminders 
[2026-04-05 20:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:43:22] [INFO] Checking activity reminders 
[2026-04-05 20:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:43:32] [INFO] Checking activity reminders 
[2026-04-05 20:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:43:52] [INFO] Checking activity reminders 
[2026-04-05 20:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:44:02] [INFO] Checking activity reminders 
[2026-04-05 20:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:44:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 20:44:19","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 20:44:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","is_new_deal":false}
[2026-04-05 20:44:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:44:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:44:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-05 20:44:19] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-05 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 20:44:19] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-05 20:44:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-05 20:44:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:44:19"}
[2026-04-05 20:44:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","existing_deal_found":true,"existing_contact_id":"21119","existing_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:44:19"}
[2026-04-05 20:44:19] [INFO] DealController.save validated payments {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-05 20:44:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 20:44:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2242cc75260.76890464","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"YES","existing_deal_id":"local_69d2242cc75260.76890464","existing_deal_status":"Pending","server_time":"2026-04-05 20:44:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 20:44:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":9000000,"server_time":"2026-04-05 20:44:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-05 20:44:22] [INFO] Checking activity reminders 
[2026-04-05 20:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:44:32] [INFO] Checking activity reminders 
[2026-04-05 20:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:45:02] [INFO] Checking activity reminders 
[2026-04-05 20:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:45:03] [INFO] Checking activity reminders 
[2026-04-05 20:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:45:32] [INFO] Checking activity reminders 
[2026-04-05 20:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:45:33] [INFO] Checking activity reminders 
[2026-04-05 20:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:45:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-05 20:45:43","session_id":"sbgvmjlq3upcab8oij8nl46lmu"}
[2026-04-05 20:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 20:45:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"20964","is_new_deal":false}
[2026-04-05 20:45:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-04-05 20:45:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-04-05 20:45:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-04-05 20:45:43] [INFO] getContactPrimaryPhone called {"contact_id":"20964"}
[2026-04-05 20:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 20:45:43] [INFO] getContactPrimaryPhone result {"contact_id":"20964","person_found":true,"primary_phone":"9133748289"}
[2026-04-05 20:45:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133748289"}
[2026-04-05 20:45:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133748289","contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:45:43"}
[2026-04-05 20:45:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","existing_deal_found":true,"existing_contact_id":"20964","existing_title":"معامله دوم 9133748289 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-05 20:45:43"}
[2026-04-05 20:45:43] [INFO] DealController.save validated payments {"deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-05 20:45:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20964","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-05 20:45:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f919ca7c5.52921816","contact_didar_id":"20964","title":"معامله دوم 9133748289 | کانال VIP بدون پشتیبانی","base_title_used":"معامله دوم 9133748289","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن گل افتاب","existing_deal":"YES","existing_deal_id":"local_69d20f919ca7c5.52921816","existing_deal_status":"Pending","server_time":"2026-04-05 20:45:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-05 20:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 20:45:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9133748289 | کانال VIP بدون پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-05 20:45:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-05 20:45:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-05 20:46:02] [INFO] Checking activity reminders 
[2026-04-05 20:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:46:03] [INFO] Checking activity reminders 
[2026-04-05 20:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:46:33] [INFO] Checking activity reminders 
[2026-04-05 20:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:47:03] [INFO] Checking activity reminders 
[2026-04-05 20:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:47:33] [INFO] Checking activity reminders 
[2026-04-05 20:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:48:03] [INFO] Checking activity reminders 
[2026-04-05 20:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:48:33] [INFO] Checking activity reminders 
[2026-04-05 20:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:03] [INFO] Checking activity reminders 
[2026-04-05 20:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:03] [INFO] Checking activity reminders 
[2026-04-05 20:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:33] [INFO] Checking activity reminders 
[2026-04-05 20:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:33] [INFO] Checking activity reminders 
[2026-04-05 20:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:48] [INFO] Checking activity reminders 
[2026-04-05 20:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:51] [INFO] Checking activity reminders 
[2026-04-05 20:49:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:49:58] [INFO] Checking activity reminders 
[2026-04-05 20:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:50:03] [INFO] Checking activity reminders 
[2026-04-05 20:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:50:10] [INFO] Checking activity reminders 
[2026-04-05 20:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-05 20:50:33] [INFO] Checking activity reminders 
[2026-04-05 20:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:50:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-05 20:50:40] [INFO] Checking activity reminders 
[2026-04-05 20:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:03] [INFO] Checking activity reminders 
[2026-04-05 20:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:10] [INFO] Checking activity reminders 
[2026-04-05 20:51:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:33] [INFO] Checking activity reminders 
[2026-04-05 20:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:40] [INFO] Checking activity reminders 
[2026-04-05 20:51:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:56] [INFO] Checking activity reminders 
[2026-04-05 20:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:51:58] [INFO] Checking activity reminders 
[2026-04-05 20:51:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:51:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:52:04] [INFO] Checking activity reminders 
[2026-04-05 20:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:52:33] [INFO] Checking activity reminders 
[2026-04-05 20:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:52:34] [INFO] Checking activity reminders 
[2026-04-05 20:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:52:40] [INFO] Checking activity reminders 
[2026-04-05 20:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:53:04] [INFO] Checking activity reminders 
[2026-04-05 20:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:53:10] [INFO] Checking activity reminders 
[2026-04-05 20:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:53:34] [INFO] Checking activity reminders 
[2026-04-05 20:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:53:40] [INFO] Checking activity reminders 
[2026-04-05 20:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:54:04] [INFO] Checking activity reminders 
[2026-04-05 20:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:54:10] [INFO] Checking activity reminders 
[2026-04-05 20:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:54:34] [INFO] Checking activity reminders 
[2026-04-05 20:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:54:40] [INFO] Checking activity reminders 
[2026-04-05 20:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:55:04] [INFO] Checking activity reminders 
[2026-04-05 20:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:55:10] [INFO] Checking activity reminders 
[2026-04-05 20:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:55:34] [INFO] Checking activity reminders 
[2026-04-05 20:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:55:41] [INFO] Checking activity reminders 
[2026-04-05 20:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:56:04] [INFO] Checking activity reminders 
[2026-04-05 20:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:56:11] [INFO] Checking activity reminders 
[2026-04-05 20:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:56:34] [INFO] Checking activity reminders 
[2026-04-05 20:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:56:41] [INFO] Checking activity reminders 
[2026-04-05 20:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:57:04] [INFO] Checking activity reminders 
[2026-04-05 20:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:57:11] [INFO] Checking activity reminders 
[2026-04-05 20:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:57:34] [INFO] Checking activity reminders 
[2026-04-05 20:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:57:41] [INFO] Checking activity reminders 
[2026-04-05 20:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:58:04] [INFO] Checking activity reminders 
[2026-04-05 20:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:58:05] [INFO] Activity save request {"post_data":{"contact_id":"5545","deal_id":"local_69d2105723d140.52489882","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","note":"","result_note":"میگه فعلا نیازی ندارم \r\nخیلی استاد گرون کرده \/ 6 ماهه گفتم \r\nدر بله پیام ارسال \r\nاطلاع میده ","activity_duration":"10","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-05 20:58:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5545","note_was_empty":true}
[2026-04-05 20:58:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"5545","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:05] [INFO] Updating virtual stage {"contact_id":"5545","stage_name":"deal_registered","force":false}
[2026-04-05 20:58:05] [INFO] Virtual stage successfully saved {"contact_id":"5545","stage_name":"deal_registered"}
[2026-04-05 20:58:05] [INFO] Virtual stage updated after activity save {"contact_id":"5545"}
[2026-04-05 20:58:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2105723d140.52489882","stage":"تماس پیگیری","status_change":null}
[2026-04-05 20:58:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d29ba5ad2009.65867553","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d29ba5ad2009.65867553"}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:05] [INFO] Updating virtual stage {"contact_id":"5545","stage_name":"deal_registered","force":false}
[2026-04-05 20:58:05] [INFO] Virtual stage successfully saved {"contact_id":"5545","stage_name":"deal_registered"}
[2026-04-05 20:58:05] [INFO] Virtual stage updated after activity save {"contact_id":"5545"}
[2026-04-05 20:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5545","person_id":"16258"}
[2026-04-05 20:58:12] [INFO] Checking activity reminders 
[2026-04-05 20:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:58:35] [INFO] Checking activity reminders 
[2026-04-05 20:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:59:05] [INFO] Checking activity reminders 
[2026-04-05 20:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:59:35] [INFO] Checking activity reminders 
[2026-04-05 20:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 20:59:47] [INFO] Checking activity reminders 
[2026-04-05 20:59:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 20:59:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:00:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 21:00:05] [INFO] Checking activity reminders 
[2026-04-05 21:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:00:09] [INFO] Checking activity reminders 
[2026-04-05 21:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:00:11] [INFO] Checking activity reminders 
[2026-04-05 21:00:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:00:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-05 21:00:35] [INFO] Checking activity reminders 
[2026-04-05 21:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:00:47] [INFO] Checking activity reminders 
[2026-04-05 21:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:01:05] [INFO] Checking activity reminders 
[2026-04-05 21:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:01:17] [INFO] Checking activity reminders 
[2026-04-05 21:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:01:35] [INFO] Checking activity reminders 
[2026-04-05 21:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:01:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:01:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:01:47] [INFO] Checking activity reminders 
[2026-04-05 21:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:01:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:01:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:01:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:02:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:02:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:02:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:02:10] [INFO] Checking activity reminders 
[2026-04-05 21:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:02:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:02:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:02:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:02:17] [INFO] Checking activity reminders 
[2026-04-05 21:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:02:41] [INFO] Checking activity reminders 
[2026-04-05 21:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:02:47] [INFO] Checking activity reminders 
[2026-04-05 21:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:02:58] [INFO] Checking activity reminders 
[2026-04-05 21:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:03:11] [INFO] Checking activity reminders 
[2026-04-05 21:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4040","person_id":"9825"}
[2026-04-05 21:03:41] [INFO] Checking activity reminders 
[2026-04-05 21:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:04:11] [INFO] Checking activity reminders 
[2026-04-05 21:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:04:41] [INFO] Checking activity reminders 
[2026-04-05 21:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:05:11] [INFO] Checking activity reminders 
[2026-04-05 21:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:05:42] [INFO] Checking activity reminders 
[2026-04-05 21:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:06:12] [INFO] Checking activity reminders 
[2026-04-05 21:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:06:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 21:06:42] [INFO] Checking activity reminders 
[2026-04-05 21:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:07:12] [INFO] Checking activity reminders 
[2026-04-05 21:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:07:42] [INFO] Checking activity reminders 
[2026-04-05 21:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:08:12] [INFO] Checking activity reminders 
[2026-04-05 21:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:08:42] [INFO] Checking activity reminders 
[2026-04-05 21:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:09:12] [INFO] Checking activity reminders 
[2026-04-05 21:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:09:43] [INFO] Checking activity reminders 
[2026-04-05 21:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:10:13] [INFO] Checking activity reminders 
[2026-04-05 21:10:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:10:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:10:43] [INFO] Checking activity reminders 
[2026-04-05 21:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:11:13] [INFO] Checking activity reminders 
[2026-04-05 21:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:11:43] [INFO] Checking activity reminders 
[2026-04-05 21:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:12:13] [INFO] Checking activity reminders 
[2026-04-05 21:12:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:12:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:12:43] [INFO] Checking activity reminders 
[2026-04-05 21:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:13:13] [INFO] Checking activity reminders 
[2026-04-05 21:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:13:43] [INFO] Checking activity reminders 
[2026-04-05 21:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:14:13] [INFO] Checking activity reminders 
[2026-04-05 21:14:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:14:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:14:43] [INFO] Checking activity reminders 
[2026-04-05 21:14:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:14:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:15:14] [INFO] Checking activity reminders 
[2026-04-05 21:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:15:44] [INFO] Checking activity reminders 
[2026-04-05 21:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:16:14] [INFO] Checking activity reminders 
[2026-04-05 21:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:16:44] [INFO] Checking activity reminders 
[2026-04-05 21:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:17:14] [INFO] Checking activity reminders 
[2026-04-05 21:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:17:44] [INFO] Checking activity reminders 
[2026-04-05 21:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:18:14] [INFO] Checking activity reminders 
[2026-04-05 21:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:18:44] [INFO] Checking activity reminders 
[2026-04-05 21:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:19:14] [INFO] Checking activity reminders 
[2026-04-05 21:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:19:44] [INFO] Checking activity reminders 
[2026-04-05 21:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:20:14] [INFO] Checking activity reminders 
[2026-04-05 21:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:20:44] [INFO] Checking activity reminders 
[2026-04-05 21:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:21:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:21:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:21:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:21:14] [INFO] Checking activity reminders 
[2026-04-05 21:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:21:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:21:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:21:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:21:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:21:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:22:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:22:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:22:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:22:08] [INFO] Checking activity reminders 
[2026-04-05 21:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:22:38] [INFO] Checking activity reminders 
[2026-04-05 21:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:23:09] [INFO] Checking activity reminders 
[2026-04-05 21:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:23:39] [INFO] Checking activity reminders 
[2026-04-05 21:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:24:09] [INFO] Checking activity reminders 
[2026-04-05 21:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:24:39] [INFO] Checking activity reminders 
[2026-04-05 21:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:25:09] [INFO] Checking activity reminders 
[2026-04-05 21:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:25:40] [INFO] Checking activity reminders 
[2026-04-05 21:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:26:10] [INFO] Checking activity reminders 
[2026-04-05 21:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:26:40] [INFO] Checking activity reminders 
[2026-04-05 21:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:27:10] [INFO] Checking activity reminders 
[2026-04-05 21:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:27:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:27:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:27:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:27:40] [INFO] Checking activity reminders 
[2026-04-05 21:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:28:10] [INFO] Checking activity reminders 
[2026-04-05 21:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:28:40] [INFO] Checking activity reminders 
[2026-04-05 21:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:29:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:29:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:29:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:29:10] [INFO] Checking activity reminders 
[2026-04-05 21:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:29:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:29:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:29:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:29:41] [INFO] Checking activity reminders 
[2026-04-05 21:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:30:15] [INFO] Checking activity reminders 
[2026-04-05 21:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:30:45] [INFO] Checking activity reminders 
[2026-04-05 21:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:30:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:30:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:30:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:31:15] [INFO] Checking activity reminders 
[2026-04-05 21:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:31:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:31:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:31:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:31:45] [INFO] Checking activity reminders 
[2026-04-05 21:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:31:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 21:31:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 21:31:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 21:32:09] [WARNING] Auth check failed - not authenticated {"session_id":"q7brp1iqsbf55rjsv4da073kbc","session_keys":[],"action":"log_client_event"}
[2026-04-05 21:32:09] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-05 21:32:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 21:32:15] [INFO] Checking activity reminders 
[2026-04-05 21:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:32:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 21:32:39] [INFO] Checking activity reminders 
[2026-04-05 21:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:32:45] [INFO] Checking activity reminders 
[2026-04-05 21:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:33:15] [INFO] Checking activity reminders 
[2026-04-05 21:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:33:42] [INFO] Checking activity reminders 
[2026-04-05 21:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:33:45] [INFO] Checking activity reminders 
[2026-04-05 21:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:34:12] [INFO] Checking activity reminders 
[2026-04-05 21:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:34:15] [INFO] Checking activity reminders 
[2026-04-05 21:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:34:42] [INFO] Checking activity reminders 
[2026-04-05 21:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:34:45] [INFO] Checking activity reminders 
[2026-04-05 21:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:35:12] [INFO] Checking activity reminders 
[2026-04-05 21:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:35:15] [INFO] Checking activity reminders 
[2026-04-05 21:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:35:45] [INFO] Checking activity reminders 
[2026-04-05 21:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:36:16] [INFO] Checking activity reminders 
[2026-04-05 21:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:36:46] [INFO] Checking activity reminders 
[2026-04-05 21:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:37:16] [INFO] Checking activity reminders 
[2026-04-05 21:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:37:46] [INFO] Checking activity reminders 
[2026-04-05 21:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:38:16] [INFO] Checking activity reminders 
[2026-04-05 21:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:38:47] [INFO] Checking activity reminders 
[2026-04-05 21:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:39:17] [INFO] Checking activity reminders 
[2026-04-05 21:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:39:47] [INFO] Checking activity reminders 
[2026-04-05 21:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:40:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-05 21:40:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 21:40:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-05 21:40:17] [INFO] Checking activity reminders 
[2026-04-05 21:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:40:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-05 21:40:48] [INFO] Checking activity reminders 
[2026-04-05 21:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:41:18] [INFO] Checking activity reminders 
[2026-04-05 21:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:41:48] [INFO] Checking activity reminders 
[2026-04-05 21:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:42:18] [INFO] Checking activity reminders 
[2026-04-05 21:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:42:48] [INFO] Checking activity reminders 
[2026-04-05 21:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:43:18] [INFO] Checking activity reminders 
[2026-04-05 21:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:43:48] [INFO] Checking activity reminders 
[2026-04-05 21:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:44:18] [INFO] Checking activity reminders 
[2026-04-05 21:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:44:48] [INFO] Checking activity reminders 
[2026-04-05 21:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:45:18] [INFO] Checking activity reminders 
[2026-04-05 21:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:45:48] [INFO] Checking activity reminders 
[2026-04-05 21:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:46:18] [INFO] Checking activity reminders 
[2026-04-05 21:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:46:49] [INFO] Checking activity reminders 
[2026-04-05 21:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:47:19] [INFO] Checking activity reminders 
[2026-04-05 21:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:47:49] [INFO] Checking activity reminders 
[2026-04-05 21:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 21:48:19] [INFO] Checking activity reminders 
[2026-04-05 21:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 21:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-05 23:09:36] [WARNING] Auth check failed - not authenticated {"session_id":"sq86cdf15r25rq5mtq6i1eftfn","session_keys":[],"action":"log_client_event"}
[2026-04-05 23:09:36] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-05 23:09:36] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-05 23:09:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-05 23:09:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-05 23:09:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-05 23:09:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-05 23:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-05 23:10:07] [INFO] Checking activity reminders 
[2026-04-05 23:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-05 23:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:44:51] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 09:44:51] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 09:44:51] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 09:44:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 09:44:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:44:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:44:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 09:45:29] [INFO] Checking activity reminders 
[2026-04-06 09:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 09:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:45:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:45:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:45:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 09:45:59] [INFO] Checking activity reminders 
[2026-04-06 09:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 09:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:46:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:46:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 09:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-06 09:46:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/search","method":"POST"}
[2026-04-06 09:46:21] [INFO] Checking activity reminders 
[2026-04-06 09:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 09:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:57:22] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-06 09:57:22] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 09:57:27] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 09:57:27] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 09:57:27] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 09:57:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 09:57:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:57:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:57:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 09:57:37] [INFO] Checking activity reminders 
[2026-04-06 09:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 09:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:57:45] [INFO] Checking activity reminders 
[2026-04-06 09:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 09:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 09:57:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 09:59:20] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 09:59:20] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 09:59:20] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 09:59:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 09:59:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 09:59:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 09:59:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:00:50] [INFO] Checking activity reminders 
[2026-04-06 10:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:01:21] [INFO] Checking activity reminders 
[2026-04-06 10:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:01:51] [INFO] Checking activity reminders 
[2026-04-06 10:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:02:21] [INFO] Checking activity reminders 
[2026-04-06 10:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:02:53] [INFO] Checking activity reminders 
[2026-04-06 10:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:03:23] [INFO] Checking activity reminders 
[2026-04-06 10:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:03:53] [INFO] Checking activity reminders 
[2026-04-06 10:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:04:24] [INFO] Checking activity reminders 
[2026-04-06 10:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:04:54] [INFO] Checking activity reminders 
[2026-04-06 10:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:05:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:05:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:05:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:05:24] [INFO] Checking activity reminders 
[2026-04-06 10:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:07:17] [INFO] Checking activity reminders 
[2026-04-06 10:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:20:12] [INFO] Checking activity reminders 
[2026-04-06 10:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:20:48] [INFO] Checking activity reminders 
[2026-04-06 10:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:21:01] [INFO] Checking activity reminders 
[2026-04-06 10:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:21:31] [INFO] Checking activity reminders 
[2026-04-06 10:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:22:02] [INFO] Checking activity reminders 
[2026-04-06 10:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:22:32] [INFO] Checking activity reminders 
[2026-04-06 10:22:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:22:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:23:06] [INFO] Checking activity reminders 
[2026-04-06 10:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:23:36] [INFO] Checking activity reminders 
[2026-04-06 10:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:23:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 10:23:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 10:24:06] [INFO] Checking activity reminders 
[2026-04-06 10:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:24:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:24:36] [INFO] Checking activity reminders 
[2026-04-06 10:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:25:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"بودجه بندی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:25:00","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:25:00] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-06 10:25:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-06 10:25:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-06 10:25:00] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:00] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:25:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:25:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"بودجه بندی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:25:00"}
[2026-04-06 10:25:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:25:00"}
[2026-04-06 10:25:06] [INFO] Checking activity reminders 
[2026-04-06 10:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:25:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"بودجه بندی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:25:15","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:25:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:25:15] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-06 10:25:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-06 10:25:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-06 10:25:15] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:25:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:15] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:25:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:25:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"بودجه بندی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:25:15"}
[2026-04-06 10:25:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:25:15"}
[2026-04-06 10:25:15] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:25:15] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:25:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"بودجه بندی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":1000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:25:15","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":1000,"server_time":"2026-04-06 10:25:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:25:37] [INFO] Checking activity reminders 
[2026-04-06 10:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:26:00] [INFO] Checking activity reminders 
[2026-04-06 10:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:26:31] [INFO] Checking activity reminders 
[2026-04-06 10:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:28:01] [INFO] Checking activity reminders 
[2026-04-06 10:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:29:51] [INFO] Checking activity reminders 
[2026-04-06 10:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:30:36] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:30:37] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 10:30:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 10:30:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 10:30:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:31] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"get_performance_dashboard"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:41:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:43:30] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:43:30] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"check_reminders"}
[2026-04-06 10:43:30] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:43:36] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:43:36] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 10:43:36] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 10:43:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:43:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:43:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 10:43:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 10:44:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:44:07] [INFO] Checking activity reminders 
[2026-04-06 10:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:44:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"مربی شخصی","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:44:21","session_id":"pi677chn06k9v3bmfugh3jif38"}
[2026-04-06 10:44:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:44:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مربی شخصی","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:44:21] [INFO] extractPhoneFromDealTitle called {"input_title":"مربی شخصی"}
[2026-04-06 10:44:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"مربی شخصی"}
[2026-04-06 10:44:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مربی شخصی"}
[2026-04-06 10:44:21] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:44:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:44:21] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:44:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:44:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"مربی شخصی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:44:21"}
[2026-04-06 10:44:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:44:22"}
[2026-04-06 10:44:22] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:44:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:44:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"مربی شخصی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":1000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:44:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:44:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":1000,"server_time":"2026-04-06 10:44:22","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:44:37] [INFO] Checking activity reminders 
[2026-04-06 10:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:45:07] [INFO] Checking activity reminders 
[2026-04-06 10:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:45:29] [INFO] Checking activity reminders 
[2026-04-06 10:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:45:59] [INFO] Checking activity reminders 
[2026-04-06 10:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:46:29] [INFO] Checking activity reminders 
[2026-04-06 10:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:46:59] [INFO] Checking activity reminders 
[2026-04-06 10:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:47:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:47:30] [INFO] Checking activity reminders 
[2026-04-06 10:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:48:32] [INFO] Checking activity reminders 
[2026-04-06 10:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:48:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 10:48:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:48:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:48:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:48:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:49:06] [INFO] Checking activity reminders 
[2026-04-06 10:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:49:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:49:24","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:49:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:49:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:49:24] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-06 10:49:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-06 10:49:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-06 10:49:24] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:49:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:49:24] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:49:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:49:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:49:24"}
[2026-04-06 10:49:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:49:24"}
[2026-04-06 10:49:24] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:49:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:49:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":1000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:49:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:49:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:49:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":1000,"server_time":"2026-04-06 10:49:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:49:36] [INFO] Checking activity reminders 
[2026-04-06 10:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:49:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 10:49:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:49:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:49:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:49:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:50:14] [INFO] Checking activity reminders 
[2026-04-06 10:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:50:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"مشاور کسب و کار","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:50:24","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:50:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مشاور کسب و کار","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:50:24] [INFO] extractPhoneFromDealTitle called {"input_title":"مشاور کسب و کار"}
[2026-04-06 10:50:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"مشاور کسب و کار"}
[2026-04-06 10:50:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مشاور کسب و کار"}
[2026-04-06 10:50:24] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:50:24] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:50:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:50:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"مشاور کسب و کار","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:50:24"}
[2026-04-06 10:50:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:50:24"}
[2026-04-06 10:50:24] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:50:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:50:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | مشاور کسب و کار","base_title_used":"معامله دوم 9662683496","services_text":"مشاور کسب و کار","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":100000000,"payment_amount":1000,"payments_present":true,"requested_services":["مشاور کسب و کار"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:50:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:50:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | مشاور کسب و کار","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":100000000,"payment_amount":1000,"server_time":"2026-04-06 10:50:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:50:44] [INFO] Checking activity reminders 
[2026-04-06 10:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:51:15] [INFO] Checking activity reminders 
[2026-04-06 10:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:51:46] [INFO] Checking activity reminders 
[2026-04-06 10:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:52:16] [INFO] Checking activity reminders 
[2026-04-06 10:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:52:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:52:32","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:52:32] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-06 10:52:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-06 10:52:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-06 10:52:32] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:32] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:52:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:52:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:52:32"}
[2026-04-06 10:52:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | مشاور کسب و کار","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:52:32"}
[2026-04-06 10:52:32] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:52:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:52:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | مشاور کسب و کار","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":100000000,"payment_amount":1000,"payments_present":true,"requested_services":["مشاور کسب و کار"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:52:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:52:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | مشاور کسب و کار","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":100000000,"payment_amount":1000,"server_time":"2026-04-06 10:52:32","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:52:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:48] [INFO] Checking activity reminders 
[2026-04-06 10:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:52:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 10:52:55","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 10:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 10:52:55] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-06 10:52:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-06 10:52:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-06 10:52:55] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 10:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:55] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 10:52:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 10:52:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:52:55"}
[2026-04-06 10:52:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | مشاور کسب و کار","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 10:52:55"}
[2026-04-06 10:52:55] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 10:52:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 10:52:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | CIP","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":1000,"payments_present":true,"requested_services":["CIP"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 10:52:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 10:52:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:52:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | CIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":1000,"server_time":"2026-04-06 10:52:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 10:52:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:53:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:53:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:53:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:53:18] [INFO] Checking activity reminders 
[2026-04-06 10:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:53:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:53:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:53:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:53:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:53:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:53:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:53:51] [INFO] Checking activity reminders 
[2026-04-06 10:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:54:27] [INFO] Checking activity reminders 
[2026-04-06 10:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:54:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 10:54:58] [INFO] Checking activity reminders 
[2026-04-06 10:54:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:54:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:55:29] [INFO] Checking activity reminders 
[2026-04-06 10:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:55:59] [INFO] Checking activity reminders 
[2026-04-06 10:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:56:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 10:56:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 10:56:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 10:56:30] [INFO] Checking activity reminders 
[2026-04-06 10:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:57:03] [INFO] Checking activity reminders 
[2026-04-06 10:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:57:33] [INFO] Checking activity reminders 
[2026-04-06 10:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:58:03] [INFO] Checking activity reminders 
[2026-04-06 10:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:58:34] [INFO] Checking activity reminders 
[2026-04-06 10:58:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:58:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"check_reminders"}
[2026-04-06 10:58:39] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:46] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:46] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_person_profile"}
[2026-04-06 10:58:46] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:46] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:46] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_person_profile"}
[2026-04-06 10:58:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:55] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:55] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:55] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:58:55] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_person_profile"}
[2026-04-06 10:58:55] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:04] [INFO] Checking activity reminders 
[2026-04-06 10:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:59:19] [INFO] Checking activity reminders 
[2026-04-06 10:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 10:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"check_reminders"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_person_profile"}
[2026-04-06 10:59:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:48] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:48] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 10:59:48] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:49] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:49] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:49] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_products"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_deals"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_deals"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 10:59:50] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:02] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_deals"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_products"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_deals"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:08] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:41] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:41] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"check_reminders"}
[2026-04-06 11:00:41] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 11:00:42] [WARNING] Auth check failed - not authenticated {"session_id":"i19t51j3b5m66m9m9ui0huj9ri","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:43] [WARNING] Auth check failed - not authenticated {"session_id":"2lqefphct05eq8pcehtp5li89e","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:00:44] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-06 11:00:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:00:46] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-06 11:00:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:00:52] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-06 11:00:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:01:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:01:22] [INFO] Checking activity reminders 
[2026-04-06 11:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:01:40] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:01:41] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 11:01:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:01:49] [INFO] Checking activity reminders 
[2026-04-06 11:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:01:52] [INFO] Checking activity reminders 
[2026-04-06 11:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:11] [INFO] Checking activity reminders 
[2026-04-06 11:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:15] [INFO] Checking activity reminders 
[2026-04-06 11:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:22] [INFO] Checking activity reminders 
[2026-04-06 11:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:31] [INFO] Checking activity reminders 
[2026-04-06 11:02:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:33] [INFO] Lead update received {"contact_id":"local_69d2259ddbf192.01124033","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 11:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:02:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d2259ddbf192.01124033"}
[2026-04-06 11:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:02:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:02:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:02:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:02:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:02:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:02:41] [INFO] Checking activity reminders 
[2026-04-06 11:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-04-06 11:02:52] [INFO] Checking activity reminders 
[2026-04-06 11:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:03:06] [INFO] Checking activity reminders 
[2026-04-06 11:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:03:12] [INFO] Checking activity reminders 
[2026-04-06 11:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:03:14] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:03:14] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-06 11:03:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:03:23] [INFO] Checking activity reminders 
[2026-04-06 11:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:03:42] [INFO] Checking activity reminders 
[2026-04-06 11:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:03:53] [INFO] Checking activity reminders 
[2026-04-06 11:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:04:12] [INFO] Checking activity reminders 
[2026-04-06 11:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:04:14] [INFO] Activity save request {"post_data":{"contact_id":"local_69d2259ddbf192.01124033","deal_id":"local_69d2259de02e7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خانخ دار تهران \r\nاندازه ۴ میلیارد طلا ( یه سرویس از قدیم و کم کم طلا خریده)\r\nمیخواد بفروشه ملک سرمایه کنه ، پرزنت کانال ۱ ساله و ۶ ماهه با برادرش مشورت فردا ۱۱ اطلاع","activity_duration":"25","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 11:04:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 11:04:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 11:04:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d2259ddbf192.01124033","note_was_empty":true}
[2026-04-06 11:04:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:14] [INFO] Updating virtual stage {"contact_id":"local_69d2259ddbf192.01124033","stage_name":"new","force":false}
[2026-04-06 11:04:14] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2259ddbf192.01124033","stage_name":"new"}
[2026-04-06 11:04:14] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2259ddbf192.01124033"}
[2026-04-06 11:04:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2259de02e7","stage":"تماس پیگیری","status_change":null}
[2026-04-06 11:04:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d361f6ded7e9.74090848","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 11:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d361f6ded7e9.74090848"}
[2026-04-06 11:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:15] [INFO] Updating virtual stage {"contact_id":"local_69d2259ddbf192.01124033","stage_name":"deal_registered","force":false}
[2026-04-06 11:04:15] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2259ddbf192.01124033","stage_name":"deal_registered"}
[2026-04-06 11:04:15] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2259ddbf192.01124033"}
[2026-04-06 11:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-06 11:04:23] [INFO] Checking activity reminders 
[2026-04-06 11:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:04:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:04:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:04:53] [INFO] Checking activity reminders 
[2026-04-06 11:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:04:59] [WARNING] Auth check failed - not authenticated {"session_id":"9m0knpe0a97op63r0bfdjhu8kl","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:04:59] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 11:04:59] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 11:05:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:05:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:05:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:05:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:05:23] [INFO] Checking activity reminders 
[2026-04-06 11:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:05:31] [INFO] Checking activity reminders 
[2026-04-06 11:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:05:53] [INFO] Checking activity reminders 
[2026-04-06 11:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:06:01] [INFO] Checking activity reminders 
[2026-04-06 11:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:06:23] [INFO] Checking activity reminders 
[2026-04-06 11:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:06:31] [INFO] Checking activity reminders 
[2026-04-06 11:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:06:53] [INFO] Checking activity reminders 
[2026-04-06 11:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:02] [INFO] Checking activity reminders 
[2026-04-06 11:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:23] [INFO] Checking activity reminders 
[2026-04-06 11:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:32] [INFO] Checking activity reminders 
[2026-04-06 11:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:36] [INFO] Checking activity reminders 
[2026-04-06 11:07:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:07:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:53] [INFO] Checking activity reminders 
[2026-04-06 11:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:07:56] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:07:56] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-06 11:07:56] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 11:08:02] [INFO] Checking activity reminders 
[2026-04-06 11:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:08:07] [INFO] Checking activity reminders 
[2026-04-06 11:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:08:21] [INFO] Activity save request {"post_data":{"contact_id":"local_69d22561c103b1.06843920","deal_id":"local_69d22561c1bd9","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 11:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 11:08:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 11:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d22561c103b1.06843920","note_was_empty":true}
[2026-04-06 11:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:21] [INFO] Updating virtual stage {"contact_id":"local_69d22561c103b1.06843920","stage_name":"new","force":false}
[2026-04-06 11:08:21] [INFO] Virtual stage successfully saved {"contact_id":"local_69d22561c103b1.06843920","stage_name":"new"}
[2026-04-06 11:08:21] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d22561c103b1.06843920"}
[2026-04-06 11:08:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22561c1bd9","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 11:08:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d362edd2d326.05734094","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 11:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69d362edd2d326.05734094"}
[2026-04-06 11:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:21] [INFO] Updating virtual stage {"contact_id":"local_69d22561c103b1.06843920","stage_name":"deal_registered","force":false}
[2026-04-06 11:08:21] [INFO] Virtual stage successfully saved {"contact_id":"local_69d22561c103b1.06843920","stage_name":"deal_registered"}
[2026-04-06 11:08:21] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d22561c103b1.06843920"}
[2026-04-06 11:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d22561c103b1.06843920","person_id":"21982"}
[2026-04-06 11:08:23] [INFO] Checking activity reminders 
[2026-04-06 11:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:08:32] [INFO] Checking activity reminders 
[2026-04-06 11:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:08:37] [INFO] Checking activity reminders 
[2026-04-06 11:08:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:08:54] [INFO] Checking activity reminders 
[2026-04-06 11:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:09:03] [INFO] Checking activity reminders 
[2026-04-06 11:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:09:24] [INFO] Checking activity reminders 
[2026-04-06 11:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:09:33] [INFO] Checking activity reminders 
[2026-04-06 11:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:09:54] [INFO] Checking activity reminders 
[2026-04-06 11:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:03] [INFO] Checking activity reminders 
[2026-04-06 11:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:24] [INFO] Checking activity reminders 
[2026-04-06 11:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:33] [INFO] Checking activity reminders 
[2026-04-06 11:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:36] [INFO] Checking activity reminders 
[2026-04-06 11:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:54] [INFO] Checking activity reminders 
[2026-04-06 11:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:10:56] [INFO] Activity save request {"post_data":{"contact_id":"local_69d2252feaf1f0.82933893","deal_id":"local_69d2252febbd7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 11:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 11:10:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 11:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d2252feaf1f0.82933893","note_was_empty":true}
[2026-04-06 11:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:56] [INFO] Updating virtual stage {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"new","force":false}
[2026-04-06 11:10:56] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"new"}
[2026-04-06 11:10:56] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2252feaf1f0.82933893"}
[2026-04-06 11:10:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2252febbd7","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 11:10:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d36388ea64d0.82236467","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 11:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69d36388ea64d0.82236467"}
[2026-04-06 11:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:56] [INFO] Updating virtual stage {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered","force":false}
[2026-04-06 11:10:56] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered"}
[2026-04-06 11:10:56] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2252feaf1f0.82933893"}
[2026-04-06 11:10:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 11:10:59] [INFO] Checking activity reminders 
[2026-04-06 11:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:03] [INFO] Checking activity reminders 
[2026-04-06 11:11:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:18] [INFO] Checking activity reminders 
[2026-04-06 11:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:19] [INFO] Checking activity reminders 
[2026-04-06 11:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:20] [INFO] Checking activity reminders 
[2026-04-06 11:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:11:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:11:24] [INFO] Checking activity reminders 
[2026-04-06 11:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:33] [INFO] Checking activity reminders 
[2026-04-06 11:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:11:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:11:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:11:52] [INFO] Checking activity reminders 
[2026-04-06 11:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:11:54] [INFO] Checking activity reminders 
[2026-04-06 11:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:12:03] [INFO] Checking activity reminders 
[2026-04-06 11:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:12:22] [INFO] Checking activity reminders 
[2026-04-06 11:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:12:25] [INFO] Checking activity reminders 
[2026-04-06 11:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:12:53] [INFO] Checking activity reminders 
[2026-04-06 11:12:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:12:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:12:55] [INFO] Checking activity reminders 
[2026-04-06 11:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:13:25] [INFO] Checking activity reminders 
[2026-04-06 11:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:13:55] [INFO] Checking activity reminders 
[2026-04-06 11:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:14:25] [INFO] Checking activity reminders 
[2026-04-06 11:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:14:55] [INFO] Checking activity reminders 
[2026-04-06 11:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:15:01] [INFO] Checking activity reminders 
[2026-04-06 11:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:15:25] [INFO] Checking activity reminders 
[2026-04-06 11:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:17:14] [INFO] Checking activity reminders 
[2026-04-06 11:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:17:44] [INFO] Checking activity reminders 
[2026-04-06 11:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:18:14] [INFO] Checking activity reminders 
[2026-04-06 11:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:18:44] [INFO] Checking activity reminders 
[2026-04-06 11:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:19:14] [INFO] Checking activity reminders 
[2026-04-06 11:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:19:45] [INFO] Checking activity reminders 
[2026-04-06 11:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:20:15] [INFO] Checking activity reminders 
[2026-04-06 11:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:20:45] [INFO] Checking activity reminders 
[2026-04-06 11:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:21:15] [INFO] Checking activity reminders 
[2026-04-06 11:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:21:45] [INFO] Checking activity reminders 
[2026-04-06 11:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:22:15] [INFO] Checking activity reminders 
[2026-04-06 11:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:22:30] [INFO] Checking activity reminders 
[2026-04-06 11:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:22:36] [INFO] Checking activity reminders 
[2026-04-06 11:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:22:45] [INFO] Checking activity reminders 
[2026-04-06 11:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:00] [INFO] Checking activity reminders 
[2026-04-06 11:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:06] [INFO] Checking activity reminders 
[2026-04-06 11:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:15] [INFO] Checking activity reminders 
[2026-04-06 11:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:30] [INFO] Checking activity reminders 
[2026-04-06 11:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:45] [INFO] Checking activity reminders 
[2026-04-06 11:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:23:46] [INFO] Checking activity reminders 
[2026-04-06 11:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:24:03] [INFO] Checking activity reminders 
[2026-04-06 11:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:24:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:24:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:24:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:24:15] [INFO] Checking activity reminders 
[2026-04-06 11:24:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:24:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:24:33] [INFO] Checking activity reminders 
[2026-04-06 11:24:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:24:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:24:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:24:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:24:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:24:45] [INFO] Checking activity reminders 
[2026-04-06 11:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:25:03] [INFO] Checking activity reminders 
[2026-04-06 11:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:25:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:25:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:25:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:25:16] [INFO] Checking activity reminders 
[2026-04-06 11:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:25:33] [INFO] Checking activity reminders 
[2026-04-06 11:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:25:46] [INFO] Checking activity reminders 
[2026-04-06 11:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:26:05] [INFO] Checking activity reminders 
[2026-04-06 11:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:26:16] [INFO] Checking activity reminders 
[2026-04-06 11:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:26:46] [INFO] Checking activity reminders 
[2026-04-06 11:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:27:16] [INFO] Checking activity reminders 
[2026-04-06 11:27:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:27:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:27:46] [INFO] Checking activity reminders 
[2026-04-06 11:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:28:16] [INFO] Checking activity reminders 
[2026-04-06 11:28:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:28:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:28:46] [INFO] Checking activity reminders 
[2026-04-06 11:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:29:17] [INFO] Checking activity reminders 
[2026-04-06 11:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:29:47] [INFO] Checking activity reminders 
[2026-04-06 11:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:29:50] [INFO] Checking activity reminders 
[2026-04-06 11:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:29:56] [INFO] Checking activity reminders 
[2026-04-06 11:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:30:17] [INFO] Checking activity reminders 
[2026-04-06 11:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:30:47] [INFO] Checking activity reminders 
[2026-04-06 11:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:30:53] [INFO] Checking activity reminders 
[2026-04-06 11:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:31:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:31:17] [INFO] Checking activity reminders 
[2026-04-06 11:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:24] [INFO] Checking activity reminders 
[2026-04-06 11:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:47] [INFO] Checking activity reminders 
[2026-04-06 11:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:47] [INFO] Checking activity reminders 
[2026-04-06 11:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:54] [INFO] Checking activity reminders 
[2026-04-06 11:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:31:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15926","person_id":"13569"}
[2026-04-06 11:32:00] [INFO] Lead update received {"contact_id":"local_69d224ec2390d8.74455270","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:32:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d224ec2390d8.74455270"}
[2026-04-06 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:32:17] [INFO] Checking activity reminders 
[2026-04-06 11:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:32:17] [INFO] Checking activity reminders 
[2026-04-06 11:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:32:24] [INFO] Checking activity reminders 
[2026-04-06 11:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:32:47] [INFO] Checking activity reminders 
[2026-04-06 11:32:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:32:48] [INFO] Checking activity reminders 
[2026-04-06 11:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:32:54] [INFO] Checking activity reminders 
[2026-04-06 11:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:33:18] [INFO] Checking activity reminders 
[2026-04-06 11:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:33:18] [INFO] Checking activity reminders 
[2026-04-06 11:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:33:48] [INFO] Checking activity reminders 
[2026-04-06 11:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:33:48] [INFO] Checking activity reminders 
[2026-04-06 11:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:34:18] [INFO] Checking activity reminders 
[2026-04-06 11:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:34:21] [INFO] Checking activity reminders 
[2026-04-06 11:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:34:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:34:48] [INFO] Checking activity reminders 
[2026-04-06 11:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:34:51] [INFO] Checking activity reminders 
[2026-04-06 11:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:34:59] [INFO] Checking activity reminders 
[2026-04-06 11:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:01] [INFO] Checking activity reminders 
[2026-04-06 11:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:18] [INFO] Checking activity reminders 
[2026-04-06 11:35:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:21] [INFO] Checking activity reminders 
[2026-04-06 11:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:31] [INFO] Checking activity reminders 
[2026-04-06 11:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:48] [INFO] Checking activity reminders 
[2026-04-06 11:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:35:51] [INFO] Checking activity reminders 
[2026-04-06 11:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:36:02] [INFO] Checking activity reminders 
[2026-04-06 11:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:36:21] [INFO] Checking activity reminders 
[2026-04-06 11:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:36:32] [INFO] Checking activity reminders 
[2026-04-06 11:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:36:38] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224ec2390d8.74455270","deal_id":"local_69d224ec295e1","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سقز ، کارمند حسابدار کاسب ماشین ایرانی وارداتی تجربی انجام داده\r\nپیشنهاد دادم تخصصی اموزش هوش کارشناسی ببینه ولی وارد نشدم گفتم بعدا بهت میگم\r\n۳۰۰ گرم طلا از برج ۶ خرید زده گرم ۷۱۰۰ \r\n۶ ماهه ماشین معامله نکرده بیشتر رو طلا بوده \r\n۱۲۰۰ نقد \r\nتجربه بورس قبلا خوب نداشته دید دادم\r\nارسال ش کارت تا قبل ساعت ۴ امروز واریز ","activity_duration":"30","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 11:36:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224ec2390d8.74455270","note_was_empty":true}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] Updating virtual stage {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"new","force":false}
[2026-04-06 11:36:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"new"}
[2026-04-06 11:36:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224ec2390d8.74455270"}
[2026-04-06 11:36:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224ec295e1","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 11:36:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3698e558692.11454254","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3698e558692.11454254"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] Updating virtual stage {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered","force":false}
[2026-04-06 11:36:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered"}
[2026-04-06 11:36:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224ec2390d8.74455270"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-06 11:36:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7417","deal_id":"local_694a9964a82744.19968342","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 11:36:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:36:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7417","is_new_deal":false}
[2026-04-06 11:36:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 11:36:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 11:36:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 11:36:38] [INFO] getContactPrimaryPhone called {"contact_id":"7417"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:36:38] [INFO] getContactPrimaryPhone result {"contact_id":"7417","person_found":true,"primary_phone":"9144489209"}
[2026-04-06 11:36:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144489209"}
[2026-04-06 11:36:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144489209","contact_id":"7417","deal_id":"local_694a9964a82744.19968342","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 11:36:38"}
[2026-04-06 11:36:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a9964a82744.19968342","contact_id":"7417","existing_deal_found":true,"existing_contact_id":"7417","existing_title":"معامله اول 9144489209 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 11:36:38"}
[2026-04-06 11:36:38] [INFO] DealController.save validated payments {"deal_id":"local_694a9964a82744.19968342","contact_id":"7417","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-06 11:36:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7417","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 11:36:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a9964a82744.19968342","contact_didar_id":"7417","title":"معامله اول 9144489209 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9144489209","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هاشم یگانه","existing_deal":"YES","existing_deal_id":"local_694a9964a82744.19968342","existing_deal_status":"Won","server_time":"2026-04-06 11:36:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:36:38] [INFO] Deal success processed {"contact_id":"7417","person_name":"هاشم یگانه","products_count":1}
[2026-04-06 11:36:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a9964a82744.19968342","contact_id":"7417","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9144489209 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-06 11:36:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 11:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-06 11:36:52] [INFO] Checking activity reminders 
[2026-04-06 11:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:37:19] [INFO] Checking activity reminders 
[2026-04-06 11:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:41:24] [INFO] Checking activity reminders 
[2026-04-06 11:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:41:54] [INFO] Checking activity reminders 
[2026-04-06 11:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:42:24] [INFO] Checking activity reminders 
[2026-04-06 11:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:42:54] [INFO] Checking activity reminders 
[2026-04-06 11:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:43:25] [INFO] Checking activity reminders 
[2026-04-06 11:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:43:55] [INFO] Checking activity reminders 
[2026-04-06 11:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:44:25] [INFO] Checking activity reminders 
[2026-04-06 11:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:44:46] [INFO] Checking activity reminders 
[2026-04-06 11:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:44:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:44:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:44:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:44:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:44:55] [INFO] Checking activity reminders 
[2026-04-06 11:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:44:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 11:44:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:44:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:44:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:45:19] [INFO] Checking activity reminders 
[2026-04-06 11:45:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:45:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:45:25] [INFO] Checking activity reminders 
[2026-04-06 11:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:45:38] [INFO] Checking activity reminders 
[2026-04-06 11:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:45:48] [INFO] Checking activity reminders 
[2026-04-06 11:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:45:55] [INFO] Checking activity reminders 
[2026-04-06 11:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:45:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 11:45:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 11:45:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 11:46:25] [INFO] Checking activity reminders 
[2026-04-06 11:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:46:55] [INFO] Checking activity reminders 
[2026-04-06 11:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:47:25] [INFO] Checking activity reminders 
[2026-04-06 11:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:47:55] [INFO] Checking activity reminders 
[2026-04-06 11:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:48:25] [INFO] Checking activity reminders 
[2026-04-06 11:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:48:55] [INFO] Checking activity reminders 
[2026-04-06 11:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:49:05] [INFO] Activity save request {"post_data":{"contact_id":"806","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"طلای فیزیکی به عنوان پشتیبان مالی و سرمایه داره \r\nاستاد در کانال عمومی دنبال میکردند \r\nارسال لینک کانال بله \r\nدسترسی به دوره از طریق سایت ","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 11:49:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:49:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 11:49:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 11:49:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:49:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"806","note_was_empty":true}
[2026-04-06 11:49:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"806","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 11:49:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d36c79ceae14.22197346","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 11:49:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:49:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d36c79ceae14.22197346"}
[2026-04-06 11:49:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:49:05] [INFO] Updating virtual stage {"contact_id":"806","stage_name":"deal_registered","force":false}
[2026-04-06 11:49:06] [INFO] Virtual stage successfully saved {"contact_id":"806","stage_name":"deal_registered"}
[2026-04-06 11:49:06] [INFO] Virtual stage updated after activity save {"contact_id":"806"}
[2026-04-06 11:49:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"806","person_id":"11712"}
[2026-04-06 11:49:14] [INFO] Checking activity reminders 
[2026-04-06 11:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:49:44] [INFO] Checking activity reminders 
[2026-04-06 11:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:50:14] [INFO] Checking activity reminders 
[2026-04-06 11:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:50:44] [INFO] Checking activity reminders 
[2026-04-06 11:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:51:14] [INFO] Checking activity reminders 
[2026-04-06 11:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:51:44] [INFO] Checking activity reminders 
[2026-04-06 11:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:52:14] [INFO] Checking activity reminders 
[2026-04-06 11:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:52:45] [INFO] Checking activity reminders 
[2026-04-06 11:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:53:15] [INFO] Checking activity reminders 
[2026-04-06 11:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:53:45] [INFO] Checking activity reminders 
[2026-04-06 11:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:54:15] [INFO] Checking activity reminders 
[2026-04-06 11:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:54:45] [INFO] Checking activity reminders 
[2026-04-06 11:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:55:15] [INFO] Checking activity reminders 
[2026-04-06 11:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:55:17] [INFO] Checking activity reminders 
[2026-04-06 11:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:55:45] [INFO] Checking activity reminders 
[2026-04-06 11:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:55:59] [INFO] Checking activity reminders 
[2026-04-06 11:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:56:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"635","person_id":"18905"}
[2026-04-06 11:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6655","person_id":"635"}
[2026-04-06 11:56:15] [INFO] Checking activity reminders 
[2026-04-06 11:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:56:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 11:56:29] [INFO] Checking activity reminders 
[2026-04-06 11:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:56:46] [INFO] Checking activity reminders 
[2026-04-06 11:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:57:00] [INFO] Checking activity reminders 
[2026-04-06 11:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:57:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 11:57:16] [INFO] Checking activity reminders 
[2026-04-06 11:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:57:46] [INFO] Checking activity reminders 
[2026-04-06 11:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:57:47] [INFO] Checking activity reminders 
[2026-04-06 11:57:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:57:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:58:16] [INFO] Checking activity reminders 
[2026-04-06 11:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:58:17] [INFO] Checking activity reminders 
[2026-04-06 11:58:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:58:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:58:46] [INFO] Checking activity reminders 
[2026-04-06 11:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:58:57] [INFO] Checking activity reminders 
[2026-04-06 11:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:59:02] [INFO] Checking activity reminders 
[2026-04-06 11:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:59:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1360","person_id":"8218"}
[2026-04-06 11:59:33] [INFO] Checking activity reminders 
[2026-04-06 11:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 11:59:39] [INFO] Checking activity reminders 
[2026-04-06 11:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 11:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:00:03] [INFO] Checking activity reminders 
[2026-04-06 12:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:00:05] [INFO] Checking activity reminders 
[2026-04-06 12:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:00:18] [INFO] Checking activity reminders 
[2026-04-06 12:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:01:36] [INFO] Checking activity reminders 
[2026-04-06 12:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:02:06] [INFO] Checking activity reminders 
[2026-04-06 12:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:02:36] [INFO] Checking activity reminders 
[2026-04-06 12:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:03:06] [INFO] Checking activity reminders 
[2026-04-06 12:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:03:36] [INFO] Checking activity reminders 
[2026-04-06 12:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:04:06] [INFO] Checking activity reminders 
[2026-04-06 12:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:04:36] [INFO] Checking activity reminders 
[2026-04-06 12:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:05:06] [INFO] Checking activity reminders 
[2026-04-06 12:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:05:37] [INFO] Checking activity reminders 
[2026-04-06 12:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:05:55] [INFO] Checking activity reminders 
[2026-04-06 12:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:06:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-06 12:06:07] [INFO] Checking activity reminders 
[2026-04-06 12:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:06:29] [INFO] Checking activity reminders 
[2026-04-06 12:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:06:37] [INFO] Checking activity reminders 
[2026-04-06 12:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:06:46] [INFO] Checking activity reminders 
[2026-04-06 12:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:06:58] [INFO] Checking activity reminders 
[2026-04-06 12:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:07:07] [INFO] Checking activity reminders 
[2026-04-06 12:07:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:07:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:07:17] [INFO] Checking activity reminders 
[2026-04-06 12:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:07:37] [INFO] Checking activity reminders 
[2026-04-06 12:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:08:08] [INFO] Checking activity reminders 
[2026-04-06 12:08:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:08:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:08:38] [INFO] Checking activity reminders 
[2026-04-06 12:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:09:08] [INFO] Checking activity reminders 
[2026-04-06 12:09:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:09:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:09:38] [INFO] Checking activity reminders 
[2026-04-06 12:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:10:09] [INFO] Checking activity reminders 
[2026-04-06 12:10:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:10:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:10:33] [INFO] Checking activity reminders 
[2026-04-06 12:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:10:39] [INFO] Checking activity reminders 
[2026-04-06 12:10:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:10:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:11:09] [INFO] Checking activity reminders 
[2026-04-06 12:11:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:11:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:11:39] [INFO] Checking activity reminders 
[2026-04-06 12:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:11:59] [INFO] Checking activity reminders 
[2026-04-06 12:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:12:09] [INFO] Checking activity reminders 
[2026-04-06 12:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:12:39] [INFO] Checking activity reminders 
[2026-04-06 12:12:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:12:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:12:47] [INFO] Checking activity reminders 
[2026-04-06 12:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:13:09] [INFO] Checking activity reminders 
[2026-04-06 12:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:13:18] [INFO] Checking activity reminders 
[2026-04-06 12:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:13:39] [INFO] Checking activity reminders 
[2026-04-06 12:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:13:48] [INFO] Checking activity reminders 
[2026-04-06 12:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:14:09] [INFO] Checking activity reminders 
[2026-04-06 12:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:14:18] [INFO] Checking activity reminders 
[2026-04-06 12:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:14:39] [INFO] Checking activity reminders 
[2026-04-06 12:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:14:48] [INFO] Checking activity reminders 
[2026-04-06 12:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:15:09] [INFO] Checking activity reminders 
[2026-04-06 12:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:15:18] [INFO] Checking activity reminders 
[2026-04-06 12:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:15:40] [INFO] Checking activity reminders 
[2026-04-06 12:15:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:15:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:15:48] [INFO] Checking activity reminders 
[2026-04-06 12:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:16:10] [INFO] Checking activity reminders 
[2026-04-06 12:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:16:18] [INFO] Checking activity reminders 
[2026-04-06 12:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:16:40] [INFO] Checking activity reminders 
[2026-04-06 12:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:16:48] [INFO] Checking activity reminders 
[2026-04-06 12:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:17:10] [INFO] Checking activity reminders 
[2026-04-06 12:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:17:16] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:17:16] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-06 12:17:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 12:17:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 12:17:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 12:17:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 12:17:18] [INFO] Checking activity reminders 
[2026-04-06 12:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:17:40] [INFO] Checking activity reminders 
[2026-04-06 12:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:17:48] [INFO] Checking activity reminders 
[2026-04-06 12:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:18:10] [INFO] Checking activity reminders 
[2026-04-06 12:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:18:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21180","deal_id":"local_69ca8f4a14c1f1.19857812","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 12:18:17","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 12:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:18:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21180","is_new_deal":false}
[2026-04-06 12:18:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 12:18:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:18:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:18:17] [INFO] getContactPrimaryPhone called {"contact_id":"21180"}
[2026-04-06 12:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:18:17] [INFO] getContactPrimaryPhone result {"contact_id":"21180","person_found":true,"primary_phone":"9120338072"}
[2026-04-06 12:18:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120338072"}
[2026-04-06 12:18:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120338072","contact_id":"21180","deal_id":"local_69ca8f4a14c1f1.19857812","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:18:17"}
[2026-04-06 12:18:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca8f4a14c1f1.19857812","contact_id":"21180","existing_deal_found":true,"existing_contact_id":"21180","existing_title":"معامله دوم 9120338072 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:18:17"}
[2026-04-06 12:18:17] [INFO] DealController.save validated payments {"deal_id":"local_69ca8f4a14c1f1.19857812","contact_id":"21180","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 12:18:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21180","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 12:18:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca8f4a14c1f1.19857812","contact_didar_id":"21180","title":"معامله دوم 9120338072 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120338072","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی اسماعیلی","existing_deal":"YES","existing_deal_id":"local_69ca8f4a14c1f1.19857812","existing_deal_status":"Pending","server_time":"2026-04-06 12:18:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 12:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:18:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca8f4a14c1f1.19857812","contact_id":"21180","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9120338072 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 12:18:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 12:18:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:18:18] [INFO] Checking activity reminders 
[2026-04-06 12:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:18:40] [INFO] Checking activity reminders 
[2026-04-06 12:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:18:48] [INFO] Checking activity reminders 
[2026-04-06 12:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:18:56] [INFO] Checking activity reminders 
[2026-04-06 12:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:10] [INFO] Checking activity reminders 
[2026-04-06 12:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"635","person_id":"18905"}
[2026-04-06 12:19:18] [INFO] Checking activity reminders 
[2026-04-06 12:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:26] [INFO] Checking activity reminders 
[2026-04-06 12:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"635","person_id":"18905"}
[2026-04-06 12:19:41] [INFO] Checking activity reminders 
[2026-04-06 12:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:48] [INFO] Checking activity reminders 
[2026-04-06 12:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:56] [INFO] Checking activity reminders 
[2026-04-06 12:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:19:58] [INFO] Activity save request {"post_data":{"contact_id":"21180","deal_id":"local_69ca8f4a14c1f1.19857812","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شهرستان بود \r\nاداره محل کارش هیچ گونه پرداختی نداشته \r\nسرمایه گذاری طلا ی اجاره ای در ارومیه داشته طرف کلاهبردار بوده و اختیاری روی سرمایه نداره \r\nدر صورت نقدینگی و سرمایه مجدد تماس \r\nارسال لینک 404 در بله ","activity_duration":"9","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:19:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:19:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:19:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:19:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:19:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21180","note_was_empty":true}
[2026-04-06 12:19:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"21180","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 12:19:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:19:58] [INFO] Updating virtual stage {"contact_id":"21180","stage_name":"deal_registered","force":false}
[2026-04-06 12:19:59] [INFO] Virtual stage successfully saved {"contact_id":"21180","stage_name":"deal_registered"}
[2026-04-06 12:19:59] [INFO] Virtual stage updated after activity save {"contact_id":"21180"}
[2026-04-06 12:19:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8f4a14c1f1.19857812","stage":"تماس پیگیری","status_change":null}
[2026-04-06 12:19:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d373b6f0adc0.39431653","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:19:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d373b6f0adc0.39431653"}
[2026-04-06 12:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:19:59] [INFO] Updating virtual stage {"contact_id":"21180","stage_name":"deal_registered","force":false}
[2026-04-06 12:19:59] [INFO] Virtual stage successfully saved {"contact_id":"21180","stage_name":"deal_registered"}
[2026-04-06 12:19:59] [INFO] Virtual stage updated after activity save {"contact_id":"21180"}
[2026-04-06 12:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21180","person_id":"10920"}
[2026-04-06 12:20:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:20:11] [INFO] Checking activity reminders 
[2026-04-06 12:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:20:19] [INFO] Checking activity reminders 
[2026-04-06 12:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:20:26] [INFO] Checking activity reminders 
[2026-04-06 12:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:20:41] [INFO] Checking activity reminders 
[2026-04-06 12:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:20:49] [INFO] Checking activity reminders 
[2026-04-06 12:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:21:11] [INFO] Checking activity reminders 
[2026-04-06 12:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:21:19] [INFO] Checking activity reminders 
[2026-04-06 12:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:21:41] [INFO] Checking activity reminders 
[2026-04-06 12:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:21:49] [INFO] Checking activity reminders 
[2026-04-06 12:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:21:55] [INFO] Checking activity reminders 
[2026-04-06 12:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:22:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-06 12:22:11] [INFO] Checking activity reminders 
[2026-04-06 12:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:22:25] [INFO] Checking activity reminders 
[2026-04-06 12:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:22:41] [INFO] Checking activity reminders 
[2026-04-06 12:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:22:43] [INFO] Checking activity reminders 
[2026-04-06 12:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-06 12:23:11] [INFO] Checking activity reminders 
[2026-04-06 12:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:23:13] [INFO] Checking activity reminders 
[2026-04-06 12:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:23:41] [INFO] Checking activity reminders 
[2026-04-06 12:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:23:43] [INFO] Checking activity reminders 
[2026-04-06 12:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:24:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16695","deal_id":"local_69d20fec45f430.32686786","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 12:24:08","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 12:24:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16695","is_new_deal":false}
[2026-04-06 12:24:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 12:24:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:24:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:24:08] [INFO] getContactPrimaryPhone called {"contact_id":"16695"}
[2026-04-06 12:24:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:08] [INFO] getContactPrimaryPhone result {"contact_id":"16695","person_found":true,"primary_phone":"9135502844"}
[2026-04-06 12:24:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135502844"}
[2026-04-06 12:24:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135502844","contact_id":"16695","deal_id":"local_69d20fec45f430.32686786","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:24:08"}
[2026-04-06 12:24:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20fec45f430.32686786","contact_id":"16695","existing_deal_found":true,"existing_contact_id":"16695","existing_title":"معامله دوم 9135502844 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:24:08"}
[2026-04-06 12:24:08] [INFO] DealController.save validated payments {"deal_id":"local_69d20fec45f430.32686786","contact_id":"16695","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-06 12:24:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16695","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 12:24:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20fec45f430.32686786","contact_didar_id":"16695","title":"معامله دوم 9135502844 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9135502844","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرب زاده","existing_deal":"YES","existing_deal_id":"local_69d20fec45f430.32686786","existing_deal_status":"Pending","server_time":"2026-04-06 12:24:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 12:24:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20fec45f430.32686786","contact_id":"16695","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9135502844 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 12:24:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 12:24:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:11] [INFO] Checking activity reminders 
[2026-04-06 12:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:24:17] [INFO] Checking activity reminders 
[2026-04-06 12:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:24:36] [INFO] Activity save request {"post_data":{"contact_id":"16695","deal_id":"local_69d20fec45f430.32686786","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک داد شرایط صحبت نداره ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:24:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16695","note_was_empty":true}
[2026-04-06 12:24:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"16695","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:36] [INFO] Updating virtual stage {"contact_id":"16695","stage_name":"deal_registered","force":false}
[2026-04-06 12:24:36] [INFO] Virtual stage successfully saved {"contact_id":"16695","stage_name":"deal_registered"}
[2026-04-06 12:24:36] [INFO] Virtual stage updated after activity save {"contact_id":"16695"}
[2026-04-06 12:24:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20fec45f430.32686786","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 12:24:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d374cc532ea5.57593808","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d374cc532ea5.57593808"}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:36] [INFO] Updating virtual stage {"contact_id":"16695","stage_name":"deal_registered","force":false}
[2026-04-06 12:24:36] [INFO] Virtual stage successfully saved {"contact_id":"16695","stage_name":"deal_registered"}
[2026-04-06 12:24:36] [INFO] Virtual stage updated after activity save {"contact_id":"16695"}
[2026-04-06 12:24:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:24:42] [INFO] Checking activity reminders 
[2026-04-06 12:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:24:47] [INFO] Checking activity reminders 
[2026-04-06 12:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:25:12] [INFO] Checking activity reminders 
[2026-04-06 12:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:25:18] [INFO] Checking activity reminders 
[2026-04-06 12:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:25:42] [INFO] Checking activity reminders 
[2026-04-06 12:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:26:12] [INFO] Checking activity reminders 
[2026-04-06 12:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:26:42] [INFO] Checking activity reminders 
[2026-04-06 12:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:27:12] [INFO] Checking activity reminders 
[2026-04-06 12:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:27:38] [INFO] Checking activity reminders 
[2026-04-06 12:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:28:08] [INFO] Checking activity reminders 
[2026-04-06 12:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:28:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:29:31] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:29:31] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"check_reminders"}
[2026-04-06 12:29:31] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:30:05] [INFO] Checking activity reminders 
[2026-04-06 12:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:30:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:30:17] [INFO] Checking activity reminders 
[2026-04-06 12:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:30:19] [INFO] Checking activity reminders 
[2026-04-06 12:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:30:49] [INFO] Checking activity reminders 
[2026-04-06 12:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:30:57] [INFO] Activity save request {"post_data":{"contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"برای اقای سهرابی ارسال در صورت عدم پرداخت 1\/20 حذف از کانال \r\n","activity_duration":"1","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:30:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:30:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:30:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21119","note_was_empty":true}
[2026-04-06 12:30:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"21119","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:30:57] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-06 12:30:57] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-06 12:30:57] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-06 12:30:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2242cc75260.76890464","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-06 12:30:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d37649951df5.02116226","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:30:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69d37649951df5.02116226"}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:30:57] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-06 12:30:57] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-06 12:30:57] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-06 12:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-06 12:31:01] [INFO] Checking activity reminders 
[2026-04-06 12:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:31:19] [INFO] Checking activity reminders 
[2026-04-06 12:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:31:49] [INFO] Checking activity reminders 
[2026-04-06 12:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:32:19] [INFO] Checking activity reminders 
[2026-04-06 12:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:32:35] [INFO] Checking activity reminders 
[2026-04-06 12:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 12:33:05] [INFO] Checking activity reminders 
[2026-04-06 12:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:33:35] [INFO] Checking activity reminders 
[2026-04-06 12:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:33:38] [INFO] Checking activity reminders 
[2026-04-06 12:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:33:57] [INFO] Checking activity reminders 
[2026-04-06 12:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:33:58] [INFO] Checking activity reminders 
[2026-04-06 12:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:33:59] [INFO] Checking activity reminders 
[2026-04-06 12:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:10] [INFO] Checking activity reminders 
[2026-04-06 12:34:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:34:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-06 12:34:28] [INFO] Checking activity reminders 
[2026-04-06 12:34:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:34:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:34:40] [INFO] Checking activity reminders 
[2026-04-06 12:34:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:34:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:34:42] [INFO] Activity save request {"post_data":{"contact_id":"16695","deal_id":"local_69d20fec45f430.32686786","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"پیامک داد تمایل به حضور در 405 ندارم \r\n","activity_duration":"1","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:34:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16695","note_was_empty":true}
[2026-04-06 12:34:42] [INFO] Didar write disabled; saving activity locally {"contact_id":"16695","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:42] [INFO] Updating virtual stage {"contact_id":"16695","stage_name":"deal_registered","force":false}
[2026-04-06 12:34:42] [INFO] Virtual stage successfully saved {"contact_id":"16695","stage_name":"deal_registered"}
[2026-04-06 12:34:42] [INFO] Virtual stage updated after activity save {"contact_id":"16695"}
[2026-04-06 12:34:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20fec45f430.32686786","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 12:34:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3772a8d1028.11558826","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3772a8d1028.11558826"}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:42] [INFO] Updating virtual stage {"contact_id":"16695","stage_name":"deal_registered","force":false}
[2026-04-06 12:34:42] [INFO] Virtual stage successfully saved {"contact_id":"16695","stage_name":"deal_registered"}
[2026-04-06 12:34:42] [INFO] Virtual stage updated after activity save {"contact_id":"16695"}
[2026-04-06 12:34:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16695","person_id":"15984"}
[2026-04-06 12:34:59] [INFO] Checking activity reminders 
[2026-04-06 12:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 12:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 12:35:25] [INFO] Checking activity reminders 
[2026-04-06 12:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:35:29] [INFO] Checking activity reminders 
[2026-04-06 12:35:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:35:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:35:32] [INFO] Checking activity reminders 
[2026-04-06 12:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:35:59] [INFO] Checking activity reminders 
[2026-04-06 12:35:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:35:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:36:03] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:03] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"check_reminders"}
[2026-04-06 12:36:03] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:05] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_products"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_deals"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_deals"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:06] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:08] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_products"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_deals"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_deals"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:09] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:11] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:11] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:11] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 12:36:11] [WARNING] Auth check failed - not authenticated {"session_id":"1j38jrbhsq7bq1det8i1dbabai","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:58] [WARNING] Auth check failed - not authenticated {"session_id":"se8mco6j0s046nc0stlt6qv2hb","session_keys":[],"action":"log_client_event"}
[2026-04-06 12:36:58] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 12:36:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 12:37:12] [INFO] Checking activity reminders 
[2026-04-06 12:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:37:13] [INFO] Checking activity reminders 
[2026-04-06 12:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:37:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-06 12:37:29] [INFO] Checking activity reminders 
[2026-04-06 12:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:37:42] [INFO] Checking activity reminders 
[2026-04-06 12:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:37:43] [INFO] Checking activity reminders 
[2026-04-06 12:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 12:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 12:38:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20185","deal_id":"local_69d20e248d20c5.63646741","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 12:38:02","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 12:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20185","is_new_deal":false}
[2026-04-06 12:38:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 12:38:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:38:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 12:38:02] [INFO] getContactPrimaryPhone called {"contact_id":"20185"}
[2026-04-06 12:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:02] [INFO] getContactPrimaryPhone result {"contact_id":"20185","person_found":true,"primary_phone":"9130076516"}
[2026-04-06 12:38:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130076516"}
[2026-04-06 12:38:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130076516","contact_id":"20185","deal_id":"local_69d20e248d20c5.63646741","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:38:02"}
[2026-04-06 12:38:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20e248d20c5.63646741","contact_id":"20185","existing_deal_found":true,"existing_contact_id":"20185","existing_title":"معامله دوم 9130076516 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 12:38:02"}
[2026-04-06 12:38:02] [INFO] DealController.save validated payments {"deal_id":"local_69d20e248d20c5.63646741","contact_id":"20185","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-06 12:38:02] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20185","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 12:38:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20e248d20c5.63646741","contact_didar_id":"20185","title":"معامله دوم 9130076516 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130076516","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اشکان  حسینی","existing_deal":"YES","existing_deal_id":"local_69d20e248d20c5.63646741","existing_deal_status":"Pending","server_time":"2026-04-06 12:38:02","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 12:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20e248d20c5.63646741","contact_id":"20185","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130076516 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 12:38:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 12:38:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:12] [INFO] Checking activity reminders 
[2026-04-06 12:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:38:35] [INFO] Checking activity reminders 
[2026-04-06 12:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:38:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 12:38:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 12:38:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 12:38:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 12:38:42] [INFO] Checking activity reminders 
[2026-04-06 12:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:38:48] [INFO] Activity save request {"post_data":{"contact_id":"20185","deal_id":"local_69d20e248d20c5.63646741","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:38:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20185","note_was_empty":true}
[2026-04-06 12:38:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"20185","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 12:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:48] [INFO] Updating virtual stage {"contact_id":"20185","stage_name":"deal_registered","force":false}
[2026-04-06 12:38:48] [INFO] Virtual stage successfully saved {"contact_id":"20185","stage_name":"deal_registered"}
[2026-04-06 12:38:48] [INFO] Virtual stage updated after activity save {"contact_id":"20185"}
[2026-04-06 12:38:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20e248d20c5.63646741","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 12:38:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d37820d2fc95.37827174","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69d37820d2fc95.37827174"}
[2026-04-06 12:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:48] [INFO] Updating virtual stage {"contact_id":"20185","stage_name":"deal_registered","force":false}
[2026-04-06 12:38:48] [INFO] Virtual stage successfully saved {"contact_id":"20185","stage_name":"deal_registered"}
[2026-04-06 12:38:48] [INFO] Virtual stage updated after activity save {"contact_id":"20185"}
[2026-04-06 12:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20185","person_id":"20251"}
[2026-04-06 12:38:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 12:39:07] [INFO] Checking activity reminders 
[2026-04-06 12:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:39:12] [INFO] Checking activity reminders 
[2026-04-06 12:39:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:39:32] [INFO] Checking activity reminders 
[2026-04-06 12:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:39:37] [INFO] Checking activity reminders 
[2026-04-06 12:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:39:42] [INFO] Checking activity reminders 
[2026-04-06 12:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:39:58] [INFO] Checking activity reminders 
[2026-04-06 12:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:07] [INFO] Checking activity reminders 
[2026-04-06 12:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:08] [INFO] Checking activity reminders 
[2026-04-06 12:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:12] [INFO] Checking activity reminders 
[2026-04-06 12:40:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:14] [INFO] Checking activity reminders 
[2026-04-06 12:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:20] [INFO] Checking activity reminders 
[2026-04-06 12:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:40:37] [INFO] Checking activity reminders 
[2026-04-06 12:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:42] [INFO] Checking activity reminders 
[2026-04-06 12:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:47] [INFO] Checking activity reminders 
[2026-04-06 12:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:40:55] [INFO] Checking activity reminders 
[2026-04-06 12:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:02] [INFO] Checking activity reminders 
[2026-04-06 12:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:04] [INFO] Checking activity reminders 
[2026-04-06 12:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:07] [INFO] Checking activity reminders 
[2026-04-06 12:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:07] [INFO] Checking activity reminders 
[2026-04-06 12:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:12] [INFO] Checking activity reminders 
[2026-04-06 12:41:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:19] [INFO] Checking activity reminders 
[2026-04-06 12:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:24] [INFO] Checking activity reminders 
[2026-04-06 12:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:30] [INFO] Checking activity reminders 
[2026-04-06 12:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:34] [INFO] Checking activity reminders 
[2026-04-06 12:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:37] [INFO] Checking activity reminders 
[2026-04-06 12:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:38] [INFO] Lead update received {"contact_id":"9532","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 12:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:41:38] [DEBUG] findByPhone: Found person {"phones":["9913102532"],"found_id":"21979","found_didar_id":"local_69d224d8e7aef7.68866400","found_name":"لید جدید"}
[2026-04-06 12:41:38] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9913102532","found_didar_id":"local_69d224d8e7aef7.68866400","found_local_id":"21979","found_name":"لید جدید"}
[2026-04-06 12:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 12:41:38] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9913102532","found_id":"21979","found_didar_id":"local_69d224d8e7aef7.68866400","exclude_id":6324,"exclude_didar_id":"9532"}
[2026-04-06 12:41:38] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدید (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 12:41:42] [INFO] Checking activity reminders 
[2026-04-06 12:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:42:02] [INFO] Checking activity reminders 
[2026-04-06 12:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:04] [INFO] Checking activity reminders 
[2026-04-06 12:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:07] [INFO] Checking activity reminders 
[2026-04-06 12:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:12] [INFO] Checking activity reminders 
[2026-04-06 12:42:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:12] [INFO] Checking activity reminders 
[2026-04-06 12:42:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:16] [INFO] Checking activity reminders 
[2026-04-06 12:42:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-06 12:42:34] [INFO] Checking activity reminders 
[2026-04-06 12:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-06 12:42:37] [INFO] Checking activity reminders 
[2026-04-06 12:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:43] [INFO] Checking activity reminders 
[2026-04-06 12:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:42:46] [INFO] Checking activity reminders 
[2026-04-06 12:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:08] [INFO] Checking activity reminders 
[2026-04-06 12:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:08] [INFO] Checking activity reminders 
[2026-04-06 12:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:09] [INFO] Activity save request {"post_data":{"contact_id":"9532","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"۹فروردین صحبت کامیون اقساط رو پرداخته میگه بفروشم سرمایه گذاری کنم \r\nقرلر شد ولریز کانال داشته باشه مشاوره بگیره ارسال ش کارت ","activity_duration":"30","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 12:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:43:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 12:43:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 12:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:43:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9532","note_was_empty":true}
[2026-04-06 12:43:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"9532","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-06 12:43:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d379253fc5e8.44659448","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 12:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:43:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d379253fc5e8.44659448"}
[2026-04-06 12:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:43:09] [INFO] Updating virtual stage {"contact_id":"9532","stage_name":"deal_registered","force":false}
[2026-04-06 12:43:09] [INFO] Virtual stage successfully saved {"contact_id":"9532","stage_name":"deal_registered"}
[2026-04-06 12:43:09] [INFO] Virtual stage updated after activity save {"contact_id":"9532"}
[2026-04-06 12:43:09] [INFO] Checking activity reminders 
[2026-04-06 12:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-06 12:43:13] [INFO] Checking activity reminders 
[2026-04-06 12:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:18] [INFO] Checking activity reminders 
[2026-04-06 12:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1407","person_id":"15872"}
[2026-04-06 12:43:38] [INFO] Checking activity reminders 
[2026-04-06 12:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:43] [INFO] Checking activity reminders 
[2026-04-06 12:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:43:48] [INFO] Checking activity reminders 
[2026-04-06 12:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:07] [INFO] Checking activity reminders 
[2026-04-06 12:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:08] [INFO] Checking activity reminders 
[2026-04-06 12:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:13] [INFO] Checking activity reminders 
[2026-04-06 12:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:31] [INFO] Checking activity reminders 
[2026-04-06 12:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:38] [INFO] Checking activity reminders 
[2026-04-06 12:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:44:43] [INFO] Checking activity reminders 
[2026-04-06 12:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:01] [INFO] Checking activity reminders 
[2026-04-06 12:45:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:08] [INFO] Checking activity reminders 
[2026-04-06 12:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:13] [INFO] Checking activity reminders 
[2026-04-06 12:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:33] [INFO] Checking activity reminders 
[2026-04-06 12:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:38] [INFO] Checking activity reminders 
[2026-04-06 12:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:43] [INFO] Checking activity reminders 
[2026-04-06 12:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:45:56] [INFO] Checking activity reminders 
[2026-04-06 12:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:08] [INFO] Checking activity reminders 
[2026-04-06 12:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:12] [INFO] Checking activity reminders 
[2026-04-06 12:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:13] [INFO] Checking activity reminders 
[2026-04-06 12:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:14] [INFO] Checking activity reminders 
[2026-04-06 12:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 12:46:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 12:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-06 12:46:38] [INFO] Checking activity reminders 
[2026-04-06 12:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:43] [INFO] Checking activity reminders 
[2026-04-06 12:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:44] [INFO] Checking activity reminders 
[2026-04-06 12:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:46:52] [INFO] Checking activity reminders 
[2026-04-06 12:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:05] [INFO] Checking activity reminders 
[2026-04-06 12:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:08] [INFO] Checking activity reminders 
[2026-04-06 12:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:14] [INFO] Checking activity reminders 
[2026-04-06 12:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:34] [INFO] Checking activity reminders 
[2026-04-06 12:47:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-06 12:47:38] [INFO] Checking activity reminders 
[2026-04-06 12:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:44] [INFO] Checking activity reminders 
[2026-04-06 12:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:47:57] [INFO] Checking activity reminders 
[2026-04-06 12:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:08] [INFO] Checking activity reminders 
[2026-04-06 12:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:14] [INFO] Checking activity reminders 
[2026-04-06 12:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:25] [INFO] Checking activity reminders 
[2026-04-06 12:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:38] [INFO] Checking activity reminders 
[2026-04-06 12:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:44] [INFO] Checking activity reminders 
[2026-04-06 12:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:50] [INFO] Checking activity reminders 
[2026-04-06 12:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:48:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3416","person_id":"20541"}
[2026-04-06 12:49:14] [INFO] Checking activity reminders 
[2026-04-06 12:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:49:22] [INFO] Checking activity reminders 
[2026-04-06 12:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:49:44] [INFO] Checking activity reminders 
[2026-04-06 12:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:50:05] [INFO] Checking activity reminders 
[2026-04-06 12:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:50:14] [INFO] Checking activity reminders 
[2026-04-06 12:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:50:20] [INFO] Checking activity reminders 
[2026-04-06 12:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:50:44] [INFO] Checking activity reminders 
[2026-04-06 12:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:50:46] [INFO] Checking activity reminders 
[2026-04-06 12:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:51:15] [INFO] Checking activity reminders 
[2026-04-06 12:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:51:19] [INFO] Checking activity reminders 
[2026-04-06 12:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:51:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-06 12:51:32] [INFO] Checking activity reminders 
[2026-04-06 12:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:51:45] [INFO] Checking activity reminders 
[2026-04-06 12:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:52:02] [INFO] Checking activity reminders 
[2026-04-06 12:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:52:14] [INFO] Checking activity reminders 
[2026-04-06 12:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:52:15] [INFO] Checking activity reminders 
[2026-04-06 12:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:52:26] [INFO] Checking activity reminders 
[2026-04-06 12:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-06 12:52:45] [INFO] Checking activity reminders 
[2026-04-06 12:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:53:15] [INFO] Checking activity reminders 
[2026-04-06 12:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:53:26] [INFO] Checking activity reminders 
[2026-04-06 12:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:53:42] [INFO] Checking activity reminders 
[2026-04-06 12:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:53:45] [INFO] Checking activity reminders 
[2026-04-06 12:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:54:14] [INFO] Checking activity reminders 
[2026-04-06 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:54:15] [INFO] Checking activity reminders 
[2026-04-06 12:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-06 12:54:45] [INFO] Checking activity reminders 
[2026-04-06 12:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:54:51] [INFO] Checking activity reminders 
[2026-04-06 12:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:54:57] [INFO] Checking activity reminders 
[2026-04-06 12:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:06] [INFO] Checking activity reminders 
[2026-04-06 12:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:15] [INFO] Checking activity reminders 
[2026-04-06 12:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:16] [INFO] Checking activity reminders 
[2026-04-06 12:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:43] [INFO] Checking activity reminders 
[2026-04-06 12:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:45] [INFO] Checking activity reminders 
[2026-04-06 12:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:55:46] [INFO] Checking activity reminders 
[2026-04-06 12:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:56:16] [INFO] Checking activity reminders 
[2026-04-06 12:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:56:33] [INFO] Checking activity reminders 
[2026-04-06 12:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:56:46] [INFO] Checking activity reminders 
[2026-04-06 12:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:57:16] [INFO] Checking activity reminders 
[2026-04-06 12:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:57:46] [INFO] Checking activity reminders 
[2026-04-06 12:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:58:19] [INFO] Checking activity reminders 
[2026-04-06 12:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:58:39] [INFO] Checking activity reminders 
[2026-04-06 12:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:58:49] [INFO] Checking activity reminders 
[2026-04-06 12:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:59:17] [INFO] Checking activity reminders 
[2026-04-06 12:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:59:19] [INFO] Checking activity reminders 
[2026-04-06 12:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-06 12:59:48] [INFO] Checking activity reminders 
[2026-04-06 12:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 12:59:49] [INFO] Checking activity reminders 
[2026-04-06 12:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 12:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:00:19] [INFO] Checking activity reminders 
[2026-04-06 13:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:00:49] [INFO] Checking activity reminders 
[2026-04-06 13:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:01:19] [INFO] Checking activity reminders 
[2026-04-06 13:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:01:39] [INFO] Checking activity reminders 
[2026-04-06 13:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:01:50] [INFO] Checking activity reminders 
[2026-04-06 13:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:02:20] [INFO] Checking activity reminders 
[2026-04-06 13:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:02:41] [INFO] Checking activity reminders 
[2026-04-06 13:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:02:50] [INFO] Checking activity reminders 
[2026-04-06 13:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:12] [INFO] Checking activity reminders 
[2026-04-06 13:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:20] [INFO] Checking activity reminders 
[2026-04-06 13:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:30] [INFO] Checking activity reminders 
[2026-04-06 13:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:31] [INFO] Checking activity reminders 
[2026-04-06 13:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:33] [INFO] Checking activity reminders 
[2026-04-06 13:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:41] [INFO] Checking activity reminders 
[2026-04-06 13:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:46] [INFO] Checking activity reminders 
[2026-04-06 13:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:03:56] [INFO] Checking activity reminders 
[2026-04-06 13:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:03:58] [INFO] Checking activity reminders 
[2026-04-06 13:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:04:11] [INFO] Checking activity reminders 
[2026-04-06 13:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:04:22] [INFO] Checking activity reminders 
[2026-04-06 13:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:04:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-06 13:04:41] [INFO] Checking activity reminders 
[2026-04-06 13:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:04:56] [INFO] Checking activity reminders 
[2026-04-06 13:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:05:12] [INFO] Checking activity reminders 
[2026-04-06 13:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:05:17] [INFO] Checking activity reminders 
[2026-04-06 13:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:05:20] [INFO] Checking activity reminders 
[2026-04-06 13:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:05:42] [INFO] Checking activity reminders 
[2026-04-06 13:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:05:42] [INFO] Checking activity reminders 
[2026-04-06 13:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:06:08] [INFO] Checking activity reminders 
[2026-04-06 13:06:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:06:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:07:02] [INFO] Checking activity reminders 
[2026-04-06 13:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:07:42] [INFO] Checking activity reminders 
[2026-04-06 13:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:07:46] [INFO] Checking activity reminders 
[2026-04-06 13:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:07:50] [INFO] Checking activity reminders 
[2026-04-06 13:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-06 13:07:54] [INFO] Checking activity reminders 
[2026-04-06 13:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:08:12] [INFO] Checking activity reminders 
[2026-04-06 13:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:08:24] [INFO] Checking activity reminders 
[2026-04-06 13:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:08:50] [INFO] Checking activity reminders 
[2026-04-06 13:08:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:08:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:08:54] [INFO] Checking activity reminders 
[2026-04-06 13:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:09:02] [INFO] Checking activity reminders 
[2026-04-06 13:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:09:24] [INFO] Checking activity reminders 
[2026-04-06 13:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:09:31] [INFO] Checking activity reminders 
[2026-04-06 13:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:09:53] [INFO] Checking activity reminders 
[2026-04-06 13:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:09:54] [INFO] Checking activity reminders 
[2026-04-06 13:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-06 13:10:23] [INFO] Checking activity reminders 
[2026-04-06 13:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:10:24] [INFO] Checking activity reminders 
[2026-04-06 13:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:10:47] [INFO] Checking activity reminders 
[2026-04-06 13:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:10:51] [INFO] Checking activity reminders 
[2026-04-06 13:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:10:54] [INFO] Checking activity reminders 
[2026-04-06 13:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:11:25] [INFO] Checking activity reminders 
[2026-04-06 13:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:11:33] [INFO] Checking activity reminders 
[2026-04-06 13:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:11:57] [INFO] Checking activity reminders 
[2026-04-06 13:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:03] [INFO] Checking activity reminders 
[2026-04-06 13:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:09] [INFO] Checking activity reminders 
[2026-04-06 13:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:27] [INFO] Checking activity reminders 
[2026-04-06 13:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:37] [INFO] Checking activity reminders 
[2026-04-06 13:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:49] [INFO] Checking activity reminders 
[2026-04-06 13:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:12:57] [INFO] Checking activity reminders 
[2026-04-06 13:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:13:19] [INFO] Checking activity reminders 
[2026-04-06 13:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:13:28] [INFO] Checking activity reminders 
[2026-04-06 13:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:13:35] [INFO] Checking activity reminders 
[2026-04-06 13:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:13:58] [INFO] Checking activity reminders 
[2026-04-06 13:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:00] [INFO] Checking activity reminders 
[2026-04-06 13:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:28] [INFO] Checking activity reminders 
[2026-04-06 13:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:35] [INFO] Checking activity reminders 
[2026-04-06 13:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:36] [INFO] Checking activity reminders 
[2026-04-06 13:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:40] [INFO] Checking activity reminders 
[2026-04-06 13:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-06 13:14:58] [INFO] Checking activity reminders 
[2026-04-06 13:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:15:06] [INFO] Checking activity reminders 
[2026-04-06 13:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:15:27] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224d8e7aef7.68866400","deal_id":"local_69d224d8ee137","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شماره دوم میلاد حسینی هست از پارسال پرزنت کانال شده عید امسالم تماس گرفت صحبت شد ارسال ش کارت ۶ ماهه امروز ۱۵ میزنه دسترسی فعال بشه ماشین گذاشته بروش بعد تسویه\r\nشماره اصلی +989388821661\r\nپیشنهاد اوش کارشناسی برای شغل دادم گفت خسته س از رانندگی","activity_duration":"35","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:15:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224d8e7aef7.68866400","note_was_empty":true}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:27] [INFO] Updating virtual stage {"contact_id":"local_69d224d8e7aef7.68866400","stage_name":"new","force":false}
[2026-04-06 13:15:27] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224d8e7aef7.68866400","stage_name":"new"}
[2026-04-06 13:15:27] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224d8e7aef7.68866400"}
[2026-04-06 13:15:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224d8ee137","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 13:15:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d380b74af3d3.66219508","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69d380b74af3d3.66219508"}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:27] [INFO] Updating virtual stage {"contact_id":"local_69d224d8e7aef7.68866400","stage_name":"deal_registered","force":false}
[2026-04-06 13:15:27] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224d8e7aef7.68866400","stage_name":"deal_registered"}
[2026-04-06 13:15:27] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224d8e7aef7.68866400"}
[2026-04-06 13:15:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:28] [INFO] Checking activity reminders 
[2026-04-06 13:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:15:36] [INFO] Activity save request {"post_data":{"contact_id":"17261","deal_id":"local_694688331afe97.88015634","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"2 تا شرکت داره \r\nدرگیر پرداخت و وصول حقوق کارمنداان \r\nخیلی درگیر نوسان گیری و صندوق ها نیست \r\nاز اصل سرمایه حقوق کارمند داده خیلی نگران کسب و کارشه \r\nپرزنت جلسه مشاوره حضوری با استاد \r\nاشتراک 6 ماهه کانال 405 \/ 39 داشته باشه \r\nحساب هاش مسدود \/در حال پیگیری \r\nپیام در بله \r\n","activity_duration":"22","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:15:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17261","note_was_empty":true}
[2026-04-06 13:15:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"17261","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 13:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:36] [INFO] Updating virtual stage {"contact_id":"17261","stage_name":"deal_registered","force":false}
[2026-04-06 13:15:36] [INFO] Virtual stage successfully saved {"contact_id":"17261","stage_name":"deal_registered"}
[2026-04-06 13:15:36] [INFO] Virtual stage updated after activity save {"contact_id":"17261"}
[2026-04-06 13:15:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694688331afe97.88015634","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 13:15:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d380c0d1c8c9.23365216","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:15:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69d380c0d1c8c9.23365216"}
[2026-04-06 13:15:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:37] [INFO] Updating virtual stage {"contact_id":"17261","stage_name":"deal_registered","force":false}
[2026-04-06 13:15:37] [INFO] Virtual stage successfully saved {"contact_id":"17261","stage_name":"deal_registered"}
[2026-04-06 13:15:37] [INFO] Virtual stage updated after activity save {"contact_id":"17261"}
[2026-04-06 13:15:37] [INFO] Checking activity reminders 
[2026-04-06 13:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:15:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-06 13:15:46] [INFO] Checking activity reminders 
[2026-04-06 13:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:15:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-06 13:15:52] [INFO] Lead update received {"contact_id":"local_69d224d8e7aef7.68866400","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 13:15:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d224d8e7aef7.68866400"}
[2026-04-06 13:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 13:15:58] [INFO] Checking activity reminders 
[2026-04-06 13:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:07] [INFO] Checking activity reminders 
[2026-04-06 13:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:16] [INFO] Checking activity reminders 
[2026-04-06 13:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:17] [INFO] Checking activity reminders 
[2026-04-06 13:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:25] [INFO] Checking activity reminders 
[2026-04-06 13:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:29] [INFO] Checking activity reminders 
[2026-04-06 13:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:16:47] [INFO] Checking activity reminders 
[2026-04-06 13:16:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:16:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:17:08] [INFO] Checking activity reminders 
[2026-04-06 13:17:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:17:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:17:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-06 13:17:17] [INFO] Checking activity reminders 
[2026-04-06 13:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:17:30] [INFO] Checking activity reminders 
[2026-04-06 13:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:17:48] [INFO] Checking activity reminders 
[2026-04-06 13:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:18:18] [INFO] Checking activity reminders 
[2026-04-06 13:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:18:29] [INFO] Checking activity reminders 
[2026-04-06 13:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:18:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-06 13:18:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11689","person_id":"3762"}
[2026-04-06 13:18:48] [INFO] Checking activity reminders 
[2026-04-06 13:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:18:59] [INFO] Checking activity reminders 
[2026-04-06 13:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:19:10] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 13:19:10] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-06 13:19:10] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 13:19:18] [INFO] Checking activity reminders 
[2026-04-06 13:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:19:29] [INFO] Checking activity reminders 
[2026-04-06 13:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:19:48] [INFO] Checking activity reminders 
[2026-04-06 13:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:19:59] [INFO] Checking activity reminders 
[2026-04-06 13:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:20:18] [INFO] Checking activity reminders 
[2026-04-06 13:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:20:29] [INFO] Checking activity reminders 
[2026-04-06 13:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:20:39] [INFO] Checking activity reminders 
[2026-04-06 13:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:20:48] [INFO] Checking activity reminders 
[2026-04-06 13:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:21:16] [INFO] Checking activity reminders 
[2026-04-06 13:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:21:18] [INFO] Checking activity reminders 
[2026-04-06 13:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:21:46] [INFO] Checking activity reminders 
[2026-04-06 13:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:21:48] [INFO] Checking activity reminders 
[2026-04-06 13:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:21:52] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224986b1d06.92096443","deal_id":"local_69d22498705e5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشت خطی یکبار و عدم پاسخ ارسال پیامک","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:21:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:21:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:21:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224986b1d06.92096443","note_was_empty":true}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:21:52] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"new","force":false}
[2026-04-06 13:21:52] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"new"}
[2026-04-06 13:21:52] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-06 13:21:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22498705e5","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 13:21:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3823871d477.03262436","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:21:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3823871d477.03262436"}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:21:52] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered","force":false}
[2026-04-06 13:21:52] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered"}
[2026-04-06 13:21:52] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-06 13:21:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 13:22:19] [INFO] Checking activity reminders 
[2026-04-06 13:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:22:37] [INFO] Checking activity reminders 
[2026-04-06 13:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:22:48] [INFO] Checking activity reminders 
[2026-04-06 13:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:22:49] [INFO] Checking activity reminders 
[2026-04-06 13:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:22:50] [INFO] Checking activity reminders 
[2026-04-06 13:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:22:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:23:18] [INFO] Checking activity reminders 
[2026-04-06 13:23:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:23:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:23:19] [INFO] Checking activity reminders 
[2026-04-06 13:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:23:48] [INFO] Checking activity reminders 
[2026-04-06 13:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:23:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-06 13:23:49] [INFO] Checking activity reminders 
[2026-04-06 13:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:24:18] [INFO] Checking activity reminders 
[2026-04-06 13:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:24:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12740","person_id":"14025"}
[2026-04-06 13:24:19] [INFO] Checking activity reminders 
[2026-04-06 13:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:24:46] [INFO] Checking activity reminders 
[2026-04-06 13:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:24:49] [INFO] Checking activity reminders 
[2026-04-06 13:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:24:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2075","person_id":"16820"}
[2026-04-06 13:25:17] [INFO] Checking activity reminders 
[2026-04-06 13:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:25:19] [INFO] Checking activity reminders 
[2026-04-06 13:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:25:45] [INFO] Checking activity reminders 
[2026-04-06 13:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:25:49] [INFO] Checking activity reminders 
[2026-04-06 13:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-06 13:26:19] [INFO] Checking activity reminders 
[2026-04-06 13:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:26:37] [INFO] Checking activity reminders 
[2026-04-06 13:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:26:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8512","person_id":"5202"}
[2026-04-06 13:26:49] [INFO] Checking activity reminders 
[2026-04-06 13:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:27:19] [INFO] Checking activity reminders 
[2026-04-06 13:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:27:47] [INFO] Checking activity reminders 
[2026-04-06 13:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:27:49] [INFO] Checking activity reminders 
[2026-04-06 13:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:27:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-06 13:28:20] [INFO] Checking activity reminders 
[2026-04-06 13:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:28:20] [INFO] Checking activity reminders 
[2026-04-06 13:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:28:43] [INFO] Checking activity reminders 
[2026-04-06 13:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:28:50] [INFO] Checking activity reminders 
[2026-04-06 13:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:29:12] [INFO] Checking activity reminders 
[2026-04-06 13:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:29:20] [INFO] Checking activity reminders 
[2026-04-06 13:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:29:50] [INFO] Checking activity reminders 
[2026-04-06 13:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:06] [INFO] Checking activity reminders 
[2026-04-06 13:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-06 13:30:10] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 13:30:10] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 13:30:10] [INFO] Checking activity reminders 
[2026-04-06 13:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:16] [INFO] Checking activity reminders 
[2026-04-06 13:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:20] [INFO] Checking activity reminders 
[2026-04-06 13:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:43] [INFO] Checking activity reminders 
[2026-04-06 13:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:50] [INFO] Checking activity reminders 
[2026-04-06 13:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:30:58] [INFO] Checking activity reminders 
[2026-04-06 13:30:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:30:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:31:20] [INFO] Checking activity reminders 
[2026-04-06 13:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:31:25] [INFO] Checking activity reminders 
[2026-04-06 13:31:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:31:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:31:50] [INFO] Checking activity reminders 
[2026-04-06 13:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:31:57] [INFO] Checking activity reminders 
[2026-04-06 13:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-06 13:32:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"مشاوره","contact_id":"20228","deal_id":"local_69d225d9a11650.87523376","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 13:32:14","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 13:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:32:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مشاوره","contact_id":"20228","is_new_deal":false}
[2026-04-06 13:32:14] [INFO] extractPhoneFromDealTitle called {"input_title":"مشاوره"}
[2026-04-06 13:32:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"مشاوره"}
[2026-04-06 13:32:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مشاوره"}
[2026-04-06 13:32:14] [INFO] getContactPrimaryPhone called {"contact_id":"20228"}
[2026-04-06 13:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:32:14] [INFO] getContactPrimaryPhone result {"contact_id":"20228","person_found":true,"primary_phone":"9195256814"}
[2026-04-06 13:32:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195256814"}
[2026-04-06 13:32:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195256814","contact_id":"20228","deal_id":"local_69d225d9a11650.87523376","is_new_deal":false,"incoming_title":"مشاوره","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:32:14"}
[2026-04-06 13:32:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d225d9a11650.87523376","contact_id":"20228","existing_deal_found":true,"existing_contact_id":"20228","existing_title":"معامله دوم 9195256814 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:32:14"}
[2026-04-06 13:32:14] [INFO] DealController.save validated payments {"deal_id":"local_69d225d9a11650.87523376","contact_id":"20228","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 13:32:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20228","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 13:32:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d225d9a11650.87523376","contact_didar_id":"20228","title":"معامله دوم 9195256814 | مشاوره","base_title_used":"معامله دوم 9195256814","services_text":"مشاوره","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":30000000,"payment_amount":0,"payments_present":false,"requested_services":["مشاوره"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احمدی","existing_deal":"YES","existing_deal_id":"local_69d225d9a11650.87523376","existing_deal_status":"Pending","server_time":"2026-04-06 13:32:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 13:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:32:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d225d9a11650.87523376","contact_id":"20228","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9195256814 | مشاوره","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":30000000,"payment_amount":0,"server_time":"2026-04-06 13:32:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 13:32:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:32:20] [INFO] Checking activity reminders 
[2026-04-06 13:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:28] [INFO] Checking activity reminders 
[2026-04-06 13:32:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:32] [INFO] Checking activity reminders 
[2026-04-06 13:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:38] [INFO] Checking activity reminders 
[2026-04-06 13:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:50] [INFO] Checking activity reminders 
[2026-04-06 13:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:32:52] [INFO] Checking activity reminders 
[2026-04-06 13:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:33:21] [INFO] Checking activity reminders 
[2026-04-06 13:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:33:39] [INFO] Activity save request {"post_data":{"contact_id":"20228","deal_id":"local_69d225d9a11650.87523376","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"یکی از دوستاش پیج معرفی کرده بود \r\nکار مبلمان \/ تهران \/ شریک داره \r\nبه شدت به بحران و عدم درامد خورده \r\nپرزنت مشاوره حضوری با استاد \r\nمشورت با شریکش \r\nارسال پیامک ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:33:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20228","note_was_empty":true}
[2026-04-06 13:33:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"20228","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:39] [INFO] Updating virtual stage {"contact_id":"20228","stage_name":"deal_registered","force":false}
[2026-04-06 13:33:39] [INFO] Virtual stage successfully saved {"contact_id":"20228","stage_name":"deal_registered"}
[2026-04-06 13:33:39] [INFO] Virtual stage updated after activity save {"contact_id":"20228"}
[2026-04-06 13:33:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d225d9a11650.87523376","stage":"تماس پیگیری","status_change":null}
[2026-04-06 13:33:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d384fb870436.66870204","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d384fb870436.66870204"}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:39] [INFO] Updating virtual stage {"contact_id":"20228","stage_name":"deal_registered","force":false}
[2026-04-06 13:33:39] [INFO] Virtual stage successfully saved {"contact_id":"20228","stage_name":"deal_registered"}
[2026-04-06 13:33:39] [INFO] Virtual stage updated after activity save {"contact_id":"20228"}
[2026-04-06 13:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20228","person_id":"1346"}
[2026-04-06 13:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:33:51] [INFO] Checking activity reminders 
[2026-04-06 13:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:34:21] [INFO] Checking activity reminders 
[2026-04-06 13:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:34:51] [INFO] Checking activity reminders 
[2026-04-06 13:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:35:21] [INFO] Checking activity reminders 
[2026-04-06 13:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:35:51] [INFO] Checking activity reminders 
[2026-04-06 13:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:36:21] [INFO] Checking activity reminders 
[2026-04-06 13:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:36:51] [INFO] Checking activity reminders 
[2026-04-06 13:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:37:22] [INFO] Checking activity reminders 
[2026-04-06 13:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:37:52] [INFO] Checking activity reminders 
[2026-04-06 13:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:38:22] [INFO] Checking activity reminders 
[2026-04-06 13:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:38:52] [INFO] Checking activity reminders 
[2026-04-06 13:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:39:22] [INFO] Checking activity reminders 
[2026-04-06 13:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:39:52] [INFO] Checking activity reminders 
[2026-04-06 13:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:40:22] [INFO] Checking activity reminders 
[2026-04-06 13:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:40:52] [INFO] Checking activity reminders 
[2026-04-06 13:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:41:22] [INFO] Checking activity reminders 
[2026-04-06 13:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:41:52] [INFO] Checking activity reminders 
[2026-04-06 13:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:42:22] [INFO] Checking activity reminders 
[2026-04-06 13:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:42:53] [INFO] Checking activity reminders 
[2026-04-06 13:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:43:23] [INFO] Checking activity reminders 
[2026-04-06 13:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:43:53] [INFO] Checking activity reminders 
[2026-04-06 13:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:44:23] [INFO] Checking activity reminders 
[2026-04-06 13:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:44:53] [INFO] Checking activity reminders 
[2026-04-06 13:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:45:23] [INFO] Checking activity reminders 
[2026-04-06 13:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:45:53] [INFO] Checking activity reminders 
[2026-04-06 13:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:46:23] [INFO] Checking activity reminders 
[2026-04-06 13:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:46:54] [INFO] Checking activity reminders 
[2026-04-06 13:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:47:24] [INFO] Checking activity reminders 
[2026-04-06 13:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:47:31] [INFO] Checking activity reminders 
[2026-04-06 13:47:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:47:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:47:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:47:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:47:54] [INFO] Checking activity reminders 
[2026-04-06 13:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:48:01] [INFO] Checking activity reminders 
[2026-04-06 13:48:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:48:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:48:06] [INFO] Lead update received {"contact_id":"local_69d2245c7bca18.46131014","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 13:48:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:48:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:48:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d2245c7bca18.46131014"}
[2026-04-06 13:48:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:48:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:48:24] [INFO] Checking activity reminders 
[2026-04-06 13:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:48:51] [INFO] Checking activity reminders 
[2026-04-06 13:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:48:54] [INFO] Checking activity reminders 
[2026-04-06 13:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:49:22] [INFO] Checking activity reminders 
[2026-04-06 13:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:49:24] [INFO] Checking activity reminders 
[2026-04-06 13:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:49:52] [INFO] Checking activity reminders 
[2026-04-06 13:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:49:54] [INFO] Checking activity reminders 
[2026-04-06 13:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:50:22] [INFO] Checking activity reminders 
[2026-04-06 13:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:50:24] [INFO] Checking activity reminders 
[2026-04-06 13:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:50:29] [INFO] Activity save request {"post_data":{"contact_id":"local_69d2245c7bca18.46131014","deal_id":"local_69d2245c7e8d5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شیراز شهر خنج مهندس عمران ۲ سال فالو \r\nارز ۴ هزار تا \r\nطلا ۱۰۰ گرم از ۶۵۰۰ خریده \r\nماشین مصرف داده\r\nمجرد \r\nزمین مسکونی ارزش ۴ میلیارد\r\nتقدینگی ۱۰۰ ت صندوق ۷۰۰ ت\r\nتا قبل ۷ امروز اطلاع \r\nپرزنت یکساله و ۶ ماهه","activity_duration":"25","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:50:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d2245c7bca18.46131014","note_was_empty":true}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:29] [INFO] Updating virtual stage {"contact_id":"local_69d2245c7bca18.46131014","stage_name":"new","force":false}
[2026-04-06 13:50:29] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2245c7bca18.46131014","stage_name":"new"}
[2026-04-06 13:50:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2245c7bca18.46131014"}
[2026-04-06 13:50:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2245c7e8d5","stage":"تماس پیگیری","status_change":null}
[2026-04-06 13:50:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d388ed5b3cb3.83847223","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69d388ed5b3cb3.83847223"}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:29] [INFO] Updating virtual stage {"contact_id":"local_69d2245c7bca18.46131014","stage_name":"deal_registered","force":false}
[2026-04-06 13:50:29] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2245c7bca18.46131014","stage_name":"deal_registered"}
[2026-04-06 13:50:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2245c7bca18.46131014"}
[2026-04-06 13:50:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2245c7bca18.46131014","person_id":"21976"}
[2026-04-06 13:50:54] [INFO] Checking activity reminders 
[2026-04-06 13:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:51:24] [INFO] Checking activity reminders 
[2026-04-06 13:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:51:55] [INFO] Checking activity reminders 
[2026-04-06 13:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:52:25] [INFO] Checking activity reminders 
[2026-04-06 13:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:52:55] [INFO] Checking activity reminders 
[2026-04-06 13:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:53:25] [INFO] Checking activity reminders 
[2026-04-06 13:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:53:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3291","deal_id":"local_69d0a2ce6fd398.77130882","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 13:53:32","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 13:53:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:53:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3291","is_new_deal":false}
[2026-04-06 13:53:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 13:53:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 13:53:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 13:53:32] [INFO] getContactPrimaryPhone called {"contact_id":"3291"}
[2026-04-06 13:53:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:53:32] [INFO] getContactPrimaryPhone result {"contact_id":"3291","person_found":true,"primary_phone":"9127782457"}
[2026-04-06 13:53:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9127782457"}
[2026-04-06 13:53:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9127782457","contact_id":"3291","deal_id":"local_69d0a2ce6fd398.77130882","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:53:32"}
[2026-04-06 13:53:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a2ce6fd398.77130882","contact_id":"3291","existing_deal_found":true,"existing_contact_id":"3291","existing_title":"معامله دوم 9127782457 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:53:32"}
[2026-04-06 13:53:32] [INFO] DealController.save validated payments {"deal_id":"local_69d0a2ce6fd398.77130882","contact_id":"3291","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 13:53:32] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3291","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 13:53:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a2ce6fd398.77130882","contact_didar_id":"3291","title":"معامله دوم 9127782457 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9127782457","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"همتی","existing_deal":"YES","existing_deal_id":"local_69d0a2ce6fd398.77130882","existing_deal_status":"Pending","server_time":"2026-04-06 13:53:32","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 13:53:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:53:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a2ce6fd398.77130882","contact_id":"3291","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9127782457 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 13:53:32","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 13:53:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:53:55] [INFO] Checking activity reminders 
[2026-04-06 13:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:54:25] [INFO] Checking activity reminders 
[2026-04-06 13:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:54:55] [INFO] Checking activity reminders 
[2026-04-06 13:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:55:07] [INFO] Activity save request {"post_data":{"contact_id":"3291","deal_id":"local_69d0a2ce6fd398.77130882","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مرااسم ختم بود شرایط صحبت نداشت \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:55:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3291","note_was_empty":true}
[2026-04-06 13:55:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"3291","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:07] [INFO] Updating virtual stage {"contact_id":"3291","stage_name":"deal_registered","force":false}
[2026-04-06 13:55:07] [INFO] Virtual stage successfully saved {"contact_id":"3291","stage_name":"deal_registered"}
[2026-04-06 13:55:07] [INFO] Virtual stage updated after activity save {"contact_id":"3291"}
[2026-04-06 13:55:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a2ce6fd398.77130882","stage":"تماس پیگیری","status_change":null}
[2026-04-06 13:55:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d38a035e2411.53924593","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d38a035e2411.53924593"}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:07] [INFO] Updating virtual stage {"contact_id":"3291","stage_name":"deal_registered","force":false}
[2026-04-06 13:55:07] [INFO] Virtual stage successfully saved {"contact_id":"3291","stage_name":"deal_registered"}
[2026-04-06 13:55:07] [INFO] Virtual stage updated after activity save {"contact_id":"3291"}
[2026-04-06 13:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3291","person_id":"20949"}
[2026-04-06 13:55:26] [INFO] Checking activity reminders 
[2026-04-06 13:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:55:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:55:56] [INFO] Checking activity reminders 
[2026-04-06 13:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:56:18] [INFO] Checking activity reminders 
[2026-04-06 13:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:56:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 13:56:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 13:56:23] [INFO] Checking activity reminders 
[2026-04-06 13:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:56:25] [INFO] Checking activity reminders 
[2026-04-06 13:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:56:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 13:56:37","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 13:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:56:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","is_new_deal":false}
[2026-04-06 13:56:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:56:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:56:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:56:37] [INFO] getContactPrimaryPhone called {"contact_id":"3592"}
[2026-04-06 13:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:56:37] [INFO] getContactPrimaryPhone result {"contact_id":"3592","person_found":true,"primary_phone":"9132100803"}
[2026-04-06 13:56:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132100803"}
[2026-04-06 13:56:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132100803","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:56:37"}
[2026-04-06 13:56:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","existing_deal_found":true,"existing_contact_id":"3592","existing_title":"معامله سوم 9132100803 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:56:37"}
[2026-04-06 13:56:37] [INFO] DealController.save validated payments {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 13:56:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3592","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 13:56:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d282b0713d2.41229944","contact_didar_id":"3592","title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9132100803","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین طاووسی","existing_deal":"YES","existing_deal_id":"local_695d282b0713d2.41229944","existing_deal_status":"Pending","server_time":"2026-04-06 13:56:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 13:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:56:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-06 13:56:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 13:56:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:56:55] [INFO] Checking activity reminders 
[2026-04-06 13:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:57:25] [INFO] Checking activity reminders 
[2026-04-06 13:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:57:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 13:57:45","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 13:57:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:57:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","is_new_deal":false}
[2026-04-06 13:57:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:57:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:57:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 13:57:45] [INFO] getContactPrimaryPhone called {"contact_id":"3592"}
[2026-04-06 13:57:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:57:45] [INFO] getContactPrimaryPhone result {"contact_id":"3592","person_found":true,"primary_phone":"9132100803"}
[2026-04-06 13:57:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132100803"}
[2026-04-06 13:57:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132100803","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:57:45"}
[2026-04-06 13:57:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","existing_deal_found":true,"existing_contact_id":"3592","existing_title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 13:57:45"}
[2026-04-06 13:57:45] [INFO] DealController.save validated payments {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 13:57:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3592","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 13:57:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d282b0713d2.41229944","contact_didar_id":"3592","title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9132100803","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین طاووسی","existing_deal":"YES","existing_deal_id":"local_695d282b0713d2.41229944","existing_deal_status":"Pending","server_time":"2026-04-06 13:57:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 13:57:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:57:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":9000000,"server_time":"2026-04-06 13:57:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 13:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:57:56] [INFO] Checking activity reminders 
[2026-04-06 13:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:58:26] [INFO] Checking activity reminders 
[2026-04-06 13:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:58:35] [INFO] Activity save request {"post_data":{"contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نوسان گیری در عیار \r\nپرزنت 6 ماهه کانال 405 \r\nعیار فروخته برای تسویه فردا \r\n9 م بیعانه واریز \r\n","activity_duration":"10","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 13:58:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3592","note_was_empty":true}
[2026-04-06 13:58:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"3592","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:35] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-04-06 13:58:35] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-04-06 13:58:35] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-04-06 13:58:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695d282b0713d2.41229944","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-06 13:58:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d38ad3725bb8.18059770","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69d38ad3725bb8.18059770"}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:35] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-04-06 13:58:35] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-04-06 13:58:35] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-04-06 13:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-06 13:58:56] [INFO] Checking activity reminders 
[2026-04-06 13:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:59:26] [INFO] Checking activity reminders 
[2026-04-06 13:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 13:59:57] [INFO] Checking activity reminders 
[2026-04-06 13:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 13:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:00:27] [INFO] Checking activity reminders 
[2026-04-06 14:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:00:30] [INFO] Checking activity reminders 
[2026-04-06 14:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:00:34] [INFO] Checking activity reminders 
[2026-04-06 14:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:01:04] [INFO] Checking activity reminders 
[2026-04-06 14:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"check_reminders"}
[2026-04-06 14:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:23] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:24] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"check_reminders"}
[2026-04-06 14:01:24] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:25] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:25] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:25] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"get_leads"}
[2026-04-06 14:01:25] [WARNING] Auth check failed - not authenticated {"session_id":"maos524ap7g3acu5hji33o7p28","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:01:34] [INFO] Checking activity reminders 
[2026-04-06 14:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:02:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:02:04] [INFO] Checking activity reminders 
[2026-04-06 14:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:02:20] [WARNING] Auth check failed - not authenticated {"session_id":"08cu6pvnjcdactogsj4etlefdg","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:02:21] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-06 14:02:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 14:02:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 14:02:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 14:02:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 14:02:34] [INFO] Checking activity reminders 
[2026-04-06 14:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:02:37] [INFO] Checking activity reminders 
[2026-04-06 14:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:02:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11172","person_id":"5114"}
[2026-04-06 14:03:04] [INFO] Checking activity reminders 
[2026-04-06 14:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:03:05] [INFO] Activity save request {"post_data":{"contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:03:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11768","note_was_empty":true}
[2026-04-06 14:03:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"11768","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:05] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-06 14:03:05] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-06 14:03:05] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-06 14:03:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d72d59585d5.67909885","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 14:03:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d38be11fa515.20149776","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d38be11fa515.20149776"}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:05] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-06 14:03:05] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-06 14:03:05] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-06 14:03:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 14:03:07] [INFO] Checking activity reminders 
[2026-04-06 14:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:03:34] [INFO] Checking activity reminders 
[2026-04-06 14:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:04:04] [INFO] Checking activity reminders 
[2026-04-06 14:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:04:10] [INFO] Checking activity reminders 
[2026-04-06 14:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:04:24] [INFO] Checking activity reminders 
[2026-04-06 14:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:04:29] [INFO] Checking activity reminders 
[2026-04-06 14:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:04:35] [INFO] Checking activity reminders 
[2026-04-06 14:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:04:46] [INFO] Checking activity reminders 
[2026-04-06 14:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:05] [INFO] Checking activity reminders 
[2026-04-06 14:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:08] [INFO] Checking activity reminders 
[2026-04-06 14:05:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:05:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:19] [INFO] Checking activity reminders 
[2026-04-06 14:05:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:05:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:25] [INFO] Activity save request {"post_data":{"contact_id":"8150","deal_id":"local_69d225bb5d1347.31356213","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیام داد برادرش موافقت نمیکنه و چون در سرمایه شریک هستند نمیتونه به تنهایی وارد کانال بشه \r\nمجدد تماس عدم پاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:05:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8150","note_was_empty":true}
[2026-04-06 14:05:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"8150","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:25] [INFO] Updating virtual stage {"contact_id":"8150","stage_name":"deal_registered","force":false}
[2026-04-06 14:05:25] [INFO] Virtual stage successfully saved {"contact_id":"8150","stage_name":"deal_registered"}
[2026-04-06 14:05:25] [INFO] Virtual stage updated after activity save {"contact_id":"8150"}
[2026-04-06 14:05:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d225bb5d1347.31356213","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 14:05:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d38c6d47aa62.06332347","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69d38c6d47aa62.06332347"}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:25] [INFO] Updating virtual stage {"contact_id":"8150","stage_name":"deal_registered","force":false}
[2026-04-06 14:05:25] [INFO] Virtual stage successfully saved {"contact_id":"8150","stage_name":"deal_registered"}
[2026-04-06 14:05:25] [INFO] Virtual stage updated after activity save {"contact_id":"8150"}
[2026-04-06 14:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:05:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:05:35] [INFO] Checking activity reminders 
[2026-04-06 14:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:37] [INFO] Checking activity reminders 
[2026-04-06 14:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:05:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8958","person_id":"16275"}
[2026-04-06 14:06:00] [INFO] Checking activity reminders 
[2026-04-06 14:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:06:07] [INFO] Checking activity reminders 
[2026-04-06 14:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:06:30] [INFO] Checking activity reminders 
[2026-04-06 14:06:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:06:34] [INFO] Checking activity reminders 
[2026-04-06 14:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:06:35] [INFO] Checking activity reminders 
[2026-04-06 14:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:06:49] [INFO] Checking activity reminders 
[2026-04-06 14:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:07:04] [INFO] Checking activity reminders 
[2026-04-06 14:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:07:23] [INFO] Checking activity reminders 
[2026-04-06 14:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:07:34] [INFO] Checking activity reminders 
[2026-04-06 14:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:07:52] [INFO] Checking activity reminders 
[2026-04-06 14:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:08:04] [INFO] Checking activity reminders 
[2026-04-06 14:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8915","person_id":"9448"}
[2026-04-06 14:08:29] [INFO] Checking activity reminders 
[2026-04-06 14:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:08:34] [INFO] Checking activity reminders 
[2026-04-06 14:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:08:51] [INFO] Checking activity reminders 
[2026-04-06 14:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:09:05] [INFO] Checking activity reminders 
[2026-04-06 14:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:09:11] [INFO] Checking activity reminders 
[2026-04-06 14:09:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:09:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:09:35] [INFO] Checking activity reminders 
[2026-04-06 14:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:09:43] [INFO] Checking activity reminders 
[2026-04-06 14:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:10:05] [INFO] Checking activity reminders 
[2026-04-06 14:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:10:15] [INFO] Checking activity reminders 
[2026-04-06 14:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:10:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-06 14:10:35] [INFO] Checking activity reminders 
[2026-04-06 14:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:10:43] [INFO] Checking activity reminders 
[2026-04-06 14:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:10:54] [INFO] Checking activity reminders 
[2026-04-06 14:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:11:05] [INFO] Checking activity reminders 
[2026-04-06 14:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:11:23] [INFO] Checking activity reminders 
[2026-04-06 14:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:11:35] [INFO] Checking activity reminders 
[2026-04-06 14:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:11:54] [INFO] Checking activity reminders 
[2026-04-06 14:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:12:05] [INFO] Checking activity reminders 
[2026-04-06 14:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:12:05] [INFO] Checking activity reminders 
[2026-04-06 14:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:12:36] [INFO] Checking activity reminders 
[2026-04-06 14:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:12:53] [INFO] Checking activity reminders 
[2026-04-06 14:12:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:12:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:12:56] [INFO] Checking activity reminders 
[2026-04-06 14:12:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:12:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:13:06] [INFO] Checking activity reminders 
[2026-04-06 14:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:13:36] [INFO] Checking activity reminders 
[2026-04-06 14:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:14:06] [INFO] Checking activity reminders 
[2026-04-06 14:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:14:36] [INFO] Checking activity reminders 
[2026-04-06 14:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:06] [INFO] Checking activity reminders 
[2026-04-06 14:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:07] [INFO] Checking activity reminders 
[2026-04-06 14:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:15:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-06 14:15:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:15:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:15:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-06 14:15:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:15:11] [INFO] Checking activity reminders 
[2026-04-06 14:15:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:17] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:15:17] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 14:15:17] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 14:15:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 14:15:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 14:15:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 14:15:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 14:15:30] [INFO] Checking activity reminders 
[2026-04-06 14:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:37] [INFO] Checking activity reminders 
[2026-04-06 14:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:40] [INFO] Checking activity reminders 
[2026-04-06 14:15:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:15:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-06 14:16:07] [INFO] Checking activity reminders 
[2026-04-06 14:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:16:14] [INFO] Checking activity reminders 
[2026-04-06 14:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:16:37] [INFO] Checking activity reminders 
[2026-04-06 14:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:16:52] [INFO] Checking activity reminders 
[2026-04-06 14:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:16:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2925","person_id":"3659"}
[2026-04-06 14:17:07] [INFO] Checking activity reminders 
[2026-04-06 14:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:17:22] [INFO] Checking activity reminders 
[2026-04-06 14:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:17:36] [INFO] Checking activity reminders 
[2026-04-06 14:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:17:37] [INFO] Checking activity reminders 
[2026-04-06 14:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:00] [INFO] Checking activity reminders 
[2026-04-06 14:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:07] [INFO] Checking activity reminders 
[2026-04-06 14:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:28] [INFO] Checking activity reminders 
[2026-04-06 14:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:37] [INFO] Checking activity reminders 
[2026-04-06 14:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:46] [INFO] Checking activity reminders 
[2026-04-06 14:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:18:59] [INFO] Activity save request {"post_data":{"contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"حساب هاش مسدود شده \/ چک برگشتی \r\n","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:18:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:18:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:18:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20964","note_was_empty":true}
[2026-04-06 14:18:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"20964","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:18:59] [INFO] Updating virtual stage {"contact_id":"20964","stage_name":"deal_registered","force":false}
[2026-04-06 14:18:59] [INFO] Virtual stage successfully saved {"contact_id":"20964","stage_name":"deal_registered"}
[2026-04-06 14:18:59] [INFO] Virtual stage updated after activity save {"contact_id":"20964"}
[2026-04-06 14:18:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20f919ca7c5.52921816","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 14:18:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d38f9b1aa213.54802131","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:18:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d38f9b1aa213.54802131"}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:18:59] [INFO] Updating virtual stage {"contact_id":"20964","stage_name":"deal_registered","force":false}
[2026-04-06 14:18:59] [INFO] Virtual stage successfully saved {"contact_id":"20964","stage_name":"deal_registered"}
[2026-04-06 14:18:59] [INFO] Virtual stage updated after activity save {"contact_id":"20964"}
[2026-04-06 14:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-06 14:19:07] [INFO] Checking activity reminders 
[2026-04-06 14:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-06 14:19:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:19:17] [INFO] Checking activity reminders 
[2026-04-06 14:19:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:19:38] [INFO] Checking activity reminders 
[2026-04-06 14:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:19:43] [INFO] Checking activity reminders 
[2026-04-06 14:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:19:50] [INFO] Checking activity reminders 
[2026-04-06 14:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:19:59] [INFO] Checking activity reminders 
[2026-04-06 14:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:20:01] [INFO] Checking activity reminders 
[2026-04-06 14:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:20:13] [INFO] Checking activity reminders 
[2026-04-06 14:20:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:20:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:20:19] [INFO] Checking activity reminders 
[2026-04-06 14:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:20:50] [INFO] Checking activity reminders 
[2026-04-06 14:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:01] [INFO] Checking activity reminders 
[2026-04-06 14:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:01] [INFO] Checking activity reminders 
[2026-04-06 14:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-06 14:21:06] [INFO] Checking activity reminders 
[2026-04-06 14:21:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:10] [INFO] Checking activity reminders 
[2026-04-06 14:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:27] [INFO] Checking activity reminders 
[2026-04-06 14:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:40] [INFO] Checking activity reminders 
[2026-04-06 14:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:42] [INFO] Checking activity reminders 
[2026-04-06 14:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:21:58] [INFO] Checking activity reminders 
[2026-04-06 14:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:10] [INFO] Checking activity reminders 
[2026-04-06 14:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:13] [INFO] Checking activity reminders 
[2026-04-06 14:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:23] [INFO] Checking activity reminders 
[2026-04-06 14:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:25] [WARNING] Auth check failed - not authenticated {"session_id":"2e36tb2v6p08relf66tq8j64ou","session_keys":[],"action":"log_client_event"}
[2026-04-06 14:22:25] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 14:22:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 14:22:40] [INFO] Checking activity reminders 
[2026-04-06 14:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:22:53] [INFO] Checking activity reminders 
[2026-04-06 14:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:22:56] [INFO] Checking activity reminders 
[2026-04-06 14:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:23:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69d2252feaf1f0.82933893","deal_id":"local_69d2252febbd7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تمتس مجدد عدم پاسخ ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:23:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d2252feaf1f0.82933893","note_was_empty":true}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:07] [INFO] Updating virtual stage {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered","force":false}
[2026-04-06 14:23:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered"}
[2026-04-06 14:23:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2252feaf1f0.82933893"}
[2026-04-06 14:23:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2252febbd7","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 14:23:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d390931913f6.03172743","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d390931913f6.03172743"}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:07] [INFO] Updating virtual stage {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered","force":false}
[2026-04-06 14:23:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d2252feaf1f0.82933893","stage_name":"deal_registered"}
[2026-04-06 14:23:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d2252feaf1f0.82933893"}
[2026-04-06 14:23:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2252feaf1f0.82933893","person_id":"21981"}
[2026-04-06 14:23:10] [INFO] Checking activity reminders 
[2026-04-06 14:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:23:20] [INFO] Checking activity reminders 
[2026-04-06 14:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:23:26] [INFO] Checking activity reminders 
[2026-04-06 14:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:23:40] [INFO] Checking activity reminders 
[2026-04-06 14:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:23:50] [INFO] Checking activity reminders 
[2026-04-06 14:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:24:10] [INFO] Checking activity reminders 
[2026-04-06 14:24:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:24:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:24:21] [INFO] Checking activity reminders 
[2026-04-06 14:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:24:40] [INFO] Checking activity reminders 
[2026-04-06 14:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:24:51] [INFO] Checking activity reminders 
[2026-04-06 14:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:11] [INFO] Checking activity reminders 
[2026-04-06 14:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:19] [INFO] Checking activity reminders 
[2026-04-06 14:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:22] [INFO] Checking activity reminders 
[2026-04-06 14:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:41] [INFO] Checking activity reminders 
[2026-04-06 14:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:49] [INFO] Checking activity reminders 
[2026-04-06 14:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:25:52] [INFO] Checking activity reminders 
[2026-04-06 14:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:26:11] [INFO] Checking activity reminders 
[2026-04-06 14:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:26:18] [INFO] Activity save request {"post_data":{"contact_id":"3441","deal_id":"local_69d22509776135.70190111","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال شرایط صحبت نداشت ساعت ۴ تماس","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:26:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3441","note_was_empty":true}
[2026-04-06 14:26:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"3441","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:18] [INFO] Updating virtual stage {"contact_id":"3441","stage_name":"deal_registered","force":false}
[2026-04-06 14:26:18] [INFO] Virtual stage successfully saved {"contact_id":"3441","stage_name":"deal_registered"}
[2026-04-06 14:26:18] [INFO] Virtual stage updated after activity save {"contact_id":"3441"}
[2026-04-06 14:26:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22509776135.70190111","stage":"تماس پیگیری","status_change":null}
[2026-04-06 14:26:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d391520b63e6.83628034","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d391520b63e6.83628034"}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:18] [INFO] Updating virtual stage {"contact_id":"3441","stage_name":"deal_registered","force":false}
[2026-04-06 14:26:18] [INFO] Virtual stage successfully saved {"contact_id":"3441","stage_name":"deal_registered"}
[2026-04-06 14:26:18] [INFO] Virtual stage updated after activity save {"contact_id":"3441"}
[2026-04-06 14:26:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3441","person_id":"15282"}
[2026-04-06 14:26:19] [INFO] Checking activity reminders 
[2026-04-06 14:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:26:22] [INFO] Checking activity reminders 
[2026-04-06 14:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:26:41] [INFO] Checking activity reminders 
[2026-04-06 14:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:26:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:26:50] [INFO] Checking activity reminders 
[2026-04-06 14:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:27:11] [INFO] Checking activity reminders 
[2026-04-06 14:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:27:40] [INFO] Checking activity reminders 
[2026-04-06 14:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:27:42] [INFO] Checking activity reminders 
[2026-04-06 14:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:28:07] [INFO] Checking activity reminders 
[2026-04-06 14:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:28:12] [INFO] Checking activity reminders 
[2026-04-06 14:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:28:37] [INFO] Checking activity reminders 
[2026-04-06 14:28:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:28:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:28:40] [INFO] Activity save request {"post_data":{"contact_id":"1850","deal_id":"local_69d224856d6d87.15261957","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:28:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1850","note_was_empty":true}
[2026-04-06 14:28:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"1850","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:40] [INFO] Updating virtual stage {"contact_id":"1850","stage_name":"deal_registered","force":false}
[2026-04-06 14:28:40] [INFO] Virtual stage successfully saved {"contact_id":"1850","stage_name":"deal_registered"}
[2026-04-06 14:28:40] [INFO] Virtual stage updated after activity save {"contact_id":"1850"}
[2026-04-06 14:28:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224856d6d87.15261957","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 14:28:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d391e06a8e19.74520575","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69d391e06a8e19.74520575"}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:40] [INFO] Updating virtual stage {"contact_id":"1850","stage_name":"deal_registered","force":false}
[2026-04-06 14:28:40] [INFO] Virtual stage successfully saved {"contact_id":"1850","stage_name":"deal_registered"}
[2026-04-06 14:28:40] [INFO] Virtual stage updated after activity save {"contact_id":"1850"}
[2026-04-06 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-06 14:28:42] [INFO] Checking activity reminders 
[2026-04-06 14:28:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:28:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:29:12] [INFO] Checking activity reminders 
[2026-04-06 14:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:29:42] [INFO] Checking activity reminders 
[2026-04-06 14:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:30:12] [INFO] Checking activity reminders 
[2026-04-06 14:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:30:42] [INFO] Checking activity reminders 
[2026-04-06 14:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:31:13] [INFO] Checking activity reminders 
[2026-04-06 14:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:31:17] [INFO] Checking activity reminders 
[2026-04-06 14:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:31:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-06 14:31:43] [INFO] Checking activity reminders 
[2026-04-06 14:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:31:48] [INFO] Checking activity reminders 
[2026-04-06 14:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:31:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-06 14:32:13] [INFO] Checking activity reminders 
[2026-04-06 14:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:32:14] [INFO] Checking activity reminders 
[2026-04-06 14:32:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:32:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:32:36] [INFO] Checking activity reminders 
[2026-04-06 14:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:32:43] [INFO] Checking activity reminders 
[2026-04-06 14:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:33:06] [INFO] Checking activity reminders 
[2026-04-06 14:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:33:13] [INFO] Checking activity reminders 
[2026-04-06 14:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:33:19] [INFO] Checking activity reminders 
[2026-04-06 14:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:33:36] [INFO] Checking activity reminders 
[2026-04-06 14:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:33:43] [INFO] Checking activity reminders 
[2026-04-06 14:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:34:01] [INFO] Checking activity reminders 
[2026-04-06 14:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:34:13] [INFO] Checking activity reminders 
[2026-04-06 14:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-06 14:34:31] [INFO] Checking activity reminders 
[2026-04-06 14:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:34:43] [INFO] Checking activity reminders 
[2026-04-06 14:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:35:01] [INFO] Checking activity reminders 
[2026-04-06 14:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:35:14] [INFO] Checking activity reminders 
[2026-04-06 14:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:35:26] [INFO] Checking activity reminders 
[2026-04-06 14:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:35:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-06 14:35:44] [INFO] Checking activity reminders 
[2026-04-06 14:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:04] [INFO] Checking activity reminders 
[2026-04-06 14:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:14] [INFO] Checking activity reminders 
[2026-04-06 14:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:15] [INFO] Checking activity reminders 
[2026-04-06 14:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:29] [INFO] Checking activity reminders 
[2026-04-06 14:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:34] [INFO] Checking activity reminders 
[2026-04-06 14:36:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:44] [INFO] Checking activity reminders 
[2026-04-06 14:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:36:57] [INFO] Checking activity reminders 
[2026-04-06 14:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:03] [INFO] Checking activity reminders 
[2026-04-06 14:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:14] [INFO] Checking activity reminders 
[2026-04-06 14:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:24] [INFO] Checking activity reminders 
[2026-04-06 14:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:32] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:37:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:33] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:37:33] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:37:33] [DEBUG] findByPhone: Found person {"phones":["9121123598"],"found_id":"12660","found_didar_id":"11920","found_name":"9121123598"}
[2026-04-06 14:37:33] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9121123598","found_didar_id":"11920","found_local_id":"12660","found_name":"9121123598"}
[2026-04-06 14:37:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:37:33] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:37:33] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:37:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-06 14:37:38] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:38] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:37:38] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:37:38] [DEBUG] findByPhone: Found person {"phones":["9121123598"],"found_id":"12660","found_didar_id":"11920","found_name":"9121123598"}
[2026-04-06 14:37:38] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9121123598","found_didar_id":"11920","found_local_id":"12660","found_name":"9121123598"}
[2026-04-06 14:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:37:38] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:37:38] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:37:44] [INFO] Checking activity reminders 
[2026-04-06 14:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:45] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:45] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:37:45] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:37:45] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:37:45] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:37:52] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:52] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:37:52] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:37:52] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:37:52] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:37:54] [INFO] Checking activity reminders 
[2026-04-06 14:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:37:57] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:37:58] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:37:58] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:37:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:37:58] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:37:58] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:38:10] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:38:10] [DEBUG] findByPhone: Found person {"phones":["9111723449"],"found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","found_name":"لید جدیدد"}
[2026-04-06 14:38:10] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9111723449","found_didar_id":"local_69b53990872fd7.72637675","found_local_id":"21830","found_name":"لید جدیدد"}
[2026-04-06 14:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 14:38:10] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9111723449","found_id":"21830","found_didar_id":"local_69b53990872fd7.72637675","exclude_id":13628,"exclude_didar_id":"21144"}
[2026-04-06 14:38:10] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای لید جدیدد (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-06 14:38:14] [INFO] Checking activity reminders 
[2026-04-06 14:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:38:18] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 14:38:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:38:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:38:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21144"}
[2026-04-06 14:38:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:38:44] [INFO] Checking activity reminders 
[2026-04-06 14:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:39:11] [INFO] Checking activity reminders 
[2026-04-06 14:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:39:15] [INFO] Checking activity reminders 
[2026-04-06 14:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:39:45] [INFO] Checking activity reminders 
[2026-04-06 14:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:40:01] [INFO] Checking activity reminders 
[2026-04-06 14:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:40:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-06 14:40:15] [INFO] Checking activity reminders 
[2026-04-06 14:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:40:19] [INFO] Checking activity reminders 
[2026-04-06 14:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:40:45] [INFO] Checking activity reminders 
[2026-04-06 14:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:41:27] [INFO] Checking activity reminders 
[2026-04-06 14:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-06 14:41:57] [INFO] Checking activity reminders 
[2026-04-06 14:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:42:15] [INFO] Checking activity reminders 
[2026-04-06 14:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:42:34] [INFO] Checking activity reminders 
[2026-04-06 14:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:43:01] [INFO] Checking activity reminders 
[2026-04-06 14:43:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:43:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:43:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-06 14:43:35] [INFO] Checking activity reminders 
[2026-04-06 14:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:43:42] [INFO] Checking activity reminders 
[2026-04-06 14:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:44:00] [INFO] Checking activity reminders 
[2026-04-06 14:44:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:44:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:44:55] [INFO] Checking activity reminders 
[2026-04-06 14:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:45:11] [INFO] Checking activity reminders 
[2026-04-06 14:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:45:30] [INFO] Checking activity reminders 
[2026-04-06 14:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:45:33] [INFO] Checking activity reminders 
[2026-04-06 14:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:45:34] [INFO] Checking activity reminders 
[2026-04-06 14:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:45:47] [INFO] Checking activity reminders 
[2026-04-06 14:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:00] [INFO] Checking activity reminders 
[2026-04-06 14:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:03] [INFO] Checking activity reminders 
[2026-04-06 14:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:04] [INFO] Checking activity reminders 
[2026-04-06 14:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:33] [INFO] Checking activity reminders 
[2026-04-06 14:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:34] [INFO] Checking activity reminders 
[2026-04-06 14:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:43] [INFO] Checking activity reminders 
[2026-04-06 14:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:46:45] [INFO] Checking activity reminders 
[2026-04-06 14:46:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:46:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:47:03] [INFO] Checking activity reminders 
[2026-04-06 14:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:47:15] [INFO] Checking activity reminders 
[2026-04-06 14:47:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:47:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:47:45] [INFO] Checking activity reminders 
[2026-04-06 14:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:47:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_160","deal_id":"local_69d0a22340fee8.37630742","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 14:47:46","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 14:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:47:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_160","is_new_deal":false}
[2026-04-06 14:47:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 14:47:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 14:47:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 14:47:46] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_160"}
[2026-04-06 14:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:47:46] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_160","person_found":true,"primary_phone":"9385220543"}
[2026-04-06 14:47:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385220543"}
[2026-04-06 14:47:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385220543","contact_id":"local_1403_09_26_160","deal_id":"local_69d0a22340fee8.37630742","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 14:47:46"}
[2026-04-06 14:47:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a22340fee8.37630742","contact_id":"local_1403_09_26_160","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_160","existing_title":"معامله اول 9385220543 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 14:47:46"}
[2026-04-06 14:47:46] [INFO] DealController.save validated payments {"deal_id":"local_69d0a22340fee8.37630742","contact_id":"local_1403_09_26_160","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-06 14:47:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_160","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 14:47:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a22340fee8.37630742","contact_didar_id":"local_1403_09_26_160","title":"معامله اول 9385220543 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9385220543","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید مرادی","existing_deal":"YES","existing_deal_id":"local_69d0a22340fee8.37630742","existing_deal_status":"Pending","server_time":"2026-04-06 14:47:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 14:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:47:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a22340fee8.37630742","contact_id":"local_1403_09_26_160","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9385220543 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 14:47:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 14:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:15] [INFO] Checking activity reminders 
[2026-04-06 14:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:48:46] [INFO] Checking activity reminders 
[2026-04-06 14:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:48:47] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_160","deal_id":"local_69d0a22340fee8.37630742","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیام در بله \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 14:48:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_160","note_was_empty":true}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:47] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_160","stage_name":"new","force":false}
[2026-04-06 14:48:47] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_160","stage_name":"new"}
[2026-04-06 14:48:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_160"}
[2026-04-06 14:48:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a22340fee8.37630742","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 14:48:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3969779dcd5.92316891","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3969779dcd5.92316891"}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:48:47] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_160","stage_name":"deal_registered","force":false}
[2026-04-06 14:48:47] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_160","stage_name":"deal_registered"}
[2026-04-06 14:48:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_160"}
[2026-04-06 14:48:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_160","person_id":"21236"}
[2026-04-06 14:49:16] [INFO] Checking activity reminders 
[2026-04-06 14:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:49:46] [INFO] Checking activity reminders 
[2026-04-06 14:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:50:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 14:50:16] [INFO] Checking activity reminders 
[2026-04-06 14:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:50:46] [INFO] Checking activity reminders 
[2026-04-06 14:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:50:59] [INFO] Checking activity reminders 
[2026-04-06 14:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:51:10] [INFO] Checking activity reminders 
[2026-04-06 14:51:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:51:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:51:16] [INFO] Checking activity reminders 
[2026-04-06 14:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:51:24] [INFO] Checking activity reminders 
[2026-04-06 14:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:51:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10584","person_id":"14175"}
[2026-04-06 14:51:47] [INFO] Checking activity reminders 
[2026-04-06 14:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:51:52] [INFO] Checking activity reminders 
[2026-04-06 14:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:52:03] [INFO] Checking activity reminders 
[2026-04-06 14:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:52:15] [INFO] Checking activity reminders 
[2026-04-06 14:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:52:17] [INFO] Checking activity reminders 
[2026-04-06 14:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:52:46] [INFO] Checking activity reminders 
[2026-04-06 14:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:52:47] [INFO] Checking activity reminders 
[2026-04-06 14:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:53:02] [INFO] Checking activity reminders 
[2026-04-06 14:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:53:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-06 14:53:17] [INFO] Checking activity reminders 
[2026-04-06 14:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:53:47] [INFO] Checking activity reminders 
[2026-04-06 14:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:54:17] [INFO] Checking activity reminders 
[2026-04-06 14:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:54:20] [INFO] Checking activity reminders 
[2026-04-06 14:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:54:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-06 14:54:47] [INFO] Checking activity reminders 
[2026-04-06 14:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:54:49] [INFO] Checking activity reminders 
[2026-04-06 14:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-06 14:55:18] [INFO] Checking activity reminders 
[2026-04-06 14:55:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:55:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:55:19] [INFO] Checking activity reminders 
[2026-04-06 14:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:55:48] [INFO] Checking activity reminders 
[2026-04-06 14:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:55:49] [INFO] Checking activity reminders 
[2026-04-06 14:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:55:59] [INFO] Checking activity reminders 
[2026-04-06 14:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:56:03] [INFO] Checking activity reminders 
[2026-04-06 14:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:56:15] [INFO] Checking activity reminders 
[2026-04-06 14:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:56:18] [INFO] Checking activity reminders 
[2026-04-06 14:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:56:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11595","person_id":"12299"}
[2026-04-06 14:56:48] [INFO] Checking activity reminders 
[2026-04-06 14:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:56:58] [INFO] Checking activity reminders 
[2026-04-06 14:56:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:56:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:57:13] [INFO] Checking activity reminders 
[2026-04-06 14:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:57:18] [INFO] Checking activity reminders 
[2026-04-06 14:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:57:22] [INFO] Checking activity reminders 
[2026-04-06 14:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:57:31] [INFO] Checking activity reminders 
[2026-04-06 14:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:57:48] [INFO] Checking activity reminders 
[2026-04-06 14:57:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:57:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:00] [INFO] Checking activity reminders 
[2026-04-06 14:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:18] [INFO] Checking activity reminders 
[2026-04-06 14:58:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:32] [INFO] Checking activity reminders 
[2026-04-06 14:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-06 14:58:48] [INFO] Checking activity reminders 
[2026-04-06 14:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:49] [INFO] Checking activity reminders 
[2026-04-06 14:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:58:59] [INFO] Checking activity reminders 
[2026-04-06 14:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:59:19] [INFO] Checking activity reminders 
[2026-04-06 14:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:59:37] [INFO] Checking activity reminders 
[2026-04-06 14:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:59:41] [INFO] Checking activity reminders 
[2026-04-06 14:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:59:49] [INFO] Checking activity reminders 
[2026-04-06 14:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 14:59:55] [INFO] Checking activity reminders 
[2026-04-06 14:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 14:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:00:19] [INFO] Checking activity reminders 
[2026-04-06 15:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:00:49] [INFO] Checking activity reminders 
[2026-04-06 15:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:00:56] [INFO] Checking activity reminders 
[2026-04-06 15:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:01:19] [INFO] Checking activity reminders 
[2026-04-06 15:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:01:23] [INFO] Checking activity reminders 
[2026-04-06 15:01:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:01:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:01:34] [INFO] Checking activity reminders 
[2026-04-06 15:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:01:49] [INFO] Checking activity reminders 
[2026-04-06 15:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:02:01] [INFO] Checking activity reminders 
[2026-04-06 15:02:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:02:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-04-06 15:02:20] [INFO] Checking activity reminders 
[2026-04-06 15:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:02:23] [INFO] Activity save request {"post_data":{"contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه در طلای فیزیکی \r\nبرای نوسان گیری چون استرس زیادی داره نمیخواد داشته باشه \r\nبرای کانال 405 میگه مبلغ بالاست و 6 ماهه اشتراک داشته باشه \r\nارسال شبا تجارت در پیامک","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 15:02:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21144","note_was_empty":true}
[2026-04-06 15:02:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"21144","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-04-06 15:02:23] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-04-06 15:02:23] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-04-06 15:02:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad9deb0b36.57294370","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 15:02:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d399c70827b7.41225958","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69d399c70827b7.41225958"}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-04-06 15:02:23] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-04-06 15:02:23] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-04-06 15:02:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 15:02:23] [INFO] Checking activity reminders 
[2026-04-06 15:02:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:02:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:02:27] [INFO] Checking activity reminders 
[2026-04-06 15:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:02:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-06 15:02:57] [INFO] Checking activity reminders 
[2026-04-06 15:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:03:03] [INFO] Checking activity reminders 
[2026-04-06 15:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:03:11] [INFO] Checking activity reminders 
[2026-04-06 15:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:03:15] [INFO] Checking activity reminders 
[2026-04-06 15:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:03:36] [INFO] Checking activity reminders 
[2026-04-06 15:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:03:41] [INFO] Checking activity reminders 
[2026-04-06 15:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:04:11] [INFO] Checking activity reminders 
[2026-04-06 15:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:04:12] [INFO] Checking activity reminders 
[2026-04-06 15:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:04:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-04-06 15:04:42] [INFO] Checking activity reminders 
[2026-04-06 15:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:04:43] [INFO] Checking activity reminders 
[2026-04-06 15:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:05:12] [INFO] Checking activity reminders 
[2026-04-06 15:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:05:13] [INFO] Checking activity reminders 
[2026-04-06 15:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:05:42] [INFO] Checking activity reminders 
[2026-04-06 15:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:05:44] [INFO] Checking activity reminders 
[2026-04-06 15:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:05:57] [INFO] Checking activity reminders 
[2026-04-06 15:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:06:00] [INFO] Checking activity reminders 
[2026-04-06 15:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:06:12] [INFO] Checking activity reminders 
[2026-04-06 15:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:06:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-04-06 15:06:42] [INFO] Checking activity reminders 
[2026-04-06 15:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:01] [INFO] Checking activity reminders 
[2026-04-06 15:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:12] [INFO] Checking activity reminders 
[2026-04-06 15:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:19] [INFO] Checking activity reminders 
[2026-04-06 15:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:22] [INFO] Checking activity reminders 
[2026-04-06 15:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:42] [INFO] Checking activity reminders 
[2026-04-06 15:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:50] [INFO] Checking activity reminders 
[2026-04-06 15:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:07:57] [INFO] Checking activity reminders 
[2026-04-06 15:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-06 15:08:12] [INFO] Checking activity reminders 
[2026-04-06 15:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:08:33] [INFO] Checking activity reminders 
[2026-04-06 15:08:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:08:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:08:43] [INFO] Checking activity reminders 
[2026-04-06 15:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:08:59] [INFO] Checking activity reminders 
[2026-04-06 15:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:13] [INFO] Checking activity reminders 
[2026-04-06 15:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:28] [INFO] Checking activity reminders 
[2026-04-06 15:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:31] [INFO] Checking activity reminders 
[2026-04-06 15:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:38] [INFO] Checking activity reminders 
[2026-04-06 15:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:43] [INFO] Checking activity reminders 
[2026-04-06 15:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:09:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2692","person_id":"14190"}
[2026-04-06 15:10:13] [INFO] Checking activity reminders 
[2026-04-06 15:10:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:10:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:10:20] [INFO] Checking activity reminders 
[2026-04-06 15:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:10:32] [INFO] Checking activity reminders 
[2026-04-06 15:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:10:36] [INFO] Checking activity reminders 
[2026-04-06 15:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:10:58] [INFO] Checking activity reminders 
[2026-04-06 15:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:11:01] [INFO] Checking activity reminders 
[2026-04-06 15:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:11:19] [INFO] Checking activity reminders 
[2026-04-06 15:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:11:32] [INFO] Checking activity reminders 
[2026-04-06 15:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:11:50] [INFO] Checking activity reminders 
[2026-04-06 15:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:12:20] [INFO] Checking activity reminders 
[2026-04-06 15:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:13:02] [INFO] Checking activity reminders 
[2026-04-06 15:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:13:38] [INFO] Checking activity reminders 
[2026-04-06 15:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:13:51] [INFO] Checking activity reminders 
[2026-04-06 15:13:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:13:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:14:02] [INFO] Checking activity reminders 
[2026-04-06 15:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:14:17] [INFO] Checking activity reminders 
[2026-04-06 15:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6812","person_id":"12113"}
[2026-04-06 15:14:56] [INFO] Checking activity reminders 
[2026-04-06 15:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:15:10] [INFO] Checking activity reminders 
[2026-04-06 15:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:15:33] [INFO] Checking activity reminders 
[2026-04-06 15:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-06 15:16:11] [INFO] Checking activity reminders 
[2026-04-06 15:16:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:16:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4167","person_id":"16911"}
[2026-04-06 15:16:39] [INFO] Checking activity reminders 
[2026-04-06 15:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:00] [INFO] Checking activity reminders 
[2026-04-06 15:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:04] [INFO] Checking activity reminders 
[2026-04-06 15:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:22] [INFO] Checking activity reminders 
[2026-04-06 15:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:42] [INFO] Checking activity reminders 
[2026-04-06 15:17:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:50] [INFO] Checking activity reminders 
[2026-04-06 15:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:17:55] [INFO] Checking activity reminders 
[2026-04-06 15:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:18:10] [INFO] Checking activity reminders 
[2026-04-06 15:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8144","person_id":"12831"}
[2026-04-06 15:18:36] [INFO] Checking activity reminders 
[2026-04-06 15:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:18:37] [INFO] Checking activity reminders 
[2026-04-06 15:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:19:06] [INFO] Checking activity reminders 
[2026-04-06 15:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:19:06] [INFO] Checking activity reminders 
[2026-04-06 15:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:19:31] [INFO] Checking activity reminders 
[2026-04-06 15:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:19:37] [INFO] Checking activity reminders 
[2026-04-06 15:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:19:50] [INFO] Checking activity reminders 
[2026-04-06 15:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:02] [INFO] Checking activity reminders 
[2026-04-06 15:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:04] [INFO] Checking activity reminders 
[2026-04-06 15:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:06] [INFO] Checking activity reminders 
[2026-04-06 15:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:07] [INFO] Checking activity reminders 
[2026-04-06 15:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 15:20:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 15:20:17] [INFO] Checking activity reminders 
[2026-04-06 15:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:18] [INFO] Checking activity reminders 
[2026-04-06 15:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:27] [INFO] Checking activity reminders 
[2026-04-06 15:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:20:43] [INFO] Checking activity reminders 
[2026-04-06 15:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:48] [INFO] Checking activity reminders 
[2026-04-06 15:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:20:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20341","person_id":"548"}
[2026-04-06 15:21:18] [INFO] Checking activity reminders 
[2026-04-06 15:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:21:18] [INFO] Checking activity reminders 
[2026-04-06 15:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:21:21] [INFO] Checking activity reminders 
[2026-04-06 15:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:21:22] [INFO] Activity save request {"post_data":{"contact_id":"8567","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"جهت پیگیری مشاوره با استاد تماس \r\nمشاوره کسب و کارش \r\nبیپاسخ \r\nپیامک \r\n","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 15:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:21:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 15:21:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 15:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:21:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8567","note_was_empty":true}
[2026-04-06 15:21:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"8567","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 15:21:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d39e3a66ed38.62573588","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 15:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:21:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69d39e3a66ed38.62573588"}
[2026-04-06 15:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:21:22] [INFO] Updating virtual stage {"contact_id":"8567","stage_name":"deal_registered","force":false}
[2026-04-06 15:21:22] [INFO] Virtual stage successfully saved {"contact_id":"8567","stage_name":"deal_registered"}
[2026-04-06 15:21:22] [INFO] Virtual stage updated after activity save {"contact_id":"8567"}
[2026-04-06 15:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8567","person_id":"10044"}
[2026-04-06 15:21:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16164","person_id":"12508"}
[2026-04-06 15:21:48] [INFO] Checking activity reminders 
[2026-04-06 15:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:21:49] [INFO] Checking activity reminders 
[2026-04-06 15:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:05] [INFO] Checking activity reminders 
[2026-04-06 15:22:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:18] [INFO] Checking activity reminders 
[2026-04-06 15:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:29] [INFO] Checking activity reminders 
[2026-04-06 15:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:33] [INFO] Checking activity reminders 
[2026-04-06 15:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:41] [INFO] Checking activity reminders 
[2026-04-06 15:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:22:49] [INFO] Checking activity reminders 
[2026-04-06 15:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:16] [INFO] Checking activity reminders 
[2026-04-06 15:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:19] [INFO] Checking activity reminders 
[2026-04-06 15:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:26] [INFO] Checking activity reminders 
[2026-04-06 15:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:38] [INFO] Checking activity reminders 
[2026-04-06 15:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:43] [INFO] Checking activity reminders 
[2026-04-06 15:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:23:49] [INFO] Checking activity reminders 
[2026-04-06 15:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:24:04] [INFO] Checking activity reminders 
[2026-04-06 15:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:24:19] [INFO] Checking activity reminders 
[2026-04-06 15:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:24:29] [INFO] Checking activity reminders 
[2026-04-06 15:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:24:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1951","person_id":"5723"}
[2026-04-06 15:24:49] [INFO] Checking activity reminders 
[2026-04-06 15:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:25:00] [INFO] Checking activity reminders 
[2026-04-06 15:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:25:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-06 15:25:19] [INFO] Checking activity reminders 
[2026-04-06 15:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:25:42] [INFO] Checking activity reminders 
[2026-04-06 15:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:25:49] [INFO] Checking activity reminders 
[2026-04-06 15:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 15:25:50] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 15:25:50] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 15:25:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 15:25:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 15:25:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 15:25:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 15:25:51] [INFO] Checking activity reminders 
[2026-04-06 15:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:26:05] [INFO] Checking activity reminders 
[2026-04-06 15:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:26:20] [INFO] Checking activity reminders 
[2026-04-06 15:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:26:26] [INFO] Checking activity reminders 
[2026-04-06 15:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:26:44] [INFO] Checking activity reminders 
[2026-04-06 15:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:26:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"698","person_id":"7415"}
[2026-04-06 15:26:50] [INFO] Checking activity reminders 
[2026-04-06 15:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:27:14] [INFO] Checking activity reminders 
[2026-04-06 15:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:27:20] [INFO] Checking activity reminders 
[2026-04-06 15:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:27:46] [INFO] Checking activity reminders 
[2026-04-06 15:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:27:50] [INFO] Checking activity reminders 
[2026-04-06 15:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:28:01] [INFO] Checking activity reminders 
[2026-04-06 15:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:28:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"698","person_id":"7415"}
[2026-04-06 15:28:20] [INFO] Checking activity reminders 
[2026-04-06 15:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:28:31] [INFO] Checking activity reminders 
[2026-04-06 15:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:28:51] [INFO] Checking activity reminders 
[2026-04-06 15:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:29:05] [INFO] Checking activity reminders 
[2026-04-06 15:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:29:21] [INFO] Checking activity reminders 
[2026-04-06 15:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:29:25] [INFO] Checking activity reminders 
[2026-04-06 15:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:30:44] [INFO] Checking activity reminders 
[2026-04-06 15:30:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:30:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:30:48] [INFO] Checking activity reminders 
[2026-04-06 15:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:30:49] [INFO] Checking activity reminders 
[2026-04-06 15:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:30:50] [INFO] Checking activity reminders 
[2026-04-06 15:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:10] [INFO] Checking activity reminders 
[2026-04-06 15:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:31:20] [INFO] Checking activity reminders 
[2026-04-06 15:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:21] [INFO] Checking activity reminders 
[2026-04-06 15:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:28] [INFO] Checking activity reminders 
[2026-04-06 15:31:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:48] [INFO] Checking activity reminders 
[2026-04-06 15:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:51] [INFO] Checking activity reminders 
[2026-04-06 15:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21232","person_id":"4120"}
[2026-04-06 15:32:05] [INFO] Activity save request {"post_data":{"contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"تماس گرفتم جواب نداد پیامک دادم گفت ترکیه هستم اومدم تماس میگیرم ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 15:32:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11768","note_was_empty":true}
[2026-04-06 15:32:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"11768","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:05] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-06 15:32:05] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-06 15:32:05] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-06 15:32:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d72d59585d5.67909885","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 15:32:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3a0bd59ff61.82010448","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3a0bd59ff61.82010448"}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:05] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-06 15:32:05] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-06 15:32:05] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-06 15:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:17] [INFO] Checking activity reminders 
[2026-04-06 15:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:32:21] [INFO] Checking activity reminders 
[2026-04-06 15:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:32:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 15:32:35","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 15:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11768","is_new_deal":false}
[2026-04-06 15:32:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 15:32:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 15:32:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 15:32:35] [INFO] getContactPrimaryPhone called {"contact_id":"11768"}
[2026-04-06 15:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:35] [INFO] getContactPrimaryPhone result {"contact_id":"11768","person_found":true,"primary_phone":"9148077284"}
[2026-04-06 15:32:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9148077284"}
[2026-04-06 15:32:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9148077284","contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 15:32:35"}
[2026-04-06 15:32:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d72d59585d5.67909885","contact_id":"11768","existing_deal_found":true,"existing_contact_id":"11768","existing_title":"معامله سوم 9148077284 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 15:32:35"}
[2026-04-06 15:32:35] [INFO] DealController.save validated payments {"deal_id":"local_699d72d59585d5.67909885","contact_id":"11768","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-06 15:32:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11768","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 15:32:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d72d59585d5.67909885","contact_didar_id":"11768","title":"معامله سوم 9148077284 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9148077284","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"زارع دوست","existing_deal":"YES","existing_deal_id":"local_699d72d59585d5.67909885","existing_deal_status":"Pending","server_time":"2026-04-06 15:32:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 15:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d72d59585d5.67909885","contact_id":"11768","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9148077284 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 15:32:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 15:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-06 15:32:39] [INFO] Checking activity reminders 
[2026-04-06 15:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:32:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-06 15:32:51] [INFO] Checking activity reminders 
[2026-04-06 15:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:33:02] [INFO] Checking activity reminders 
[2026-04-06 15:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:33:21] [INFO] Checking activity reminders 
[2026-04-06 15:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:33:52] [INFO] Checking activity reminders 
[2026-04-06 15:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:34:22] [INFO] Checking activity reminders 
[2026-04-06 15:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:34:52] [INFO] Checking activity reminders 
[2026-04-06 15:34:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:34:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:35:05] [INFO] Checking activity reminders 
[2026-04-06 15:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:35:22] [INFO] Checking activity reminders 
[2026-04-06 15:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:35:52] [INFO] Checking activity reminders 
[2026-04-06 15:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:36:23] [INFO] Checking activity reminders 
[2026-04-06 15:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:36:53] [INFO] Checking activity reminders 
[2026-04-06 15:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:16] [INFO] Checking activity reminders 
[2026-04-06 15:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:23] [INFO] Checking activity reminders 
[2026-04-06 15:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:25] [INFO] Checking activity reminders 
[2026-04-06 15:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:26] [INFO] Checking activity reminders 
[2026-04-06 15:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:28] [INFO] Checking activity reminders 
[2026-04-06 15:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:30] [INFO] Checking activity reminders 
[2026-04-06 15:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:48] [INFO] Checking activity reminders 
[2026-04-06 15:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-06 15:37:58] [INFO] Checking activity reminders 
[2026-04-06 15:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:38:04] [INFO] Checking activity reminders 
[2026-04-06 15:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:38:09] [INFO] Checking activity reminders 
[2026-04-06 15:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:38:12] [INFO] Checking activity reminders 
[2026-04-06 15:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:38:39] [INFO] Checking activity reminders 
[2026-04-06 15:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:38:42] [INFO] Checking activity reminders 
[2026-04-06 15:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:39:10] [INFO] Checking activity reminders 
[2026-04-06 15:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:39:34] [INFO] Checking activity reminders 
[2026-04-06 15:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:40:09] [INFO] Checking activity reminders 
[2026-04-06 15:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:40:23] [INFO] Checking activity reminders 
[2026-04-06 15:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:40:40] [INFO] Checking activity reminders 
[2026-04-06 15:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:40:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-06 15:40:53] [INFO] Checking activity reminders 
[2026-04-06 15:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 15:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"check_reminders"}
[2026-04-06 15:41:08] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 15:41:10] [INFO] Checking activity reminders 
[2026-04-06 15:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:41:33] [INFO] Checking activity reminders 
[2026-04-06 15:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:41:40] [INFO] Checking activity reminders 
[2026-04-06 15:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:41:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-04-06 15:42:03] [INFO] Checking activity reminders 
[2026-04-06 15:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:42:10] [INFO] Checking activity reminders 
[2026-04-06 15:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:42:26] [INFO] Checking activity reminders 
[2026-04-06 15:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:42:40] [INFO] Checking activity reminders 
[2026-04-06 15:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:02] [INFO] Checking activity reminders 
[2026-04-06 15:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:10] [INFO] Checking activity reminders 
[2026-04-06 15:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:15] [INFO] Checking activity reminders 
[2026-04-06 15:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-06 15:43:37] [INFO] Checking activity reminders 
[2026-04-06 15:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:40] [INFO] Checking activity reminders 
[2026-04-06 15:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:43:59] [INFO] Checking activity reminders 
[2026-04-06 15:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:44:10] [INFO] Checking activity reminders 
[2026-04-06 15:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:44:12] [INFO] Checking activity reminders 
[2026-04-06 15:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:44:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 15:44:41] [INFO] Checking activity reminders 
[2026-04-06 15:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:44:53] [INFO] Checking activity reminders 
[2026-04-06 15:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:44:58] [INFO] Checking activity reminders 
[2026-04-06 15:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:45:10] [INFO] Checking activity reminders 
[2026-04-06 15:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:45:11] [INFO] Checking activity reminders 
[2026-04-06 15:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:45:27] [INFO] Checking activity reminders 
[2026-04-06 15:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:45:41] [INFO] Checking activity reminders 
[2026-04-06 15:45:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:45:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:46:11] [INFO] Checking activity reminders 
[2026-04-06 15:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:46:41] [INFO] Checking activity reminders 
[2026-04-06 15:46:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:46:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:05] [INFO] Checking activity reminders 
[2026-04-06 15:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:09] [INFO] Checking activity reminders 
[2026-04-06 15:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:10] [INFO] Checking activity reminders 
[2026-04-06 15:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:12] [INFO] Checking activity reminders 
[2026-04-06 15:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:26] [INFO] Checking activity reminders 
[2026-04-06 15:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:38] [INFO] Checking activity reminders 
[2026-04-06 15:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:42] [INFO] Checking activity reminders 
[2026-04-06 15:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 15:47:52] [INFO] Checking activity reminders 
[2026-04-06 15:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:47:55] [INFO] Checking activity reminders 
[2026-04-06 15:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:48:12] [INFO] Checking activity reminders 
[2026-04-06 15:48:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:48:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:48:23] [INFO] Checking activity reminders 
[2026-04-06 15:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1951","person_id":"5723"}
[2026-04-06 15:48:42] [INFO] Checking activity reminders 
[2026-04-06 15:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:48:47] [INFO] Checking activity reminders 
[2026-04-06 15:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:49:04] [INFO] Checking activity reminders 
[2026-04-06 15:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:49:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12673","person_id":"14275"}
[2026-04-06 15:49:13] [INFO] Checking activity reminders 
[2026-04-06 15:49:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:49:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:49:43] [INFO] Checking activity reminders 
[2026-04-06 15:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:49:52] [INFO] Checking activity reminders 
[2026-04-06 15:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:50:06] [INFO] Checking activity reminders 
[2026-04-06 15:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:50:13] [INFO] Checking activity reminders 
[2026-04-06 15:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:50:21] [INFO] Checking activity reminders 
[2026-04-06 15:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 15:50:43] [INFO] Checking activity reminders 
[2026-04-06 15:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:50:46] [INFO] Checking activity reminders 
[2026-04-06 15:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:06] [INFO] Checking activity reminders 
[2026-04-06 15:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:13] [INFO] Checking activity reminders 
[2026-04-06 15:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:23] [INFO] Checking activity reminders 
[2026-04-06 15:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-04-06 15:51:43] [INFO] Checking activity reminders 
[2026-04-06 15:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:44] [INFO] Checking activity reminders 
[2026-04-06 15:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:51:52] [INFO] Checking activity reminders 
[2026-04-06 15:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:52:13] [INFO] Checking activity reminders 
[2026-04-06 15:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:52:23] [INFO] Checking activity reminders 
[2026-04-06 15:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:52:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16990","person_id":"3774"}
[2026-04-06 15:52:43] [INFO] Checking activity reminders 
[2026-04-06 15:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:52:51] [INFO] Checking activity reminders 
[2026-04-06 15:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:08] [INFO] Checking activity reminders 
[2026-04-06 15:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:12] [INFO] Checking activity reminders 
[2026-04-06 15:53:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:14] [INFO] Checking activity reminders 
[2026-04-06 15:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:37] [INFO] Checking activity reminders 
[2026-04-06 15:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:44] [INFO] Checking activity reminders 
[2026-04-06 15:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:53:44] [INFO] Checking activity reminders 
[2026-04-06 15:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:54:14] [INFO] Checking activity reminders 
[2026-04-06 15:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:54:27] [INFO] Checking activity reminders 
[2026-04-06 15:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:54:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-06 15:54:44] [INFO] Checking activity reminders 
[2026-04-06 15:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:55:14] [INFO] Checking activity reminders 
[2026-04-06 15:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:55:44] [INFO] Checking activity reminders 
[2026-04-06 15:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:56:15] [INFO] Checking activity reminders 
[2026-04-06 15:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:56:45] [INFO] Checking activity reminders 
[2026-04-06 15:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:57:15] [INFO] Checking activity reminders 
[2026-04-06 15:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:57:45] [INFO] Checking activity reminders 
[2026-04-06 15:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:15] [INFO] Checking activity reminders 
[2026-04-06 15:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:15] [INFO] Checking activity reminders 
[2026-04-06 15:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:19] [INFO] Checking activity reminders 
[2026-04-06 15:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:35] [INFO] Checking activity reminders 
[2026-04-06 15:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:45] [INFO] Checking activity reminders 
[2026-04-06 15:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:58:50] [INFO] Checking activity reminders 
[2026-04-06 15:58:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:58:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:59:06] [INFO] Checking activity reminders 
[2026-04-06 15:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"797","person_id":"13792"}
[2026-04-06 15:59:15] [INFO] Checking activity reminders 
[2026-04-06 15:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 15:59:46] [INFO] Checking activity reminders 
[2026-04-06 15:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 15:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:00:07] [INFO] Checking activity reminders 
[2026-04-06 16:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:00:16] [INFO] Checking activity reminders 
[2026-04-06 16:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:00:41] [INFO] Checking activity reminders 
[2026-04-06 16:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:00:46] [INFO] Checking activity reminders 
[2026-04-06 16:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:00:58] [INFO] Checking activity reminders 
[2026-04-06 16:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:01:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-04-06 16:01:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-04-06 16:01:16] [INFO] Checking activity reminders 
[2026-04-06 16:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:01:22] [INFO] Checking activity reminders 
[2026-04-06 16:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:01:44] [INFO] Checking activity reminders 
[2026-04-06 16:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:01:46] [INFO] Checking activity reminders 
[2026-04-06 16:01:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:01:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:02:07] [INFO] Checking activity reminders 
[2026-04-06 16:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:02:16] [INFO] Checking activity reminders 
[2026-04-06 16:02:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:02:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:02:17] [INFO] Checking activity reminders 
[2026-04-06 16:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:02:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 16:02:44] [INFO] Checking activity reminders 
[2026-04-06 16:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:02:46] [INFO] Checking activity reminders 
[2026-04-06 16:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:03:11] [INFO] Checking activity reminders 
[2026-04-06 16:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:03:17] [INFO] Checking activity reminders 
[2026-04-06 16:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:03:47] [INFO] Checking activity reminders 
[2026-04-06 16:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:03:51] [INFO] Checking activity reminders 
[2026-04-06 16:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:03:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-06 16:04:14] [INFO] Checking activity reminders 
[2026-04-06 16:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:04:17] [INFO] Checking activity reminders 
[2026-04-06 16:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:04:26] [INFO] Checking activity reminders 
[2026-04-06 16:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:04:47] [INFO] Checking activity reminders 
[2026-04-06 16:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:04:56] [INFO] Checking activity reminders 
[2026-04-06 16:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:05:17] [INFO] Checking activity reminders 
[2026-04-06 16:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:05:43] [INFO] Checking activity reminders 
[2026-04-06 16:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:05:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-06 16:05:48] [INFO] Checking activity reminders 
[2026-04-06 16:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:06:02] [INFO] Checking activity reminders 
[2026-04-06 16:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:06:17] [INFO] Checking activity reminders 
[2026-04-06 16:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:06:18] [INFO] Checking activity reminders 
[2026-04-06 16:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:06:42] [INFO] Checking activity reminders 
[2026-04-06 16:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:06:48] [INFO] Checking activity reminders 
[2026-04-06 16:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:07:05] [INFO] Checking activity reminders 
[2026-04-06 16:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:07:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7569","person_id":"603"}
[2026-04-06 16:07:18] [INFO] Checking activity reminders 
[2026-04-06 16:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:07:38] [INFO] Checking activity reminders 
[2026-04-06 16:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:07:48] [INFO] Checking activity reminders 
[2026-04-06 16:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:07:52] [INFO] Checking activity reminders 
[2026-04-06 16:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:08:17] [INFO] Checking activity reminders 
[2026-04-06 16:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:08:18] [INFO] Checking activity reminders 
[2026-04-06 16:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:08:29] [INFO] Checking activity reminders 
[2026-04-06 16:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:08:48] [INFO] Checking activity reminders 
[2026-04-06 16:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:08:53] [INFO] Checking activity reminders 
[2026-04-06 16:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:04] [INFO] Checking activity reminders 
[2026-04-06 16:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:15] [INFO] Checking activity reminders 
[2026-04-06 16:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:19] [INFO] Checking activity reminders 
[2026-04-06 16:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:29] [INFO] Checking activity reminders 
[2026-04-06 16:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:35] [INFO] Checking activity reminders 
[2026-04-06 16:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:47] [INFO] Checking activity reminders 
[2026-04-06 16:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:49] [INFO] Checking activity reminders 
[2026-04-06 16:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:09:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"814","person_id":"2812"}
[2026-04-06 16:10:10] [INFO] Checking activity reminders 
[2026-04-06 16:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:10:19] [INFO] Checking activity reminders 
[2026-04-06 16:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:10:21] [INFO] Checking activity reminders 
[2026-04-06 16:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:10:25] [INFO] Checking activity reminders 
[2026-04-06 16:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:10:49] [INFO] Checking activity reminders 
[2026-04-06 16:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:10:59] [INFO] Checking activity reminders 
[2026-04-06 16:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:11:12] [INFO] Checking activity reminders 
[2026-04-06 16:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:11:19] [INFO] Checking activity reminders 
[2026-04-06 16:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:11:24] [INFO] Checking activity reminders 
[2026-04-06 16:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:11:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-06 16:11:49] [INFO] Checking activity reminders 
[2026-04-06 16:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:11:51] [INFO] Checking activity reminders 
[2026-04-06 16:11:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:11:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:14] [INFO] Checking activity reminders 
[2026-04-06 16:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:19] [INFO] Checking activity reminders 
[2026-04-06 16:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:24] [INFO] Checking activity reminders 
[2026-04-06 16:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:38] [INFO] Checking activity reminders 
[2026-04-06 16:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-06 16:12:49] [INFO] Checking activity reminders 
[2026-04-06 16:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:12:56] [INFO] Checking activity reminders 
[2026-04-06 16:12:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:12:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:03] [INFO] Checking activity reminders 
[2026-04-06 16:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:03] [INFO] Checking activity reminders 
[2026-04-06 16:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:25] [INFO] Checking activity reminders 
[2026-04-06 16:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:33] [INFO] Checking activity reminders 
[2026-04-06 16:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:38] [INFO] Checking activity reminders 
[2026-04-06 16:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2972","person_id":"8654"}
[2026-04-06 16:14:00] [INFO] Checking activity reminders 
[2026-04-06 16:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:14:03] [INFO] Checking activity reminders 
[2026-04-06 16:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:14:23] [INFO] Checking activity reminders 
[2026-04-06 16:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:14:33] [INFO] Checking activity reminders 
[2026-04-06 16:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:14:50] [INFO] Checking activity reminders 
[2026-04-06 16:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:14:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12752","person_id":"13923"}
[2026-04-06 16:15:03] [INFO] Checking activity reminders 
[2026-04-06 16:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:15:13] [INFO] Checking activity reminders 
[2026-04-06 16:15:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:15:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:15:22] [INFO] Checking activity reminders 
[2026-04-06 16:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:15:33] [INFO] Checking activity reminders 
[2026-04-06 16:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:15:35] [INFO] Checking activity reminders 
[2026-04-06 16:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:15:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"910","person_id":"7996"}
[2026-04-06 16:16:04] [INFO] Checking activity reminders 
[2026-04-06 16:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:16:16] [INFO] Checking activity reminders 
[2026-04-06 16:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:16:34] [INFO] Checking activity reminders 
[2026-04-06 16:16:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:16:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:16:38] [INFO] Checking activity reminders 
[2026-04-06 16:16:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:16:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:05] [INFO] Checking activity reminders 
[2026-04-06 16:17:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:10] [INFO] Checking activity reminders 
[2026-04-06 16:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:27] [INFO] Checking activity reminders 
[2026-04-06 16:17:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:33] [INFO] Checking activity reminders 
[2026-04-06 16:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:36] [INFO] Checking activity reminders 
[2026-04-06 16:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:17:47] [INFO] Checking activity reminders 
[2026-04-06 16:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:18:06] [INFO] Checking activity reminders 
[2026-04-06 16:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:18:20] [INFO] Checking activity reminders 
[2026-04-06 16:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:18:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-06 16:18:36] [INFO] Checking activity reminders 
[2026-04-06 16:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:18:42] [INFO] Checking activity reminders 
[2026-04-06 16:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:18:51] [INFO] Checking activity reminders 
[2026-04-06 16:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:19:06] [INFO] Checking activity reminders 
[2026-04-06 16:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:19:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 16:19:23] [INFO] Checking activity reminders 
[2026-04-06 16:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:19:36] [INFO] Checking activity reminders 
[2026-04-06 16:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_users_list"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_kpi_products"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_performance_dashboard"}
[2026-04-06 16:19:37] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:38] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:39] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:44] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:19:44] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 16:19:44] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 16:19:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:19:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:19:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:19:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:19:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:19:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:19:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:19:57] [INFO] Checking activity reminders 
[2026-04-06 16:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:06] [INFO] Checking activity reminders 
[2026-04-06 16:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:15] [INFO] Checking activity reminders 
[2026-04-06 16:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:20:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:20:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:20:22] [INFO] Checking activity reminders 
[2026-04-06 16:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9781","person_id":"19547"}
[2026-04-06 16:20:32] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:20:37] [INFO] Checking activity reminders 
[2026-04-06 16:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:38] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:20:38] [INFO] Master password used for login {"user_id":"8","identifier":"خانم شکیبا","role":"agent"}
[2026-04-06 16:20:38] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":true}
[2026-04-06 16:20:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:20:43] [INFO] Checking activity reminders 
[2026-04-06 16:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:20:50] [INFO] Checking activity reminders 
[2026-04-06 16:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:07] [INFO] Checking activity reminders 
[2026-04-06 16:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:10] [INFO] Checking activity reminders 
[2026-04-06 16:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:12] [INFO] Checking activity reminders 
[2026-04-06 16:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 16:21:32] [INFO] Checking activity reminders 
[2026-04-06 16:21:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:37] [INFO] Checking activity reminders 
[2026-04-06 16:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:45] [INFO] Checking activity reminders 
[2026-04-06 16:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:21:57] [INFO] Checking activity reminders 
[2026-04-06 16:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:07] [INFO] Checking activity reminders 
[2026-04-06 16:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:10] [INFO] Checking activity reminders 
[2026-04-06 16:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-04-06 16:22:16] [INFO] Checking activity reminders 
[2026-04-06 16:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:28] [INFO] Checking activity reminders 
[2026-04-06 16:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:37] [INFO] Checking activity reminders 
[2026-04-06 16:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:42] [INFO] Checking activity reminders 
[2026-04-06 16:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:43] [INFO] Checking activity reminders 
[2026-04-06 16:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:46] [INFO] Checking activity reminders 
[2026-04-06 16:22:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:22:55] [INFO] Checking activity reminders 
[2026-04-06 16:22:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:22:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:03] [INFO] Checking activity reminders 
[2026-04-06 16:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:06] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"check_reminders"}
[2026-04-06 16:23:07] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:23:07] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:23:11] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:23:11] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 16:23:11] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 16:23:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:23:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:23:13] [INFO] Checking activity reminders 
[2026-04-06 16:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:14] [INFO] Checking activity reminders 
[2026-04-06 16:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:16] [INFO] Checking activity reminders 
[2026-04-06 16:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:27] [INFO] Checking activity reminders 
[2026-04-06 16:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-06 16:23:42] [INFO] Checking activity reminders 
[2026-04-06 16:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:44] [INFO] Checking activity reminders 
[2026-04-06 16:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:46] [INFO] Checking activity reminders 
[2026-04-06 16:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:46] [INFO] Checking activity reminders 
[2026-04-06 16:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:23:56] [INFO] Checking activity reminders 
[2026-04-06 16:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:24:16] [INFO] Checking activity reminders 
[2026-04-06 16:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:16] [INFO] Checking activity reminders 
[2026-04-06 16:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2877","person_id":"10665"}
[2026-04-06 16:24:34] [INFO] Checking activity reminders 
[2026-04-06 16:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:36] [INFO] Checking activity reminders 
[2026-04-06 16:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:46] [INFO] Checking activity reminders 
[2026-04-06 16:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:24:46] [INFO] Checking activity reminders 
[2026-04-06 16:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:04] [INFO] Checking activity reminders 
[2026-04-06 16:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:07] [INFO] Checking activity reminders 
[2026-04-06 16:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-04-06 16:25:16] [INFO] Checking activity reminders 
[2026-04-06 16:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:28] [INFO] Checking activity reminders 
[2026-04-06 16:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:34] [INFO] Checking activity reminders 
[2026-04-06 16:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:39] [INFO] Checking activity reminders 
[2026-04-06 16:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:41] [INFO] Checking activity reminders 
[2026-04-06 16:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:25:47] [INFO] Checking activity reminders 
[2026-04-06 16:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:00] [INFO] Checking activity reminders 
[2026-04-06 16:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:11] [INFO] Checking activity reminders 
[2026-04-06 16:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:13] [INFO] Checking activity reminders 
[2026-04-06 16:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20096","person_id":"18059"}
[2026-04-06 16:26:17] [INFO] Checking activity reminders 
[2026-04-06 16:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:39] [INFO] Checking activity reminders 
[2026-04-06 16:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:43] [INFO] Checking activity reminders 
[2026-04-06 16:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:26:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-04-06 16:26:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55d9c4d74b1.82762151","person_id":"21842"}
[2026-04-06 16:26:47] [INFO] Checking activity reminders 
[2026-04-06 16:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:04] [INFO] Checking activity reminders 
[2026-04-06 16:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:13] [INFO] Checking activity reminders 
[2026-04-06 16:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:17] [INFO] Checking activity reminders 
[2026-04-06 16:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:24] [INFO] Checking activity reminders 
[2026-04-06 16:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:43] [INFO] Checking activity reminders 
[2026-04-06 16:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:45] [INFO] Checking activity reminders 
[2026-04-06 16:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:47] [INFO] Checking activity reminders 
[2026-04-06 16:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 16:28:12] [INFO] Checking activity reminders 
[2026-04-06 16:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:28:14] [INFO] Checking activity reminders 
[2026-04-06 16:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:28:17] [INFO] Checking activity reminders 
[2026-04-06 16:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:28:30] [INFO] Checking activity reminders 
[2026-04-06 16:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:28:46] [INFO] Checking activity reminders 
[2026-04-06 16:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:28:47] [INFO] Checking activity reminders 
[2026-04-06 16:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:17] [INFO] Checking activity reminders 
[2026-04-06 16:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:17] [INFO] Checking activity reminders 
[2026-04-06 16:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:19] [INFO] Checking activity reminders 
[2026-04-06 16:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:28] [INFO] Checking activity reminders 
[2026-04-06 16:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:48] [INFO] Checking activity reminders 
[2026-04-06 16:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:29:54] [WARNING] Auth check failed - not authenticated {"session_id":"293imti5bl0u5hmb54adk9mn1f","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:29:54] [INFO] Master password used for login {"user_id":"8","identifier":"خانم شکیبا","role":"agent"}
[2026-04-06 16:29:54] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":true}
[2026-04-06 16:29:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:30:08] [INFO] Checking activity reminders 
[2026-04-06 16:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-06 16:30:18] [INFO] Checking activity reminders 
[2026-04-06 16:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:30:24] [INFO] Checking activity reminders 
[2026-04-06 16:30:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:30:34] [INFO] Checking activity reminders 
[2026-04-06 16:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-06 16:30:48] [INFO] Checking activity reminders 
[2026-04-06 16:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-06 16:30:54] [INFO] Checking activity reminders 
[2026-04-06 16:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:04] [INFO] Checking activity reminders 
[2026-04-06 16:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:18] [INFO] Checking activity reminders 
[2026-04-06 16:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:24] [INFO] Checking activity reminders 
[2026-04-06 16:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:25] [INFO] Checking activity reminders 
[2026-04-06 16:31:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:43] [INFO] Checking activity reminders 
[2026-04-06 16:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:54] [INFO] Checking activity reminders 
[2026-04-06 16:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:31:57] [INFO] Checking activity reminders 
[2026-04-06 16:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:32:16] [INFO] Checking activity reminders 
[2026-04-06 16:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:32:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-04-06 16:32:24] [INFO] Checking activity reminders 
[2026-04-06 16:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:32:40] [INFO] Checking activity reminders 
[2026-04-06 16:32:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:32:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:32:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:33:11] [INFO] Checking activity reminders 
[2026-04-06 16:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:33:23] [INFO] Checking activity reminders 
[2026-04-06 16:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:33:32] [INFO] Checking activity reminders 
[2026-04-06 16:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:33:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14195","person_id":"4384"}
[2026-04-06 16:33:52] [INFO] Checking activity reminders 
[2026-04-06 16:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:00] [INFO] Checking activity reminders 
[2026-04-06 16:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:07] [INFO] Checking activity reminders 
[2026-04-06 16:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:25] [INFO] Checking activity reminders 
[2026-04-06 16:34:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:31] [INFO] Checking activity reminders 
[2026-04-06 16:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:36] [INFO] Checking activity reminders 
[2026-04-06 16:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:39] [INFO] Checking activity reminders 
[2026-04-06 16:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:34:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:34:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:34:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:34:51] [INFO] Checking activity reminders 
[2026-04-06 16:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:34:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-06 16:35:01] [INFO] Checking activity reminders 
[2026-04-06 16:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:10] [INFO] Checking activity reminders 
[2026-04-06 16:35:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:10] [INFO] Checking activity reminders 
[2026-04-06 16:35:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:22] [INFO] Checking activity reminders 
[2026-04-06 16:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:31] [INFO] Checking activity reminders 
[2026-04-06 16:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:40] [INFO] Checking activity reminders 
[2026-04-06 16:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:51] [INFO] Checking activity reminders 
[2026-04-06 16:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:35:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-06 16:36:01] [INFO] Checking activity reminders 
[2026-04-06 16:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:36:11] [INFO] Checking activity reminders 
[2026-04-06 16:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:36:23] [INFO] Checking activity reminders 
[2026-04-06 16:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:36:34] [INFO] Checking activity reminders 
[2026-04-06 16:36:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:36:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:36:51] [INFO] Checking activity reminders 
[2026-04-06 16:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:37:04] [INFO] Checking activity reminders 
[2026-04-06 16:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:37:12] [INFO] Checking activity reminders 
[2026-04-06 16:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:37:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-04-06 16:37:34] [INFO] Checking activity reminders 
[2026-04-06 16:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:37:44] [INFO] Checking activity reminders 
[2026-04-06 16:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:37:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4667","person_id":"13922"}
[2026-04-06 16:38:04] [INFO] Checking activity reminders 
[2026-04-06 16:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:38:06] [INFO] Checking activity reminders 
[2026-04-06 16:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:38:12] [INFO] Checking activity reminders 
[2026-04-06 16:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:38:35] [INFO] Checking activity reminders 
[2026-04-06 16:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:38:38] [INFO] Checking activity reminders 
[2026-04-06 16:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:38:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-06 16:39:02] [INFO] Checking activity reminders 
[2026-04-06 16:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:07] [INFO] Checking activity reminders 
[2026-04-06 16:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:25] [INFO] Checking activity reminders 
[2026-04-06 16:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:32] [INFO] Checking activity reminders 
[2026-04-06 16:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:37] [INFO] Checking activity reminders 
[2026-04-06 16:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:45] [INFO] Checking activity reminders 
[2026-04-06 16:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:39:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-04-06 16:40:06] [INFO] Checking activity reminders 
[2026-04-06 16:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:40:07] [INFO] Checking activity reminders 
[2026-04-06 16:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:40:27] [INFO] Checking activity reminders 
[2026-04-06 16:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:40:37] [INFO] Checking activity reminders 
[2026-04-06 16:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:40:42] [INFO] Checking activity reminders 
[2026-04-06 16:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:02] [INFO] Checking activity reminders 
[2026-04-06 16:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:07] [INFO] Checking activity reminders 
[2026-04-06 16:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:18] [INFO] Checking activity reminders 
[2026-04-06 16:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-06 16:41:37] [INFO] Checking activity reminders 
[2026-04-06 16:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:38] [INFO] Checking activity reminders 
[2026-04-06 16:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:41:41] [INFO] Checking activity reminders 
[2026-04-06 16:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:02] [INFO] Checking activity reminders 
[2026-04-06 16:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-06 16:42:08] [INFO] Checking activity reminders 
[2026-04-06 16:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:12] [WARNING] Auth check failed - not authenticated {"session_id":"j2k8uifr0gb69kvvl3cqp4hb1h","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:42:13] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 16:42:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:42:21] [INFO] Checking activity reminders 
[2026-04-06 16:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:42:31] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-06 16:42:38] [INFO] Checking activity reminders 
[2026-04-06 16:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:43] [INFO] Checking activity reminders 
[2026-04-06 16:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:42:43] [INFO] Checking activity reminders 
[2026-04-06 16:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:04] [INFO] Checking activity reminders 
[2026-04-06 16:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:08] [INFO] Checking activity reminders 
[2026-04-06 16:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-06 16:43:13] [INFO] Checking activity reminders 
[2026-04-06 16:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:25] [INFO] Checking activity reminders 
[2026-04-06 16:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:29] [INFO] Checking activity reminders 
[2026-04-06 16:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:36] [INFO] Checking activity reminders 
[2026-04-06 16:43:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:38] [INFO] Checking activity reminders 
[2026-04-06 16:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:47] [INFO] Checking activity reminders 
[2026-04-06 16:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:43:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-04-06 16:44:07] [INFO] Checking activity reminders 
[2026-04-06 16:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:08] [INFO] Checking activity reminders 
[2026-04-06 16:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:17] [INFO] Checking activity reminders 
[2026-04-06 16:44:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:35] [INFO] Checking activity reminders 
[2026-04-06 16:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:37] [INFO] Checking activity reminders 
[2026-04-06 16:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:39] [INFO] Checking activity reminders 
[2026-04-06 16:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:44:56] [INFO] Checking activity reminders 
[2026-04-06 16:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-04-06 16:45:07] [INFO] Checking activity reminders 
[2026-04-06 16:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:09] [INFO] Checking activity reminders 
[2026-04-06 16:45:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:45:16] [INFO] Checking activity reminders 
[2026-04-06 16:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:45:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:45:19] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-06 16:45:23] [INFO] Checking activity reminders 
[2026-04-06 16:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:45:28] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-06 16:45:37] [INFO] Checking activity reminders 
[2026-04-06 16:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:38] [INFO] Checking activity reminders 
[2026-04-06 16:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:39] [INFO] Checking activity reminders 
[2026-04-06 16:45:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:47] [INFO] Checking activity reminders 
[2026-04-06 16:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:50] [INFO] Checking activity reminders 
[2026-04-06 16:45:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:45:55] [INFO] Checking activity reminders 
[2026-04-06 16:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:00] [INFO] Checking activity reminders 
[2026-04-06 16:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:07] [INFO] Checking activity reminders 
[2026-04-06 16:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:09] [INFO] Checking activity reminders 
[2026-04-06 16:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:24] [INFO] Checking activity reminders 
[2026-04-06 16:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:39] [INFO] Checking activity reminders 
[2026-04-06 16:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:51] [INFO] Checking activity reminders 
[2026-04-06 16:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:54] [INFO] Checking activity reminders 
[2026-04-06 16:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:46:57] [INFO] Checking activity reminders 
[2026-04-06 16:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:09] [INFO] Checking activity reminders 
[2026-04-06 16:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:09] [INFO] Checking activity reminders 
[2026-04-06 16:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15705","person_id":"13898"}
[2026-04-06 16:47:32] [INFO] Checking activity reminders 
[2026-04-06 16:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:36] [WARNING] Auth check failed - not authenticated {"session_id":"s5beiqvdpa3i26ppgcloupsg2n","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:47:36] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 16:47:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:47:40] [INFO] Checking activity reminders 
[2026-04-06 16:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:47:48] [INFO] Checking activity reminders 
[2026-04-06 16:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:47:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:47:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:47:52] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-06 16:48:07] [INFO] Checking activity reminders 
[2026-04-06 16:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:48:10] [INFO] Checking activity reminders 
[2026-04-06 16:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:48:25] [INFO] Checking activity reminders 
[2026-04-06 16:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:48:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-06 16:48:28] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-06 16:48:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-04-06 16:48:42] [INFO] Checking activity reminders 
[2026-04-06 16:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:48:49] [INFO] Checking activity reminders 
[2026-04-06 16:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:48:52] [INFO] Checking activity reminders 
[2026-04-06 16:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:08] [INFO] Checking activity reminders 
[2026-04-06 16:49:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:49:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:12] [INFO] Checking activity reminders 
[2026-04-06 16:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:19] [INFO] Checking activity reminders 
[2026-04-06 16:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:38] [INFO] Checking activity reminders 
[2026-04-06 16:49:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:49:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:42] [INFO] Checking activity reminders 
[2026-04-06 16:49:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:49:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:49:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-06 16:50:04] [INFO] Checking activity reminders 
[2026-04-06 16:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:50:10] [INFO] Checking activity reminders 
[2026-04-06 16:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:50:12] [INFO] Checking activity reminders 
[2026-04-06 16:50:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:50:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:50:34] [INFO] Checking activity reminders 
[2026-04-06 16:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-06 16:50:43] [INFO] Checking activity reminders 
[2026-04-06 16:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:51:01] [INFO] Checking activity reminders 
[2026-04-06 16:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:51:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-04-06 16:51:13] [INFO] Checking activity reminders 
[2026-04-06 16:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:51:30] [INFO] Checking activity reminders 
[2026-04-06 16:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:51:43] [INFO] Checking activity reminders 
[2026-04-06 16:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:04] [INFO] Checking activity reminders 
[2026-04-06 16:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:13] [INFO] Checking activity reminders 
[2026-04-06 16:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:29] [INFO] Checking activity reminders 
[2026-04-06 16:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-06 16:52:43] [INFO] Checking activity reminders 
[2026-04-06 16:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:50] [INFO] Checking activity reminders 
[2026-04-06 16:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:51] [INFO] Checking activity reminders 
[2026-04-06 16:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:53] [INFO] Checking activity reminders 
[2026-04-06 16:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:52:54] [INFO] Checking activity reminders 
[2026-04-06 16:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:53:00] [INFO] Checking activity reminders 
[2026-04-06 16:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:53:08] [INFO] Checking activity reminders 
[2026-04-06 16:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:53:30] [INFO] Checking activity reminders 
[2026-04-06 16:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:53:38] [INFO] Checking activity reminders 
[2026-04-06 16:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:53:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9541","person_id":"13092"}
[2026-04-06 16:53:55] [INFO] Checking activity reminders 
[2026-04-06 16:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:54:00] [INFO] Checking activity reminders 
[2026-04-06 16:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:54:22] [INFO] Checking activity reminders 
[2026-04-06 16:54:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:54:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:54:30] [INFO] Checking activity reminders 
[2026-04-06 16:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:54:32] [INFO] Checking activity reminders 
[2026-04-06 16:54:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:54:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-04-06 16:54:59] [INFO] Checking activity reminders 
[2026-04-06 16:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:00] [INFO] Checking activity reminders 
[2026-04-06 16:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:25] [INFO] Checking activity reminders 
[2026-04-06 16:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:30] [INFO] Checking activity reminders 
[2026-04-06 16:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:30] [INFO] Checking activity reminders 
[2026-04-06 16:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-04-06 16:55:37] [INFO] Checking activity reminders 
[2026-04-06 16:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:41] [INFO] Checking activity reminders 
[2026-04-06 16:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:50] [INFO] Checking activity reminders 
[2026-04-06 16:55:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:55:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:55:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:56:11] [INFO] Checking activity reminders 
[2026-04-06 16:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:56:16] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 16:56:16] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 16:56:16] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 16:56:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 16:56:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 16:56:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 16:56:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 16:56:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 16:56:40] [INFO] Checking activity reminders 
[2026-04-06 16:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:56:41] [INFO] Checking activity reminders 
[2026-04-06 16:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:56:50] [INFO] Activity save request {"post_data":{"contact_id":"5525","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در دسترس نیست \r\n","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 16:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:56:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 16:56:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 16:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:56:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5525","note_was_empty":true}
[2026-04-06 16:56:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"5525","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 16:56:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3b49a761452.80888355","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 16:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:56:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3b49a761452.80888355"}
[2026-04-06 16:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:56:50] [INFO] Updating virtual stage {"contact_id":"5525","stage_name":"deal_registered","force":false}
[2026-04-06 16:56:50] [INFO] Virtual stage successfully saved {"contact_id":"5525","stage_name":"deal_registered"}
[2026-04-06 16:56:50] [INFO] Virtual stage updated after activity save {"contact_id":"5525"}
[2026-04-06 16:56:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 16:57:04] [INFO] Lead update received {"contact_id":"4196","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 16:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 16:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 16:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 16:57:04] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4196"}
[2026-04-06 16:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 16:57:11] [INFO] Checking activity reminders 
[2026-04-06 16:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:57:28] [INFO] Checking activity reminders 
[2026-04-06 16:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:57:41] [INFO] Checking activity reminders 
[2026-04-06 16:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:57:43] [INFO] Checking activity reminders 
[2026-04-06 16:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:57:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5560","person_id":"13984"}
[2026-04-06 16:57:51] [INFO] Checking activity reminders 
[2026-04-06 16:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11920","person_id":"12660"}
[2026-04-06 16:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17676","person_id":"11920"}
[2026-04-06 16:58:06] [INFO] Checking activity reminders 
[2026-04-06 16:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:11] [INFO] Checking activity reminders 
[2026-04-06 16:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:13] [INFO] Checking activity reminders 
[2026-04-06 16:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11920","person_id":"12660"}
[2026-04-06 16:58:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11920","person_id":"12660"}
[2026-04-06 16:58:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11920","person_id":"12660"}
[2026-04-06 16:58:27] [INFO] Checking activity reminders 
[2026-04-06 16:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:33] [INFO] Checking activity reminders 
[2026-04-06 16:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:34] [INFO] Checking activity reminders 
[2026-04-06 16:58:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:41] [INFO] Checking activity reminders 
[2026-04-06 16:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:58:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 16:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 16:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b53990872fd7.72637675","person_id":"21830"}
[2026-04-06 16:59:02] [INFO] Checking activity reminders 
[2026-04-06 16:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:03] [INFO] Checking activity reminders 
[2026-04-06 16:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-06 16:59:11] [INFO] Checking activity reminders 
[2026-04-06 16:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:24] [INFO] Checking activity reminders 
[2026-04-06 16:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:33] [INFO] Checking activity reminders 
[2026-04-06 16:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:37] [INFO] Checking activity reminders 
[2026-04-06 16:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:51] [INFO] Checking activity reminders 
[2026-04-06 16:59:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 16:59:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 16:59:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-06 17:00:03] [INFO] Checking activity reminders 
[2026-04-06 17:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:00:21] [INFO] Checking activity reminders 
[2026-04-06 17:00:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:00:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:00:33] [INFO] Checking activity reminders 
[2026-04-06 17:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:00:35] [INFO] Checking activity reminders 
[2026-04-06 17:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:00:48] [INFO] Checking activity reminders 
[2026-04-06 17:00:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:00:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:02] [INFO] Checking activity reminders 
[2026-04-06 17:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:03] [INFO] Checking activity reminders 
[2026-04-06 17:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 17:01:18] [INFO] Checking activity reminders 
[2026-04-06 17:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:21] [INFO] Checking activity reminders 
[2026-04-06 17:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:33] [INFO] Checking activity reminders 
[2026-04-06 17:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:44] [INFO] Checking activity reminders 
[2026-04-06 17:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:48] [INFO] Checking activity reminders 
[2026-04-06 17:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:56] [INFO] Checking activity reminders 
[2026-04-06 17:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:01:58] [INFO] Checking activity reminders 
[2026-04-06 17:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-06 17:02:18] [INFO] Checking activity reminders 
[2026-04-06 17:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:18] [INFO] Checking activity reminders 
[2026-04-06 17:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"5525","deal_id":"local_6954e3778d99c3.75044026","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 17:02:26","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 17:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 17:02:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"5525","is_new_deal":false}
[2026-04-06 17:02:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-04-06 17:02:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-04-06 17:02:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-04-06 17:02:26] [INFO] getContactPrimaryPhone called {"contact_id":"5525"}
[2026-04-06 17:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 17:02:26] [INFO] getContactPrimaryPhone result {"contact_id":"5525","person_found":true,"primary_phone":"9133340544"}
[2026-04-06 17:02:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133340544"}
[2026-04-06 17:02:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133340544","contact_id":"5525","deal_id":"local_6954e3778d99c3.75044026","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:02:26"}
[2026-04-06 17:02:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954e3778d99c3.75044026","contact_id":"5525","existing_deal_found":true,"existing_contact_id":"5525","existing_title":"معامله چهارم 9133340544 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:02:26"}
[2026-04-06 17:02:26] [INFO] DealController.save validated payments {"deal_id":"local_6954e3778d99c3.75044026","contact_id":"5525","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-06 17:02:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5525","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 17:02:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954e3778d99c3.75044026","contact_didar_id":"5525","title":"معامله چهارم 9133340544 | کانال VIP","base_title_used":"معامله چهارم 9133340544","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خاشعی خاشعی","existing_deal":"YES","existing_deal_id":"local_6954e3778d99c3.75044026","existing_deal_status":"Pending","server_time":"2026-04-06 17:02:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 17:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 17:02:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954e3778d99c3.75044026","contact_id":"5525","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9133340544 | کانال VIP","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-06 17:02:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 17:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-06 17:02:28] [INFO] Checking activity reminders 
[2026-04-06 17:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:39] [INFO] Checking activity reminders 
[2026-04-06 17:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:48] [INFO] Checking activity reminders 
[2026-04-06 17:02:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:58] [INFO] Checking activity reminders 
[2026-04-06 17:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:03:09] [INFO] Checking activity reminders 
[2026-04-06 17:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:16] [INFO] Checking activity reminders 
[2026-04-06 17:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:19] [INFO] Checking activity reminders 
[2026-04-06 17:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-06 17:03:28] [INFO] Checking activity reminders 
[2026-04-06 17:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:49] [INFO] Checking activity reminders 
[2026-04-06 17:03:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:49] [INFO] Checking activity reminders 
[2026-04-06 17:03:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:51] [INFO] Checking activity reminders 
[2026-04-06 17:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:03:58] [INFO] Checking activity reminders 
[2026-04-06 17:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:04:06] [INFO] Checking activity reminders 
[2026-04-06 17:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:04:28] [INFO] Checking activity reminders 
[2026-04-06 17:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:04:59] [INFO] Checking activity reminders 
[2026-04-06 17:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:05:09] [INFO] Checking activity reminders 
[2026-04-06 17:05:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:05:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:05:17] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:05:17] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"check_reminders"}
[2026-04-06 17:05:17] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:05:24] [INFO] Checking activity reminders 
[2026-04-06 17:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:05:29] [INFO] Checking activity reminders 
[2026-04-06 17:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:05:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-06 17:05:59] [INFO] Checking activity reminders 
[2026-04-06 17:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:06:15] [INFO] Checking activity reminders 
[2026-04-06 17:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:06:29] [INFO] Checking activity reminders 
[2026-04-06 17:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:06:33] [INFO] Checking activity reminders 
[2026-04-06 17:06:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:06:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:06:51] [INFO] Checking activity reminders 
[2026-04-06 17:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:06:59] [INFO] Checking activity reminders 
[2026-04-06 17:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:07:10] [INFO] Checking activity reminders 
[2026-04-06 17:07:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:07:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:07:30] [INFO] Checking activity reminders 
[2026-04-06 17:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:07:33] [INFO] Checking activity reminders 
[2026-04-06 17:07:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:07:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:07:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15230","person_id":"19956"}
[2026-04-06 17:08:00] [INFO] Checking activity reminders 
[2026-04-06 17:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:08:01] [INFO] Checking activity reminders 
[2026-04-06 17:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:08:30] [INFO] Checking activity reminders 
[2026-04-06 17:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:08:31] [INFO] Checking activity reminders 
[2026-04-06 17:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:08:58] [INFO] Checking activity reminders 
[2026-04-06 17:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:09:00] [INFO] Checking activity reminders 
[2026-04-06 17:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:09:18] [INFO] Checking activity reminders 
[2026-04-06 17:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:09:30] [INFO] Checking activity reminders 
[2026-04-06 17:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:09:46] [INFO] Checking activity reminders 
[2026-04-06 17:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-06 17:10:00] [INFO] Checking activity reminders 
[2026-04-06 17:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:10:08] [INFO] Checking activity reminders 
[2026-04-06 17:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:10:16] [INFO] Checking activity reminders 
[2026-04-06 17:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:10:30] [INFO] Checking activity reminders 
[2026-04-06 17:10:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:10:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:10:49] [INFO] Checking activity reminders 
[2026-04-06 17:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:11:00] [INFO] Checking activity reminders 
[2026-04-06 17:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:11:01] [INFO] Checking activity reminders 
[2026-04-06 17:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:11:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-06 17:11:31] [INFO] Checking activity reminders 
[2026-04-06 17:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:11:38] [INFO] Checking activity reminders 
[2026-04-06 17:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:11:50] [INFO] Checking activity reminders 
[2026-04-06 17:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:12:01] [INFO] Checking activity reminders 
[2026-04-06 17:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:12:30] [INFO] Checking activity reminders 
[2026-04-06 17:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:12:31] [INFO] Checking activity reminders 
[2026-04-06 17:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:12:43] [INFO] Checking activity reminders 
[2026-04-06 17:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:12:57] [INFO] Checking activity reminders 
[2026-04-06 17:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-04-06 17:13:01] [INFO] Checking activity reminders 
[2026-04-06 17:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:13:27] [INFO] Checking activity reminders 
[2026-04-06 17:13:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:13:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:13:31] [INFO] Checking activity reminders 
[2026-04-06 17:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:13:57] [INFO] Checking activity reminders 
[2026-04-06 17:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:14:01] [INFO] Checking activity reminders 
[2026-04-06 17:14:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:14:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:14:12] [INFO] Checking activity reminders 
[2026-04-06 17:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:14:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6729","person_id":"7030"}
[2026-04-06 17:14:31] [INFO] Checking activity reminders 
[2026-04-06 17:14:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:14:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:14:37] [INFO] Checking activity reminders 
[2026-04-06 17:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:14:47] [INFO] Checking activity reminders 
[2026-04-06 17:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:15:01] [INFO] Checking activity reminders 
[2026-04-06 17:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:15:31] [INFO] Checking activity reminders 
[2026-04-06 17:15:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:15:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:15:32] [INFO] Checking activity reminders 
[2026-04-06 17:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:15:42] [INFO] Checking activity reminders 
[2026-04-06 17:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:15:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20553","person_id":"5902"}
[2026-04-06 17:16:02] [INFO] Checking activity reminders 
[2026-04-06 17:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:16:09] [INFO] Checking activity reminders 
[2026-04-06 17:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:16:20] [INFO] Checking activity reminders 
[2026-04-06 17:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:16:32] [INFO] Checking activity reminders 
[2026-04-06 17:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:16:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:16:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:16:37] [INFO] generateDealTitle result {"contact_id":"7936","person_name":"قدمگاهی","mobile":"9158006892","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9158006892"}
[2026-04-06 17:16:38] [INFO] Checking activity reminders 
[2026-04-06 17:16:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:16:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:17:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7936","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 17:17:01","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 17:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:17:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7936","is_new_deal":true}
[2026-04-06 17:17:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:17:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:17:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:17:01] [INFO] getContactPrimaryPhone called {"contact_id":"7936"}
[2026-04-06 17:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:17:01] [INFO] getContactPrimaryPhone result {"contact_id":"7936","person_found":true,"primary_phone":"9158006892"}
[2026-04-06 17:17:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9158006892"}
[2026-04-06 17:17:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9158006892","contact_id":"7936","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:17:01"}
[2026-04-06 17:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:17:01] [INFO] generateDealTitle result {"contact_id":"7936","person_name":"قدمگاهی","mobile":"9158006892","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9158006892"}
[2026-04-06 17:17:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7936","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 17:17:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7936","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 17:17:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7936","title":"معامله سوم 9158006892 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9158006892","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قدمگاهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-06 17:17:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 17:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:17:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-06 17:17:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7936","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9158006892 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-06 17:17:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 17:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:17:02] [INFO] Checking activity reminders 
[2026-04-06 17:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:17:33] [INFO] Checking activity reminders 
[2026-04-06 17:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:17:46] [INFO] Checking activity reminders 
[2026-04-06 17:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:18:01] [INFO] Checking activity reminders 
[2026-04-06 17:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:18:03] [INFO] Checking activity reminders 
[2026-04-06 17:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:18:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15859","person_id":"10402"}
[2026-04-06 17:18:33] [INFO] Checking activity reminders 
[2026-04-06 17:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:18:33] [INFO] Checking activity reminders 
[2026-04-06 17:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:18:53] [INFO] Checking activity reminders 
[2026-04-06 17:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:19:03] [INFO] Checking activity reminders 
[2026-04-06 17:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:19:11] [INFO] Activity save request {"post_data":{"contact_id":"7936","deal_id":"local_69d3b955aaa806.25672982","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در بله کانال404 نداشت \r\nدر اعتراضات 404 خط مسدود و درگیر دادگاه بود \r\nارسال لینک 404 در بله \r\nخیلی برای امسال بیخیاله \r\nشرایط بحرانی و مشاوره داده شد ","activity_duration":"13","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:19:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7936","note_was_empty":true}
[2026-04-06 17:19:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"7936","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:11] [INFO] Updating virtual stage {"contact_id":"7936","stage_name":"deal_registered","force":false}
[2026-04-06 17:19:11] [INFO] Virtual stage successfully saved {"contact_id":"7936","stage_name":"deal_registered"}
[2026-04-06 17:19:11] [INFO] Virtual stage updated after activity save {"contact_id":"7936"}
[2026-04-06 17:19:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d3b955aaa806.25672982","stage":"تماس پیگیری","status_change":null}
[2026-04-06 17:19:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3b9d73cb809.76574054","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3b9d73cb809.76574054"}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:11] [INFO] Updating virtual stage {"contact_id":"7936","stage_name":"deal_registered","force":false}
[2026-04-06 17:19:11] [INFO] Virtual stage successfully saved {"contact_id":"7936","stage_name":"deal_registered"}
[2026-04-06 17:19:11] [INFO] Virtual stage updated after activity save {"contact_id":"7936"}
[2026-04-06 17:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7936","person_id":"3480"}
[2026-04-06 17:19:33] [INFO] Checking activity reminders 
[2026-04-06 17:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:19:40] [INFO] Checking activity reminders 
[2026-04-06 17:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:20:03] [INFO] Checking activity reminders 
[2026-04-06 17:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:20:09] [INFO] Checking activity reminders 
[2026-04-06 17:20:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:20:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:20:10] [INFO] Checking activity reminders 
[2026-04-06 17:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:20:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6300","person_id":"2588"}
[2026-04-06 17:20:32] [INFO] Checking activity reminders 
[2026-04-06 17:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:20:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14832","person_id":"16933"}
[2026-04-06 17:20:38] [INFO] Checking activity reminders 
[2026-04-06 17:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:01] [INFO] Checking activity reminders 
[2026-04-06 17:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:09] [INFO] Checking activity reminders 
[2026-04-06 17:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:16] [INFO] Checking activity reminders 
[2026-04-06 17:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4023","person_id":"2745"}
[2026-04-06 17:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:21:38] [INFO] Checking activity reminders 
[2026-04-06 17:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:39] [INFO] Checking activity reminders 
[2026-04-06 17:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:21:44] [INFO] Checking activity reminders 
[2026-04-06 17:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:22:09] [INFO] Checking activity reminders 
[2026-04-06 17:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:22:39] [INFO] Checking activity reminders 
[2026-04-06 17:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:22:58] [INFO] Checking activity reminders 
[2026-04-06 17:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:02] [INFO] Activity save request {"post_data":{"contact_id":"4196","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در طلای فیزیکی و حواله سرمایه گذاری \r\nبرای ورود 405 فعلا نقدینگی نداره \r\n6 ماهه پرزنت در صورت سرمایه نقد اطلاع داده میشه ","activity_duration":"8","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:23:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4196","note_was_empty":true}
[2026-04-06 17:23:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"4196","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 17:23:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3babe61a332.10074981","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3babe61a332.10074981"}
[2026-04-06 17:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:02] [INFO] Updating virtual stage {"contact_id":"4196","stage_name":"deal_registered","force":false}
[2026-04-06 17:23:02] [INFO] Virtual stage successfully saved {"contact_id":"4196","stage_name":"deal_registered"}
[2026-04-06 17:23:02] [INFO] Virtual stage updated after activity save {"contact_id":"4196"}
[2026-04-06 17:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:06] [INFO] generateDealTitle result {"contact_id":"4196","person_name":"مهدی سلطانی","mobile":"9198597311","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9198597311"}
[2026-04-06 17:23:09] [WARNING] Auth check failed - not authenticated {"session_id":"fv69hrvorhsqdcj9r8igpaers1","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:23:09] [INFO] Checking activity reminders 
[2026-04-06 17:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:09] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-06 17:23:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 17:23:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"4196","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 17:23:22","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 17:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"4196","is_new_deal":true}
[2026-04-06 17:23:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:23:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:23:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:23:22] [INFO] getContactPrimaryPhone called {"contact_id":"4196"}
[2026-04-06 17:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:22] [INFO] getContactPrimaryPhone result {"contact_id":"4196","person_found":true,"primary_phone":"9198597311"}
[2026-04-06 17:23:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198597311"}
[2026-04-06 17:23:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198597311","contact_id":"4196","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:23:22"}
[2026-04-06 17:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:22] [INFO] generateDealTitle result {"contact_id":"4196","person_name":"مهدی سلطانی","mobile":"9198597311","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9198597311"}
[2026-04-06 17:23:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4196","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 17:23:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4196","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 17:23:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4196","title":"معامله سوم 9198597311 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9198597311","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی سلطانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-06 17:23:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 17:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-06 17:23:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4196","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9198597311 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-06 17:23:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 17:23:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4196","person_id":"99"}
[2026-04-06 17:23:29] [INFO] Checking activity reminders 
[2026-04-06 17:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:29] [INFO] Checking activity reminders 
[2026-04-06 17:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:31] [INFO] Checking activity reminders 
[2026-04-06 17:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:33] [INFO] Checking activity reminders 
[2026-04-06 17:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:35] [INFO] Checking activity reminders 
[2026-04-06 17:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:35] [INFO] Checking activity reminders 
[2026-04-06 17:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:36] [INFO] Checking activity reminders 
[2026-04-06 17:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:40] [INFO] Checking activity reminders 
[2026-04-06 17:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:41] [INFO] Checking activity reminders 
[2026-04-06 17:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:23:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:23:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6574","person_id":"10803"}
[2026-04-06 17:24:07] [INFO] Checking activity reminders 
[2026-04-06 17:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:24:11] [INFO] Checking activity reminders 
[2026-04-06 17:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:24:18] [INFO] Lead update received {"contact_id":"21144","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 17:24:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:24:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:24:19] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21144"}
[2026-04-06 17:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:24:20] [INFO] Checking activity reminders 
[2026-04-06 17:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15299","person_id":"15748"}
[2026-04-06 17:24:37] [INFO] Checking activity reminders 
[2026-04-06 17:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:24:42] [INFO] Checking activity reminders 
[2026-04-06 17:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:24:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15299","person_id":"15748"}
[2026-04-06 17:24:50] [INFO] Checking activity reminders 
[2026-04-06 17:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:09] [INFO] Checking activity reminders 
[2026-04-06 17:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:12] [INFO] Checking activity reminders 
[2026-04-06 17:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:13] [INFO] Checking activity reminders 
[2026-04-06 17:25:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:25:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:31] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224986b1d06.92096443","deal_id":"local_69d22498705e5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت واریز تا یک ساعت دیگه با دوستش میخوان باشن ۶ ماهه بعد مجدد تمدید \r\nکرمان کاسب ماشین و ملک \r\nالان داره ملک میسازه طلا تو ضرر رو ۱۹ خریده \r\nگفتم میره بالا مهم نیست \r\n","activity_duration":"25","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:25:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224986b1d06.92096443","note_was_empty":true}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:31] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered","force":false}
[2026-04-06 17:25:31] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered"}
[2026-04-06 17:25:31] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-06 17:25:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22498705e5","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 17:25:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3bb536fcc54.07633161","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3bb536fcc54.07633161"}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:31] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered","force":false}
[2026-04-06 17:25:31] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered"}
[2026-04-06 17:25:31] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-06 17:25:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:25:39] [INFO] Checking activity reminders 
[2026-04-06 17:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:42] [INFO] Checking activity reminders 
[2026-04-06 17:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:26:09] [INFO] Checking activity reminders 
[2026-04-06 17:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:26:12] [INFO] Checking activity reminders 
[2026-04-06 17:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:26:37] [INFO] Lead update received {"contact_id":"local_69d224986b1d06.92096443","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-06 17:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:26:37] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d224986b1d06.92096443"}
[2026-04-06 17:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:26:37] [INFO] Checking activity reminders 
[2026-04-06 17:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:26:39] [INFO] Checking activity reminders 
[2026-04-06 17:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:26:42] [INFO] Checking activity reminders 
[2026-04-06 17:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:26:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-06 17:26:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:27:04] [INFO] Checking activity reminders 
[2026-04-06 17:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:27:09] [INFO] Checking activity reminders 
[2026-04-06 17:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:27:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 17:27:20","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 17:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:27:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3481","is_new_deal":false}
[2026-04-06 17:27:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 17:27:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 17:27:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 17:27:20] [INFO] getContactPrimaryPhone called {"contact_id":"3481"}
[2026-04-06 17:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:27:20] [INFO] getContactPrimaryPhone result {"contact_id":"3481","person_found":true,"primary_phone":"9174582804"}
[2026-04-06 17:27:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174582804"}
[2026-04-06 17:27:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174582804","contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:27:20"}
[2026-04-06 17:27:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","existing_deal_found":true,"existing_contact_id":"3481","existing_title":"معامله دوم 9174582804 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:27:20"}
[2026-04-06 17:27:20] [INFO] DealController.save validated payments {"deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-06 17:27:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3481","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 17:27:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbb0c62ffbc6.46672277","contact_didar_id":"3481","title":"معامله دوم 9174582804 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9174582804","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بیژن صفرپور","existing_deal":"YES","existing_deal_id":"local_69bbb0c62ffbc6.46672277","existing_deal_status":"Pending","server_time":"2026-04-06 17:27:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 17:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:27:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9174582804 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-06 17:27:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 17:27:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:27:40] [INFO] Checking activity reminders 
[2026-04-06 17:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:28:10] [INFO] Checking activity reminders 
[2026-04-06 17:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:28:40] [INFO] Checking activity reminders 
[2026-04-06 17:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:28:53] [INFO] Checking activity reminders 
[2026-04-06 17:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-06 17:29:10] [INFO] Checking activity reminders 
[2026-04-06 17:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:29:23] [INFO] Checking activity reminders 
[2026-04-06 17:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:29:40] [INFO] Checking activity reminders 
[2026-04-06 17:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:29:45] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:29:45] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"check_reminders"}
[2026-04-06 17:29:45] [WARNING] Auth check failed - not authenticated {"session_id":"nh977npoderpmqj57u0rb2kato","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:29:52] [INFO] Activity save request {"post_data":{"contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خیلی بیخیاله برای سرمایه \r\nمشاوره برای شرایط 6 ماهه در کانال دادم \r\nاطلاعات در بله ارسال شد ","activity_duration":"9","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:29:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:29:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:29:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3481","note_was_empty":true}
[2026-04-06 17:29:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"3481","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:29:52] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-04-06 17:29:52] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-04-06 17:29:52] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-04-06 17:29:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb0c62ffbc6.46672277","stage":"تماس پیگیری","status_change":null}
[2026-04-06 17:29:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3bc58c3ca24.40330560","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:29:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3bc58c3ca24.40330560"}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:29:52] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-04-06 17:29:52] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-04-06 17:29:52] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-04-06 17:29:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-06 17:30:11] [INFO] Checking activity reminders 
[2026-04-06 17:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:41] [INFO] Checking activity reminders 
[2026-04-06 17:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:30:46] [INFO] Activity save request {"post_data":{"contact_id":"local_6991629f677c89.15411577","deal_id":"local_6991629f6b87a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:30:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:30:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:30:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_6991629f677c89.15411577","note_was_empty":true}
[2026-04-06 17:30:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:46] [INFO] Updating virtual stage {"contact_id":"local_6991629f677c89.15411577","stage_name":"deal_registered","force":false}
[2026-04-06 17:30:46] [INFO] Virtual stage successfully saved {"contact_id":"local_6991629f677c89.15411577","stage_name":"deal_registered"}
[2026-04-06 17:30:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_6991629f677c89.15411577"}
[2026-04-06 17:30:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6991629f6b87a","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 17:30:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3bc8ee4dc45.86759478","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:30:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3bc8ee4dc45.86759478"}
[2026-04-06 17:30:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:46] [INFO] Updating virtual stage {"contact_id":"local_6991629f677c89.15411577","stage_name":"deal_registered","force":false}
[2026-04-06 17:30:46] [INFO] Virtual stage successfully saved {"contact_id":"local_6991629f677c89.15411577","stage_name":"deal_registered"}
[2026-04-06 17:30:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_6991629f677c89.15411577"}
[2026-04-06 17:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:30:56] [INFO] Checking activity reminders 
[2026-04-06 17:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:31:26] [INFO] Checking activity reminders 
[2026-04-06 17:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:31:56] [INFO] Checking activity reminders 
[2026-04-06 17:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:32:27] [INFO] Checking activity reminders 
[2026-04-06 17:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:32:57] [INFO] Checking activity reminders 
[2026-04-06 17:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:33:27] [INFO] Checking activity reminders 
[2026-04-06 17:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:33:57] [INFO] Checking activity reminders 
[2026-04-06 17:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:34:27] [INFO] Checking activity reminders 
[2026-04-06 17:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:34:57] [INFO] Checking activity reminders 
[2026-04-06 17:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:35:27] [INFO] Checking activity reminders 
[2026-04-06 17:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:35:58] [INFO] Checking activity reminders 
[2026-04-06 17:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:36:28] [INFO] Checking activity reminders 
[2026-04-06 17:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:36:58] [INFO] Checking activity reminders 
[2026-04-06 17:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:37:28] [INFO] Checking activity reminders 
[2026-04-06 17:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:37:58] [INFO] Checking activity reminders 
[2026-04-06 17:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:38:28] [INFO] Checking activity reminders 
[2026-04-06 17:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:38:59] [INFO] Checking activity reminders 
[2026-04-06 17:38:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:38:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:39:29] [INFO] Checking activity reminders 
[2026-04-06 17:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:39:59] [INFO] Checking activity reminders 
[2026-04-06 17:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:40:29] [INFO] Checking activity reminders 
[2026-04-06 17:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:40:59] [INFO] Checking activity reminders 
[2026-04-06 17:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:41:29] [INFO] Checking activity reminders 
[2026-04-06 17:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:41:59] [INFO] Checking activity reminders 
[2026-04-06 17:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:42:29] [INFO] Checking activity reminders 
[2026-04-06 17:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:43:00] [INFO] Checking activity reminders 
[2026-04-06 17:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:43:30] [INFO] Checking activity reminders 
[2026-04-06 17:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:44:00] [INFO] Checking activity reminders 
[2026-04-06 17:44:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:44:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:44:30] [INFO] Checking activity reminders 
[2026-04-06 17:44:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:44:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:45:00] [INFO] Checking activity reminders 
[2026-04-06 17:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:45:30] [INFO] Checking activity reminders 
[2026-04-06 17:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:46:00] [INFO] Checking activity reminders 
[2026-04-06 17:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:46:31] [INFO] Checking activity reminders 
[2026-04-06 17:46:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:46:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:49:24] [INFO] Checking activity reminders 
[2026-04-06 17:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:49:26] [INFO] Checking activity reminders 
[2026-04-06 17:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:49:35] [INFO] Checking activity reminders 
[2026-04-06 17:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:49:37] [INFO] Checking activity reminders 
[2026-04-06 17:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:49:40] [INFO] Checking activity reminders 
[2026-04-06 17:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:50:10] [INFO] Checking activity reminders 
[2026-04-06 17:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:50:41] [INFO] Checking activity reminders 
[2026-04-06 17:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:51:11] [INFO] Checking activity reminders 
[2026-04-06 17:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:51:41] [INFO] Checking activity reminders 
[2026-04-06 17:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:52:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:11] [INFO] Checking activity reminders 
[2026-04-06 17:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:52:29] [INFO] Activity save request {"post_data":{"contact_id":"8159","deal_id":"local_695e50dbe85ac2.05306469","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 17:52:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 17:52:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 17:52:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8159","note_was_empty":true}
[2026-04-06 17:52:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"8159","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 17:52:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:30] [INFO] Updating virtual stage {"contact_id":"8159","stage_name":"deal_registered","force":false}
[2026-04-06 17:52:30] [INFO] Virtual stage successfully saved {"contact_id":"8159","stage_name":"deal_registered"}
[2026-04-06 17:52:30] [INFO] Virtual stage updated after activity save {"contact_id":"8159"}
[2026-04-06 17:52:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695e50dbe85ac2.05306469","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-06 17:52:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3c1a6013879.75298463","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 17:52:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3c1a6013879.75298463"}
[2026-04-06 17:52:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:30] [INFO] Updating virtual stage {"contact_id":"8159","stage_name":"deal_registered","force":false}
[2026-04-06 17:52:30] [INFO] Virtual stage successfully saved {"contact_id":"8159","stage_name":"deal_registered"}
[2026-04-06 17:52:30] [INFO] Virtual stage updated after activity save {"contact_id":"8159"}
[2026-04-06 17:52:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-06 17:52:41] [INFO] Checking activity reminders 
[2026-04-06 17:52:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:52:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:53:11] [INFO] Checking activity reminders 
[2026-04-06 17:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:53:32] [INFO] Checking activity reminders 
[2026-04-06 17:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6991629f677c89.15411577","person_id":"21680"}
[2026-04-06 17:53:43] [INFO] Checking activity reminders 
[2026-04-06 17:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:53:45] [INFO] Checking activity reminders 
[2026-04-06 17:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 17:54:15] [INFO] Checking activity reminders 
[2026-04-06 17:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:54:36] [INFO] Checking activity reminders 
[2026-04-06 17:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:54:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 17:54:58","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 17:54:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:54:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21144","is_new_deal":false}
[2026-04-06 17:54:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:54:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:54:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-06 17:54:58] [INFO] getContactPrimaryPhone called {"contact_id":"21144"}
[2026-04-06 17:54:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:54:58] [INFO] getContactPrimaryPhone result {"contact_id":"21144","person_found":true,"primary_phone":"9024379978"}
[2026-04-06 17:54:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9024379978"}
[2026-04-06 17:54:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9024379978","contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:54:58"}
[2026-04-06 17:54:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","existing_deal_found":true,"existing_contact_id":"21144","existing_title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 17:54:58"}
[2026-04-06 17:54:58] [INFO] DealController.save validated payments {"deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-06 17:54:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21144","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 17:54:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbad9deb0b36.57294370","contact_didar_id":"21144","title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9024379978","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقتدر مقتدر","existing_deal":"YES","existing_deal_id":"local_69bbad9deb0b36.57294370","existing_deal_status":"Pending","server_time":"2026-04-06 17:54:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 17:54:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:54:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-06 17:54:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 17:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-06 17:55:06] [INFO] Checking activity reminders 
[2026-04-06 17:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:55:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 17:55:18] [INFO] Checking activity reminders 
[2026-04-06 17:55:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:55:20] [INFO] Checking activity reminders 
[2026-04-06 17:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:55:22] [INFO] Checking activity reminders 
[2026-04-06 17:55:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:55:37] [INFO] Checking activity reminders 
[2026-04-06 17:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:55:40] [INFO] Checking activity reminders 
[2026-04-06 17:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:56:07] [INFO] Checking activity reminders 
[2026-04-06 17:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:56:14] [INFO] Checking activity reminders 
[2026-04-06 17:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:56:41] [INFO] Checking activity reminders 
[2026-04-06 17:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:56:43] [INFO] Checking activity reminders 
[2026-04-06 17:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:57:13] [INFO] Checking activity reminders 
[2026-04-06 17:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:57:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-06 17:57:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:57:14] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:57:28] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-06 17:57:28] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 17:57:28] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 17:57:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 17:57:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 17:57:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 17:57:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 17:57:43] [INFO] Checking activity reminders 
[2026-04-06 17:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:57:59] [INFO] Checking activity reminders 
[2026-04-06 17:57:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:57:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:58:14] [INFO] Checking activity reminders 
[2026-04-06 17:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:58:44] [INFO] Checking activity reminders 
[2026-04-06 17:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:59:14] [INFO] Checking activity reminders 
[2026-04-06 17:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:59:44] [INFO] Checking activity reminders 
[2026-04-06 17:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 17:59:59] [INFO] Checking activity reminders 
[2026-04-06 17:59:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 17:59:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:00:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:00:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 18:00:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 18:00:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 18:00:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:00:29] [INFO] Checking activity reminders 
[2026-04-06 18:00:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:00:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:00:33] [INFO] Checking activity reminders 
[2026-04-06 18:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:00:59] [INFO] Checking activity reminders 
[2026-04-06 18:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:01:03] [INFO] Checking activity reminders 
[2026-04-06 18:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:01:07] [INFO] Checking activity reminders 
[2026-04-06 18:01:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:01:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:01:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:01:33] [INFO] Checking activity reminders 
[2026-04-06 18:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:01:37] [INFO] Checking activity reminders 
[2026-04-06 18:01:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:01:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:02:03] [INFO] Checking activity reminders 
[2026-04-06 18:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:02:07] [INFO] Checking activity reminders 
[2026-04-06 18:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:02:34] [INFO] Checking activity reminders 
[2026-04-06 18:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:02:37] [INFO] Checking activity reminders 
[2026-04-06 18:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:03:04] [INFO] Checking activity reminders 
[2026-04-06 18:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:03:07] [INFO] Checking activity reminders 
[2026-04-06 18:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:03:34] [INFO] Checking activity reminders 
[2026-04-06 18:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:03:37] [INFO] Checking activity reminders 
[2026-04-06 18:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:04:03] [INFO] Checking activity reminders 
[2026-04-06 18:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:04:13] [INFO] Checking activity reminders 
[2026-04-06 18:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:04:43] [INFO] Checking activity reminders 
[2026-04-06 18:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:04:55] [INFO] Checking activity reminders 
[2026-04-06 18:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:05:13] [INFO] Checking activity reminders 
[2026-04-06 18:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:05:26] [INFO] Checking activity reminders 
[2026-04-06 18:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:05:43] [INFO] Checking activity reminders 
[2026-04-06 18:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:05:52] [INFO] Activity save request {"post_data":{"contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nخودش تماس میگیره ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 18:05:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20970","note_was_empty":true}
[2026-04-06 18:05:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"20970","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:52] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-06 18:05:52] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-06 18:05:52] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-06 18:05:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_698722f1620aa4.34822223","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-06 18:05:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3c4c8af8a99.63519682","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3c4c8af8a99.63519682"}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:52] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-06 18:05:52] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-06 18:05:52] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-06 18:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-06 18:05:56] [INFO] Checking activity reminders 
[2026-04-06 18:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:06:14] [INFO] Checking activity reminders 
[2026-04-06 18:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:06:26] [INFO] Checking activity reminders 
[2026-04-06 18:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:44] [INFO] Checking activity reminders 
[2026-04-06 18:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:06:50] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_102","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 18:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 18:06:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 18:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_102","note_was_empty":true}
[2026-04-06 18:06:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3c502702c07.55689529","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 18:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3c502702c07.55689529"}
[2026-04-06 18:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:50] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_102","stage_name":"contact_followup","force":false}
[2026-04-06 18:06:50] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_102","stage_name":"contact_followup"}
[2026-04-06 18:06:50] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_102"}
[2026-04-06 18:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-06 18:06:56] [INFO] Checking activity reminders 
[2026-04-06 18:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:07:12] [INFO] Checking activity reminders 
[2026-04-06 18:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:07:16] [INFO] Checking activity reminders 
[2026-04-06 18:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:07:27] [INFO] Checking activity reminders 
[2026-04-06 18:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:07:46] [INFO] Checking activity reminders 
[2026-04-06 18:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:07:57] [INFO] Checking activity reminders 
[2026-04-06 18:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:08:16] [INFO] Checking activity reminders 
[2026-04-06 18:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:08:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 18:08:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"check_reminders"}
[2026-04-06 18:08:42] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 18:08:46] [INFO] Checking activity reminders 
[2026-04-06 18:08:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:08:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:08:47] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 18:08:47] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 18:08:47] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 18:08:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:08:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 18:08:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 18:08:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 18:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:09:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:09:12","session_id":"pi677chn06k9v3bmfugh3jif38"}
[2026-04-06 18:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 18:09:12] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-06 18:09:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-06 18:09:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-06 18:09:12] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 18:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:12] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 18:09:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 18:09:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:09:12"}
[2026-04-06 18:09:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:09:12"}
[2026-04-06 18:09:12] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:09:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:09:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | CIP","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":1000,"payments_present":true,"requested_services":["CIP"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 18:09:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | CIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":1000,"server_time":"2026-04-06 18:09:12","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:16] [INFO] Checking activity reminders 
[2026-04-06 18:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:09:18] [INFO] Checking activity reminders 
[2026-04-06 18:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:09:24] [INFO] Checking activity reminders 
[2026-04-06 18:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:09:46] [INFO] Checking activity reminders 
[2026-04-06 18:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:09:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:09:47","session_id":"pi677chn06k9v3bmfugh3jif38"}
[2026-04-06 18:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"local_69b55a52bd5039.96016486","is_new_deal":false}
[2026-04-06 18:09:47] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-06 18:09:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-06 18:09:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-06 18:09:47] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b55a52bd5039.96016486"}
[2026-04-06 18:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:47] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b55a52bd5039.96016486","person_found":true,"primary_phone":"9662683496"}
[2026-04-06 18:09:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9662683496"}
[2026-04-06 18:09:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9662683496","contact_id":"local_69b55a52bd5039.96016486","deal_id":"local_69c948d239b1b3.66116538","is_new_deal":false,"incoming_title":"CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:09:47"}
[2026-04-06 18:09:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","existing_deal_found":true,"existing_contact_id":"local_69b55a52bd5039.96016486","existing_title":"معامله دوم 9662683496 | CIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:09:47"}
[2026-04-06 18:09:47] [INFO] DealController.save validated payments {"deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:09:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_id":"local_69b55a52bd5039.96016486","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:09:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c948d239b1b3.66116538","contact_didar_id":"local_69b55a52bd5039.96016486","title":"معامله دوم 9662683496 | CIP","base_title_used":"معامله دوم 9662683496","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":200000000,"payment_amount":223222,"payments_present":true,"requested_services":["CIP"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69c948d239b1b3.66116538","existing_deal_status":"Pending","server_time":"2026-04-06 18:09:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c948d239b1b3.66116538","contact_id":"local_69b55a52bd5039.96016486","contact_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9662683496 | CIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":200000000,"payment_amount":223222,"server_time":"2026-04-06 18:09:47","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:09:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b55a52bd5039.96016486","person_id":"21841"}
[2026-04-06 18:09:49] [INFO] Checking activity reminders 
[2026-04-06 18:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:09:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 18:09:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d1429104c535.24317537","person_id":"21971"}
[2026-04-06 18:09:54] [INFO] Checking activity reminders 
[2026-04-06 18:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:10:16] [INFO] Checking activity reminders 
[2026-04-06 18:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:10:20] [INFO] Checking activity reminders 
[2026-04-06 18:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:10:24] [INFO] Checking activity reminders 
[2026-04-06 18:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:10:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:10:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 18:10:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 18:10:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 18:10:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20742","person_id":"10252"}
[2026-04-06 18:10:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:10:46] [INFO] Checking activity reminders 
[2026-04-06 18:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:10:56] [INFO] Checking activity reminders 
[2026-04-06 18:10:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:10:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:11:17] [INFO] Checking activity reminders 
[2026-04-06 18:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:11:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:11:23","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:11:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-06 18:11:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:23] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-06 18:11:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:23] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-06 18:11:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-06 18:11:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:11:23"}
[2026-04-06 18:11:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:11:23"}
[2026-04-06 18:11:26] [INFO] Checking activity reminders 
[2026-04-06 18:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:11:47] [INFO] Checking activity reminders 
[2026-04-06 18:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:11:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:11:55","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-06 18:11:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 18:11:55] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-06 18:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:55] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-06 18:11:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-06 18:11:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:11:55"}
[2026-04-06 18:11:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:11:55"}
[2026-04-06 18:11:55] [INFO] DealController.save validated payments {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-06 18:11:55] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:11:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd13dc5ee115.33735493","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"YES","existing_deal_id":"local_69cd13dc5ee115.33735493","existing_deal_status":"Pending","server_time":"2026-04-06 18:11:55","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:11:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-06 18:11:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:11:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:11:56] [INFO] Checking activity reminders 
[2026-04-06 18:11:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:11:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:12:12] [INFO] Checking activity reminders 
[2026-04-06 18:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:12:31] [INFO] Checking activity reminders 
[2026-04-06 18:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20742","person_id":"10252"}
[2026-04-06 18:12:43] [INFO] Checking activity reminders 
[2026-04-06 18:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:12:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:13:01] [INFO] Checking activity reminders 
[2026-04-06 18:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:13:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 18:13:13] [INFO] Checking activity reminders 
[2026-04-06 18:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:13:31] [INFO] Checking activity reminders 
[2026-04-06 18:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:13:43] [INFO] Checking activity reminders 
[2026-04-06 18:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:13:50] [INFO] Checking activity reminders 
[2026-04-06 18:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:14:01] [INFO] Checking activity reminders 
[2026-04-06 18:14:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:14:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:14:20] [INFO] Checking activity reminders 
[2026-04-06 18:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:14:32] [INFO] Checking activity reminders 
[2026-04-06 18:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:14:50] [INFO] Checking activity reminders 
[2026-04-06 18:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:15:02] [INFO] Checking activity reminders 
[2026-04-06 18:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:15:20] [INFO] Checking activity reminders 
[2026-04-06 18:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:15:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:15:32] [INFO] Checking activity reminders 
[2026-04-06 18:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:15:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20376","person_id":"5096"}
[2026-04-06 18:15:54] [INFO] Checking activity reminders 
[2026-04-06 18:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:15:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:16:02] [INFO] Checking activity reminders 
[2026-04-06 18:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:16:24] [INFO] Checking activity reminders 
[2026-04-06 18:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:16:32] [INFO] Checking activity reminders 
[2026-04-06 18:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:16:55] [INFO] Checking activity reminders 
[2026-04-06 18:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:17:02] [INFO] Checking activity reminders 
[2026-04-06 18:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:17:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2212","deal_id":"local_69ba6da8d0cce1.44094256","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:17:15","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2212","is_new_deal":false}
[2026-04-06 18:17:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:15] [INFO] getContactPrimaryPhone called {"contact_id":"2212"}
[2026-04-06 18:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:15] [INFO] getContactPrimaryPhone result {"contact_id":"2212","person_found":true,"primary_phone":"9132930255"}
[2026-04-06 18:17:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132930255"}
[2026-04-06 18:17:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132930255","contact_id":"2212","deal_id":"local_69ba6da8d0cce1.44094256","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:17:15"}
[2026-04-06 18:17:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","existing_deal_found":true,"existing_contact_id":"2212","existing_title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:17:15"}
[2026-04-06 18:17:15] [INFO] DealController.save validated payments {"deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-06 18:17:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2212","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:17:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ba6da8d0cce1.44094256","contact_didar_id":"2212","title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132930255","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عباسی","existing_deal":"YES","existing_deal_id":"local_69ba6da8d0cce1.44094256","existing_deal_status":"Pending","server_time":"2026-04-06 18:17:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-06 18:17:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:17:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:25] [INFO] Checking activity reminders 
[2026-04-06 18:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:17:32] [INFO] Checking activity reminders 
[2026-04-06 18:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:17:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2212","deal_id":"local_69ba6da8d0cce1.44094256","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:17:38","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2212","is_new_deal":false}
[2026-04-06 18:17:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:17:38] [INFO] getContactPrimaryPhone called {"contact_id":"2212"}
[2026-04-06 18:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:38] [INFO] getContactPrimaryPhone result {"contact_id":"2212","person_found":true,"primary_phone":"9132930255"}
[2026-04-06 18:17:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132930255"}
[2026-04-06 18:17:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132930255","contact_id":"2212","deal_id":"local_69ba6da8d0cce1.44094256","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:17:38"}
[2026-04-06 18:17:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","existing_deal_found":true,"existing_contact_id":"2212","existing_title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:17:38"}
[2026-04-06 18:17:38] [INFO] DealController.save validated payments {"deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-06 18:17:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2212","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:17:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ba6da8d0cce1.44094256","contact_didar_id":"2212","title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132930255","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عباسی","existing_deal":"YES","existing_deal_id":"local_69ba6da8d0cce1.44094256","existing_deal_status":"Pending","server_time":"2026-04-06 18:17:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:38] [INFO] Deal success processed {"contact_id":"2212","person_name":"عباسی","products_count":1}
[2026-04-06 18:17:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ba6da8d0cce1.44094256","contact_id":"2212","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9132930255 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-06 18:17:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-06 18:17:43] [INFO] Checking activity reminders 
[2026-04-06 18:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:18:02] [INFO] Checking activity reminders 
[2026-04-06 18:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:18:13] [INFO] Checking activity reminders 
[2026-04-06 18:18:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:18:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:18:18] [INFO] Checking activity reminders 
[2026-04-06 18:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:18:32] [INFO] Checking activity reminders 
[2026-04-06 18:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:18:48] [INFO] Checking activity reminders 
[2026-04-06 18:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:19:02] [INFO] Checking activity reminders 
[2026-04-06 18:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:19:18] [INFO] Checking activity reminders 
[2026-04-06 18:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:19:32] [INFO] Checking activity reminders 
[2026-04-06 18:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:19:49] [INFO] Checking activity reminders 
[2026-04-06 18:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:19:55] [INFO] Checking activity reminders 
[2026-04-06 18:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:20:03] [INFO] Checking activity reminders 
[2026-04-06 18:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:20:25] [INFO] Checking activity reminders 
[2026-04-06 18:20:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:20:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:20:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:20:33] [INFO] Checking activity reminders 
[2026-04-06 18:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:20:51] [INFO] Checking activity reminders 
[2026-04-06 18:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:21:03] [INFO] Checking activity reminders 
[2026-04-06 18:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:21:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:21:21] [INFO] Checking activity reminders 
[2026-04-06 18:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:21:33] [INFO] Checking activity reminders 
[2026-04-06 18:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:21:51] [INFO] Checking activity reminders 
[2026-04-06 18:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:22:03] [INFO] Checking activity reminders 
[2026-04-06 18:22:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:22:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:22:14] [INFO] Checking activity reminders 
[2026-04-06 18:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:22:33] [INFO] Checking activity reminders 
[2026-04-06 18:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:22:44] [INFO] Checking activity reminders 
[2026-04-06 18:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:23:14] [INFO] Checking activity reminders 
[2026-04-06 18:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:23:44] [INFO] Checking activity reminders 
[2026-04-06 18:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:24:14] [INFO] Checking activity reminders 
[2026-04-06 18:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:24:44] [INFO] Checking activity reminders 
[2026-04-06 18:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:25:14] [INFO] Checking activity reminders 
[2026-04-06 18:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:25:29] [INFO] Checking activity reminders 
[2026-04-06 18:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:25:45] [INFO] Checking activity reminders 
[2026-04-06 18:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:26:15] [INFO] Checking activity reminders 
[2026-04-06 18:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:26:15] [INFO] Checking activity reminders 
[2026-04-06 18:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:26:45] [INFO] Checking activity reminders 
[2026-04-06 18:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:27:15] [INFO] Checking activity reminders 
[2026-04-06 18:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:27:45] [INFO] Checking activity reminders 
[2026-04-06 18:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:28:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:28:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:28:11] [INFO] Checking activity reminders 
[2026-04-06 18:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:28:21] [INFO] Checking activity reminders 
[2026-04-06 18:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:28:46] [INFO] Checking activity reminders 
[2026-04-06 18:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:28:59] [INFO] Checking activity reminders 
[2026-04-06 18:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:29:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:29:11","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:29:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:29:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:29:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-04-06 18:29:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-04-06 18:29:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-04-06 18:29:11] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:29:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:29:11] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:29:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:29:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:29:11"}
[2026-04-06 18:29:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:29:11"}
[2026-04-06 18:29:11] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:29:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:29:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:29:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:29:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:29:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9112523423 | کانال VIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-04-06 18:29:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:29:29] [INFO] Checking activity reminders 
[2026-04-06 18:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:29:30] [INFO] Checking activity reminders 
[2026-04-06 18:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:29:47] [INFO] Checking activity reminders 
[2026-04-06 18:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:03] [INFO] Checking activity reminders 
[2026-04-06 18:30:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:06] [INFO] Checking activity reminders 
[2026-04-06 18:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:08] [INFO] Checking activity reminders 
[2026-04-06 18:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:10] [INFO] Checking activity reminders 
[2026-04-06 18:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:26] [INFO] Checking activity reminders 
[2026-04-06 18:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:27] [INFO] Checking activity reminders 
[2026-04-06 18:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:30] [INFO] Checking activity reminders 
[2026-04-06 18:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:33] [INFO] Checking activity reminders 
[2026-04-06 18:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:41] [INFO] Checking activity reminders 
[2026-04-06 18:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:46] [INFO] Checking activity reminders 
[2026-04-06 18:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:51] [INFO] Checking activity reminders 
[2026-04-06 18:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:30:57] [INFO] Checking activity reminders 
[2026-04-06 18:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:31:05] [INFO] Checking activity reminders 
[2026-04-06 18:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:31:10] [INFO] Checking activity reminders 
[2026-04-06 18:31:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:31:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:31:40] [INFO] Checking activity reminders 
[2026-04-06 18:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:31:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:31:56","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:31:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:31:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-04-06 18:31:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-04-06 18:31:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-04-06 18:31:56] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:31:56] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:31:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:31:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:31:56"}
[2026-04-06 18:31:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:31:56"}
[2026-04-06 18:31:56] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:31:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:31:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:31:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:31:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9112523423 | کانال VIP","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-04-06 18:31:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:32:10] [INFO] Checking activity reminders 
[2026-04-06 18:32:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:32:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:32:30] [INFO] Checking activity reminders 
[2026-04-06 18:32:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:32:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:32:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:32:41] [INFO] Checking activity reminders 
[2026-04-06 18:32:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:32:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:32:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:32:48","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:32:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:32:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:32:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:32:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:32:48] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:32:48] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:32:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:32:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:32:48"}
[2026-04-06 18:32:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:32:48"}
[2026-04-06 18:32:48] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:32:48] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:32:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:32:48","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:32:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:32:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-04-06 18:32:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:32:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:33:00] [INFO] Checking activity reminders 
[2026-04-06 18:33:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:33:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:33:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:33:17] [INFO] Checking activity reminders 
[2026-04-06 18:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:33:22] [INFO] Checking activity reminders 
[2026-04-06 18:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:33:30] [INFO] Checking activity reminders 
[2026-04-06 18:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:33:52] [INFO] Checking activity reminders 
[2026-04-06 18:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:33:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:33:57","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:33:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:33:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:33:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:33:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:33:57] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:33:57] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:33:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:33:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:33:57"}
[2026-04-06 18:33:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:33:57"}
[2026-04-06 18:33:57] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:33:57] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:33:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":45000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:33:57","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:33:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:33:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":45000000,"server_time":"2026-04-06 18:33:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:34:00] [INFO] Checking activity reminders 
[2026-04-06 18:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:34:21] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 18:34:21] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 18:34:21] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 18:34:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:34:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 18:34:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 18:34:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 18:34:22] [INFO] Checking activity reminders 
[2026-04-06 18:34:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:34:30] [INFO] Checking activity reminders 
[2026-04-06 18:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:34:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:34:51] [INFO] Checking activity reminders 
[2026-04-06 18:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:34:54] [INFO] Checking activity reminders 
[2026-04-06 18:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:34:59] [INFO] Checking activity reminders 
[2026-04-06 18:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:01] [INFO] Checking activity reminders 
[2026-04-06 18:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:03] [INFO] Checking activity reminders 
[2026-04-06 18:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:20] [INFO] Checking activity reminders 
[2026-04-06 18:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:21] [INFO] Checking activity reminders 
[2026-04-06 18:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:23] [INFO] Checking activity reminders 
[2026-04-06 18:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:25] [INFO] Checking activity reminders 
[2026-04-06 18:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:25] [INFO] Checking activity reminders 
[2026-04-06 18:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:31] [INFO] Checking activity reminders 
[2026-04-06 18:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:40] [INFO] Checking activity reminders 
[2026-04-06 18:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:35:55] [INFO] Checking activity reminders 
[2026-04-06 18:35:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:35:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:36:01] [INFO] Checking activity reminders 
[2026-04-06 18:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:36:25] [INFO] Checking activity reminders 
[2026-04-06 18:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:36:31] [INFO] Checking activity reminders 
[2026-04-06 18:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:36:55] [INFO] Checking activity reminders 
[2026-04-06 18:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:37:01] [INFO] Checking activity reminders 
[2026-04-06 18:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:37:25] [INFO] Checking activity reminders 
[2026-04-06 18:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:37:31] [INFO] Checking activity reminders 
[2026-04-06 18:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:37:56] [INFO] Checking activity reminders 
[2026-04-06 18:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:38:02] [INFO] Checking activity reminders 
[2026-04-06 18:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:38:26] [INFO] Checking activity reminders 
[2026-04-06 18:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:38:32] [INFO] Checking activity reminders 
[2026-04-06 18:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:38:56] [INFO] Checking activity reminders 
[2026-04-06 18:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:39:02] [INFO] Checking activity reminders 
[2026-04-06 18:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:39:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:39:07","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:39:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 18:39:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:39:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:39:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:39:07] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 18:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:39:07] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 18:39:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 18:39:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:39:07"}
[2026-04-06 18:39:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:39:07"}
[2026-04-06 18:39:07] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:39:07] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:39:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Pending","server_time":"2026-04-06 18:39:07","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:39:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-04-06 18:39:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:39:26] [INFO] Checking activity reminders 
[2026-04-06 18:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:39:33] [INFO] Checking activity reminders 
[2026-04-06 18:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:39:56] [INFO] Checking activity reminders 
[2026-04-06 18:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:40:03] [INFO] Checking activity reminders 
[2026-04-06 18:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:40:26] [INFO] Checking activity reminders 
[2026-04-06 18:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:40:33] [INFO] Checking activity reminders 
[2026-04-06 18:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:40:56] [INFO] Checking activity reminders 
[2026-04-06 18:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:41:03] [INFO] Checking activity reminders 
[2026-04-06 18:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:41:26] [INFO] Checking activity reminders 
[2026-04-06 18:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:41:33] [INFO] Checking activity reminders 
[2026-04-06 18:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:41:56] [INFO] Checking activity reminders 
[2026-04-06 18:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:03] [INFO] Checking activity reminders 
[2026-04-06 18:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:10] [INFO] Checking activity reminders 
[2026-04-06 18:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:13] [INFO] Checking activity reminders 
[2026-04-06 18:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:19] [INFO] Checking activity reminders 
[2026-04-06 18:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:33] [INFO] Checking activity reminders 
[2026-04-06 18:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:36] [INFO] Checking activity reminders 
[2026-04-06 18:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:42:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:43:03] [INFO] Checking activity reminders 
[2026-04-06 18:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:43:12] [INFO] Checking activity reminders 
[2026-04-06 18:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:43:34] [INFO] Checking activity reminders 
[2026-04-06 18:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:43:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:43:42","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:43:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 18:43:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:43:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:43:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:43:42] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 18:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:43:42] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 18:43:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 18:43:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:43:42"}
[2026-04-06 18:43:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:43:42"}
[2026-04-06 18:43:42] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:43:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:43:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Pending","server_time":"2026-04-06 18:43:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:43:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":15000000,"server_time":"2026-04-06 18:43:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:43:42] [INFO] Checking activity reminders 
[2026-04-06 18:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:44:04] [INFO] Checking activity reminders 
[2026-04-06 18:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:44:14] [INFO] Checking activity reminders 
[2026-04-06 18:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:44:34] [INFO] Checking activity reminders 
[2026-04-06 18:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:44:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5725","person_id":"3107"}
[2026-04-06 18:44:44] [INFO] Checking activity reminders 
[2026-04-06 18:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:44:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:45:04] [INFO] Checking activity reminders 
[2026-04-06 18:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:45:14] [INFO] Checking activity reminders 
[2026-04-06 18:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:45:34] [INFO] Checking activity reminders 
[2026-04-06 18:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:45:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 18:45:46] [INFO] Checking activity reminders 
[2026-04-06 18:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:45:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:45:56","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:45:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:45:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:45:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:45:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:45:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:45:56] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:45:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:45:56] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:45:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:45:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:45:56"}
[2026-04-06 18:45:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:45:56"}
[2026-04-06 18:45:56] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 18:45:56] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:45:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:45:56","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:45:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:45:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":20000000,"server_time":"2026-04-06 18:45:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:45:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:46:04] [INFO] Checking activity reminders 
[2026-04-06 18:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:46:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:46:16] [INFO] Checking activity reminders 
[2026-04-06 18:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:46:36] [INFO] Checking activity reminders 
[2026-04-06 18:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:46:46] [INFO] Checking activity reminders 
[2026-04-06 18:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:47:06] [INFO] Checking activity reminders 
[2026-04-06 18:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:47:16] [INFO] Checking activity reminders 
[2026-04-06 18:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:47:36] [INFO] Checking activity reminders 
[2026-04-06 18:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:47:46] [INFO] Checking activity reminders 
[2026-04-06 18:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:48:06] [INFO] Checking activity reminders 
[2026-04-06 18:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:48:17] [INFO] Checking activity reminders 
[2026-04-06 18:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:48:36] [INFO] Checking activity reminders 
[2026-04-06 18:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:48:47] [INFO] Checking activity reminders 
[2026-04-06 18:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:49:07] [INFO] Checking activity reminders 
[2026-04-06 18:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:49:17] [INFO] Checking activity reminders 
[2026-04-06 18:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:49:43] [INFO] Checking activity reminders 
[2026-04-06 18:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:49:47] [INFO] Checking activity reminders 
[2026-04-06 18:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:49:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:50:13] [INFO] Checking activity reminders 
[2026-04-06 18:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:50:17] [INFO] Checking activity reminders 
[2026-04-06 18:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:50:43] [INFO] Checking activity reminders 
[2026-04-06 18:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:50:47] [INFO] Checking activity reminders 
[2026-04-06 18:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:51:13] [INFO] Checking activity reminders 
[2026-04-06 18:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:51:18] [INFO] Checking activity reminders 
[2026-04-06 18:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:51:33] [INFO] generateDealTitle result {"contact_id":"5265","person_name":"میلاد پاک سرشت","mobile":"9221211615","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9221211615"}
[2026-04-06 18:51:43] [INFO] Checking activity reminders 
[2026-04-06 18:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:51:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:51:48","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:51:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:48] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:48] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:51:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:51:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:51:48"}
[2026-04-06 18:51:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:51:48"}
[2026-04-06 18:51:48] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-06 18:51:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:51:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:51:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-06 18:51:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:48] [INFO] Checking activity reminders 
[2026-04-06 18:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:51:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:51:57","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 18:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11111","is_new_deal":false}
[2026-04-06 18:51:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:51:57] [INFO] getContactPrimaryPhone called {"contact_id":"11111"}
[2026-04-06 18:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:57] [INFO] getContactPrimaryPhone result {"contact_id":"11111","person_found":true,"primary_phone":"9112523423"}
[2026-04-06 18:51:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9112523423"}
[2026-04-06 18:51:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9112523423","contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:51:57"}
[2026-04-06 18:51:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","existing_deal_found":true,"existing_contact_id":"11111","existing_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 18:51:57"}
[2026-04-06 18:51:57] [INFO] DealController.save validated payments {"deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-06 18:51:57] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11111","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 18:51:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69943556b7cfc3.43303233","contact_didar_id":"11111","title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9112523423","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ذوالفقاری","existing_deal":"YES","existing_deal_id":"local_69943556b7cfc3.43303233","existing_deal_status":"Pending","server_time":"2026-04-06 18:51:57","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 18:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:51:57] [INFO] Deal success processed {"contact_id":"11111","person_name":"ذوالفقاری","products_count":1}
[2026-04-06 18:51:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69943556b7cfc3.43303233","contact_id":"11111","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9112523423 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-06 18:51:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 18:52:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 18:52:13] [INFO] Checking activity reminders 
[2026-04-06 18:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:52:19] [INFO] Checking activity reminders 
[2026-04-06 18:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:52:44] [INFO] Checking activity reminders 
[2026-04-06 18:52:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:52:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:52:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:52:46","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:52:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":true}
[2026-04-06 18:52:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:52:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:52:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:52:46] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:52:46] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:52:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:52:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:52:46"}
[2026-04-06 18:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:52:46] [INFO] generateDealTitle result {"contact_id":"5265","person_name":"میلاد پاک سرشت","mobile":"9221211615","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9221211615"}
[2026-04-06 18:52:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 18:52:46] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:52:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-06 18:52:46","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:52:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-06 18:52:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 18:52:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:52:49] [INFO] Checking activity reminders 
[2026-04-06 18:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:53:14] [INFO] Checking activity reminders 
[2026-04-06 18:53:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:53:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:53:19] [INFO] Checking activity reminders 
[2026-04-06 18:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:53:44] [INFO] Checking activity reminders 
[2026-04-06 18:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:53:49] [INFO] Checking activity reminders 
[2026-04-06 18:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:53:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:53:59","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:53:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:53:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:53:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:53:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:53:59] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:53:59] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:53:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:53:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:53:59"}
[2026-04-06 18:53:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:53:59"}
[2026-04-06 18:54:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:54:12","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:54:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:12] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:12] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:54:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:54:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:54:12"}
[2026-04-06 18:54:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:54:12"}
[2026-04-06 18:54:14] [INFO] Checking activity reminders 
[2026-04-06 18:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:54:19] [INFO] Checking activity reminders 
[2026-04-06 18:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:54:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:54:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:54:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:54:38] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:38] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:54:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:54:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:54:38"}
[2026-04-06 18:54:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:54:38"}
[2026-04-06 18:54:38] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 18:54:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:54:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 18:54:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 18:54:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:54:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:54:45] [INFO] Checking activity reminders 
[2026-04-06 18:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:54:49] [INFO] Checking activity reminders 
[2026-04-06 18:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:55:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:55:04","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:55:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:55:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:04] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:55:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:04] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:55:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:55:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:55:04"}
[2026-04-06 18:55:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:55:04"}
[2026-04-06 18:55:04] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 18:55:04] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:55:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 18:55:04","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:55:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 18:55:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:15] [INFO] Checking activity reminders 
[2026-04-06 18:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:55:19] [INFO] Checking activity reminders 
[2026-04-06 18:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:55:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:55:34","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:55:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:55:34] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:34] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:55:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:55:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:55:34"}
[2026-04-06 18:55:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:55:34"}
[2026-04-06 18:55:34] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 18:55:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:55:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 18:55:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 18:55:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:55:45] [INFO] Checking activity reminders 
[2026-04-06 18:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:55:49] [INFO] Checking activity reminders 
[2026-04-06 18:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:56:15] [INFO] Checking activity reminders 
[2026-04-06 18:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:56:19] [INFO] Checking activity reminders 
[2026-04-06 18:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:56:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:56:21","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:56:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:56:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:21] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:56:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:21] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:56:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:56:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:56:21"}
[2026-04-06 18:56:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:56:21"}
[2026-04-06 18:56:21] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 18:56:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 18:56:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 18:56:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 18:56:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 18:56:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 18:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:46] [INFO] Checking activity reminders 
[2026-04-06 18:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:56:50] [INFO] Checking activity reminders 
[2026-04-06 18:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:56:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:56:57","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:56:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:56:57] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:56:57] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:56:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:56:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:56:57"}
[2026-04-06 18:56:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:56:57"}
[2026-04-06 18:57:16] [INFO] Checking activity reminders 
[2026-04-06 18:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:57:20] [INFO] Checking activity reminders 
[2026-04-06 18:57:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:57:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:57:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:57:44","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:57:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:57:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:57:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:57:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:57:44] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:57:44] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:57:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:57:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:57:44"}
[2026-04-06 18:57:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:57:44"}
[2026-04-06 18:57:46] [INFO] Checking activity reminders 
[2026-04-06 18:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:57:50] [INFO] Checking activity reminders 
[2026-04-06 18:57:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:57:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:58:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 18:58:12","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 18:58:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:58:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 18:58:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 18:58:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:58:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 18:58:12] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 18:58:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 18:58:12] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 18:58:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 18:58:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:58:12"}
[2026-04-06 18:58:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 18:58:12"}
[2026-04-06 18:58:16] [INFO] Checking activity reminders 
[2026-04-06 18:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:58:20] [INFO] Checking activity reminders 
[2026-04-06 18:58:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:58:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:58:46] [INFO] Checking activity reminders 
[2026-04-06 18:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:58:50] [INFO] Checking activity reminders 
[2026-04-06 18:58:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:58:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:59:17] [INFO] Checking activity reminders 
[2026-04-06 18:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:59:20] [INFO] Checking activity reminders 
[2026-04-06 18:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 18:59:50] [INFO] Checking activity reminders 
[2026-04-06 18:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 18:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:00:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:00:10","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 19:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 19:00:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:10] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 19:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:10] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 19:00:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 19:00:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:00:10"}
[2026-04-06 19:00:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:00:10"}
[2026-04-06 19:00:10] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 19:00:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 19:00:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Pending","server_time":"2026-04-06 19:00:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 19:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-06 19:00:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:00:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:00:20","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 19:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 19:00:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:00:20] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 19:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:20] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 19:00:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 19:00:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:00:20"}
[2026-04-06 19:00:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:00:20"}
[2026-04-06 19:00:20] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"won","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 19:00:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 19:00:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"won","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Pending","server_time":"2026-04-06 19:00:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 19:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:20] [INFO] Deal success processed {"contact_id":"2967","person_name":"مجتبی رزاق پور","products_count":1}
[2026-04-06 19:00:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-06 19:00:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:00:21] [INFO] Checking activity reminders 
[2026-04-06 19:00:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:00:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:00:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:01:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:01:09] [INFO] Checking activity reminders 
[2026-04-06 19:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:01:39] [INFO] Checking activity reminders 
[2026-04-06 19:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:02:09] [INFO] Checking activity reminders 
[2026-04-06 19:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:02:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:02:49] [INFO] Checking activity reminders 
[2026-04-06 19:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:03:19] [INFO] Checking activity reminders 
[2026-04-06 19:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:03:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:03:51] [INFO] Checking activity reminders 
[2026-04-06 19:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:04:10] [INFO] Checking activity reminders 
[2026-04-06 19:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:04:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:04:21] [INFO] Checking activity reminders 
[2026-04-06 19:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:04:41] [INFO] Checking activity reminders 
[2026-04-06 19:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:04:51] [INFO] Checking activity reminders 
[2026-04-06 19:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:05:11] [INFO] Checking activity reminders 
[2026-04-06 19:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:05:21] [INFO] Checking activity reminders 
[2026-04-06 19:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:05:41] [INFO] Checking activity reminders 
[2026-04-06 19:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:05:51] [INFO] Checking activity reminders 
[2026-04-06 19:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:06:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:06:02","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 19:06:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:02] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 19:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:02] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 19:06:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 19:06:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:06:02"}
[2026-04-06 19:06:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:06:02"}
[2026-04-06 19:06:02] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"won","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 19:06:02] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:06:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"won","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Won","server_time":"2026-04-06 19:06:02","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:02] [INFO] Deal success processed {"contact_id":"2967","person_name":"مجتبی رزاق پور","products_count":1}
[2026-04-06 19:06:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-06 19:06:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:06:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:12] [INFO] Checking activity reminders 
[2026-04-06 19:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:06:21] [INFO] Checking activity reminders 
[2026-04-06 19:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:06:42] [INFO] Checking activity reminders 
[2026-04-06 19:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:06:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:06:50","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-06 19:06:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:06:50] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-06 19:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:50] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-06 19:06:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-06 19:06:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:06:50"}
[2026-04-06 19:06:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:06:50"}
[2026-04-06 19:06:50] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"won","pipeline_stage":"برگزاری دوره"}
[2026-04-06 19:06:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:06:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"won","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Won","server_time":"2026-04-06 19:06:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:50] [INFO] Deal success processed {"contact_id":"2967","person_name":"مجتبی رزاق پور","products_count":1}
[2026-04-06 19:06:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-06 19:06:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-06 19:06:51] [INFO] Checking activity reminders 
[2026-04-06 19:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:07:12] [INFO] Checking activity reminders 
[2026-04-06 19:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:07:21] [INFO] Checking activity reminders 
[2026-04-06 19:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:07:42] [INFO] Checking activity reminders 
[2026-04-06 19:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:07:51] [INFO] Checking activity reminders 
[2026-04-06 19:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:08:12] [INFO] Checking activity reminders 
[2026-04-06 19:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:08:21] [INFO] Checking activity reminders 
[2026-04-06 19:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:08:43] [INFO] Checking activity reminders 
[2026-04-06 19:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:08:52] [INFO] Checking activity reminders 
[2026-04-06 19:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:09:13] [INFO] Checking activity reminders 
[2026-04-06 19:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:09:22] [INFO] Checking activity reminders 
[2026-04-06 19:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:09:52] [INFO] Checking activity reminders 
[2026-04-06 19:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:10:22] [INFO] Checking activity reminders 
[2026-04-06 19:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:10:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:10:38] [INFO] Checking activity reminders 
[2026-04-06 19:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:10:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3256","person_id":"12121"}
[2026-04-06 19:11:08] [INFO] Checking activity reminders 
[2026-04-06 19:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:11:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3256","person_id":"12121"}
[2026-04-06 19:13:08] [INFO] Checking activity reminders 
[2026-04-06 19:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:13:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16560","person_id":"4862"}
[2026-04-06 19:13:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3256","person_id":"12121"}
[2026-04-06 19:13:38] [INFO] Checking activity reminders 
[2026-04-06 19:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:14:09] [INFO] Checking activity reminders 
[2026-04-06 19:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:14:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3256","person_id":"12121"}
[2026-04-06 19:14:39] [INFO] Checking activity reminders 
[2026-04-06 19:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:15:09] [INFO] Checking activity reminders 
[2026-04-06 19:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:15:39] [INFO] Checking activity reminders 
[2026-04-06 19:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:16:09] [INFO] Checking activity reminders 
[2026-04-06 19:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:16:39] [INFO] Checking activity reminders 
[2026-04-06 19:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:17:10] [INFO] Checking activity reminders 
[2026-04-06 19:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:17:40] [INFO] Checking activity reminders 
[2026-04-06 19:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:18:10] [INFO] Checking activity reminders 
[2026-04-06 19:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:18:42] [INFO] Checking activity reminders 
[2026-04-06 19:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:18:47] [INFO] Checking activity reminders 
[2026-04-06 19:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:19:18] [INFO] Checking activity reminders 
[2026-04-06 19:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:19:48] [INFO] Checking activity reminders 
[2026-04-06 19:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:20:18] [INFO] Checking activity reminders 
[2026-04-06 19:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:20:48] [INFO] Checking activity reminders 
[2026-04-06 19:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:21:18] [INFO] Checking activity reminders 
[2026-04-06 19:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:21:48] [INFO] Checking activity reminders 
[2026-04-06 19:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:22:18] [INFO] Checking activity reminders 
[2026-04-06 19:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:22:48] [INFO] Checking activity reminders 
[2026-04-06 19:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:23:14] [INFO] Checking activity reminders 
[2026-04-06 19:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:23:19] [INFO] Checking activity reminders 
[2026-04-06 19:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:23:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:23:44] [INFO] Checking activity reminders 
[2026-04-06 19:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:23:49] [INFO] Checking activity reminders 
[2026-04-06 19:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:24:14] [INFO] Checking activity reminders 
[2026-04-06 19:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:24:19] [INFO] Checking activity reminders 
[2026-04-06 19:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:24:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:24:22","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 19:24:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:22] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 19:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:22] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 19:24:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 19:24:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:24:22"}
[2026-04-06 19:24:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:24:22"}
[2026-04-06 19:24:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:24:34","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 19:24:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:24:34] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 19:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:34] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 19:24:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 19:24:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:24:34"}
[2026-04-06 19:24:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:24:34"}
[2026-04-06 19:24:34] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-06 19:24:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:24:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 19:24:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 19:24:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:24:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:24:45] [INFO] Checking activity reminders 
[2026-04-06 19:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:24:49] [INFO] Checking activity reminders 
[2026-04-06 19:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:25:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:25:00","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:25:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 19:25:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:25:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:25:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:25:00] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 19:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:25:00] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 19:25:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 19:25:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:25:00"}
[2026-04-06 19:25:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:25:00"}
[2026-04-06 19:25:15] [INFO] Checking activity reminders 
[2026-04-06 19:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:25:19] [INFO] Checking activity reminders 
[2026-04-06 19:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:25:45] [INFO] Checking activity reminders 
[2026-04-06 19:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:25:49] [INFO] Checking activity reminders 
[2026-04-06 19:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:25:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:26:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7993","deal_id":"local_69ca923d2c1e37.10964407","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:26:02","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 19:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7993","is_new_deal":false}
[2026-04-06 19:26:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:02] [INFO] getContactPrimaryPhone called {"contact_id":"7993"}
[2026-04-06 19:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:02] [INFO] getContactPrimaryPhone result {"contact_id":"7993","person_found":true,"primary_phone":"9123077796"}
[2026-04-06 19:26:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123077796"}
[2026-04-06 19:26:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123077796","contact_id":"7993","deal_id":"local_69ca923d2c1e37.10964407","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:26:02"}
[2026-04-06 19:26:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","existing_deal_found":true,"existing_contact_id":"7993","existing_title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:26:02"}
[2026-04-06 19:26:02] [INFO] DealController.save validated payments {"deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 19:26:02] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7993","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 19:26:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca923d2c1e37.10964407","contact_didar_id":"7993","title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9123077796","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":43000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"معتمدپور","existing_deal":"YES","existing_deal_id":"local_69ca923d2c1e37.10964407","existing_deal_status":"Pending","server_time":"2026-04-06 19:26:02","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 19:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":43000000,"server_time":"2026-04-06 19:26:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:13] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7993","deal_id":"local_69ca923d2c1e37.10964407","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:26:13","session_id":"2lqefphct05eq8pcehtp5li89e"}
[2026-04-06 19:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7993","is_new_deal":false}
[2026-04-06 19:26:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:26:13] [INFO] getContactPrimaryPhone called {"contact_id":"7993"}
[2026-04-06 19:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:13] [INFO] getContactPrimaryPhone result {"contact_id":"7993","person_found":true,"primary_phone":"9123077796"}
[2026-04-06 19:26:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123077796"}
[2026-04-06 19:26:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123077796","contact_id":"7993","deal_id":"local_69ca923d2c1e37.10964407","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:26:13"}
[2026-04-06 19:26:13] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","existing_deal_found":true,"existing_contact_id":"7993","existing_title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-06 19:26:13"}
[2026-04-06 19:26:13] [INFO] DealController.save validated payments {"deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-06 19:26:13] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7993","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-06 19:26:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca923d2c1e37.10964407","contact_didar_id":"7993","title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9123077796","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":43000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"معتمدپور","existing_deal":"YES","existing_deal_id":"local_69ca923d2c1e37.10964407","existing_deal_status":"Pending","server_time":"2026-04-06 19:26:13","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-06 19:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:13] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca923d2c1e37.10964407","contact_id":"7993","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9123077796 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":43000000,"server_time":"2026-04-06 19:26:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:26:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:26:15] [INFO] Checking activity reminders 
[2026-04-06 19:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:26:19] [INFO] Checking activity reminders 
[2026-04-06 19:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:26:46] [INFO] Checking activity reminders 
[2026-04-06 19:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:26:49] [INFO] Checking activity reminders 
[2026-04-06 19:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:26:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-06 19:27:16] [INFO] Checking activity reminders 
[2026-04-06 19:27:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:27:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:27:19] [INFO] Checking activity reminders 
[2026-04-06 19:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:27:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:27:27","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:27:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:27:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-06 19:27:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:27:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:27:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:27:27] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-06 19:27:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:27:27] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-06 19:27:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-06 19:27:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:27:27"}
[2026-04-06 19:27:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:27:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:27:27"}
[2026-04-06 19:27:27] [INFO] DealController.save validated payments {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-06 19:27:27] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:27:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd13dc5ee115.33735493","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"YES","existing_deal_id":"local_69cd13dc5ee115.33735493","existing_deal_status":"Pending","server_time":"2026-04-06 19:27:27","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:27:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:27:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-06 19:27:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:27:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:27:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:27:46] [INFO] Checking activity reminders 
[2026-04-06 19:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:27:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:17] [INFO] Checking activity reminders 
[2026-04-06 19:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:28:24] [INFO] Checking activity reminders 
[2026-04-06 19:28:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:28:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:28:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:28:40","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12313","is_new_deal":false}
[2026-04-06 19:28:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:28:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:28:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-06 19:28:40] [INFO] getContactPrimaryPhone called {"contact_id":"12313"}
[2026-04-06 19:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:40] [INFO] getContactPrimaryPhone result {"contact_id":"12313","person_found":true,"primary_phone":"9126867796"}
[2026-04-06 19:28:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126867796"}
[2026-04-06 19:28:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126867796","contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:28:40"}
[2026-04-06 19:28:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","existing_deal_found":true,"existing_contact_id":"12313","existing_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:28:40"}
[2026-04-06 19:28:40] [INFO] DealController.save validated payments {"deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-06 19:28:40] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12313","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:28:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cd13dc5ee115.33735493","contact_didar_id":"12313","title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9126867796","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد عنابستانی","existing_deal":"YES","existing_deal_id":"local_69cd13dc5ee115.33735493","existing_deal_status":"Pending","server_time":"2026-04-06 19:28:40","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:40] [INFO] Deal success processed {"contact_id":"12313","person_name":"محمد عنابستانی","products_count":1}
[2026-04-06 19:28:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cd13dc5ee115.33735493","contact_id":"12313","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9126867796 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-06 19:28:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:28:47] [INFO] Checking activity reminders 
[2026-04-06 19:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:29:17] [INFO] Checking activity reminders 
[2026-04-06 19:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:29:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:29:47] [INFO] Checking activity reminders 
[2026-04-06 19:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:29:56] [INFO] Checking activity reminders 
[2026-04-06 19:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:30:17] [INFO] Checking activity reminders 
[2026-04-06 19:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:30:26] [INFO] Checking activity reminders 
[2026-04-06 19:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:30:52] [INFO] Checking activity reminders 
[2026-04-06 19:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:30:56] [INFO] Checking activity reminders 
[2026-04-06 19:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:30:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7993","person_id":"12348"}
[2026-04-06 19:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:31:22] [INFO] Checking activity reminders 
[2026-04-06 19:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:31:26] [INFO] Checking activity reminders 
[2026-04-06 19:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:31:52] [INFO] Checking activity reminders 
[2026-04-06 19:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:31:56] [INFO] Checking activity reminders 
[2026-04-06 19:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:39:07] [INFO] Checking activity reminders 
[2026-04-06 19:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:39:37] [INFO] Checking activity reminders 
[2026-04-06 19:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:39:43] [INFO] Activity save request {"post_data":{"contact_id":"6428","deal_id":"local_699b25d1287705.12209602","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال شبا تجارت برای تسویه ","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 19:39:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6428","note_was_empty":true}
[2026-04-06 19:39:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"6428","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:43] [INFO] Updating virtual stage {"contact_id":"6428","stage_name":"deal_registered","force":false}
[2026-04-06 19:39:43] [INFO] Virtual stage successfully saved {"contact_id":"6428","stage_name":"deal_registered"}
[2026-04-06 19:39:43] [INFO] Virtual stage updated after activity save {"contact_id":"6428"}
[2026-04-06 19:39:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699b25d1287705.12209602","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-06 19:39:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3dac7315104.41073470","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3dac7315104.41073470"}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:43] [INFO] Updating virtual stage {"contact_id":"6428","stage_name":"deal_registered","force":false}
[2026-04-06 19:39:43] [INFO] Virtual stage successfully saved {"contact_id":"6428","stage_name":"deal_registered"}
[2026-04-06 19:39:43] [INFO] Virtual stage updated after activity save {"contact_id":"6428"}
[2026-04-06 19:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-06 19:39:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Activity save request {"post_data":{"contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 19:40:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3795","note_was_empty":true}
[2026-04-06 19:40:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"3795","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"deal_registered","force":false}
[2026-04-06 19:40:01] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"deal_registered"}
[2026-04-06 19:40:01] [INFO] Virtual stage updated after activity save {"contact_id":"3795"}
[2026-04-06 19:40:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a4c6f738cf8.41001784","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-06 19:40:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3dad9a11f49.04951557","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3dad9a11f49.04951557"}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:01] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"deal_registered","force":false}
[2026-04-06 19:40:01] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"deal_registered"}
[2026-04-06 19:40:01] [INFO] Virtual stage updated after activity save {"contact_id":"3795"}
[2026-04-06 19:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-06 19:40:07] [INFO] Checking activity reminders 
[2026-04-06 19:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:40:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:40:37] [INFO] Checking activity reminders 
[2026-04-06 19:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:41:06] [INFO] Activity save request {"post_data":{"contact_id":"2916","deal_id":"local_69b7228b3b6b78.41972191","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"هنوز دسته چک نداره \r\nقرار شد برگه ی چک مشتری تغییر بده ارسال کنه ","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-06 19:41:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2916","note_was_empty":true}
[2026-04-06 19:41:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"2916","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:06] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-04-06 19:41:06] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-04-06 19:41:06] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-04-06 19:41:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7228b3b6b78.41972191","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-06 19:41:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d3db1a3242b4.84082106","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d3db1a3242b4.84082106"}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:06] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-04-06 19:41:06] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-04-06 19:41:06] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-04-06 19:41:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-06 19:41:08] [INFO] Checking activity reminders 
[2026-04-06 19:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:41:38] [INFO] Checking activity reminders 
[2026-04-06 19:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:42:08] [INFO] Checking activity reminders 
[2026-04-06 19:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:42:39] [INFO] Checking activity reminders 
[2026-04-06 19:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:43:03] [INFO] Checking activity reminders 
[2026-04-06 19:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20944","person_id":"1800"}
[2026-04-06 19:43:09] [INFO] Checking activity reminders 
[2026-04-06 19:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:43:33] [INFO] Checking activity reminders 
[2026-04-06 19:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:43:39] [INFO] Checking activity reminders 
[2026-04-06 19:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:44:03] [INFO] Checking activity reminders 
[2026-04-06 19:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:44:10] [INFO] Checking activity reminders 
[2026-04-06 19:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:44:33] [INFO] Checking activity reminders 
[2026-04-06 19:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:44:40] [INFO] Checking activity reminders 
[2026-04-06 19:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:45:04] [INFO] Checking activity reminders 
[2026-04-06 19:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:45:10] [INFO] Checking activity reminders 
[2026-04-06 19:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:45:34] [INFO] Checking activity reminders 
[2026-04-06 19:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:45:40] [INFO] Checking activity reminders 
[2026-04-06 19:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:46:04] [INFO] Checking activity reminders 
[2026-04-06 19:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:46:10] [INFO] Checking activity reminders 
[2026-04-06 19:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:46:34] [INFO] Checking activity reminders 
[2026-04-06 19:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:46:40] [INFO] Checking activity reminders 
[2026-04-06 19:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 19:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"check_reminders"}
[2026-04-06 19:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 19:46:56] [WARNING] Auth check failed - not authenticated {"session_id":"pi677chn06k9v3bmfugh3jif38","session_keys":[],"action":"log_client_event"}
[2026-04-06 19:46:56] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-06 19:46:56] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-06 19:46:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:46:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 19:46:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 19:46:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 19:47:04] [INFO] Checking activity reminders 
[2026-04-06 19:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:10] [INFO] Checking activity reminders 
[2026-04-06 19:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:33] [INFO] Checking activity reminders 
[2026-04-06 19:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:34] [INFO] Checking activity reminders 
[2026-04-06 19:47:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:40] [INFO] Checking activity reminders 
[2026-04-06 19:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:47:55] [INFO] Checking activity reminders 
[2026-04-06 19:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:47:58] [INFO] Checking activity reminders 
[2026-04-06 19:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:03] [INFO] Checking activity reminders 
[2026-04-06 19:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:29] [INFO] Checking activity reminders 
[2026-04-06 19:48:29] [INFO] Checking activity reminders 
[2026-04-06 19:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:48:35] [INFO] Updating virtual stage {"contact_id":"12313","stage_name":"with_purchase","force":true}
[2026-04-06 19:48:35] [INFO] Virtual stage successfully saved {"contact_id":"12313","stage_name":"with_purchase"}
[2026-04-06 19:48:35] [INFO] Moved contact out of kariz after successful deal {"contact_id":"12313","deal_id":"local_69cd13dc5ee115.33735493","target_stage":"with_purchase"}
[2026-04-06 19:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:48:43] [INFO] Checking activity reminders 
[2026-04-06 19:48:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:48:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 19:48:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 19:48:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 19:48:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12313","person_id":"20640"}
[2026-04-06 19:48:59] [INFO] Checking activity reminders 
[2026-04-06 19:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:48:59] [INFO] Checking activity reminders 
[2026-04-06 19:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:49:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 19:49:16] [INFO] Checking activity reminders 
[2026-04-06 19:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:49:29] [INFO] Checking activity reminders 
[2026-04-06 19:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:49:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 19:49:45] [INFO] Updating virtual stage {"contact_id":"11111","stage_name":"with_purchase","force":true}
[2026-04-06 19:49:45] [INFO] Virtual stage successfully saved {"contact_id":"11111","stage_name":"with_purchase"}
[2026-04-06 19:49:45] [INFO] Moved contact out of kariz after successful deal {"contact_id":"11111","deal_id":"local_69943556b7cfc3.43303233","target_stage":"with_purchase"}
[2026-04-06 19:49:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-06 19:49:53] [INFO] Checking activity reminders 
[2026-04-06 19:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:49:59] [INFO] Checking activity reminders 
[2026-04-06 19:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:50:23] [INFO] Checking activity reminders 
[2026-04-06 19:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:50:29] [INFO] Checking activity reminders 
[2026-04-06 19:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:50:53] [INFO] Checking activity reminders 
[2026-04-06 19:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:50:59] [INFO] Checking activity reminders 
[2026-04-06 19:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:51:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 19:51:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 19:51:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 19:51:23] [INFO] Checking activity reminders 
[2026-04-06 19:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:51:29] [INFO] Checking activity reminders 
[2026-04-06 19:51:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:51:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:51:53] [INFO] Checking activity reminders 
[2026-04-06 19:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:51:59] [INFO] Checking activity reminders 
[2026-04-06 19:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:52:23] [INFO] Checking activity reminders 
[2026-04-06 19:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:52:29] [INFO] Checking activity reminders 
[2026-04-06 19:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:52:53] [INFO] Checking activity reminders 
[2026-04-06 19:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:52:59] [INFO] Checking activity reminders 
[2026-04-06 19:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:53:24] [INFO] Checking activity reminders 
[2026-04-06 19:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:53:29] [INFO] Checking activity reminders 
[2026-04-06 19:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:53:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 19:53:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 19:53:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 19:53:54] [INFO] Checking activity reminders 
[2026-04-06 19:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:53:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15801","person_id":"20659"}
[2026-04-06 19:54:00] [INFO] Checking activity reminders 
[2026-04-06 19:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:54:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:54:24] [INFO] Checking activity reminders 
[2026-04-06 19:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:54:30] [INFO] Checking activity reminders 
[2026-04-06 19:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:54:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:54:54] [INFO] Checking activity reminders 
[2026-04-06 19:54:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:54:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:55:00] [INFO] Checking activity reminders 
[2026-04-06 19:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:55:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-06 19:55:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-06 19:55:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-06 19:55:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-06 19:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:30] [INFO] Checking activity reminders 
[2026-04-06 19:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:55:35] [INFO] Checking activity reminders 
[2026-04-06 19:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:55:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-06 19:55:45","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-06 19:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5265","is_new_deal":false}
[2026-04-06 19:55:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-06 19:55:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:55:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-06 19:55:45] [INFO] getContactPrimaryPhone called {"contact_id":"5265"}
[2026-04-06 19:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:45] [INFO] getContactPrimaryPhone result {"contact_id":"5265","person_found":true,"primary_phone":"9221211615"}
[2026-04-06 19:55:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9221211615"}
[2026-04-06 19:55:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9221211615","contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:55:45"}
[2026-04-06 19:55:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","existing_deal_found":true,"existing_contact_id":"5265","existing_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-06 19:55:45"}
[2026-04-06 19:55:45] [INFO] DealController.save validated payments {"deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","payments_count":0,"status":"won","pipeline_stage":"برگزاری دوره"}
[2026-04-06 19:55:45] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5265","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-06 19:55:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d3cfc666ec81.29816836","contact_didar_id":"5265","title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9221211615","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"won","payable_amount":0,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد پاک سرشت","existing_deal":"YES","existing_deal_id":"local_69d3cfc666ec81.29816836","existing_deal_status":"Pending","server_time":"2026-04-06 19:55:45","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-06 19:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:45] [INFO] Deal success processed {"contact_id":"5265","person_name":"میلاد پاک سرشت","products_count":1}
[2026-04-06 19:55:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d3cfc666ec81.29816836","contact_id":"5265","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله پنجم 9221211615 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"برگزاری دوره","payable_amount":0,"payment_amount":0,"server_time":"2026-04-06 19:55:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-06 19:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:55:45] [INFO] Updating virtual stage {"contact_id":"5265","stage_name":"with_purchase","force":true}
[2026-04-06 19:55:45] [INFO] Virtual stage successfully saved {"contact_id":"5265","stage_name":"with_purchase"}
[2026-04-06 19:55:45] [INFO] Moved contact out of kariz after successful deal {"contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","target_stage":"with_purchase"}
[2026-04-06 19:55:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:56:00] [INFO] Checking activity reminders 
[2026-04-06 19:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:56:05] [INFO] Checking activity reminders 
[2026-04-06 19:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:56:06] [INFO] Updating virtual stage {"contact_id":"5265","stage_name":"with_purchase","force":true}
[2026-04-06 19:56:06] [INFO] Virtual stage successfully saved {"contact_id":"5265","stage_name":"with_purchase"}
[2026-04-06 19:56:06] [INFO] Moved contact out of kariz after successful deal {"contact_id":"5265","deal_id":"local_69d3cfc666ec81.29816836","target_stage":"with_purchase"}
[2026-04-06 19:56:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-06 19:56:30] [INFO] Checking activity reminders 
[2026-04-06 19:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:56:35] [INFO] Checking activity reminders 
[2026-04-06 19:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:57:00] [INFO] Checking activity reminders 
[2026-04-06 19:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:57:05] [INFO] Checking activity reminders 
[2026-04-06 19:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:57:36] [INFO] Checking activity reminders 
[2026-04-06 19:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:58:06] [INFO] Checking activity reminders 
[2026-04-06 19:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:58:36] [INFO] Checking activity reminders 
[2026-04-06 19:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:59:06] [INFO] Checking activity reminders 
[2026-04-06 19:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 19:59:36] [INFO] Checking activity reminders 
[2026-04-06 19:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 19:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 20:00:06] [INFO] Checking activity reminders 
[2026-04-06 20:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 20:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 20:00:42] [INFO] Checking activity reminders 
[2026-04-06 20:00:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-06 20:00:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-06 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"check_reminders"}
[2026-04-06 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 20:25:15] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-06 21:34:30] [WARNING] Auth check failed - not authenticated {"session_id":"2lqefphct05eq8pcehtp5li89e","session_keys":[],"action":"log_client_event"}
[2026-04-06 21:34:30] [WARNING] Auth check failed - not authenticated {"session_id":"2lqefphct05eq8pcehtp5li89e","session_keys":[],"action":"check_reminders"}
[2026-04-06 21:34:30] [WARNING] Auth check failed - not authenticated {"session_id":"2lqefphct05eq8pcehtp5li89e","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:06:22] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 09:06:22] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:06:22] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 09:07:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:46] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:46] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_products"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_leads"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:47] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:51] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:51] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_leads"}
[2026-04-07 09:07:51] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:52] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:53] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:58] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 09:07:58] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 09:07:58] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 09:07:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 09:07:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 09:07:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 09:07:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 09:08:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:29] [INFO] Checking activity reminders 
[2026-04-07 09:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:08:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:36] [INFO] generateDealTitle result {"contact_id":"8817","person_name":"رضا بهاری","mobile":"9141088308","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9141088308"}
[2026-04-07 09:08:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8817","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:08:57","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8817","is_new_deal":true}
[2026-04-07 09:08:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:08:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:08:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:08:57] [INFO] getContactPrimaryPhone called {"contact_id":"8817"}
[2026-04-07 09:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:57] [INFO] getContactPrimaryPhone result {"contact_id":"8817","person_found":true,"primary_phone":"9141088308"}
[2026-04-07 09:08:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141088308"}
[2026-04-07 09:08:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141088308","contact_id":"8817","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:08:57"}
[2026-04-07 09:08:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:58] [INFO] generateDealTitle result {"contact_id":"8817","person_name":"رضا بهاری","mobile":"9141088308","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9141088308"}
[2026-04-07 09:08:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8817","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:08:58] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8817","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:08:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8817","title":"معامله سوم 9141088308 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9141088308","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا بهاری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:08:58","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:08:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:08:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8817","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9141088308 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:08:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:08:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 09:08:59] [INFO] Checking activity reminders 
[2026-04-07 09:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:09:29] [INFO] Checking activity reminders 
[2026-04-07 09:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:09:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:09:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:09:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:09:45] [INFO] generateDealTitle result {"contact_id":"3559","person_name":"مهدی مسافر","mobile":"9141438166","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9141438166"}
[2026-04-07 09:09:59] [INFO] Checking activity reminders 
[2026-04-07 09:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:10:03] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3559","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:10:03","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:10:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:10:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3559","is_new_deal":true}
[2026-04-07 09:10:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:10:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:10:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:10:03] [INFO] getContactPrimaryPhone called {"contact_id":"3559"}
[2026-04-07 09:10:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:10:03] [INFO] getContactPrimaryPhone result {"contact_id":"3559","person_found":true,"primary_phone":"9141438166"}
[2026-04-07 09:10:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141438166"}
[2026-04-07 09:10:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141438166","contact_id":"3559","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:10:03"}
[2026-04-07 09:10:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:10:03] [INFO] generateDealTitle result {"contact_id":"3559","person_name":"مهدی مسافر","mobile":"9141438166","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9141438166"}
[2026-04-07 09:10:03] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3559","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:10:03] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3559","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:10:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3559","title":"معامله سوم 9141438166 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9141438166","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی مسافر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:10:03","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:10:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:10:03] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:10:03] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3559","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9141438166 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:10:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:10:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 09:10:29] [INFO] Checking activity reminders 
[2026-04-07 09:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:10:59] [INFO] Checking activity reminders 
[2026-04-07 09:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:11:29] [INFO] Checking activity reminders 
[2026-04-07 09:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:12:00] [INFO] Checking activity reminders 
[2026-04-07 09:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:12:30] [INFO] Checking activity reminders 
[2026-04-07 09:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:12:58] [INFO] Checking activity reminders 
[2026-04-07 09:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:13:03] [INFO] Checking activity reminders 
[2026-04-07 09:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:13:28] [INFO] Checking activity reminders 
[2026-04-07 09:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:34] [INFO] generateDealTitle result {"contact_id":"127","person_name":"عزیزی","mobile":"9141490413","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9141490413"}
[2026-04-07 09:13:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"127","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:13:52","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"127","is_new_deal":true}
[2026-04-07 09:13:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:13:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:13:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:13:52] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-07 09:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:52] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-07 09:13:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-07 09:13:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:13:52"}
[2026-04-07 09:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:52] [INFO] generateDealTitle result {"contact_id":"127","person_name":"عزیزی","mobile":"9141490413","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9141490413"}
[2026-04-07 09:13:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"127","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:13:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:13:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:13:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:13:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9141490413 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:13:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:13:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 09:13:58] [INFO] Checking activity reminders 
[2026-04-07 09:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:14:16] [INFO] Checking activity reminders 
[2026-04-07 09:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:14:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:22] [INFO] generateDealTitle result {"contact_id":"7273","person_name":"رسول بهرامی","mobile":"9143423806","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143423806"}
[2026-04-07 09:14:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7273","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:14:37","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7273","is_new_deal":true}
[2026-04-07 09:14:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:14:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:14:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:14:37] [INFO] getContactPrimaryPhone called {"contact_id":"7273"}
[2026-04-07 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:37] [INFO] getContactPrimaryPhone result {"contact_id":"7273","person_found":true,"primary_phone":"9143423806"}
[2026-04-07 09:14:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143423806"}
[2026-04-07 09:14:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143423806","contact_id":"7273","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:14:37"}
[2026-04-07 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:37] [INFO] generateDealTitle result {"contact_id":"7273","person_name":"رسول بهرامی","mobile":"9143423806","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143423806"}
[2026-04-07 09:14:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7273","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:14:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7273","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:14:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7273","title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143423806","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رسول بهرامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:14:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:14:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7273","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:14:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:14:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 09:14:52] [INFO] Checking activity reminders 
[2026-04-07 09:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16719","person_id":"18222"}
[2026-04-07 09:15:08] [INFO] Checking activity reminders 
[2026-04-07 09:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:15:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:15] [INFO] generateDealTitle result {"contact_id":"9471","person_name":"عادل نصیری","mobile":"9143579917","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143579917"}
[2026-04-07 09:15:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9471","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:15:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9471","is_new_deal":true}
[2026-04-07 09:15:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:15:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:15:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:15:38] [INFO] getContactPrimaryPhone called {"contact_id":"9471"}
[2026-04-07 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:38] [INFO] getContactPrimaryPhone result {"contact_id":"9471","person_found":true,"primary_phone":"9143579917"}
[2026-04-07 09:15:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143579917"}
[2026-04-07 09:15:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143579917","contact_id":"9471","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:15:38"}
[2026-04-07 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:38] [INFO] generateDealTitle result {"contact_id":"9471","person_name":"عادل نصیری","mobile":"9143579917","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143579917"}
[2026-04-07 09:15:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9471","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:15:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9471","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:15:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9471","title":"معامله دوم 9143579917 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143579917","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عادل نصیری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:15:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:15:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9471","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9143579917 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:15:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 09:15:39] [INFO] Checking activity reminders 
[2026-04-07 09:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:16:00] [INFO] Checking activity reminders 
[2026-04-07 09:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:16:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:06] [INFO] generateDealTitle result {"contact_id":"11883","person_name":"فتحی","mobile":"9144324193","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144324193"}
[2026-04-07 09:16:30] [INFO] Checking activity reminders 
[2026-04-07 09:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:16:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11883","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:16:34","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11883","is_new_deal":true}
[2026-04-07 09:16:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:16:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:16:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:16:34] [INFO] getContactPrimaryPhone called {"contact_id":"11883"}
[2026-04-07 09:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:34] [INFO] getContactPrimaryPhone result {"contact_id":"11883","person_found":true,"primary_phone":"9144324193"}
[2026-04-07 09:16:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144324193"}
[2026-04-07 09:16:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144324193","contact_id":"11883","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:16:34"}
[2026-04-07 09:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:34] [INFO] generateDealTitle result {"contact_id":"11883","person_name":"فتحی","mobile":"9144324193","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144324193"}
[2026-04-07 09:16:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11883","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:16:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11883","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:16:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11883","title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144324193","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتحی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:16:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:16:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11883","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:16:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:16:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 09:16:52] [INFO] Checking activity reminders 
[2026-04-07 09:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:16:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:17:22] [INFO] Checking activity reminders 
[2026-04-07 09:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:17:52] [INFO] Checking activity reminders 
[2026-04-07 09:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:18:22] [INFO] Checking activity reminders 
[2026-04-07 09:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:18:52] [INFO] Checking activity reminders 
[2026-04-07 09:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:19:22] [INFO] Checking activity reminders 
[2026-04-07 09:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:19:52] [INFO] Checking activity reminders 
[2026-04-07 09:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:20:23] [INFO] Checking activity reminders 
[2026-04-07 09:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:20:53] [INFO] Checking activity reminders 
[2026-04-07 09:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:21:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:14] [INFO] generateDealTitle result {"contact_id":"6340","person_name":"طبیب زاده","mobile":"9144414993","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144414993"}
[2026-04-07 09:21:23] [INFO] Checking activity reminders 
[2026-04-07 09:21:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:21:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:21:45] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6340","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 09:21:45","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 09:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6340","is_new_deal":true}
[2026-04-07 09:21:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 09:21:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:21:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 09:21:45] [INFO] getContactPrimaryPhone called {"contact_id":"6340"}
[2026-04-07 09:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:45] [INFO] getContactPrimaryPhone result {"contact_id":"6340","person_found":true,"primary_phone":"9144414993"}
[2026-04-07 09:21:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144414993"}
[2026-04-07 09:21:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144414993","contact_id":"6340","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 09:21:45"}
[2026-04-07 09:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:45] [INFO] generateDealTitle result {"contact_id":"6340","person_name":"طبیب زاده","mobile":"9144414993","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144414993"}
[2026-04-07 09:21:45] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6340","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 09:21:45] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6340","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 09:21:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6340","title":"معامله دوم 9144414993 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144414993","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 09:21:45","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 09:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:21:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 09:21:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6340","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9144414993 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 09:21:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 09:21:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:22:08] [INFO] Checking activity reminders 
[2026-04-07 09:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:22:19] [INFO] Checking activity reminders 
[2026-04-07 09:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:22:34] [INFO] Checking activity reminders 
[2026-04-07 09:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:22:48] [INFO] Checking activity reminders 
[2026-04-07 09:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:22:57] [INFO] Checking activity reminders 
[2026-04-07 09:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 09:23:27] [INFO] Checking activity reminders 
[2026-04-07 09:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:23:50] [INFO] Checking activity reminders 
[2026-04-07 09:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:24:16] [INFO] Checking activity reminders 
[2026-04-07 09:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:24:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16071","person_id":"18040"}
[2026-04-07 09:24:36] [INFO] Checking activity reminders 
[2026-04-07 09:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:37:34] [INFO] Checking activity reminders 
[2026-04-07 09:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:37:39] [INFO] Checking activity reminders 
[2026-04-07 09:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:38:09] [INFO] Checking activity reminders 
[2026-04-07 09:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:38:39] [INFO] Checking activity reminders 
[2026-04-07 09:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:39:09] [INFO] Checking activity reminders 
[2026-04-07 09:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:39:39] [INFO] Checking activity reminders 
[2026-04-07 09:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:40:09] [INFO] Checking activity reminders 
[2026-04-07 09:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:40:39] [INFO] Checking activity reminders 
[2026-04-07 09:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:41:09] [INFO] Checking activity reminders 
[2026-04-07 09:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:41:40] [INFO] Checking activity reminders 
[2026-04-07 09:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:42:10] [INFO] Checking activity reminders 
[2026-04-07 09:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:42:40] [INFO] Checking activity reminders 
[2026-04-07 09:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:43:10] [INFO] Checking activity reminders 
[2026-04-07 09:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:43:40] [INFO] Checking activity reminders 
[2026-04-07 09:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:44:10] [INFO] Checking activity reminders 
[2026-04-07 09:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:44:40] [INFO] Checking activity reminders 
[2026-04-07 09:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:45:10] [INFO] Checking activity reminders 
[2026-04-07 09:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:45:40] [INFO] Checking activity reminders 
[2026-04-07 09:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:46:10] [INFO] Checking activity reminders 
[2026-04-07 09:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:46:40] [INFO] Checking activity reminders 
[2026-04-07 09:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:47:10] [INFO] Checking activity reminders 
[2026-04-07 09:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:47:40] [INFO] Checking activity reminders 
[2026-04-07 09:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 09:48:11] [INFO] Checking activity reminders 
[2026-04-07 09:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 09:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:00:05] [WARNING] Auth check failed - not authenticated {"session_id":"ev6nq8eun492oqs5hmfbva0fea","session_keys":[],"action":"log_client_event"}
[2026-04-07 10:00:05] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-07 10:00:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 10:06:53] [WARNING] Auth check failed - not authenticated {"session_id":"pvd7a6k70c7ukmkbnib2h3cfkp","session_keys":[],"action":"log_client_event"}
[2026-04-07 10:06:53] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-07 10:06:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 10:06:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 10:06:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 10:06:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 10:07:23] [INFO] Checking activity reminders 
[2026-04-07 10:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:07:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2846","person_id":"11580"}
[2026-04-07 10:07:57] [INFO] Checking activity reminders 
[2026-04-07 10:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:08:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15498","person_id":"12989"}
[2026-04-07 10:08:27] [INFO] Checking activity reminders 
[2026-04-07 10:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 10:08:57] [INFO] Checking activity reminders 
[2026-04-07 10:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:08:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-07 10:09:28] [INFO] Checking activity reminders 
[2026-04-07 10:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:09:58] [INFO] Checking activity reminders 
[2026-04-07 10:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:10:28] [INFO] Checking activity reminders 
[2026-04-07 10:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:10:58] [INFO] Checking activity reminders 
[2026-04-07 10:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11284","person_id":"11223"}
[2026-04-07 10:11:32] [INFO] Checking activity reminders 
[2026-04-07 10:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:11:43] [INFO] Checking activity reminders 
[2026-04-07 10:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-04-07 10:13:02] [INFO] Checking activity reminders 
[2026-04-07 10:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:13:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-07 10:13:27] [INFO] Checking activity reminders 
[2026-04-07 10:13:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:13:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:13:57] [INFO] Checking activity reminders 
[2026-04-07 10:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-07 10:14:27] [INFO] Checking activity reminders 
[2026-04-07 10:14:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:14:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8597","person_id":"4905"}
[2026-04-07 10:14:55] [INFO] Checking activity reminders 
[2026-04-07 10:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:14:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3408","person_id":"16101"}
[2026-04-07 10:15:17] [INFO] Checking activity reminders 
[2026-04-07 10:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:16:03] [INFO] Checking activity reminders 
[2026-04-07 10:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:27] [INFO] Checking activity reminders 
[2026-04-07 10:17:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:17:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11393","person_id":"17967"}
[2026-04-07 10:17:41] [INFO] Checking activity reminders 
[2026-04-07 10:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:45] [INFO] Checking activity reminders 
[2026-04-07 10:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:46] [INFO] Checking activity reminders 
[2026-04-07 10:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7353","person_id":"17645"}
[2026-04-07 10:17:53] [INFO] Checking activity reminders 
[2026-04-07 10:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:17:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:17:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:17:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:17:59] [INFO] generateDealTitle result {"contact_id":"20971","person_name":"صمد داوری خسروشاهی","mobile":"9146560232","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9146560232"}
[2026-04-07 10:18:07] [INFO] Checking activity reminders 
[2026-04-07 10:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:18:14] [INFO] Checking activity reminders 
[2026-04-07 10:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:18:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20971","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 10:18:16","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 10:18:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:18:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20971","is_new_deal":true}
[2026-04-07 10:18:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 10:18:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 10:18:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 10:18:16] [INFO] getContactPrimaryPhone called {"contact_id":"20971"}
[2026-04-07 10:18:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:18:16] [INFO] getContactPrimaryPhone result {"contact_id":"20971","person_found":true,"primary_phone":"9146560232"}
[2026-04-07 10:18:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146560232"}
[2026-04-07 10:18:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146560232","contact_id":"20971","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 10:18:16"}
[2026-04-07 10:18:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:18:16] [INFO] generateDealTitle result {"contact_id":"20971","person_name":"صمد داوری خسروشاهی","mobile":"9146560232","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9146560232"}
[2026-04-07 10:18:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20971","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 10:18:16] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20971","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 10:18:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20971","title":"معامله دوم 9146560232 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9146560232","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صمد داوری خسروشاهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 10:18:16","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 10:18:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:18:16] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 10:18:16] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20971","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9146560232 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 10:18:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 10:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:18:23] [INFO] Checking activity reminders 
[2026-04-07 10:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:18:38] [INFO] Checking activity reminders 
[2026-04-07 10:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:18:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14044","person_id":"3530"}
[2026-04-07 10:19:06] [INFO] Checking activity reminders 
[2026-04-07 10:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5298","person_id":"11392"}
[2026-04-07 10:19:36] [INFO] Checking activity reminders 
[2026-04-07 10:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:21:04] [INFO] Checking activity reminders 
[2026-04-07 10:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:21:19] [INFO] Checking activity reminders 
[2026-04-07 10:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:21:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 10:21:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 10:21:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 10:21:49] [INFO] Checking activity reminders 
[2026-04-07 10:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:21:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 10:21:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 10:21:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 10:22:10] [WARNING] Auth check failed - not authenticated {"session_id":"vvpt6m1fd5mrtoenedpbue2j40","session_keys":[],"action":"log_client_event"}
[2026-04-07 10:22:11] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-07 10:22:11] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 10:22:19] [INFO] Checking activity reminders 
[2026-04-07 10:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:22:41] [INFO] Checking activity reminders 
[2026-04-07 10:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:22:50] [INFO] Checking activity reminders 
[2026-04-07 10:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:22:50] [INFO] Checking activity reminders 
[2026-04-07 10:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:22:59] [INFO] Checking activity reminders 
[2026-04-07 10:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:23:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9300","person_id":"20365"}
[2026-04-07 10:23:11] [INFO] Checking activity reminders 
[2026-04-07 10:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:23:20] [INFO] Checking activity reminders 
[2026-04-07 10:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:23:29] [INFO] Checking activity reminders 
[2026-04-07 10:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9300","person_id":"20365"}
[2026-04-07 10:23:50] [INFO] Checking activity reminders 
[2026-04-07 10:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:23:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9300","person_id":"20365"}
[2026-04-07 10:23:59] [INFO] Checking activity reminders 
[2026-04-07 10:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:24:20] [INFO] Checking activity reminders 
[2026-04-07 10:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:24:30] [INFO] Checking activity reminders 
[2026-04-07 10:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:24:44] [INFO] Checking activity reminders 
[2026-04-07 10:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:24:51] [INFO] Checking activity reminders 
[2026-04-07 10:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:24:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9300","person_id":"20365"}
[2026-04-07 10:25:00] [INFO] Checking activity reminders 
[2026-04-07 10:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:25:14] [INFO] Checking activity reminders 
[2026-04-07 10:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:25:21] [INFO] Checking activity reminders 
[2026-04-07 10:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:25:30] [INFO] Checking activity reminders 
[2026-04-07 10:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:25:44] [INFO] Checking activity reminders 
[2026-04-07 10:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:25:51] [INFO] Checking activity reminders 
[2026-04-07 10:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:26:00] [INFO] Checking activity reminders 
[2026-04-07 10:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:26:14] [INFO] Checking activity reminders 
[2026-04-07 10:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:26:30] [INFO] Checking activity reminders 
[2026-04-07 10:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:26:44] [INFO] Checking activity reminders 
[2026-04-07 10:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:26:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9300","person_id":"20365"}
[2026-04-07 10:27:05] [INFO] Checking activity reminders 
[2026-04-07 10:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:27:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11331","person_id":"20604"}
[2026-04-07 10:27:14] [INFO] Checking activity reminders 
[2026-04-07 10:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:27:44] [INFO] Checking activity reminders 
[2026-04-07 10:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:27:47] [INFO] Checking activity reminders 
[2026-04-07 10:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:27:58] [INFO] Checking activity reminders 
[2026-04-07 10:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:02] [INFO] Checking activity reminders 
[2026-04-07 10:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:07] [INFO] Checking activity reminders 
[2026-04-07 10:28:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:14] [INFO] Checking activity reminders 
[2026-04-07 10:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:32] [INFO] Checking activity reminders 
[2026-04-07 10:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:44] [INFO] Checking activity reminders 
[2026-04-07 10:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:49] [INFO] Checking activity reminders 
[2026-04-07 10:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:28:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6971","person_id":"7226"}
[2026-04-07 10:29:14] [INFO] Checking activity reminders 
[2026-04-07 10:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:29:34] [INFO] Checking activity reminders 
[2026-04-07 10:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:29:44] [INFO] Checking activity reminders 
[2026-04-07 10:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:29:51] [INFO] Checking activity reminders 
[2026-04-07 10:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:29:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11330","person_id":"17742"}
[2026-04-07 10:30:14] [INFO] Checking activity reminders 
[2026-04-07 10:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:30:25] [INFO] Checking activity reminders 
[2026-04-07 10:30:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:30:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13685","person_id":"11729"}
[2026-04-07 10:30:41] [INFO] Checking activity reminders 
[2026-04-07 10:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:30:45] [INFO] Checking activity reminders 
[2026-04-07 10:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:30:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"fb50da7e-779a-46ba-916a-f6655d6004a6","person_id":"21016"}
[2026-04-07 10:31:11] [INFO] Checking activity reminders 
[2026-04-07 10:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:31:15] [INFO] Checking activity reminders 
[2026-04-07 10:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:31:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"fb50da7e-779a-46ba-916a-f6655d6004a6","person_id":"21016"}
[2026-04-07 10:31:45] [INFO] Checking activity reminders 
[2026-04-07 10:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:32:09] [INFO] Checking activity reminders 
[2026-04-07 10:32:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:32:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"fb50da7e-779a-46ba-916a-f6655d6004a6","person_id":"21016"}
[2026-04-07 10:32:15] [INFO] Checking activity reminders 
[2026-04-07 10:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:32:39] [INFO] Checking activity reminders 
[2026-04-07 10:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:32:45] [INFO] Checking activity reminders 
[2026-04-07 10:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:33:09] [INFO] Checking activity reminders 
[2026-04-07 10:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:33:15] [INFO] Checking activity reminders 
[2026-04-07 10:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:33:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9679","person_id":"6482"}
[2026-04-07 10:33:41] [INFO] Checking activity reminders 
[2026-04-07 10:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:33:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20238","person_id":"14294"}
[2026-04-07 10:33:45] [INFO] Checking activity reminders 
[2026-04-07 10:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:33:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:33:59] [INFO] Checking activity reminders 
[2026-04-07 10:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:34:09] [INFO] Activity save request {"post_data":{"contact_id":"4968","deal_id":"local_694ff6f4b3d178.25775626","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال","activity_duration":"10","direction":"incoming","current_stage":"برگزاری دوره","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 10:34:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4968","note_was_empty":true}
[2026-04-07 10:34:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"4968","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:09] [INFO] Updating virtual stage {"contact_id":"4968","stage_name":"deal_registered","force":false}
[2026-04-07 10:34:09] [INFO] Virtual stage successfully saved {"contact_id":"4968","stage_name":"deal_registered"}
[2026-04-07 10:34:09] [INFO] Virtual stage updated after activity save {"contact_id":"4968"}
[2026-04-07 10:34:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694ff6f4b3d178.25775626","stage":"پشتیبانی","status_change":null}
[2026-04-07 10:34:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ac69982753.18736952","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ac69982753.18736952"}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:09] [INFO] Updating virtual stage {"contact_id":"4968","stage_name":"deal_registered","force":false}
[2026-04-07 10:34:09] [INFO] Virtual stage successfully saved {"contact_id":"4968","stage_name":"deal_registered"}
[2026-04-07 10:34:09] [INFO] Virtual stage updated after activity save {"contact_id":"4968"}
[2026-04-07 10:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:34:15] [INFO] Checking activity reminders 
[2026-04-07 10:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:34:29] [INFO] Checking activity reminders 
[2026-04-07 10:34:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:34:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:34:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:34:45] [INFO] Checking activity reminders 
[2026-04-07 10:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:34:57] [INFO] Checking activity reminders 
[2026-04-07 10:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:35:15] [INFO] Checking activity reminders 
[2026-04-07 10:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:35:27] [INFO] Checking activity reminders 
[2026-04-07 10:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:35:36] [INFO] Checking activity reminders 
[2026-04-07 10:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20957","person_id":"8541"}
[2026-04-07 10:35:45] [INFO] Checking activity reminders 
[2026-04-07 10:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:35:45] [INFO] Checking activity reminders 
[2026-04-07 10:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:36:15] [INFO] Checking activity reminders 
[2026-04-07 10:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:36:15] [INFO] Checking activity reminders 
[2026-04-07 10:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20957","person_id":"8541"}
[2026-04-07 10:36:45] [INFO] Checking activity reminders 
[2026-04-07 10:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:36:45] [INFO] Checking activity reminders 
[2026-04-07 10:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:37:07] [INFO] Checking activity reminders 
[2026-04-07 10:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:37:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 10:37:16] [INFO] Checking activity reminders 
[2026-04-07 10:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:37:38] [INFO] Checking activity reminders 
[2026-04-07 10:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:37:46] [INFO] Checking activity reminders 
[2026-04-07 10:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:38:16] [INFO] Checking activity reminders 
[2026-04-07 10:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:38:30] [INFO] Checking activity reminders 
[2026-04-07 10:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:38:35] [INFO] Checking activity reminders 
[2026-04-07 10:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:38:46] [INFO] Checking activity reminders 
[2026-04-07 10:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:38:47] [INFO] Checking activity reminders 
[2026-04-07 10:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:39:05] [INFO] Checking activity reminders 
[2026-04-07 10:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:39:16] [INFO] Checking activity reminders 
[2026-04-07 10:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:39:31] [INFO] Checking activity reminders 
[2026-04-07 10:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:39:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20835","person_id":"16817"}
[2026-04-07 10:39:46] [INFO] Checking activity reminders 
[2026-04-07 10:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:39:50] [INFO] Checking activity reminders 
[2026-04-07 10:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:40:16] [INFO] Checking activity reminders 
[2026-04-07 10:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:40:46] [INFO] Checking activity reminders 
[2026-04-07 10:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:41:12] [INFO] Checking activity reminders 
[2026-04-07 10:41:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:41:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:41:16] [INFO] Checking activity reminders 
[2026-04-07 10:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:41:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20615","person_id":"13947"}
[2026-04-07 10:41:42] [INFO] Checking activity reminders 
[2026-04-07 10:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:41:46] [INFO] Checking activity reminders 
[2026-04-07 10:41:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:41:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:41:50] [INFO] Checking activity reminders 
[2026-04-07 10:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:16] [INFO] Checking activity reminders 
[2026-04-07 10:42:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:20] [INFO] Checking activity reminders 
[2026-04-07 10:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:28] [INFO] Checking activity reminders 
[2026-04-07 10:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 10:42:47] [INFO] Checking activity reminders 
[2026-04-07 10:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:50] [INFO] Checking activity reminders 
[2026-04-07 10:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:42:58] [INFO] Checking activity reminders 
[2026-04-07 10:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:17] [INFO] Checking activity reminders 
[2026-04-07 10:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:20] [INFO] Checking activity reminders 
[2026-04-07 10:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:28] [INFO] Checking activity reminders 
[2026-04-07 10:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:47] [INFO] Checking activity reminders 
[2026-04-07 10:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:50] [INFO] Checking activity reminders 
[2026-04-07 10:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:43:59] [INFO] Checking activity reminders 
[2026-04-07 10:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:04] [INFO] Checking activity reminders 
[2026-04-07 10:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20615","person_id":"13947"}
[2026-04-07 10:44:17] [INFO] Checking activity reminders 
[2026-04-07 10:44:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20615","person_id":"13947"}
[2026-04-07 10:44:26] [INFO] Checking activity reminders 
[2026-04-07 10:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:29] [INFO] Checking activity reminders 
[2026-04-07 10:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:47] [INFO] Checking activity reminders 
[2026-04-07 10:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:55] [INFO] Checking activity reminders 
[2026-04-07 10:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:44:59] [INFO] Checking activity reminders 
[2026-04-07 10:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:12] [INFO] Checking activity reminders 
[2026-04-07 10:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:16] [WARNING] Auth check failed - not authenticated {"session_id":"59u5ou4dersbjap2mdf1bu1ksj","session_keys":[],"action":"log_client_event"}
[2026-04-07 10:45:16] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-07 10:45:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 10:45:18] [INFO] Checking activity reminders 
[2026-04-07 10:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:21] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-07 10:45:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 10:45:23] [INFO] Checking activity reminders 
[2026-04-07 10:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:29] [INFO] Checking activity reminders 
[2026-04-07 10:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:48] [INFO] Checking activity reminders 
[2026-04-07 10:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:45:51] [INFO] Checking activity reminders 
[2026-04-07 10:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:00] [INFO] Checking activity reminders 
[2026-04-07 10:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:00] [INFO] Checking activity reminders 
[2026-04-07 10:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:18] [INFO] Checking activity reminders 
[2026-04-07 10:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:20] [INFO] Checking activity reminders 
[2026-04-07 10:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:46:27] [INFO] Checking activity reminders 
[2026-04-07 10:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:30] [INFO] Checking activity reminders 
[2026-04-07 10:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 10:46:41","session_id":"vvpt6m1fd5mrtoenedpbue2j40"}
[2026-04-07 10:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:46:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20875","is_new_deal":false}
[2026-04-07 10:46:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 10:46:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 10:46:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 10:46:41] [INFO] getContactPrimaryPhone called {"contact_id":"20875"}
[2026-04-07 10:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:46:41] [INFO] getContactPrimaryPhone result {"contact_id":"20875","person_found":true,"primary_phone":"9193400253"}
[2026-04-07 10:46:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193400253"}
[2026-04-07 10:46:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193400253","contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-07 10:46:41"}
[2026-04-07 10:46:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","existing_deal_found":true,"existing_contact_id":"20875","existing_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-07 10:46:41"}
[2026-04-07 10:46:41] [INFO] DealController.save validated payments {"deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 10:46:41] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20875","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 10:46:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699f170c1e62f1.09215329","contact_didar_id":"20875","title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193400253","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جواد بیگی","existing_deal":"YES","existing_deal_id":"local_699f170c1e62f1.09215329","existing_deal_status":"Pending","server_time":"2026-04-07 10:46:41","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-07 10:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:46:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699f170c1e62f1.09215329","contact_id":"20875","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9193400253 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":15000000,"server_time":"2026-04-07 10:46:41","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 10:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:46:48] [INFO] Checking activity reminders 
[2026-04-07 10:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:46:58] [INFO] Checking activity reminders 
[2026-04-07 10:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:00] [INFO] Checking activity reminders 
[2026-04-07 10:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:18] [INFO] Checking activity reminders 
[2026-04-07 10:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:18] [INFO] Checking activity reminders 
[2026-04-07 10:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:19] [INFO] Activity save request {"post_data":{"contact_id":"20875","deal_id":"local_699f170c1e62f1.09215329","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تغییر فاکتور شد 6ماهه 39 ت ","activity_duration":"15","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 10:47:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20875","note_was_empty":true}
[2026-04-07 10:47:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"20875","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:19] [INFO] Updating virtual stage {"contact_id":"20875","stage_name":"deal_registered","force":false}
[2026-04-07 10:47:19] [INFO] Virtual stage successfully saved {"contact_id":"20875","stage_name":"deal_registered"}
[2026-04-07 10:47:19] [INFO] Virtual stage updated after activity save {"contact_id":"20875"}
[2026-04-07 10:47:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699f170c1e62f1.09215329","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-07 10:47:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4af7f51c437.23378497","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4af7f51c437.23378497"}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:19] [INFO] Updating virtual stage {"contact_id":"20875","stage_name":"deal_registered","force":false}
[2026-04-07 10:47:19] [INFO] Virtual stage successfully saved {"contact_id":"20875","stage_name":"deal_registered"}
[2026-04-07 10:47:19] [INFO] Virtual stage updated after activity save {"contact_id":"20875"}
[2026-04-07 10:47:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-07 10:47:23] [INFO] Checking activity reminders 
[2026-04-07 10:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:30] [INFO] Checking activity reminders 
[2026-04-07 10:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:30] [INFO] Checking activity reminders 
[2026-04-07 10:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3438","person_id":"19928"}
[2026-04-07 10:47:48] [INFO] Checking activity reminders 
[2026-04-07 10:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:47:48] [INFO] Checking activity reminders 
[2026-04-07 10:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:00] [INFO] Checking activity reminders 
[2026-04-07 10:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:03] [INFO] Checking activity reminders 
[2026-04-07 10:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:18] [INFO] Checking activity reminders 
[2026-04-07 10:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:18] [INFO] Checking activity reminders 
[2026-04-07 10:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:28] [INFO] Checking activity reminders 
[2026-04-07 10:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:31] [INFO] Checking activity reminders 
[2026-04-07 10:48:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:37] [INFO] Checking activity reminders 
[2026-04-07 10:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13077","person_id":"18134"}
[2026-04-07 10:48:48] [INFO] Checking activity reminders 
[2026-04-07 10:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:48:48] [INFO] Checking activity reminders 
[2026-04-07 10:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:01] [INFO] Checking activity reminders 
[2026-04-07 10:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:07] [INFO] Checking activity reminders 
[2026-04-07 10:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:49:18] [INFO] Checking activity reminders 
[2026-04-07 10:49:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:18] [INFO] Checking activity reminders 
[2026-04-07 10:49:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:24] [INFO] Checking activity reminders 
[2026-04-07 10:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:31] [INFO] Checking activity reminders 
[2026-04-07 10:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:48] [INFO] Checking activity reminders 
[2026-04-07 10:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:48] [INFO] Checking activity reminders 
[2026-04-07 10:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:49:54] [INFO] Checking activity reminders 
[2026-04-07 10:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:02] [INFO] Checking activity reminders 
[2026-04-07 10:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:18] [INFO] Checking activity reminders 
[2026-04-07 10:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:18] [INFO] Checking activity reminders 
[2026-04-07 10:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:22] [INFO] Activity save request {"post_data":{"contact_id":"17032","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشتیبانی \/ 207 \/ فیدیلیتی ثبت نام کرده \/ \r\n405 گذاشته برای فروش \r\nگفتم ماشین دلار صندوق ها طبق سیگنال استاد","activity_duration":"20","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 10:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:50:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 10:50:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 10:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:50:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17032","note_was_empty":true}
[2026-04-07 10:50:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"17032","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 10:50:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b036950684.52991143","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 10:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:50:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b036950684.52991143"}
[2026-04-07 10:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:50:22] [INFO] Updating virtual stage {"contact_id":"17032","stage_name":"deal_registered","force":false}
[2026-04-07 10:50:22] [INFO] Virtual stage successfully saved {"contact_id":"17032","stage_name":"deal_registered"}
[2026-04-07 10:50:22] [INFO] Virtual stage updated after activity save {"contact_id":"17032"}
[2026-04-07 10:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-07 10:50:24] [INFO] Checking activity reminders 
[2026-04-07 10:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13077","person_id":"18134"}
[2026-04-07 10:50:32] [INFO] Checking activity reminders 
[2026-04-07 10:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:50:48] [INFO] Checking activity reminders 
[2026-04-07 10:50:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:49] [INFO] Checking activity reminders 
[2026-04-07 10:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:50:55] [INFO] Checking activity reminders 
[2026-04-07 10:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:51:02] [INFO] Checking activity reminders 
[2026-04-07 10:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:18] [INFO] Checking activity reminders 
[2026-04-07 10:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:19] [INFO] Checking activity reminders 
[2026-04-07 10:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:26] [INFO] Checking activity reminders 
[2026-04-07 10:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:32] [INFO] Checking activity reminders 
[2026-04-07 10:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:48] [INFO] Checking activity reminders 
[2026-04-07 10:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:49] [INFO] Checking activity reminders 
[2026-04-07 10:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:51:56] [INFO] Checking activity reminders 
[2026-04-07 10:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:02] [INFO] Checking activity reminders 
[2026-04-07 10:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:06] [INFO] Checking activity reminders 
[2026-04-07 10:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:06] [INFO] Activity save request {"post_data":{"contact_id":"local_69d223e1cebb36.28765061","deal_id":"local_69d223e1d80cc","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 10:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 10:52:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 10:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d223e1cebb36.28765061","note_was_empty":true}
[2026-04-07 10:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:06] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"new","force":false}
[2026-04-07 10:52:06] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"new"}
[2026-04-07 10:52:06] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-07 10:52:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d223e1d80cc","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 10:52:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b09eec3ba4.70186874","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 10:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b09eec3ba4.70186874"}
[2026-04-07 10:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:06] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered","force":false}
[2026-04-07 10:52:06] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered"}
[2026-04-07 10:52:06] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-07 10:52:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-07 10:52:08] [INFO] Checking activity reminders 
[2026-04-07 10:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:19] [INFO] Checking activity reminders 
[2026-04-07 10:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:19] [INFO] Checking activity reminders 
[2026-04-07 10:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:23] [INFO] Checking activity reminders 
[2026-04-07 10:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:33] [INFO] Checking activity reminders 
[2026-04-07 10:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:42] [INFO] Checking activity reminders 
[2026-04-07 10:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:49] [INFO] Checking activity reminders 
[2026-04-07 10:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:49] [INFO] Checking activity reminders 
[2026-04-07 10:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:51] [INFO] Checking activity reminders 
[2026-04-07 10:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8438","person_id":"10514"}
[2026-04-07 10:53:03] [INFO] Checking activity reminders 
[2026-04-07 10:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:11] [INFO] Checking activity reminders 
[2026-04-07 10:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:19] [INFO] Checking activity reminders 
[2026-04-07 10:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:19] [INFO] Checking activity reminders 
[2026-04-07 10:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:22] [INFO] Checking activity reminders 
[2026-04-07 10:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:33] [INFO] Checking activity reminders 
[2026-04-07 10:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:43] [INFO] Checking activity reminders 
[2026-04-07 10:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:46] [INFO] Checking activity reminders 
[2026-04-07 10:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:53:49] [INFO] Checking activity reminders 
[2026-04-07 10:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:03] [INFO] Checking activity reminders 
[2026-04-07 10:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:07] [INFO] Checking activity reminders 
[2026-04-07 10:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:15] [INFO] Checking activity reminders 
[2026-04-07 10:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:19] [INFO] Checking activity reminders 
[2026-04-07 10:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15210","person_id":"14281"}
[2026-04-07 10:54:33] [INFO] Checking activity reminders 
[2026-04-07 10:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:38] [INFO] Checking activity reminders 
[2026-04-07 10:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:54:49] [INFO] Checking activity reminders 
[2026-04-07 10:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:54:49] [INFO] Checking activity reminders 
[2026-04-07 10:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:04] [INFO] Checking activity reminders 
[2026-04-07 10:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:08] [INFO] Checking activity reminders 
[2026-04-07 10:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:19] [INFO] Checking activity reminders 
[2026-04-07 10:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:34] [INFO] Checking activity reminders 
[2026-04-07 10:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:35] [INFO] Checking activity reminders 
[2026-04-07 10:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:38] [INFO] Checking activity reminders 
[2026-04-07 10:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:44] [INFO] Checking activity reminders 
[2026-04-07 10:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:55:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4968","person_id":"11325"}
[2026-04-07 10:55:49] [INFO] Checking activity reminders 
[2026-04-07 10:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:04] [INFO] Checking activity reminders 
[2026-04-07 10:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:07] [INFO] Checking activity reminders 
[2026-04-07 10:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:09] [INFO] Checking activity reminders 
[2026-04-07 10:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:11] [INFO] Checking activity reminders 
[2026-04-07 10:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:20] [INFO] Checking activity reminders 
[2026-04-07 10:56:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:22] [INFO] Checking activity reminders 
[2026-04-07 10:56:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:34] [INFO] Checking activity reminders 
[2026-04-07 10:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:39] [INFO] Checking activity reminders 
[2026-04-07 10:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:39] [INFO] Checking activity reminders 
[2026-04-07 10:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:56:50] [INFO] Checking activity reminders 
[2026-04-07 10:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:04] [INFO] Checking activity reminders 
[2026-04-07 10:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:09] [INFO] Checking activity reminders 
[2026-04-07 10:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:11] [INFO] Checking activity reminders 
[2026-04-07 10:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:19] [INFO] Checking activity reminders 
[2026-04-07 10:57:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20896","person_id":"16925"}
[2026-04-07 10:57:29] [INFO] Checking activity reminders 
[2026-04-07 10:57:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:34] [INFO] Checking activity reminders 
[2026-04-07 10:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:36] [INFO] Activity save request {"post_data":{"contact_id":"local_69528df2592039.98104492","deal_id":"local_69528df25abc7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری \r\nهدف تمدید کانال","activity_duration":"3","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 10:57:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69528df2592039.98104492","note_was_empty":true}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:36] [INFO] Updating virtual stage {"contact_id":"local_69528df2592039.98104492","stage_name":"deal_registered","force":false}
[2026-04-07 10:57:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69528df2592039.98104492","stage_name":"deal_registered"}
[2026-04-07 10:57:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69528df2592039.98104492"}
[2026-04-07 10:57:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69528df25abc7","stage":"تماس پیگیری","status_change":null}
[2026-04-07 10:57:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b1e8a2da48.16041137","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b1e8a2da48.16041137"}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:36] [INFO] Updating virtual stage {"contact_id":"local_69528df2592039.98104492","stage_name":"deal_registered","force":false}
[2026-04-07 10:57:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69528df2592039.98104492","stage_name":"deal_registered"}
[2026-04-07 10:57:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69528df2592039.98104492"}
[2026-04-07 10:57:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69528df2592039.98104492","person_id":"21462"}
[2026-04-07 10:57:39] [INFO] Checking activity reminders 
[2026-04-07 10:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:42] [INFO] Checking activity reminders 
[2026-04-07 10:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:54] [INFO] Checking activity reminders 
[2026-04-07 10:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:57:59] [INFO] Checking activity reminders 
[2026-04-07 10:57:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:57:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:05] [INFO] Checking activity reminders 
[2026-04-07 10:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:09] [INFO] Checking activity reminders 
[2026-04-07 10:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:10] [INFO] Checking activity reminders 
[2026-04-07 10:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:15] [INFO] Checking activity reminders 
[2026-04-07 10:58:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7257","person_id":"18941"}
[2026-04-07 10:58:32] [INFO] Checking activity reminders 
[2026-04-07 10:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:35] [INFO] Checking activity reminders 
[2026-04-07 10:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:45] [INFO] Checking activity reminders 
[2026-04-07 10:58:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:58:55] [INFO] Checking activity reminders 
[2026-04-07 10:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 10:59:02] [INFO] Checking activity reminders 
[2026-04-07 10:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:05] [INFO] Checking activity reminders 
[2026-04-07 10:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:08] [INFO] Checking activity reminders 
[2026-04-07 10:59:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:14] [INFO] Checking activity reminders 
[2026-04-07 10:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-07 10:59:25] [INFO] Checking activity reminders 
[2026-04-07 10:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:32] [INFO] Checking activity reminders 
[2026-04-07 10:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:35] [INFO] Checking activity reminders 
[2026-04-07 10:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:39] [INFO] Checking activity reminders 
[2026-04-07 10:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:55] [INFO] Checking activity reminders 
[2026-04-07 10:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 10:59:59] [INFO] Checking activity reminders 
[2026-04-07 10:59:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 10:59:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:03] [INFO] Checking activity reminders 
[2026-04-07 11:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:05] [INFO] Checking activity reminders 
[2026-04-07 11:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:17] [INFO] Checking activity reminders 
[2026-04-07 11:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6581","person_id":"2796"}
[2026-04-07 11:00:25] [INFO] Checking activity reminders 
[2026-04-07 11:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:33] [INFO] Checking activity reminders 
[2026-04-07 11:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:36] [INFO] Checking activity reminders 
[2026-04-07 11:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-07 11:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6581","person_id":"2796"}
[2026-04-07 11:00:41] [INFO] Checking activity reminders 
[2026-04-07 11:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:00:55] [INFO] Checking activity reminders 
[2026-04-07 11:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:00] [INFO] Checking activity reminders 
[2026-04-07 11:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:03] [INFO] Checking activity reminders 
[2026-04-07 11:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:06] [INFO] Checking activity reminders 
[2026-04-07 11:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:12] [INFO] Checking activity reminders 
[2026-04-07 11:01:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:01:31] [INFO] Checking activity reminders 
[2026-04-07 11:01:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:33] [INFO] Checking activity reminders 
[2026-04-07 11:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:36] [INFO] Checking activity reminders 
[2026-04-07 11:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:41] [INFO] Checking activity reminders 
[2026-04-07 11:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:42] [INFO] Checking activity reminders 
[2026-04-07 11:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9815","person_id":"17364"}
[2026-04-07 11:02:03] [INFO] Checking activity reminders 
[2026-04-07 11:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:03] [INFO] Checking activity reminders 
[2026-04-07 11:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:06] [INFO] Checking activity reminders 
[2026-04-07 11:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:08] [INFO] Checking activity reminders 
[2026-04-07 11:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:12] [INFO] Checking activity reminders 
[2026-04-07 11:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:33] [INFO] Checking activity reminders 
[2026-04-07 11:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:37] [INFO] Checking activity reminders 
[2026-04-07 11:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:42] [INFO] Checking activity reminders 
[2026-04-07 11:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:47] [INFO] Checking activity reminders 
[2026-04-07 11:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:02:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2693","person_id":"10819"}
[2026-04-07 11:03:03] [INFO] Checking activity reminders 
[2026-04-07 11:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:03:12] [INFO] Checking activity reminders 
[2026-04-07 11:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:03:17] [INFO] Checking activity reminders 
[2026-04-07 11:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:03:19] [INFO] Activity save request {"post_data":{"contact_id":"995","deal_id":"local_69493e8705f8e4.10240645","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیری مانده عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 11:03:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"995","note_was_empty":true}
[2026-04-07 11:03:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"995","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:19] [INFO] Updating virtual stage {"contact_id":"995","stage_name":"deal_registered","force":false}
[2026-04-07 11:03:19] [INFO] Virtual stage successfully saved {"contact_id":"995","stage_name":"deal_registered"}
[2026-04-07 11:03:19] [INFO] Virtual stage updated after activity save {"contact_id":"995"}
[2026-04-07 11:03:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69493e8705f8e4.10240645","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-07 11:03:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b33f51c9b4.77837243","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b33f51c9b4.77837243"}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:19] [INFO] Updating virtual stage {"contact_id":"995","stage_name":"deal_registered","force":false}
[2026-04-07 11:03:19] [INFO] Virtual stage successfully saved {"contact_id":"995","stage_name":"deal_registered"}
[2026-04-07 11:03:19] [INFO] Virtual stage updated after activity save {"contact_id":"995"}
[2026-04-07 11:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-07 11:03:33] [INFO] Checking activity reminders 
[2026-04-07 11:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:03:41] [INFO] Checking activity reminders 
[2026-04-07 11:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:03:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2693","person_id":"10819"}
[2026-04-07 11:03:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:03:46] [INFO] Checking activity reminders 
[2026-04-07 11:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:04] [INFO] Checking activity reminders 
[2026-04-07 11:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:11] [INFO] Checking activity reminders 
[2026-04-07 11:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:11] [INFO] Checking activity reminders 
[2026-04-07 11:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:23] [INFO] Checking activity reminders 
[2026-04-07 11:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:34] [INFO] Checking activity reminders 
[2026-04-07 11:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:40] [INFO] Checking activity reminders 
[2026-04-07 11:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:41] [INFO] Checking activity reminders 
[2026-04-07 11:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:45] [INFO] Checking activity reminders 
[2026-04-07 11:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:04:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20830","person_id":"20322"}
[2026-04-07 11:05:04] [INFO] Checking activity reminders 
[2026-04-07 11:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 11:05:11] [INFO] Checking activity reminders 
[2026-04-07 11:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:20] [INFO] Checking activity reminders 
[2026-04-07 11:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:24] [INFO] Checking activity reminders 
[2026-04-07 11:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:35] [INFO] Checking activity reminders 
[2026-04-07 11:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15239","person_id":"3260"}
[2026-04-07 11:05:41] [INFO] Checking activity reminders 
[2026-04-07 11:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:05:54] [INFO] Checking activity reminders 
[2026-04-07 11:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:05:55] [INFO] Checking activity reminders 
[2026-04-07 11:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:11] [INFO] Checking activity reminders 
[2026-04-07 11:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:15] [INFO] Checking activity reminders 
[2026-04-07 11:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-04-07 11:06:25] [INFO] Checking activity reminders 
[2026-04-07 11:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:25] [INFO] Checking activity reminders 
[2026-04-07 11:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:35] [INFO] Checking activity reminders 
[2026-04-07 11:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:41] [INFO] Checking activity reminders 
[2026-04-07 11:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:42] [INFO] Checking activity reminders 
[2026-04-07 11:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:55] [INFO] Checking activity reminders 
[2026-04-07 11:06:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:06:56] [INFO] Checking activity reminders 
[2026-04-07 11:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:06] [INFO] Checking activity reminders 
[2026-04-07 11:07:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:09] [INFO] Checking activity reminders 
[2026-04-07 11:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:11] [INFO] Checking activity reminders 
[2026-04-07 11:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:24] [INFO] Checking activity reminders 
[2026-04-07 11:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:25] [INFO] Checking activity reminders 
[2026-04-07 11:07:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:36] [INFO] Checking activity reminders 
[2026-04-07 11:07:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:07:41] [INFO] Checking activity reminders 
[2026-04-07 11:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:41] [INFO] Checking activity reminders 
[2026-04-07 11:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:07:55] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 11:07:55] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 11:07:55] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 11:07:55] [INFO] Checking activity reminders 
[2026-04-07 11:07:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:07:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:06] [INFO] Checking activity reminders 
[2026-04-07 11:08:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:11] [INFO] Checking activity reminders 
[2026-04-07 11:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:13] [INFO] Checking activity reminders 
[2026-04-07 11:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:36] [INFO] Checking activity reminders 
[2026-04-07 11:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:41] [INFO] Checking activity reminders 
[2026-04-07 11:08:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:43] [INFO] Checking activity reminders 
[2026-04-07 11:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:08:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:08:54","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 11:08:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:08:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","is_new_deal":false}
[2026-04-07 11:08:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:08:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:08:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:08:54] [INFO] getContactPrimaryPhone called {"contact_id":"2895"}
[2026-04-07 11:08:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:08:54] [INFO] getContactPrimaryPhone result {"contact_id":"2895","person_found":true,"primary_phone":"9121187661"}
[2026-04-07 11:08:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121187661"}
[2026-04-07 11:08:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121187661","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:08:54"}
[2026-04-07 11:08:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","existing_deal_found":true,"existing_contact_id":"2895","existing_title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:08:54"}
[2026-04-07 11:08:54] [INFO] DealController.save validated payments {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-07 11:08:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2895","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 11:08:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c67258d30.73196954","contact_didar_id":"2895","title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9121187661","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عماد آذر","existing_deal":"YES","existing_deal_id":"local_69b72c67258d30.73196954","existing_deal_status":"Pending","server_time":"2026-04-07 11:08:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 11:08:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:08:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-07 11:08:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:08:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:07] [INFO] Checking activity reminders 
[2026-04-07 11:09:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:09:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:09:11","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"2895","is_new_deal":false}
[2026-04-07 11:09:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:09:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:09:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:09:11] [INFO] getContactPrimaryPhone called {"contact_id":"2895"}
[2026-04-07 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:11] [INFO] getContactPrimaryPhone result {"contact_id":"2895","person_found":true,"primary_phone":"9121187661"}
[2026-04-07 11:09:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121187661"}
[2026-04-07 11:09:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121187661","contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:09:11"}
[2026-04-07 11:09:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","existing_deal_found":true,"existing_contact_id":"2895","existing_title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:09:11"}
[2026-04-07 11:09:11] [INFO] DealController.save validated payments {"deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 11:09:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2895","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 11:09:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c67258d30.73196954","contact_didar_id":"2895","title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9121187661","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عماد آذر","existing_deal":"YES","existing_deal_id":"local_69b72c67258d30.73196954","existing_deal_status":"Pending","server_time":"2026-04-07 11:09:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:11] [INFO] Deal success processed {"contact_id":"2895","person_name":"عماد آذر","products_count":1}
[2026-04-07 11:09:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c67258d30.73196954","contact_id":"2895","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9121187661 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-07 11:09:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:09:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:11] [INFO] Updating virtual stage {"contact_id":"2895","stage_name":"with_purchase","force":true}
[2026-04-07 11:09:11] [INFO] Virtual stage successfully saved {"contact_id":"2895","stage_name":"with_purchase"}
[2026-04-07 11:09:11] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2895","deal_id":"local_69b72c67258d30.73196954","target_stage":"with_purchase"}
[2026-04-07 11:09:12] [INFO] Checking activity reminders 
[2026-04-07 11:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:09:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2895","person_id":"12586"}
[2026-04-07 11:09:13] [INFO] Checking activity reminders 
[2026-04-07 11:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:09:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:09:29] [INFO] Checking activity reminders 
[2026-04-07 11:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:09:37] [INFO] Checking activity reminders 
[2026-04-07 11:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:09:42] [INFO] Checking activity reminders 
[2026-04-07 11:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:02] [INFO] Checking activity reminders 
[2026-04-07 11:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:12] [INFO] Checking activity reminders 
[2026-04-07 11:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:12] [INFO] Checking activity reminders 
[2026-04-07 11:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 11:10:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 11:10:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 11:10:17] [INFO] Checking activity reminders 
[2026-04-07 11:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:22] [INFO] Checking activity reminders 
[2026-04-07 11:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:34] [INFO] Checking activity reminders 
[2026-04-07 11:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:42] [INFO] Checking activity reminders 
[2026-04-07 11:10:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:47] [INFO] Checking activity reminders 
[2026-04-07 11:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:52] [INFO] Checking activity reminders 
[2026-04-07 11:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:10:57] [INFO] Checking activity reminders 
[2026-04-07 11:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7001","person_id":"11464"}
[2026-04-07 11:11:01] [INFO] Checking activity reminders 
[2026-04-07 11:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:12] [INFO] Checking activity reminders 
[2026-04-07 11:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:12] [INFO] Checking activity reminders 
[2026-04-07 11:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:23] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9309735864","09309735864"]}
[2026-04-07 11:11:23] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9309735864","09309735864"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-07 11:11:23] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9309735864","full_name":"لید جدید"}
[2026-04-07 11:11:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-07 11:11:23] [INFO] Notification created {"notification_id":"627","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-07 11:11:25] [INFO] Checking activity reminders 
[2026-04-07 11:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:26] [INFO] Checking activity reminders 
[2026-04-07 11:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:35] [INFO] Checking activity reminders 
[2026-04-07 11:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:39] [INFO] Checking activity reminders 
[2026-04-07 11:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:42] [INFO] Checking activity reminders 
[2026-04-07 11:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:45] [INFO] Checking activity reminders 
[2026-04-07 11:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:11:56] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9308501768","09308501768"]}
[2026-04-07 11:11:56] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9308501768","09308501768"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-07 11:11:56] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9308501768","full_name":"لید جدید"}
[2026-04-07 11:11:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-07 11:11:56] [INFO] Notification created {"notification_id":"628","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-07 11:11:58] [INFO] Checking activity reminders 
[2026-04-07 11:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:06] [INFO] Checking activity reminders 
[2026-04-07 11:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:09] [INFO] Checking activity reminders 
[2026-04-07 11:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:12] [INFO] Checking activity reminders 
[2026-04-07 11:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:18] [INFO] Checking activity reminders 
[2026-04-07 11:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:23] [INFO] Checking activity reminders 
[2026-04-07 11:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-04-07 11:12:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699eaf23b95158.14445425","person_id":"21801"}
[2026-04-07 11:12:27] [INFO] Lead update received {"contact_id":"13708","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:27] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13708"}
[2026-04-07 11:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:28] [INFO] Checking activity reminders 
[2026-04-07 11:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:36] [INFO] Checking activity reminders 
[2026-04-07 11:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:42] [INFO] Checking activity reminders 
[2026-04-07 11:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:51] [INFO] Checking activity reminders 
[2026-04-07 11:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:12:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13708","person_id":"2422"}
[2026-04-07 11:12:58] [INFO] Checking activity reminders 
[2026-04-07 11:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:04] [INFO] Checking activity reminders 
[2026-04-07 11:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:06] [INFO] Checking activity reminders 
[2026-04-07 11:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:12] [INFO] Checking activity reminders 
[2026-04-07 11:13:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:26] [INFO] Checking activity reminders 
[2026-04-07 11:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:28] [INFO] Checking activity reminders 
[2026-04-07 11:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:30] [INFO] Checking activity reminders 
[2026-04-07 11:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:13:40] [INFO] Checking activity reminders 
[2026-04-07 11:13:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:42] [INFO] Checking activity reminders 
[2026-04-07 11:13:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:58] [INFO] Checking activity reminders 
[2026-04-07 11:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:13:58] [INFO] Checking activity reminders 
[2026-04-07 11:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5741","person_id":"16100"}
[2026-04-07 11:14:01] [INFO] Checking activity reminders 
[2026-04-07 11:14:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:12] [INFO] Checking activity reminders 
[2026-04-07 11:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:28] [INFO] Checking activity reminders 
[2026-04-07 11:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:31] [INFO] Checking activity reminders 
[2026-04-07 11:14:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:42] [INFO] Checking activity reminders 
[2026-04-07 11:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:14:58] [INFO] Checking activity reminders 
[2026-04-07 11:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:01] [INFO] Checking activity reminders 
[2026-04-07 11:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:12] [INFO] Checking activity reminders 
[2026-04-07 11:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:28] [INFO] Checking activity reminders 
[2026-04-07 11:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:31] [INFO] Checking activity reminders 
[2026-04-07 11:15:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:42] [INFO] Checking activity reminders 
[2026-04-07 11:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:15:58] [INFO] Checking activity reminders 
[2026-04-07 11:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:01] [INFO] Checking activity reminders 
[2026-04-07 11:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:02] [INFO] Checking activity reminders 
[2026-04-07 11:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:10] [INFO] Checking activity reminders 
[2026-04-07 11:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:12] [INFO] Checking activity reminders 
[2026-04-07 11:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:23] [INFO] Checking activity reminders 
[2026-04-07 11:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:28] [INFO] generateDealTitle result {"contact_id":"16306","person_name":"علیرضا خادمی","mobile":"9227502843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9227502843"}
[2026-04-07 11:16:28] [INFO] Checking activity reminders 
[2026-04-07 11:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:32] [INFO] Checking activity reminders 
[2026-04-07 11:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:42] [INFO] Checking activity reminders 
[2026-04-07 11:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:16:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16306","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:16:44","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16306","is_new_deal":true}
[2026-04-07 11:16:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:16:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:16:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:16:44] [INFO] getContactPrimaryPhone called {"contact_id":"16306"}
[2026-04-07 11:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:44] [INFO] getContactPrimaryPhone result {"contact_id":"16306","person_found":true,"primary_phone":"9227502843"}
[2026-04-07 11:16:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9227502843"}
[2026-04-07 11:16:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9227502843","contact_id":"16306","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:16:44"}
[2026-04-07 11:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:44] [INFO] generateDealTitle result {"contact_id":"16306","person_name":"علیرضا خادمی","mobile":"9227502843","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9227502843"}
[2026-04-07 11:16:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16306","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:16:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16306","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:16:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16306","title":"معامله دوم 9227502843 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9227502843","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"علیرضا خادمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:16:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:16:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16306","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9227502843 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:16:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:16:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:16:59] [INFO] Checking activity reminders 
[2026-04-07 11:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:01] [INFO] Checking activity reminders 
[2026-04-07 11:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:17:11] [INFO] Lead update received {"contact_id":"16306","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:17:11] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16306"}
[2026-04-07 11:17:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-07 11:17:12] [INFO] Checking activity reminders 
[2026-04-07 11:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:13] [INFO] Checking activity reminders 
[2026-04-07 11:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:25] [INFO] Checking activity reminders 
[2026-04-07 11:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:29] [INFO] Checking activity reminders 
[2026-04-07 11:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:43] [INFO] Checking activity reminders 
[2026-04-07 11:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:43] [INFO] Checking activity reminders 
[2026-04-07 11:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:17:44] [INFO] Activity save request {"post_data":{"contact_id":"local_695cb9e2baa682.97722997","deal_id":"local_695cb9e2bd625","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیری تمدید \/ خونه برادر زنش داره میسازه دارن خونه جا به جا میکنن تو این شرایط هم پول زیادی ندارن طلا که داشتن میخوان یکم سود بده بفروش برای مبلغ خونه \/ شرایط اوکی شد پول مجدد اومد دستش خودش اطلاع میده بهم","activity_duration":"15","direction":"outgoing","current_stage":"پشتیبانی","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 11:17:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_695cb9e2baa682.97722997","note_was_empty":true}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:44] [INFO] Updating virtual stage {"contact_id":"local_695cb9e2baa682.97722997","stage_name":"deal_registered","force":false}
[2026-04-07 11:17:44] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9e2baa682.97722997","stage_name":"deal_registered"}
[2026-04-07 11:17:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9e2baa682.97722997"}
[2026-04-07 11:17:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cb9e2bd625","stage":"پشتیبانی","status_change":null}
[2026-04-07 11:17:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b6a033fb50.69351082","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b6a033fb50.69351082"}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:44] [INFO] Updating virtual stage {"contact_id":"local_695cb9e2baa682.97722997","stage_name":"deal_registered","force":false}
[2026-04-07 11:17:44] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9e2baa682.97722997","stage_name":"deal_registered"}
[2026-04-07 11:17:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9e2baa682.97722997"}
[2026-04-07 11:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9e2baa682.97722997","person_id":"21530"}
[2026-04-07 11:17:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21037","person_id":"591"}
[2026-04-07 11:17:55] [INFO] Checking activity reminders 
[2026-04-07 11:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:02] [INFO] Checking activity reminders 
[2026-04-07 11:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:04] [INFO] Checking activity reminders 
[2026-04-07 11:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-07 11:18:15] [INFO] Checking activity reminders 
[2026-04-07 11:18:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:20] [INFO] Checking activity reminders 
[2026-04-07 11:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:25] [INFO] Checking activity reminders 
[2026-04-07 11:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:32] [INFO] Checking activity reminders 
[2026-04-07 11:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:18:37] [INFO] Checking activity reminders 
[2026-04-07 11:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:02] [INFO] Checking activity reminders 
[2026-04-07 11:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:32] [INFO] Checking activity reminders 
[2026-04-07 11:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:32] [INFO] Checking activity reminders 
[2026-04-07 11:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:45] [INFO] Checking activity reminders 
[2026-04-07 11:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:47] [INFO] Checking activity reminders 
[2026-04-07 11:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 11:19:57] [INFO] Checking activity reminders 
[2026-04-07 11:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_154","person_id":"21231"}
[2026-04-07 11:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_154","person_id":"21231"}
[2026-04-07 11:20:17] [INFO] Checking activity reminders 
[2026-04-07 11:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:18] [INFO] Checking activity reminders 
[2026-04-07 11:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-07 11:20:32] [INFO] Checking activity reminders 
[2026-04-07 11:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:47] [INFO] Checking activity reminders 
[2026-04-07 11:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:55] [INFO] Checking activity reminders 
[2026-04-07 11:20:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:20:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:20:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-07 11:21:07] [INFO] Checking activity reminders 
[2026-04-07 11:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:21:15] [INFO] Checking activity reminders 
[2026-04-07 11:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:21:17] [INFO] Checking activity reminders 
[2026-04-07 11:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:21:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11874","person_id":"16520"}
[2026-04-07 11:21:37] [INFO] Checking activity reminders 
[2026-04-07 11:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:21:47] [INFO] Checking activity reminders 
[2026-04-07 11:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:21:55] [INFO] Checking activity reminders 
[2026-04-07 11:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:07] [INFO] Checking activity reminders 
[2026-04-07 11:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:17] [INFO] Checking activity reminders 
[2026-04-07 11:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:23] [INFO] Checking activity reminders 
[2026-04-07 11:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11392","person_id":"8655"}
[2026-04-07 11:22:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3559","deal_id":"local_69d498b38d78f3.98740416","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:22:28","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:22:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3559","is_new_deal":false}
[2026-04-07 11:22:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:22:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:22:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 11:22:28] [INFO] getContactPrimaryPhone called {"contact_id":"3559"}
[2026-04-07 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:22:28] [INFO] getContactPrimaryPhone result {"contact_id":"3559","person_found":true,"primary_phone":"9141438166"}
[2026-04-07 11:22:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141438166"}
[2026-04-07 11:22:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141438166","contact_id":"3559","deal_id":"local_69d498b38d78f3.98740416","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:22:28"}
[2026-04-07 11:22:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d498b38d78f3.98740416","contact_id":"3559","existing_deal_found":true,"existing_contact_id":"3559","existing_title":"معامله سوم 9141438166 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:22:28"}
[2026-04-07 11:22:28] [INFO] DealController.save validated payments {"deal_id":"local_69d498b38d78f3.98740416","contact_id":"3559","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 11:22:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3559","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 11:22:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d498b38d78f3.98740416","contact_didar_id":"3559","title":"معامله سوم 9141438166 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9141438166","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی مسافر","existing_deal":"YES","existing_deal_id":"local_69d498b38d78f3.98740416","existing_deal_status":"Pending","server_time":"2026-04-07 11:22:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:22:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d498b38d78f3.98740416","contact_id":"3559","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9141438166 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-07 11:22:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:22:37] [INFO] Checking activity reminders 
[2026-04-07 11:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:39] [INFO] Checking activity reminders 
[2026-04-07 11:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3249","person_id":"11264"}
[2026-04-07 11:22:47] [INFO] Checking activity reminders 
[2026-04-07 11:22:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:53] [INFO] Checking activity reminders 
[2026-04-07 11:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:22:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-07 11:23:08] [INFO] Checking activity reminders 
[2026-04-07 11:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:08] [INFO] Checking activity reminders 
[2026-04-07 11:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-07 11:23:17] [INFO] Checking activity reminders 
[2026-04-07 11:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:22] [INFO] Checking activity reminders 
[2026-04-07 11:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:34] [INFO] Checking activity reminders 
[2026-04-07 11:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-07 11:23:40] [INFO] Checking activity reminders 
[2026-04-07 11:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:23:47] [INFO] Checking activity reminders 
[2026-04-07 11:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:04] [INFO] Checking activity reminders 
[2026-04-07 11:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:09] [INFO] Checking activity reminders 
[2026-04-07 11:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:10] [INFO] Checking activity reminders 
[2026-04-07 11:24:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:17] [INFO] Checking activity reminders 
[2026-04-07 11:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:22] [INFO] Checking activity reminders 
[2026-04-07 11:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:34] [INFO] Checking activity reminders 
[2026-04-07 11:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:41] [INFO] Checking activity reminders 
[2026-04-07 11:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:47] [INFO] Checking activity reminders 
[2026-04-07 11:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:24:55] [INFO] Checking activity reminders 
[2026-04-07 11:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:11] [INFO] Checking activity reminders 
[2026-04-07 11:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:11] [INFO] Checking activity reminders 
[2026-04-07 11:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-07 11:25:17] [INFO] Checking activity reminders 
[2026-04-07 11:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:26] [INFO] Checking activity reminders 
[2026-04-07 11:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:42] [INFO] Checking activity reminders 
[2026-04-07 11:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:25:47] [INFO] Checking activity reminders 
[2026-04-07 11:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:13] [INFO] Checking activity reminders 
[2026-04-07 11:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:18] [INFO] Checking activity reminders 
[2026-04-07 11:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:19] [INFO] Checking activity reminders 
[2026-04-07 11:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:31] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9218733202","09218733202"]}
[2026-04-07 11:26:31] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9218733202","09218733202"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-07 11:26:31] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9218733202","full_name":"لید جدید"}
[2026-04-07 11:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-07 11:26:31] [INFO] Notification created {"notification_id":"629","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-07 11:26:43] [INFO] Checking activity reminders 
[2026-04-07 11:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:43] [INFO] Checking activity reminders 
[2026-04-07 11:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:26:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2248","person_id":"2332"}
[2026-04-07 11:26:48] [INFO] Checking activity reminders 
[2026-04-07 11:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:12] [INFO] Checking activity reminders 
[2026-04-07 11:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-07 11:27:13] [INFO] Checking activity reminders 
[2026-04-07 11:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:18] [INFO] Checking activity reminders 
[2026-04-07 11:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:27] [INFO] Checking activity reminders 
[2026-04-07 11:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:36] [INFO] Checking activity reminders 
[2026-04-07 11:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:43] [INFO] Checking activity reminders 
[2026-04-07 11:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:43] [INFO] Checking activity reminders 
[2026-04-07 11:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:48] [INFO] Checking activity reminders 
[2026-04-07 11:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:50] [INFO] Checking activity reminders 
[2026-04-07 11:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10753","person_id":"12251"}
[2026-04-07 11:28:01] [INFO] Checking activity reminders 
[2026-04-07 11:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:03] [INFO] Checking activity reminders 
[2026-04-07 11:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:06] [INFO] generateDealTitle result {"contact_id":"16453","person_name":"علی یوسفی","mobile":"9212450238","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9212450238"}
[2026-04-07 11:28:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4635","person_id":"14653"}
[2026-04-07 11:28:14] [INFO] Checking activity reminders 
[2026-04-07 11:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:16] [INFO] Checking activity reminders 
[2026-04-07 11:28:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:18] [INFO] Checking activity reminders 
[2026-04-07 11:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-04-07 11:28:20] [INFO] Lead update received {"contact_id":"16453","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16453"}
[2026-04-07 11:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:25] [INFO] generateDealTitle result {"contact_id":"16453","person_name":"علی یوسفی","mobile":"9212450238","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9212450238"}
[2026-04-07 11:28:32] [INFO] Checking activity reminders 
[2026-04-07 11:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:35] [INFO] Checking activity reminders 
[2026-04-07 11:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16453","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:28:43","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16453","is_new_deal":true}
[2026-04-07 11:28:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:28:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:28:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:28:43] [INFO] getContactPrimaryPhone called {"contact_id":"16453"}
[2026-04-07 11:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:43] [INFO] getContactPrimaryPhone result {"contact_id":"16453","person_found":true,"primary_phone":"9212450238"}
[2026-04-07 11:28:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9212450238"}
[2026-04-07 11:28:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9212450238","contact_id":"16453","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:28:43"}
[2026-04-07 11:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:43] [INFO] generateDealTitle result {"contact_id":"16453","person_name":"علی یوسفی","mobile":"9212450238","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9212450238"}
[2026-04-07 11:28:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16453","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:28:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"16453","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:28:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16453","title":"معامله دوم 9212450238 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9212450238","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی یوسفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:28:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:28:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16453","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9212450238 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:28:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-07 11:28:44] [INFO] Checking activity reminders 
[2026-04-07 11:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:28:48] [INFO] Checking activity reminders 
[2026-04-07 11:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:02] [INFO] Checking activity reminders 
[2026-04-07 11:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:10] [INFO] Checking activity reminders 
[2026-04-07 11:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:14] [INFO] Checking activity reminders 
[2026-04-07 11:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:18] [INFO] Checking activity reminders 
[2026-04-07 11:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:23] [INFO] Checking activity reminders 
[2026-04-07 11:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21261","person_id":"116"}
[2026-04-07 11:29:40] [INFO] Checking activity reminders 
[2026-04-07 11:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:44] [INFO] Checking activity reminders 
[2026-04-07 11:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:48] [INFO] Checking activity reminders 
[2026-04-07 11:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:56] [INFO] Checking activity reminders 
[2026-04-07 11:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:29:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2622","person_id":"17195"}
[2026-04-07 11:30:05] [INFO] Activity save request {"post_data":{"contact_id":"3559","deal_id":"local_69d498b38d78f3.98740416","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در کانال بله نمیتونه405 چک کنه \r\nارسال لینک 404 در بله \r\nمیگه کل سرمایه ملک و باغ شخصی خریده برای نوسان گیری و سرمایه گذاری کرده \r\nپرزنت 6 ماهه انجام شد \r\nخودش اطلاع میده \r\n","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 11:30:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3559","note_was_empty":true}
[2026-04-07 11:30:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"3559","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:05] [INFO] Updating virtual stage {"contact_id":"3559","stage_name":"deal_registered","force":false}
[2026-04-07 11:30:05] [INFO] Virtual stage successfully saved {"contact_id":"3559","stage_name":"deal_registered"}
[2026-04-07 11:30:05] [INFO] Virtual stage updated after activity save {"contact_id":"3559"}
[2026-04-07 11:30:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d498b38d78f3.98740416","stage":"تماس پیگیری","status_change":null}
[2026-04-07 11:30:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4b9852a4ae8.00245035","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4b9852a4ae8.00245035"}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:05] [INFO] Updating virtual stage {"contact_id":"3559","stage_name":"deal_registered","force":false}
[2026-04-07 11:30:05] [INFO] Virtual stage successfully saved {"contact_id":"3559","stage_name":"deal_registered"}
[2026-04-07 11:30:05] [INFO] Virtual stage updated after activity save {"contact_id":"3559"}
[2026-04-07 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3559","person_id":"17965"}
[2026-04-07 11:30:08] [INFO] Checking activity reminders 
[2026-04-07 11:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:11] [INFO] Checking activity reminders 
[2026-04-07 11:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-07 11:30:14] [INFO] Checking activity reminders 
[2026-04-07 11:30:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:18] [INFO] Checking activity reminders 
[2026-04-07 11:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:26] [INFO] Checking activity reminders 
[2026-04-07 11:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:34] [INFO] Checking activity reminders 
[2026-04-07 11:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:40] [INFO] Checking activity reminders 
[2026-04-07 11:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:42] [INFO] Checking activity reminders 
[2026-04-07 11:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:45] [INFO] Checking activity reminders 
[2026-04-07 11:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:30:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-04-07 11:30:48] [INFO] Checking activity reminders 
[2026-04-07 11:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:07] [INFO] Checking activity reminders 
[2026-04-07 11:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:13] [INFO] generateDealTitle result {"contact_id":"12016","person_name":"خانم ببر افکن","mobile":"9196079424","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9196079424"}
[2026-04-07 11:31:15] [INFO] Checking activity reminders 
[2026-04-07 11:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:17] [INFO] Checking activity reminders 
[2026-04-07 11:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:18] [INFO] Checking activity reminders 
[2026-04-07 11:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-07 11:31:29] [INFO] Checking activity reminders 
[2026-04-07 11:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12016","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:31:30","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12016","is_new_deal":true}
[2026-04-07 11:31:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:31:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:31:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:31:30] [INFO] getContactPrimaryPhone called {"contact_id":"12016"}
[2026-04-07 11:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:30] [INFO] getContactPrimaryPhone result {"contact_id":"12016","person_found":true,"primary_phone":"9196079424"}
[2026-04-07 11:31:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9196079424"}
[2026-04-07 11:31:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9196079424","contact_id":"12016","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:31:30"}
[2026-04-07 11:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:30] [INFO] generateDealTitle result {"contact_id":"12016","person_name":"خانم ببر افکن","mobile":"9196079424","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9196079424"}
[2026-04-07 11:31:30] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12016","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:31:30] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"12016","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:31:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12016","title":"معامله دوم 9196079424 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9196079424","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانم ببر افکن","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:31:30","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:30] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:31:30] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12016","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9196079424 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:31:30","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:31:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 11:31:32] [INFO] Checking activity reminders 
[2026-04-07 11:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15888","person_id":"7345"}
[2026-04-07 11:31:45] [INFO] Checking activity reminders 
[2026-04-07 11:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:48] [INFO] Checking activity reminders 
[2026-04-07 11:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:31:48] [INFO] Checking activity reminders 
[2026-04-07 11:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:31:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:31:59] [INFO] Checking activity reminders 
[2026-04-07 11:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:04] [INFO] Checking activity reminders 
[2026-04-07 11:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:05] [INFO] Lead update received {"contact_id":"11858","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:32:05] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11858"}
[2026-04-07 11:32:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:32:15] [INFO] Checking activity reminders 
[2026-04-07 11:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:16] [INFO] Checking activity reminders 
[2026-04-07 11:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:18] [INFO] Checking activity reminders 
[2026-04-07 11:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5057","person_id":"7656"}
[2026-04-07 11:32:30] [INFO] Checking activity reminders 
[2026-04-07 11:32:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:44] [INFO] Checking activity reminders 
[2026-04-07 11:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:48] [INFO] Checking activity reminders 
[2026-04-07 11:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:32:58] [INFO] Checking activity reminders 
[2026-04-07 11:32:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:32:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:00] [INFO] Checking activity reminders 
[2026-04-07 11:33:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:18] [INFO] Checking activity reminders 
[2026-04-07 11:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:30] [INFO] Checking activity reminders 
[2026-04-07 11:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:38] [INFO] Checking activity reminders 
[2026-04-07 11:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:41] [INFO] Checking activity reminders 
[2026-04-07 11:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:33:48] [INFO] Checking activity reminders 
[2026-04-07 11:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:33:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:33:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:33:51] [INFO] generateDealTitle result {"contact_id":"11858","person_name":"اقای حسینی","mobile":"9194700639","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9194700639"}
[2026-04-07 11:33:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:33:52","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 11:33:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:33:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3592","is_new_deal":false}
[2026-04-07 11:33:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 11:33:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 11:33:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 11:33:52] [INFO] getContactPrimaryPhone called {"contact_id":"3592"}
[2026-04-07 11:33:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:33:52] [INFO] getContactPrimaryPhone result {"contact_id":"3592","person_found":true,"primary_phone":"9132100803"}
[2026-04-07 11:33:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132100803"}
[2026-04-07 11:33:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132100803","contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:33:52"}
[2026-04-07 11:33:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","existing_deal_found":true,"existing_contact_id":"3592","existing_title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:33:52"}
[2026-04-07 11:33:52] [INFO] DealController.save validated payments {"deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 11:33:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3592","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 11:33:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d282b0713d2.41229944","contact_didar_id":"3592","title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9132100803","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":29000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین طاووسی","existing_deal":"YES","existing_deal_id":"local_695d282b0713d2.41229944","existing_deal_status":"Pending","server_time":"2026-04-07 11:33:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 11:33:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:33:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d282b0713d2.41229944","contact_id":"3592","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132100803 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":29000000,"server_time":"2026-04-07 11:33:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:33:58] [INFO] Checking activity reminders 
[2026-04-07 11:33:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:33:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:00] [INFO] Checking activity reminders 
[2026-04-07 11:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6188","person_id":"2287"}
[2026-04-07 11:34:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11858","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:34:07","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:34:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:34:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11858","is_new_deal":true}
[2026-04-07 11:34:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:34:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:34:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:34:07] [INFO] getContactPrimaryPhone called {"contact_id":"11858"}
[2026-04-07 11:34:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:34:07] [INFO] getContactPrimaryPhone result {"contact_id":"11858","person_found":true,"primary_phone":"9194700639"}
[2026-04-07 11:34:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9194700639"}
[2026-04-07 11:34:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9194700639","contact_id":"11858","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:34:07"}
[2026-04-07 11:34:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:34:07] [INFO] generateDealTitle result {"contact_id":"11858","person_name":"اقای حسینی","mobile":"9194700639","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9194700639"}
[2026-04-07 11:34:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11858","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:34:07] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"11858","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:34:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11858","title":"معامله دوم 9194700639 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9194700639","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:34:07","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:34:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:34:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:34:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11858","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9194700639 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:34:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:34:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-07 11:34:09] [INFO] Checking activity reminders 
[2026-04-07 11:34:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:15] [INFO] Activity save request {"post_data":{"contact_id":"3592","deal_id":"local_695d282b0713d2.41229944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا اخر ماه تسویه ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 11:34:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3592","note_was_empty":true}
[2026-04-07 11:34:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"3592","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:15] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-04-07 11:34:15] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-04-07 11:34:15] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-04-07 11:34:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695d282b0713d2.41229944","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-07 11:34:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ba7fb54419.34102663","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ba7fb54419.34102663"}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:15] [INFO] Updating virtual stage {"contact_id":"3592","stage_name":"deal_registered","force":false}
[2026-04-07 11:34:15] [INFO] Virtual stage successfully saved {"contact_id":"3592","stage_name":"deal_registered"}
[2026-04-07 11:34:15] [INFO] Virtual stage updated after activity save {"contact_id":"3592"}
[2026-04-07 11:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3592","person_id":"16652"}
[2026-04-07 11:34:19] [INFO] Checking activity reminders 
[2026-04-07 11:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:21] [INFO] Checking activity reminders 
[2026-04-07 11:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 11:34:27] [INFO] Checking activity reminders 
[2026-04-07 11:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:27] [INFO] Checking activity reminders 
[2026-04-07 11:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8883","person_id":"729"}
[2026-04-07 11:34:41] [INFO] Checking activity reminders 
[2026-04-07 11:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:49] [INFO] Checking activity reminders 
[2026-04-07 11:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:51] [INFO] Checking activity reminders 
[2026-04-07 11:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:51] [INFO] Checking activity reminders 
[2026-04-07 11:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:04] [INFO] Checking activity reminders 
[2026-04-07 11:35:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:08] [INFO] Lead update received {"contact_id":"2744","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2744"}
[2026-04-07 11:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:12] [INFO] generateDealTitle result {"contact_id":"2744","person_name":"رضا کمال فر","mobile":"9193101285","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9193101285"}
[2026-04-07 11:35:16] [INFO] Checking activity reminders 
[2026-04-07 11:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:19] [INFO] Checking activity reminders 
[2026-04-07 11:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:22] [INFO] Checking activity reminders 
[2026-04-07 11:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:27] [INFO] Checking activity reminders 
[2026-04-07 11:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2744","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:35:28","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:35:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2744","is_new_deal":true}
[2026-04-07 11:35:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:35:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:35:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:35:28] [INFO] getContactPrimaryPhone called {"contact_id":"2744"}
[2026-04-07 11:35:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:28] [INFO] getContactPrimaryPhone result {"contact_id":"2744","person_found":true,"primary_phone":"9193101285"}
[2026-04-07 11:35:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193101285"}
[2026-04-07 11:35:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193101285","contact_id":"2744","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:35:28"}
[2026-04-07 11:35:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:28] [INFO] generateDealTitle result {"contact_id":"2744","person_name":"رضا کمال فر","mobile":"9193101285","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9193101285"}
[2026-04-07 11:35:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2744","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:35:28] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2744","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:35:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2744","title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193101285","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رضا کمال فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:35:28","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:35:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:35:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2744","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:35:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-07 11:35:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-07 11:35:34] [INFO] Checking activity reminders 
[2026-04-07 11:35:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:48] [INFO] Checking activity reminders 
[2026-04-07 11:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:49] [INFO] Checking activity reminders 
[2026-04-07 11:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:35:49] [INFO] Checking activity reminders 
[2026-04-07 11:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:04] [INFO] Checking activity reminders 
[2026-04-07 11:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:06] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9192864174","09192864174"]}
[2026-04-07 11:36:06] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9192864174","09192864174"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-07 11:36:06] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9192864174","full_name":"لید جدید"}
[2026-04-07 11:36:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-07 11:36:06] [INFO] Notification created {"notification_id":"630","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-07 11:36:19] [INFO] Checking activity reminders 
[2026-04-07 11:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:19] [INFO] Checking activity reminders 
[2026-04-07 11:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:21] [INFO] Checking activity reminders 
[2026-04-07 11:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:32] [INFO] Checking activity reminders 
[2026-04-07 11:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:34] [INFO] Checking activity reminders 
[2026-04-07 11:36:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7749","person_id":"11974"}
[2026-04-07 11:36:46] [INFO] Checking activity reminders 
[2026-04-07 11:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:49] [INFO] Checking activity reminders 
[2026-04-07 11:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:36:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16959","person_id":"19665"}
[2026-04-07 11:37:02] [INFO] Checking activity reminders 
[2026-04-07 11:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:04] [INFO] Checking activity reminders 
[2026-04-07 11:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:06] [INFO] Checking activity reminders 
[2026-04-07 11:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:08] [INFO] Checking activity reminders 
[2026-04-07 11:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:19] [INFO] Checking activity reminders 
[2026-04-07 11:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:29] [INFO] Checking activity reminders 
[2026-04-07 11:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:37:36] [INFO] Checking activity reminders 
[2026-04-07 11:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:38] [INFO] Checking activity reminders 
[2026-04-07 11:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:48] [INFO] Checking activity reminders 
[2026-04-07 11:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:49] [INFO] Checking activity reminders 
[2026-04-07 11:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:37:59] [INFO] Checking activity reminders 
[2026-04-07 11:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:01] [INFO] Checking activity reminders 
[2026-04-07 11:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"693","person_id":"8700"}
[2026-04-07 11:38:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:06] [INFO] Checking activity reminders 
[2026-04-07 11:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:15] [INFO] Checking activity reminders 
[2026-04-07 11:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:19] [INFO] Checking activity reminders 
[2026-04-07 11:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:23] [INFO] Lead update received {"contact_id":"21238","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21238"}
[2026-04-07 11:38:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:28] [INFO] Checking activity reminders 
[2026-04-07 11:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:29] [INFO] Checking activity reminders 
[2026-04-07 11:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:38:31] [INFO] generateDealTitle result {"contact_id":"21238","person_name":"موسی پور","mobile":"9190934943","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9190934943"}
[2026-04-07 11:38:37] [INFO] Checking activity reminders 
[2026-04-07 11:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:49] [INFO] Checking activity reminders 
[2026-04-07 11:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:38:49] [INFO] Checking activity reminders 
[2026-04-07 11:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:00] [INFO] Checking activity reminders 
[2026-04-07 11:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:02] [INFO] Checking activity reminders 
[2026-04-07 11:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21238","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:39:05","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:39:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21238","is_new_deal":true}
[2026-04-07 11:39:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:39:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:39:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:39:05] [INFO] getContactPrimaryPhone called {"contact_id":"21238"}
[2026-04-07 11:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:39:05] [INFO] getContactPrimaryPhone result {"contact_id":"21238","person_found":true,"primary_phone":"9190934943"}
[2026-04-07 11:39:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190934943"}
[2026-04-07 11:39:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190934943","contact_id":"21238","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:39:05"}
[2026-04-07 11:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:39:05] [INFO] generateDealTitle result {"contact_id":"21238","person_name":"موسی پور","mobile":"9190934943","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9190934943"}
[2026-04-07 11:39:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21238","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:39:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21238","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:39:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21238","title":"معامله دوم 9190934943 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9190934943","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"موسی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:39:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:39:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:39:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21238","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9190934943 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:39:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-07 11:39:07] [INFO] Checking activity reminders 
[2026-04-07 11:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-07 11:39:19] [INFO] Checking activity reminders 
[2026-04-07 11:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:21] [INFO] Checking activity reminders 
[2026-04-07 11:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:30] [INFO] Checking activity reminders 
[2026-04-07 11:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:36] [INFO] Checking activity reminders 
[2026-04-07 11:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:37] [INFO] Checking activity reminders 
[2026-04-07 11:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9004","person_id":"10605"}
[2026-04-07 11:39:49] [INFO] Checking activity reminders 
[2026-04-07 11:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:39:52] [INFO] Checking activity reminders 
[2026-04-07 11:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:00] [INFO] Checking activity reminders 
[2026-04-07 11:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:07] [INFO] Lead update received {"contact_id":"15853","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:40:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15853"}
[2026-04-07 11:40:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:09] [INFO] Checking activity reminders 
[2026-04-07 11:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:09] [INFO] Checking activity reminders 
[2026-04-07 11:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:11] [INFO] generateDealTitle result {"contact_id":"15853","person_name":"حسین شفیق","mobile":"9190785339","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9190785339"}
[2026-04-07 11:40:19] [INFO] Checking activity reminders 
[2026-04-07 11:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:27] [INFO] Checking activity reminders 
[2026-04-07 11:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:30] [INFO] Checking activity reminders 
[2026-04-07 11:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15853","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:40:38","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15853","is_new_deal":true}
[2026-04-07 11:40:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:40:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:40:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:40:38] [INFO] getContactPrimaryPhone called {"contact_id":"15853"}
[2026-04-07 11:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:38] [INFO] getContactPrimaryPhone result {"contact_id":"15853","person_found":true,"primary_phone":"9190785339"}
[2026-04-07 11:40:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190785339"}
[2026-04-07 11:40:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190785339","contact_id":"15853","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:40:38"}
[2026-04-07 11:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:38] [INFO] generateDealTitle result {"contact_id":"15853","person_name":"حسین شفیق","mobile":"9190785339","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9190785339"}
[2026-04-07 11:40:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15853","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:40:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15853","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:40:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15853","title":"معامله دوم 9190785339 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9190785339","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حسین شفیق","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:40:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:40:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15853","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9190785339 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:40:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:40:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-07 11:40:39] [INFO] Checking activity reminders 
[2026-04-07 11:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:49] [INFO] Checking activity reminders 
[2026-04-07 11:40:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:53] [INFO] Checking activity reminders 
[2026-04-07 11:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:56] [INFO] Checking activity reminders 
[2026-04-07 11:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:40:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1267","person_id":"13828"}
[2026-04-07 11:41:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:09] [INFO] Checking activity reminders 
[2026-04-07 11:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:16] [INFO] Checking activity reminders 
[2026-04-07 11:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:19] [INFO] Lead update received {"contact_id":"9593","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:19] [INFO] Checking activity reminders 
[2026-04-07 11:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:19] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9593"}
[2026-04-07 11:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:26] [INFO] Checking activity reminders 
[2026-04-07 11:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:27] [INFO] generateDealTitle result {"contact_id":"9593","person_name":"حیدری حیدری","mobile":"9188348055","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9188348055"}
[2026-04-07 11:41:27] [INFO] Checking activity reminders 
[2026-04-07 11:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:28] [INFO] Checking activity reminders 
[2026-04-07 11:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9593","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:41:44","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9593","is_new_deal":true}
[2026-04-07 11:41:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:41:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:41:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:41:44] [INFO] getContactPrimaryPhone called {"contact_id":"9593"}
[2026-04-07 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:44] [INFO] getContactPrimaryPhone result {"contact_id":"9593","person_found":true,"primary_phone":"9188348055"}
[2026-04-07 11:41:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9188348055"}
[2026-04-07 11:41:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9188348055","contact_id":"9593","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:41:44"}
[2026-04-07 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:44] [INFO] generateDealTitle result {"contact_id":"9593","person_name":"حیدری حیدری","mobile":"9188348055","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9188348055"}
[2026-04-07 11:41:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9593","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:41:44] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"9593","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:41:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9593","title":"معامله دوم 9188348055 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9188348055","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"حیدری حیدری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:41:44","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:41:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9593","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9188348055 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:41:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-07 11:41:49] [INFO] Checking activity reminders 
[2026-04-07 11:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:56] [INFO] Checking activity reminders 
[2026-04-07 11:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:41:58] [INFO] Checking activity reminders 
[2026-04-07 11:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:04] [INFO] Checking activity reminders 
[2026-04-07 11:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:05] [INFO] Checking activity reminders 
[2026-04-07 11:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-07 11:42:19] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9188020166","09188020166"]}
[2026-04-07 11:42:19] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9188020166","09188020166"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-07 11:42:19] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9188020166","full_name":"لید جدید"}
[2026-04-07 11:42:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-07 11:42:19] [INFO] Notification created {"notification_id":"631","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-07 11:42:20] [INFO] Checking activity reminders 
[2026-04-07 11:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:27] [INFO] Checking activity reminders 
[2026-04-07 11:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:30] [INFO] Checking activity reminders 
[2026-04-07 11:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:34] [INFO] Checking activity reminders 
[2026-04-07 11:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:37] [INFO] Checking activity reminders 
[2026-04-07 11:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:47] [INFO] Checking activity reminders 
[2026-04-07 11:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:50] [INFO] Checking activity reminders 
[2026-04-07 11:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:42:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6999","person_id":"726"}
[2026-04-07 11:43:00] [INFO] Checking activity reminders 
[2026-04-07 11:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:07] [INFO] Checking activity reminders 
[2026-04-07 11:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:09] [INFO] Checking activity reminders 
[2026-04-07 11:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:20] [INFO] Checking activity reminders 
[2026-04-07 11:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:33] [INFO] Checking activity reminders 
[2026-04-07 11:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:34] [INFO] Checking activity reminders 
[2026-04-07 11:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:37] [INFO] Checking activity reminders 
[2026-04-07 11:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:45] [INFO] Checking activity reminders 
[2026-04-07 11:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:50] [INFO] Checking activity reminders 
[2026-04-07 11:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:43:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-07 11:44:02] [INFO] Checking activity reminders 
[2026-04-07 11:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:04] [INFO] Checking activity reminders 
[2026-04-07 11:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:08] [INFO] Checking activity reminders 
[2026-04-07 11:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:10] [INFO] Checking activity reminders 
[2026-04-07 11:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:20] [INFO] Checking activity reminders 
[2026-04-07 11:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:21] [INFO] Checking activity reminders 
[2026-04-07 11:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:29] [INFO] Checking activity reminders 
[2026-04-07 11:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:34] [INFO] Checking activity reminders 
[2026-04-07 11:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:38] [INFO] Checking activity reminders 
[2026-04-07 11:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:40] [INFO] Checking activity reminders 
[2026-04-07 11:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:50] [INFO] Checking activity reminders 
[2026-04-07 11:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:44:56] [INFO] Checking activity reminders 
[2026-04-07 11:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1891","person_id":"13743"}
[2026-04-07 11:45:04] [INFO] Checking activity reminders 
[2026-04-07 11:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:10] [INFO] Checking activity reminders 
[2026-04-07 11:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:16] [INFO] Checking activity reminders 
[2026-04-07 11:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:20] [INFO] Checking activity reminders 
[2026-04-07 11:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:29] [INFO] Checking activity reminders 
[2026-04-07 11:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:34] [INFO] Checking activity reminders 
[2026-04-07 11:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:40] [INFO] Lead update received {"contact_id":"983","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:40] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"983"}
[2026-04-07 11:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:45:50] [INFO] generateDealTitle result {"contact_id":"983","person_name":"جواد رفیعان","mobile":"9179209369","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9179209369"}
[2026-04-07 11:45:50] [INFO] Checking activity reminders 
[2026-04-07 11:45:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:45:53] [INFO] Checking activity reminders 
[2026-04-07 11:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:00] [INFO] Checking activity reminders 
[2026-04-07 11:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:05] [INFO] Checking activity reminders 
[2026-04-07 11:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"983","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:46:07","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:46:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"983","is_new_deal":true}
[2026-04-07 11:46:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:46:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:46:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:46:07] [INFO] getContactPrimaryPhone called {"contact_id":"983"}
[2026-04-07 11:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:46:07] [INFO] getContactPrimaryPhone result {"contact_id":"983","person_found":true,"primary_phone":"9179209369"}
[2026-04-07 11:46:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9179209369"}
[2026-04-07 11:46:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9179209369","contact_id":"983","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:46:07"}
[2026-04-07 11:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:46:07] [INFO] generateDealTitle result {"contact_id":"983","person_name":"جواد رفیعان","mobile":"9179209369","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9179209369"}
[2026-04-07 11:46:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"983","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:46:07] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"983","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:46:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"983","title":"معامله دوم 9179209369 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9179209369","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"جواد رفیعان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:46:07","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:46:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:46:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"983","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9179209369 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:46:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:46:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 11:46:13] [INFO] Checking activity reminders 
[2026-04-07 11:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"791","person_id":"6987"}
[2026-04-07 11:46:20] [INFO] Checking activity reminders 
[2026-04-07 11:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:36] [INFO] Checking activity reminders 
[2026-04-07 11:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:39] [INFO] Checking activity reminders 
[2026-04-07 11:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:48] [INFO] Checking activity reminders 
[2026-04-07 11:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:50] [INFO] Checking activity reminders 
[2026-04-07 11:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:51] [INFO] Checking activity reminders 
[2026-04-07 11:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:46:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2057","person_id":"7038"}
[2026-04-07 11:46:58] [INFO] Checking activity reminders 
[2026-04-07 11:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:03] [INFO] Checking activity reminders 
[2026-04-07 11:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:06] [INFO] Checking activity reminders 
[2026-04-07 11:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:07] [INFO] Checking activity reminders 
[2026-04-07 11:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:14] [INFO] Checking activity reminders 
[2026-04-07 11:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:20] [INFO] Checking activity reminders 
[2026-04-07 11:47:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:24] [INFO] Checking activity reminders 
[2026-04-07 11:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:25] [INFO] Checking activity reminders 
[2026-04-07 11:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:47:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-07 11:47:36] [INFO] Checking activity reminders 
[2026-04-07 11:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:45] [INFO] Checking activity reminders 
[2026-04-07 11:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7737","person_id":"13998"}
[2026-04-07 11:47:50] [INFO] Checking activity reminders 
[2026-04-07 11:47:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:47:53] [INFO] Lead update received {"contact_id":"820","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:47:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:47:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:47:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:47:53] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"820"}
[2026-04-07 11:47:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:47:55] [INFO] Checking activity reminders 
[2026-04-07 11:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:00] [INFO] Checking activity reminders 
[2026-04-07 11:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-07 11:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:04] [INFO] generateDealTitle result {"contact_id":"820","person_name":"رزمجویی رزمجویی","mobile":"9174414232","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9174414232"}
[2026-04-07 11:48:06] [INFO] Checking activity reminders 
[2026-04-07 11:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:20] [INFO] Checking activity reminders 
[2026-04-07 11:48:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:20] [INFO] Checking activity reminders 
[2026-04-07 11:48:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"820","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:48:22","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"820","is_new_deal":true}
[2026-04-07 11:48:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:48:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:48:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:48:22] [INFO] getContactPrimaryPhone called {"contact_id":"820"}
[2026-04-07 11:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:22] [INFO] getContactPrimaryPhone result {"contact_id":"820","person_found":true,"primary_phone":"9174414232"}
[2026-04-07 11:48:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174414232"}
[2026-04-07 11:48:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174414232","contact_id":"820","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:48:22"}
[2026-04-07 11:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:22] [INFO] generateDealTitle result {"contact_id":"820","person_name":"رزمجویی رزمجویی","mobile":"9174414232","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9174414232"}
[2026-04-07 11:48:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"820","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:48:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"820","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:48:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"820","title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9174414232","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رزمجویی رزمجویی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:48:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:48:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"820","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:48:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:48:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 11:48:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2029","person_id":"18995"}
[2026-04-07 11:48:33] [INFO] Checking activity reminders 
[2026-04-07 11:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:37] [INFO] Checking activity reminders 
[2026-04-07 11:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:41] [INFO] Checking activity reminders 
[2026-04-07 11:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:41] [INFO] Checking activity reminders 
[2026-04-07 11:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-07 11:48:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7586","person_id":"3023"}
[2026-04-07 11:48:50] [INFO] Checking activity reminders 
[2026-04-07 11:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:55] [INFO] Checking activity reminders 
[2026-04-07 11:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:48:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7737","person_id":"13998"}
[2026-04-07 11:49:05] [INFO] Checking activity reminders 
[2026-04-07 11:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:07] [INFO] Checking activity reminders 
[2026-04-07 11:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17294","person_id":"14009"}
[2026-04-07 11:49:11] [INFO] Checking activity reminders 
[2026-04-07 11:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:20] [INFO] Checking activity reminders 
[2026-04-07 11:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:24] [INFO] Checking activity reminders 
[2026-04-07 11:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:27] [INFO] Lead update received {"contact_id":"4962","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:49:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:27] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4962"}
[2026-04-07 11:49:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:31] [INFO] generateDealTitle result {"contact_id":"4962","person_name":"سیامکخسروی سیامکخسروی","mobile":"9171025530","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9171025530"}
[2026-04-07 11:49:37] [INFO] Checking activity reminders 
[2026-04-07 11:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:41] [INFO] Checking activity reminders 
[2026-04-07 11:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4962","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:49:47","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4962","is_new_deal":true}
[2026-04-07 11:49:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:49:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:49:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:49:47] [INFO] getContactPrimaryPhone called {"contact_id":"4962"}
[2026-04-07 11:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:47] [INFO] getContactPrimaryPhone result {"contact_id":"4962","person_found":true,"primary_phone":"9171025530"}
[2026-04-07 11:49:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171025530"}
[2026-04-07 11:49:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171025530","contact_id":"4962","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:49:47"}
[2026-04-07 11:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:47] [INFO] generateDealTitle result {"contact_id":"4962","person_name":"سیامکخسروی سیامکخسروی","mobile":"9171025530","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9171025530"}
[2026-04-07 11:49:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4962","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:49:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4962","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:49:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4962","title":"معامله دوم 9171025530 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9171025530","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سیامکخسروی سیامکخسروی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:49:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:49:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4962","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9171025530 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:49:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:49:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 11:49:50] [INFO] Checking activity reminders 
[2026-04-07 11:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:54] [INFO] Checking activity reminders 
[2026-04-07 11:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-07 11:50:04] [INFO] Checking activity reminders 
[2026-04-07 11:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:07] [INFO] Checking activity reminders 
[2026-04-07 11:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:09] [INFO] Checking activity reminders 
[2026-04-07 11:50:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:18] [INFO] Lead update received {"contact_id":"20071","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 11:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20071"}
[2026-04-07 11:50:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:20] [INFO] Checking activity reminders 
[2026-04-07 11:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:50:23] [INFO] generateDealTitle result {"contact_id":"20071","person_name":"فرزانه کناری","mobile":"9163314032","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9163314032"}
[2026-04-07 11:50:28] [INFO] Checking activity reminders 
[2026-04-07 11:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:34] [INFO] Checking activity reminders 
[2026-04-07 11:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:37] [INFO] Checking activity reminders 
[2026-04-07 11:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:50:51] [INFO] Checking activity reminders 
[2026-04-07 11:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:04] [INFO] Checking activity reminders 
[2026-04-07 11:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:08] [INFO] Checking activity reminders 
[2026-04-07 11:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:21] [INFO] Checking activity reminders 
[2026-04-07 11:51:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:33] [INFO] Checking activity reminders 
[2026-04-07 11:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:35] [INFO] Checking activity reminders 
[2026-04-07 11:51:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:38] [INFO] Checking activity reminders 
[2026-04-07 11:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:39] [INFO] Checking activity reminders 
[2026-04-07 11:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5166","person_id":"10337"}
[2026-04-07 11:51:51] [INFO] Checking activity reminders 
[2026-04-07 11:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:05] [INFO] Checking activity reminders 
[2026-04-07 11:52:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:08] [INFO] Checking activity reminders 
[2026-04-07 11:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:13] [INFO] Checking activity reminders 
[2026-04-07 11:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:21] [INFO] Checking activity reminders 
[2026-04-07 11:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:26] [INFO] Checking activity reminders 
[2026-04-07 11:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:35] [INFO] Checking activity reminders 
[2026-04-07 11:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:40] [INFO] Checking activity reminders 
[2026-04-07 11:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:45] [INFO] Checking activity reminders 
[2026-04-07 11:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:52:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1287","person_id":"2912"}
[2026-04-07 11:52:51] [INFO] Checking activity reminders 
[2026-04-07 11:52:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:52:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:05] [INFO] Checking activity reminders 
[2026-04-07 11:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:11] [INFO] Checking activity reminders 
[2026-04-07 11:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:16] [INFO] Checking activity reminders 
[2026-04-07 11:53:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:21] [INFO] Checking activity reminders 
[2026-04-07 11:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:34] [INFO] Checking activity reminders 
[2026-04-07 11:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:36] [INFO] Checking activity reminders 
[2026-04-07 11:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:41] [INFO] Checking activity reminders 
[2026-04-07 11:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:45] [INFO] Checking activity reminders 
[2026-04-07 11:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:53:45] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20071","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:53:45","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 11:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:53:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20071","is_new_deal":true}
[2026-04-07 11:53:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 11:53:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:53:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 11:53:45] [INFO] getContactPrimaryPhone called {"contact_id":"20071"}
[2026-04-07 11:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:53:45] [INFO] getContactPrimaryPhone result {"contact_id":"20071","person_found":true,"primary_phone":"9163314032"}
[2026-04-07 11:53:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163314032"}
[2026-04-07 11:53:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163314032","contact_id":"20071","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 11:53:45"}
[2026-04-07 11:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:53:45] [INFO] generateDealTitle result {"contact_id":"20071","person_name":"فرزانه کناری","mobile":"9163314032","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9163314032"}
[2026-04-07 11:53:45] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20071","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 11:53:45] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20071","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 11:53:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20071","title":"معامله دوم 9163314032 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9163314032","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرزانه کناری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 11:53:45","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 11:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:53:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 11:53:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20071","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9163314032 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 11:53:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:53:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 11:53:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11424","person_id":"13754"}
[2026-04-07 11:53:51] [INFO] Checking activity reminders 
[2026-04-07 11:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:04] [INFO] Checking activity reminders 
[2026-04-07 11:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:10] [INFO] Checking activity reminders 
[2026-04-07 11:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:15] [INFO] Checking activity reminders 
[2026-04-07 11:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:20] [INFO] Checking activity reminders 
[2026-04-07 11:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:21] [INFO] Checking activity reminders 
[2026-04-07 11:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:26] [INFO] Checking activity reminders 
[2026-04-07 11:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:41] [INFO] Checking activity reminders 
[2026-04-07 11:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:45] [INFO] Checking activity reminders 
[2026-04-07 11:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:54:51] [INFO] Checking activity reminders 
[2026-04-07 11:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:11] [INFO] Checking activity reminders 
[2026-04-07 11:55:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:15] [INFO] Checking activity reminders 
[2026-04-07 11:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:21] [INFO] Checking activity reminders 
[2026-04-07 11:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:42] [INFO] Checking activity reminders 
[2026-04-07 11:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:45] [INFO] Checking activity reminders 
[2026-04-07 11:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:51] [INFO] Checking activity reminders 
[2026-04-07 11:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:55:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 11:55:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 11:55:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 11:56:16] [INFO] Checking activity reminders 
[2026-04-07 11:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:56:21] [INFO] Checking activity reminders 
[2026-04-07 11:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:56:46] [INFO] Checking activity reminders 
[2026-04-07 11:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:56:51] [INFO] Checking activity reminders 
[2026-04-07 11:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:57:17] [INFO] Checking activity reminders 
[2026-04-07 11:57:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:57:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:57:21] [INFO] Checking activity reminders 
[2026-04-07 11:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:57:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 11:57:46","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 11:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 11:57:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"127","is_new_deal":false}
[2026-04-07 11:57:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-07 11:57:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 11:57:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 11:57:46] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-07 11:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 11:57:46] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-07 11:57:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-07 11:57:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:57:46"}
[2026-04-07 11:57:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","existing_deal_found":true,"existing_contact_id":"127","existing_title":"معامله دوم 9141490413 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 11:57:46"}
[2026-04-07 11:57:46] [INFO] DealController.save validated payments {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-07 11:57:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 11:57:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49998c56fe4.78942941","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"YES","existing_deal_id":"local_69d49998c56fe4.78942941","existing_deal_status":"Pending","server_time":"2026-04-07 11:57:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 11:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 11:57:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-07 11:57:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 11:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 11:57:47] [INFO] Checking activity reminders 
[2026-04-07 11:57:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:57:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:58:17] [INFO] Checking activity reminders 
[2026-04-07 11:58:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:58:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 11:58:47] [INFO] Checking activity reminders 
[2026-04-07 11:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 11:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:00:24] [INFO] Checking activity reminders 
[2026-04-07 12:00:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:00:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:03:57] [INFO] Checking activity reminders 
[2026-04-07 12:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:04:01] [INFO] Activity save request {"post_data":{"contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پالایشگاه \r\nقشم \r\nاز کانال 404 خیلی رضایت داشت \r\nبرای نوسان گیری و سرمایه گذاری طلا \r\nنیازی به پشتیبانی نداره مطالب کانال شفافه \r\nارسال شبا تجارت در پیامک ","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:04:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"127","note_was_empty":true}
[2026-04-07 12:04:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"127","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:01] [INFO] Updating virtual stage {"contact_id":"127","stage_name":"deal_registered","force":false}
[2026-04-07 12:04:01] [INFO] Virtual stage successfully saved {"contact_id":"127","stage_name":"deal_registered"}
[2026-04-07 12:04:01] [INFO] Virtual stage updated after activity save {"contact_id":"127"}
[2026-04-07 12:04:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d49998c56fe4.78942941","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 12:04:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4c17981cef9.00659818","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4c17981cef9.00659818"}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:01] [INFO] Updating virtual stage {"contact_id":"127","stage_name":"deal_registered","force":false}
[2026-04-07 12:04:01] [INFO] Virtual stage successfully saved {"contact_id":"127","stage_name":"deal_registered"}
[2026-04-07 12:04:01] [INFO] Virtual stage updated after activity save {"contact_id":"127"}
[2026-04-07 12:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:04:12] [INFO] Checking activity reminders 
[2026-04-07 12:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:04:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:04:44] [INFO] Checking activity reminders 
[2026-04-07 12:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:05:14] [INFO] Checking activity reminders 
[2026-04-07 12:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:05:17] [INFO] Checking activity reminders 
[2026-04-07 12:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:05:47] [INFO] Checking activity reminders 
[2026-04-07 12:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:06:17] [INFO] Checking activity reminders 
[2026-04-07 12:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:06:48] [INFO] Checking activity reminders 
[2026-04-07 12:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:07:18] [INFO] Checking activity reminders 
[2026-04-07 12:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:07:49] [INFO] Checking activity reminders 
[2026-04-07 12:07:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:07:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:08:19] [INFO] Checking activity reminders 
[2026-04-07 12:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:08:49] [INFO] Checking activity reminders 
[2026-04-07 12:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:09:19] [INFO] Checking activity reminders 
[2026-04-07 12:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:09:49] [INFO] Checking activity reminders 
[2026-04-07 12:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:10:19] [INFO] Checking activity reminders 
[2026-04-07 12:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:10:49] [INFO] Checking activity reminders 
[2026-04-07 12:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:11:20] [INFO] Checking activity reminders 
[2026-04-07 12:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:11:50] [INFO] Checking activity reminders 
[2026-04-07 12:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:12:20] [INFO] Checking activity reminders 
[2026-04-07 12:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:12:50] [INFO] Checking activity reminders 
[2026-04-07 12:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:13:20] [INFO] Checking activity reminders 
[2026-04-07 12:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:13:50] [INFO] Checking activity reminders 
[2026-04-07 12:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:14:20] [INFO] Checking activity reminders 
[2026-04-07 12:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:14:50] [INFO] Checking activity reminders 
[2026-04-07 12:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:15:21] [INFO] Checking activity reminders 
[2026-04-07 12:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:15:51] [INFO] Checking activity reminders 
[2026-04-07 12:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:16:21] [INFO] Checking activity reminders 
[2026-04-07 12:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:16:51] [INFO] Checking activity reminders 
[2026-04-07 12:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:17:21] [INFO] Checking activity reminders 
[2026-04-07 12:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:17:51] [INFO] Checking activity reminders 
[2026-04-07 12:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:18:21] [INFO] Checking activity reminders 
[2026-04-07 12:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:18:52] [INFO] Checking activity reminders 
[2026-04-07 12:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:19:22] [INFO] Checking activity reminders 
[2026-04-07 12:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:19:52] [INFO] Checking activity reminders 
[2026-04-07 12:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:19:53] [INFO] Checking activity reminders 
[2026-04-07 12:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:20:22] [INFO] Checking activity reminders 
[2026-04-07 12:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:20:23] [INFO] Checking activity reminders 
[2026-04-07 12:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:20:52] [INFO] Checking activity reminders 
[2026-04-07 12:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:21:22] [INFO] Checking activity reminders 
[2026-04-07 12:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:21:52] [INFO] Checking activity reminders 
[2026-04-07 12:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:21:56] [INFO] Checking activity reminders 
[2026-04-07 12:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:22:22] [INFO] Checking activity reminders 
[2026-04-07 12:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:22:26] [INFO] Checking activity reminders 
[2026-04-07 12:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:22:53] [INFO] Checking activity reminders 
[2026-04-07 12:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:22:56] [INFO] Checking activity reminders 
[2026-04-07 12:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:23:23] [INFO] Checking activity reminders 
[2026-04-07 12:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:23:27] [INFO] Checking activity reminders 
[2026-04-07 12:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:23:54] [INFO] Checking activity reminders 
[2026-04-07 12:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:24:00] [INFO] Checking activity reminders 
[2026-04-07 12:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:24:24] [INFO] Checking activity reminders 
[2026-04-07 12:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:24:31] [INFO] Checking activity reminders 
[2026-04-07 12:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:24:54] [INFO] Checking activity reminders 
[2026-04-07 12:24:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:24:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:25:03] [INFO] Checking activity reminders 
[2026-04-07 12:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:25:24] [INFO] Checking activity reminders 
[2026-04-07 12:25:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:25:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:25:33] [INFO] Checking activity reminders 
[2026-04-07 12:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:25:55] [INFO] Checking activity reminders 
[2026-04-07 12:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:26:03] [INFO] Checking activity reminders 
[2026-04-07 12:26:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:26:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:26:25] [INFO] Checking activity reminders 
[2026-04-07 12:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:26:33] [INFO] Checking activity reminders 
[2026-04-07 12:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:26:56] [INFO] Checking activity reminders 
[2026-04-07 12:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:27:05] [INFO] Checking activity reminders 
[2026-04-07 12:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:27:26] [INFO] Checking activity reminders 
[2026-04-07 12:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:27:35] [INFO] Checking activity reminders 
[2026-04-07 12:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:27:56] [INFO] Checking activity reminders 
[2026-04-07 12:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:28:08] [INFO] Checking activity reminders 
[2026-04-07 12:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:28:26] [INFO] Checking activity reminders 
[2026-04-07 12:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:28:38] [INFO] Checking activity reminders 
[2026-04-07 12:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:28:56] [INFO] Checking activity reminders 
[2026-04-07 12:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:29:26] [INFO] Checking activity reminders 
[2026-04-07 12:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:29:56] [INFO] Checking activity reminders 
[2026-04-07 12:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:30:07] [INFO] Checking activity reminders 
[2026-04-07 12:30:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:30:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:30:27] [INFO] Checking activity reminders 
[2026-04-07 12:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:30:37] [INFO] Checking activity reminders 
[2026-04-07 12:30:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:30:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:30:57] [INFO] Checking activity reminders 
[2026-04-07 12:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:31:07] [INFO] Checking activity reminders 
[2026-04-07 12:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:31:26] [INFO] Activity save request {"post_data":{"contact_id":"local_695cb9622da444.78163474","deal_id":"local_695cb96236dff","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ملک فروخته شریک با برادرش پولشو گرفت ماشینش 11 میلیارد اونم بفروشه \r\nپرزنت سی ای پی شد \/ پول بیاد دستش انجام میده\r\nکانال فعلا 6ماهه ارسال ش کارت 2مرحله پرداخت ","activity_duration":"25","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:31:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_695cb9622da444.78163474","note_was_empty":true}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:26] [INFO] Updating virtual stage {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered","force":false}
[2026-04-07 12:31:26] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered"}
[2026-04-07 12:31:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9622da444.78163474"}
[2026-04-07 12:31:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cb96236dff","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 12:31:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4c7e6445c47.37669293","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4c7e6445c47.37669293"}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:26] [INFO] Updating virtual stage {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered","force":false}
[2026-04-07 12:31:26] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered"}
[2026-04-07 12:31:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9622da444.78163474"}
[2026-04-07 12:31:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-07 12:31:27] [INFO] Checking activity reminders 
[2026-04-07 12:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:31:37] [INFO] Checking activity reminders 
[2026-04-07 12:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:31:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 12:31:57] [INFO] Checking activity reminders 
[2026-04-07 12:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:32:07] [INFO] Checking activity reminders 
[2026-04-07 12:32:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:32:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:32:28] [INFO] Checking activity reminders 
[2026-04-07 12:32:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:32:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:32:37] [INFO] Checking activity reminders 
[2026-04-07 12:32:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:32:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:32:59] [INFO] Checking activity reminders 
[2026-04-07 12:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:33:10] [INFO] Checking activity reminders 
[2026-04-07 12:33:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:33:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:33:29] [INFO] Checking activity reminders 
[2026-04-07 12:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:33:59] [INFO] Checking activity reminders 
[2026-04-07 12:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:34:04] [INFO] Checking activity reminders 
[2026-04-07 12:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:34:29] [INFO] Checking activity reminders 
[2026-04-07 12:34:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:34:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:34:59] [INFO] Checking activity reminders 
[2026-04-07 12:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:35:29] [INFO] Checking activity reminders 
[2026-04-07 12:35:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:35:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:35:36] [INFO] Checking activity reminders 
[2026-04-07 12:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:35:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:35:59] [INFO] Checking activity reminders 
[2026-04-07 12:35:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:35:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:36:06] [INFO] Checking activity reminders 
[2026-04-07 12:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:36:29] [INFO] Checking activity reminders 
[2026-04-07 12:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:36:36] [INFO] Checking activity reminders 
[2026-04-07 12:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:36:59] [INFO] Checking activity reminders 
[2026-04-07 12:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:37:06] [INFO] Checking activity reminders 
[2026-04-07 12:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:37:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11883","deal_id":"local_69d49a3a9840f0.24874604","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 12:37:09","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:37:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11883","is_new_deal":false}
[2026-04-07 12:37:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 12:37:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:37:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:37:09] [INFO] getContactPrimaryPhone called {"contact_id":"11883"}
[2026-04-07 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:37:09] [INFO] getContactPrimaryPhone result {"contact_id":"11883","person_found":true,"primary_phone":"9144324193"}
[2026-04-07 12:37:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144324193"}
[2026-04-07 12:37:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144324193","contact_id":"11883","deal_id":"local_69d49a3a9840f0.24874604","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:37:09"}
[2026-04-07 12:37:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","existing_deal_found":true,"existing_contact_id":"11883","existing_title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:37:09"}
[2026-04-07 12:37:09] [INFO] DealController.save validated payments {"deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 12:37:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11883","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 12:37:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49a3a9840f0.24874604","contact_didar_id":"11883","title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144324193","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتحی","existing_deal":"YES","existing_deal_id":"local_69d49a3a9840f0.24874604","existing_deal_status":"Pending","server_time":"2026-04-07 12:37:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:37:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 12:37:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 12:37:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:37:30] [INFO] Checking activity reminders 
[2026-04-07 12:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:37:36] [INFO] Checking activity reminders 
[2026-04-07 12:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:38:00] [INFO] Checking activity reminders 
[2026-04-07 12:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:38:06] [INFO] Checking activity reminders 
[2026-04-07 12:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:38:30] [INFO] Checking activity reminders 
[2026-04-07 12:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:38:36] [INFO] Checking activity reminders 
[2026-04-07 12:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:39:00] [INFO] Checking activity reminders 
[2026-04-07 12:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:39:06] [INFO] Checking activity reminders 
[2026-04-07 12:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:39:36] [INFO] Activity save request {"post_data":{"contact_id":"11883","deal_id":"local_69d49a3a9840f0.24874604","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من فقط در زمین و ملک سرمایه گذاری میکنم در کانال 404 استاد فقط سیگنال طلا میداد \r\nمن خودم زمین خریدم 5 میلیارد کلی سود کردم \r\nبهش در مورد امنیت و نقدشوندکی و تورم گفتم حرف خودشو میزنه ارسال لینک در بله 404 \r\n15 دقیقه مشاروه در مورد تحلیل و متقاعد کردن مشتری ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:39:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11883","note_was_empty":true}
[2026-04-07 12:39:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"11883","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Updating virtual stage {"contact_id":"11883","stage_name":"deal_registered","force":false}
[2026-04-07 12:39:36] [INFO] Virtual stage successfully saved {"contact_id":"11883","stage_name":"deal_registered"}
[2026-04-07 12:39:36] [INFO] Virtual stage updated after activity save {"contact_id":"11883"}
[2026-04-07 12:39:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d49a3a9840f0.24874604","stage":"تماس پیگیری","status_change":null}
[2026-04-07 12:39:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4c9d0103925.83248371","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4c9d0103925.83248371"}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Updating virtual stage {"contact_id":"11883","stage_name":"deal_registered","force":false}
[2026-04-07 12:39:36] [INFO] Virtual stage successfully saved {"contact_id":"11883","stage_name":"deal_registered"}
[2026-04-07 12:39:36] [INFO] Virtual stage updated after activity save {"contact_id":"11883"}
[2026-04-07 12:39:36] [INFO] Checking activity reminders 
[2026-04-07 12:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:39:36] [INFO] Checking activity reminders 
[2026-04-07 12:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:39:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:39:36] [INFO] Checking activity reminders 
[2026-04-07 12:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:06] [INFO] Checking activity reminders 
[2026-04-07 12:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:06] [INFO] Checking activity reminders 
[2026-04-07 12:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:25] [INFO] Activity save request {"post_data":{"contact_id":"21147","deal_id":"local_69d222b5bf78f7.66883481","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک \/ ","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:40:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21147","note_was_empty":true}
[2026-04-07 12:40:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"21147","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:25] [INFO] Updating virtual stage {"contact_id":"21147","stage_name":"deal_registered","force":false}
[2026-04-07 12:40:25] [INFO] Virtual stage successfully saved {"contact_id":"21147","stage_name":"deal_registered"}
[2026-04-07 12:40:25] [INFO] Virtual stage updated after activity save {"contact_id":"21147"}
[2026-04-07 12:40:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d222b5bf78f7.66883481","stage":"تماس پیگیری","status_change":null}
[2026-04-07 12:40:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ca01ac9812.41571622","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ca01ac9812.41571622"}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:25] [INFO] Updating virtual stage {"contact_id":"21147","stage_name":"deal_registered","force":false}
[2026-04-07 12:40:25] [INFO] Virtual stage successfully saved {"contact_id":"21147","stage_name":"deal_registered"}
[2026-04-07 12:40:25] [INFO] Virtual stage updated after activity save {"contact_id":"21147"}
[2026-04-07 12:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21147","person_id":"19320"}
[2026-04-07 12:40:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 12:40:29","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 12:40:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"127","is_new_deal":false}
[2026-04-07 12:40:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:29] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-07 12:40:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:29] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-07 12:40:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-07 12:40:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:29"}
[2026-04-07 12:40:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","existing_deal_found":true,"existing_contact_id":"127","existing_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:29"}
[2026-04-07 12:40:29] [INFO] DealController.save validated payments {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 12:40:29] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 12:40:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49998c56fe4.78942941","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"YES","existing_deal_id":"local_69d49998c56fe4.78942941","existing_deal_status":"Pending","server_time":"2026-04-07 12:40:29","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 12:40:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":50000000,"server_time":"2026-04-07 12:40:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 12:40:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:36] [INFO] Checking activity reminders 
[2026-04-07 12:40:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:40:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 12:40:39","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 12:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"127","is_new_deal":false}
[2026-04-07 12:40:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 12:40:39] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-07 12:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:39] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-07 12:40:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-07 12:40:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:39"}
[2026-04-07 12:40:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","existing_deal_found":true,"existing_contact_id":"127","existing_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:39"}
[2026-04-07 12:40:39] [INFO] DealController.save validated payments {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 12:40:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 12:40:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49998c56fe4.78942941","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"YES","existing_deal_id":"local_69d49998c56fe4.78942941","existing_deal_status":"Pending","server_time":"2026-04-07 12:40:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 12:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":50000000,"server_time":"2026-04-07 12:40:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 12:40:39] [INFO] Checking activity reminders 
[2026-04-07 12:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-07 12:40:43] [INFO] Checking activity reminders 
[2026-04-07 12:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:40:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:40:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11883","deal_id":"local_69d49a3a9840f0.24874604","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 12:40:55","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 12:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:40:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11883","is_new_deal":false}
[2026-04-07 12:40:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 12:40:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:40:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:40:55] [INFO] getContactPrimaryPhone called {"contact_id":"11883"}
[2026-04-07 12:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:40:55] [INFO] getContactPrimaryPhone result {"contact_id":"11883","person_found":true,"primary_phone":"9144324193"}
[2026-04-07 12:40:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144324193"}
[2026-04-07 12:40:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144324193","contact_id":"11883","deal_id":"local_69d49a3a9840f0.24874604","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:55"}
[2026-04-07 12:40:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","existing_deal_found":true,"existing_contact_id":"11883","existing_title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:40:55"}
[2026-04-07 12:40:55] [INFO] DealController.save validated payments {"deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 12:40:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11883","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 12:40:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49a3a9840f0.24874604","contact_didar_id":"11883","title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144324193","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فتحی","existing_deal":"YES","existing_deal_id":"local_69d49a3a9840f0.24874604","existing_deal_status":"Pending","server_time":"2026-04-07 12:40:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 12:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:40:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49a3a9840f0.24874604","contact_id":"11883","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9144324193 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 12:40:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 12:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11883","person_id":"18312"}
[2026-04-07 12:41:08] [INFO] Checking activity reminders 
[2026-04-07 12:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:41:10] [INFO] Checking activity reminders 
[2026-04-07 12:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:41:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 12:41:40] [INFO] Checking activity reminders 
[2026-04-07 12:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:41:42] [INFO] Checking activity reminders 
[2026-04-07 12:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:42:10] [INFO] Checking activity reminders 
[2026-04-07 12:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:42:12] [INFO] Checking activity reminders 
[2026-04-07 12:42:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:42:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:42:42] [INFO] Checking activity reminders 
[2026-04-07 12:42:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:42:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:42:42] [INFO] Checking activity reminders 
[2026-04-07 12:42:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:42:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:43:12] [INFO] Checking activity reminders 
[2026-04-07 12:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:43:12] [INFO] Checking activity reminders 
[2026-04-07 12:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:43:42] [INFO] Checking activity reminders 
[2026-04-07 12:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:43:42] [INFO] Checking activity reminders 
[2026-04-07 12:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:44:12] [INFO] Checking activity reminders 
[2026-04-07 12:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:44:13] [INFO] Checking activity reminders 
[2026-04-07 12:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:44:42] [INFO] Checking activity reminders 
[2026-04-07 12:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:44:43] [INFO] Checking activity reminders 
[2026-04-07 12:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:45:12] [INFO] Checking activity reminders 
[2026-04-07 12:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:45:13] [INFO] Checking activity reminders 
[2026-04-07 12:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:45:43] [INFO] Checking activity reminders 
[2026-04-07 12:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:45:44] [INFO] Checking activity reminders 
[2026-04-07 12:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:45:48] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 12:45:48] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 12:45:51] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 12:46:02] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 12:46:02] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 12:46:02] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 12:46:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 12:46:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:46:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:46:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:46:11] [INFO] Checking activity reminders 
[2026-04-07 12:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:46:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:46:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:46:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:46:14] [INFO] Checking activity reminders 
[2026-04-07 12:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:46:20] [INFO] Checking activity reminders 
[2026-04-07 12:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:46:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:46:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:46:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:46:44] [INFO] Checking activity reminders 
[2026-04-07 12:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:46:44] [INFO] Checking activity reminders 
[2026-04-07 12:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:46:50] [INFO] Checking activity reminders 
[2026-04-07 12:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:47:15] [INFO] Checking activity reminders 
[2026-04-07 12:47:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:47:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:47:20] [INFO] Checking activity reminders 
[2026-04-07 12:47:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:47:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:47:33] [INFO] Checking activity reminders 
[2026-04-07 12:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:47:45] [INFO] Checking activity reminders 
[2026-04-07 12:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:48:15] [INFO] Checking activity reminders 
[2026-04-07 12:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:48:40] [INFO] Activity save request {"post_data":{"contact_id":"19585","deal_id":"local_6987221952f5c8.26244698","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ هدف تمدید کانال 2ماه اخر بود \/ ارسال پیامک پیگیری\r\nجویایی احوال","activity_duration":"3","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:48:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"19585","note_was_empty":true}
[2026-04-07 12:48:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"19585","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:40] [INFO] Updating virtual stage {"contact_id":"19585","stage_name":"deal_registered","force":false}
[2026-04-07 12:48:40] [INFO] Virtual stage successfully saved {"contact_id":"19585","stage_name":"deal_registered"}
[2026-04-07 12:48:40] [INFO] Virtual stage updated after activity save {"contact_id":"19585"}
[2026-04-07 12:48:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6987221952f5c8.26244698","stage":"تماس پیگیری","status_change":null}
[2026-04-07 12:48:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cbf028a7e8.24391433","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cbf028a7e8.24391433"}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:40] [INFO] Updating virtual stage {"contact_id":"19585","stage_name":"deal_registered","force":false}
[2026-04-07 12:48:40] [INFO] Virtual stage successfully saved {"contact_id":"19585","stage_name":"deal_registered"}
[2026-04-07 12:48:40] [INFO] Virtual stage updated after activity save {"contact_id":"19585"}
[2026-04-07 12:48:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19585","person_id":"8332"}
[2026-04-07 12:48:45] [INFO] Checking activity reminders 
[2026-04-07 12:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:49:36] [INFO] Checking activity reminders 
[2026-04-07 12:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:49:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 12:49:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:49:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:49:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:50:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 12:50:02] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:50:02] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:50:02] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:50:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 12:50:06] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 12:50:06] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 12:50:06] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 12:50:37] [INFO] Checking activity reminders 
[2026-04-07 12:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:50:40] [INFO] Checking activity reminders 
[2026-04-07 12:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:50:43] [INFO] Checking activity reminders 
[2026-04-07 12:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:50:49] [INFO] Checking activity reminders 
[2026-04-07 12:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:51:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7273","deal_id":"local_69d499c50e48e1.99503615","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 12:51:05","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 12:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7273","is_new_deal":false}
[2026-04-07 12:51:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 12:51:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:51:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 12:51:05] [INFO] getContactPrimaryPhone called {"contact_id":"7273"}
[2026-04-07 12:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:05] [INFO] getContactPrimaryPhone result {"contact_id":"7273","person_found":true,"primary_phone":"9143423806"}
[2026-04-07 12:51:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143423806"}
[2026-04-07 12:51:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143423806","contact_id":"7273","deal_id":"local_69d499c50e48e1.99503615","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:51:05"}
[2026-04-07 12:51:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","existing_deal_found":true,"existing_contact_id":"7273","existing_title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 12:51:05"}
[2026-04-07 12:51:05] [INFO] DealController.save validated payments {"deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 12:51:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7273","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 12:51:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d499c50e48e1.99503615","contact_didar_id":"7273","title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143423806","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رسول بهرامی","existing_deal":"YES","existing_deal_id":"local_69d499c50e48e1.99503615","existing_deal_status":"Pending","server_time":"2026-04-07 12:51:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 12:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 12:51:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 12:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:07] [INFO] Checking activity reminders 
[2026-04-07 12:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:51:13] [INFO] Activity save request {"post_data":{"contact_id":"20598","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"احوال پرسی هدف تمدید کانال","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:51:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:51:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:51:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20598","note_was_empty":true}
[2026-04-07 12:51:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"20598","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:51:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cc89e38f95.86768761","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:51:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cc89e38f95.86768761"}
[2026-04-07 12:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:51:13] [INFO] Updating virtual stage {"contact_id":"20598","stage_name":"deal_registered","force":false}
[2026-04-07 12:51:13] [INFO] Virtual stage successfully saved {"contact_id":"20598","stage_name":"deal_registered"}
[2026-04-07 12:51:13] [INFO] Virtual stage updated after activity save {"contact_id":"20598"}
[2026-04-07 12:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20598","person_id":"10784"}
[2026-04-07 12:51:19] [INFO] Checking activity reminders 
[2026-04-07 12:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:51:48] [INFO] Activity save request {"post_data":{"contact_id":"7273","deal_id":"local_69d499c50e48e1.99503615","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"قولنامه مینوشت \r\nشرایط صحبت نداشت \r\nتماس مجدد","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:51:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7273","note_was_empty":true}
[2026-04-07 12:51:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"7273","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:48] [INFO] Updating virtual stage {"contact_id":"7273","stage_name":"deal_registered","force":false}
[2026-04-07 12:51:48] [INFO] Virtual stage successfully saved {"contact_id":"7273","stage_name":"deal_registered"}
[2026-04-07 12:51:48] [INFO] Virtual stage updated after activity save {"contact_id":"7273"}
[2026-04-07 12:51:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d499c50e48e1.99503615","stage":"تماس پیگیری","status_change":null}
[2026-04-07 12:51:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ccac461da2.06933881","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ccac461da2.06933881"}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:48] [INFO] Updating virtual stage {"contact_id":"7273","stage_name":"deal_registered","force":false}
[2026-04-07 12:51:48] [INFO] Virtual stage successfully saved {"contact_id":"7273","stage_name":"deal_registered"}
[2026-04-07 12:51:48] [INFO] Virtual stage updated after activity save {"contact_id":"7273"}
[2026-04-07 12:51:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 12:51:49] [INFO] Checking activity reminders 
[2026-04-07 12:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:52:20] [INFO] Checking activity reminders 
[2026-04-07 12:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:52:50] [INFO] Checking activity reminders 
[2026-04-07 12:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:53:13] [INFO] Checking activity reminders 
[2026-04-07 12:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:53:20] [INFO] Checking activity reminders 
[2026-04-07 12:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:53:43] [INFO] Checking activity reminders 
[2026-04-07 12:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:53:50] [INFO] Checking activity reminders 
[2026-04-07 12:53:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:53:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:54:14] [INFO] Checking activity reminders 
[2026-04-07 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:54:20] [INFO] Checking activity reminders 
[2026-04-07 12:54:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:54:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:54:24] [INFO] Activity save request {"post_data":{"contact_id":"14836","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"طبق اخرین صحبت اسفند ماه گفت فعلا تمدید نمیکنه الویت کاراشه زمین و محصول \/ سال بعد میاد \r\nتماس احوال پرسی هدف تمدید کانال عدم پاسخ ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:54:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:54:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:54:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14836","note_was_empty":true}
[2026-04-07 12:54:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"14836","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:54:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cd48b14536.84845237","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:54:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cd48b14536.84845237"}
[2026-04-07 12:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:54:24] [INFO] Updating virtual stage {"contact_id":"14836","stage_name":"deal_registered","force":false}
[2026-04-07 12:54:24] [INFO] Virtual stage successfully saved {"contact_id":"14836","stage_name":"deal_registered"}
[2026-04-07 12:54:24] [INFO] Virtual stage updated after activity save {"contact_id":"14836"}
[2026-04-07 12:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-07 12:54:50] [INFO] Checking activity reminders 
[2026-04-07 12:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:55:20] [INFO] Checking activity reminders 
[2026-04-07 12:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:55:30] [INFO] Checking activity reminders 
[2026-04-07 12:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:55:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:55:52] [INFO] Checking activity reminders 
[2026-04-07 12:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:56:00] [INFO] Checking activity reminders 
[2026-04-07 12:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:56:23] [INFO] Checking activity reminders 
[2026-04-07 12:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:56:31] [INFO] Checking activity reminders 
[2026-04-07 12:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:56:53] [INFO] Checking activity reminders 
[2026-04-07 12:56:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:56:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:57:01] [INFO] Checking activity reminders 
[2026-04-07 12:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:57:18] [INFO] Activity save request {"post_data":{"contact_id":"20865","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعالیتم نیست ؟؟\r\nقبل سا صحبت تمدید \r\nپرزنت سی ای پی \r\nمیخواست بره امارات برای کارش ایران نباشه سرمایه رو نقد کنه بریزه صندوق ما براش سود سازی کنیم \r\nامروز تماس احوال پرسی عدم پاسخ ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:57:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:57:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:57:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20865","note_was_empty":true}
[2026-04-07 12:57:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"20865","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:57:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cdf624d066.11752138","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:57:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cdf624d066.11752138"}
[2026-04-07 12:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:57:18] [INFO] Updating virtual stage {"contact_id":"20865","stage_name":"deal_registered","force":false}
[2026-04-07 12:57:18] [INFO] Virtual stage successfully saved {"contact_id":"20865","stage_name":"deal_registered"}
[2026-04-07 12:57:18] [INFO] Virtual stage updated after activity save {"contact_id":"20865"}
[2026-04-07 12:57:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20865","person_id":"20406"}
[2026-04-07 12:57:23] [INFO] Checking activity reminders 
[2026-04-07 12:57:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:57:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:57:31] [INFO] Checking activity reminders 
[2026-04-07 12:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:57:54] [INFO] Checking activity reminders 
[2026-04-07 12:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:58:24] [INFO] Checking activity reminders 
[2026-04-07 12:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:58:54] [INFO] Checking activity reminders 
[2026-04-07 12:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:58:54] [INFO] Checking activity reminders 
[2026-04-07 12:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:24] [INFO] Checking activity reminders 
[2026-04-07 12:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:59:25] [INFO] Checking activity reminders 
[2026-04-07 12:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:59:34] [INFO] Activity save request {"post_data":{"contact_id":"15700","deal_id":"local_69bbeb4d963670.52610202","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ پیگیری تمدید \/ ارسال پیامک اح.ال پرسی","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 12:59:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15700","note_was_empty":true}
[2026-04-07 12:59:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"15700","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:34] [INFO] Updating virtual stage {"contact_id":"15700","stage_name":"deal_registered","force":false}
[2026-04-07 12:59:34] [INFO] Virtual stage successfully saved {"contact_id":"15700","stage_name":"deal_registered"}
[2026-04-07 12:59:34] [INFO] Virtual stage updated after activity save {"contact_id":"15700"}
[2026-04-07 12:59:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeb4d963670.52610202","stage":"تماس پیگیری","status_change":null}
[2026-04-07 12:59:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ce7eac1e28.47398283","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ce7eac1e28.47398283"}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:34] [INFO] Updating virtual stage {"contact_id":"15700","stage_name":"deal_registered","force":false}
[2026-04-07 12:59:34] [INFO] Virtual stage successfully saved {"contact_id":"15700","stage_name":"deal_registered"}
[2026-04-07 12:59:34] [INFO] Virtual stage updated after activity save {"contact_id":"15700"}
[2026-04-07 12:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15700","person_id":"6958"}
[2026-04-07 12:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 12:59:54] [INFO] Checking activity reminders 
[2026-04-07 12:59:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:59:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 12:59:55] [INFO] Checking activity reminders 
[2026-04-07 12:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 12:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:00:09] [INFO] Checking activity reminders 
[2026-04-07 13:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:00:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:00:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 13:00:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:00:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:00:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:00:25] [INFO] Checking activity reminders 
[2026-04-07 13:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:00:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:00:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:00:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:00:38] [INFO] Checking activity reminders 
[2026-04-07 13:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:00:39] [INFO] Checking activity reminders 
[2026-04-07 13:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:00:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:00:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:00:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:00:55] [INFO] Checking activity reminders 
[2026-04-07 13:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:09] [INFO] Checking activity reminders 
[2026-04-07 13:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:09] [INFO] Checking activity reminders 
[2026-04-07 13:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:22] [INFO] Checking activity reminders 
[2026-04-07 13:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:29] [INFO] Checking activity reminders 
[2026-04-07 13:01:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:36] [INFO] Checking activity reminders 
[2026-04-07 13:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:38] [INFO] Activity save request {"post_data":{"contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خاموش \r\nارسال پیامک","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:01:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"820","note_was_empty":true}
[2026-04-07 13:01:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"820","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:38] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-07 13:01:38] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-07 13:01:38] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-07 13:01:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bdce250d32.40067496","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 13:01:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cefa2fe235.13795486","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cefa2fe235.13795486"}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:38] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-07 13:01:38] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-07 13:01:38] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-07 13:01:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 13:01:39] [INFO] Checking activity reminders 
[2026-04-07 13:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:01:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:02:06] [INFO] Checking activity reminders 
[2026-04-07 13:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:02:11] [INFO] Checking activity reminders 
[2026-04-07 13:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:02:36] [INFO] Checking activity reminders 
[2026-04-07 13:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:02:41] [INFO] Checking activity reminders 
[2026-04-07 13:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"6340","deal_id":"local_69d49b71aca295.09716256","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:03:03","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 13:03:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"6340","is_new_deal":false}
[2026-04-07 13:03:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-07 13:03:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 13:03:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-07 13:03:03] [INFO] getContactPrimaryPhone called {"contact_id":"6340"}
[2026-04-07 13:03:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:03] [INFO] getContactPrimaryPhone result {"contact_id":"6340","person_found":true,"primary_phone":"9144414993"}
[2026-04-07 13:03:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144414993"}
[2026-04-07 13:03:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144414993","contact_id":"6340","deal_id":"local_69d49b71aca295.09716256","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:03:03"}
[2026-04-07 13:03:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49b71aca295.09716256","contact_id":"6340","existing_deal_found":true,"existing_contact_id":"6340","existing_title":"معامله دوم 9144414993 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:03:03"}
[2026-04-07 13:03:03] [INFO] DealController.save validated payments {"deal_id":"local_69d49b71aca295.09716256","contact_id":"6340","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 13:03:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6340","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 13:03:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49b71aca295.09716256","contact_didar_id":"6340","title":"معامله دوم 9144414993 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9144414993","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"طبیب زاده","existing_deal":"YES","existing_deal_id":"local_69d49b71aca295.09716256","existing_deal_status":"Pending","server_time":"2026-04-07 13:03:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 13:03:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49b71aca295.09716256","contact_id":"6340","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9144414993 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-07 13:03:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:03:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:07] [INFO] Checking activity reminders 
[2026-04-07 13:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:11] [INFO] Checking activity reminders 
[2026-04-07 13:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:27] [INFO] Checking activity reminders 
[2026-04-07 13:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:37] [INFO] Checking activity reminders 
[2026-04-07 13:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:41] [INFO] Checking activity reminders 
[2026-04-07 13:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:03:52] [INFO] Activity save request {"post_data":{"contact_id":"6340","deal_id":"local_69d49b71aca295.09716256","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"اعضای cip  هست \r\nاستاد تماس داشتند \/ برای کانال 405 با 54 \r\nتماس گرفتن بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:03:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6340","note_was_empty":true}
[2026-04-07 13:03:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"6340","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:52] [INFO] Updating virtual stage {"contact_id":"6340","stage_name":"deal_registered","force":false}
[2026-04-07 13:03:52] [INFO] Virtual stage successfully saved {"contact_id":"6340","stage_name":"deal_registered"}
[2026-04-07 13:03:52] [INFO] Virtual stage updated after activity save {"contact_id":"6340"}
[2026-04-07 13:03:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d49b71aca295.09716256","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 13:03:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cf8013a196.71567098","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cf8013a196.71567098"}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:52] [INFO] Updating virtual stage {"contact_id":"6340","stage_name":"deal_registered","force":false}
[2026-04-07 13:03:52] [INFO] Virtual stage successfully saved {"contact_id":"6340","stage_name":"deal_registered"}
[2026-04-07 13:03:52] [INFO] Virtual stage updated after activity save {"contact_id":"6340"}
[2026-04-07 13:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6340","person_id":"18339"}
[2026-04-07 13:03:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:04:07] [INFO] Checking activity reminders 
[2026-04-07 13:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:04:15] [INFO] Checking activity reminders 
[2026-04-07 13:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:04:33] [INFO] Activity save request {"post_data":{"contact_id":"983","deal_id":"local_69d4bd470a8d20.97501450","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:04:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"983","note_was_empty":true}
[2026-04-07 13:04:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"983","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:33] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-07 13:04:33] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-07 13:04:33] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-07 13:04:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bd470a8d20.97501450","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 13:04:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4cfa988d142.90152129","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4cfa988d142.90152129"}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:33] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-07 13:04:33] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-07 13:04:33] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-07 13:04:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:04:37] [INFO] Checking activity reminders 
[2026-04-07 13:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:04:45] [INFO] Checking activity reminders 
[2026-04-07 13:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:00] [INFO] Checking activity reminders 
[2026-04-07 13:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:07] [INFO] Checking activity reminders 
[2026-04-07 13:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:15] [INFO] Checking activity reminders 
[2026-04-07 13:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:35] [INFO] Checking activity reminders 
[2026-04-07 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:37] [INFO] Checking activity reminders 
[2026-04-07 13:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:45] [INFO] Checking activity reminders 
[2026-04-07 13:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:05:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9471","deal_id":"local_69d49a02564513.00532548","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:05:52","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 13:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:05:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9471","is_new_deal":false}
[2026-04-07 13:05:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:05:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:05:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:05:52] [INFO] getContactPrimaryPhone called {"contact_id":"9471"}
[2026-04-07 13:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:05:52] [INFO] getContactPrimaryPhone result {"contact_id":"9471","person_found":true,"primary_phone":"9143579917"}
[2026-04-07 13:05:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143579917"}
[2026-04-07 13:05:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143579917","contact_id":"9471","deal_id":"local_69d49a02564513.00532548","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:05:52"}
[2026-04-07 13:05:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49a02564513.00532548","contact_id":"9471","existing_deal_found":true,"existing_contact_id":"9471","existing_title":"معامله دوم 9143579917 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:05:52"}
[2026-04-07 13:05:52] [INFO] DealController.save validated payments {"deal_id":"local_69d49a02564513.00532548","contact_id":"9471","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 13:05:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9471","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 13:05:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49a02564513.00532548","contact_didar_id":"9471","title":"معامله دوم 9143579917 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143579917","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عادل نصیری","existing_deal":"YES","existing_deal_id":"local_69d49a02564513.00532548","existing_deal_status":"Pending","server_time":"2026-04-07 13:05:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 13:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:05:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49a02564513.00532548","contact_id":"9471","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9143579917 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:05:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:07] [INFO] Checking activity reminders 
[2026-04-07 13:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:07] [INFO] Checking activity reminders 
[2026-04-07 13:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:15] [INFO] Checking activity reminders 
[2026-04-07 13:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:16] [INFO] Activity save request {"post_data":{"contact_id":"9471","deal_id":"local_69d49a02564513.00532548","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:06:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9471","note_was_empty":true}
[2026-04-07 13:06:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"9471","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:16] [INFO] Updating virtual stage {"contact_id":"9471","stage_name":"deal_registered","force":false}
[2026-04-07 13:06:16] [INFO] Virtual stage successfully saved {"contact_id":"9471","stage_name":"deal_registered"}
[2026-04-07 13:06:16] [INFO] Virtual stage updated after activity save {"contact_id":"9471"}
[2026-04-07 13:06:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d49a02564513.00532548","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 13:06:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4d0101e8ef3.84713701","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4d0101e8ef3.84713701"}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:16] [INFO] Updating virtual stage {"contact_id":"9471","stage_name":"deal_registered","force":false}
[2026-04-07 13:06:16] [INFO] Virtual stage successfully saved {"contact_id":"9471","stage_name":"deal_registered"}
[2026-04-07 13:06:16] [INFO] Virtual stage updated after activity save {"contact_id":"9471"}
[2026-04-07 13:06:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9471","person_id":"18239"}
[2026-04-07 13:06:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:06:37] [INFO] Checking activity reminders 
[2026-04-07 13:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:37] [INFO] Checking activity reminders 
[2026-04-07 13:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:46] [INFO] Checking activity reminders 
[2026-04-07 13:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:47] [INFO] Checking activity reminders 
[2026-04-07 13:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:06:49] [INFO] Checking activity reminders 
[2026-04-07 13:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:07:07] [INFO] Checking activity reminders 
[2026-04-07 13:07:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:07:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:07:08] [INFO] Checking activity reminders 
[2026-04-07 13:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:07:37] [INFO] Checking activity reminders 
[2026-04-07 13:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:07:38] [INFO] Checking activity reminders 
[2026-04-07 13:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:08:07] [INFO] Checking activity reminders 
[2026-04-07 13:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:08:08] [INFO] Checking activity reminders 
[2026-04-07 13:08:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:08:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:08:37] [INFO] Checking activity reminders 
[2026-04-07 13:08:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:08:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:08:38] [INFO] Checking activity reminders 
[2026-04-07 13:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:09:03] [INFO] Checking activity reminders 
[2026-04-07 13:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:09:07] [INFO] Checking activity reminders 
[2026-04-07 13:09:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:09:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:09:37] [INFO] Checking activity reminders 
[2026-04-07 13:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:01] [INFO] Checking activity reminders 
[2026-04-07 13:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:05] [INFO] Checking activity reminders 
[2026-04-07 13:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:08] [INFO] Checking activity reminders 
[2026-04-07 13:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:10] [INFO] Checking activity reminders 
[2026-04-07 13:10:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:13] [INFO] Checking activity reminders 
[2026-04-07 13:10:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:38] [INFO] Checking activity reminders 
[2026-04-07 13:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:43] [INFO] Checking activity reminders 
[2026-04-07 13:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:45] [INFO] Checking activity reminders 
[2026-04-07 13:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:47] [INFO] Checking activity reminders 
[2026-04-07 13:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:50] [INFO] Checking activity reminders 
[2026-04-07 13:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:10:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 13:11:08] [INFO] Checking activity reminders 
[2026-04-07 13:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:11:13] [INFO] Checking activity reminders 
[2026-04-07 13:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:11:27] [INFO] Checking activity reminders 
[2026-04-07 13:11:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:11:38] [INFO] Checking activity reminders 
[2026-04-07 13:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:11:43] [INFO] Checking activity reminders 
[2026-04-07 13:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:11:58] [INFO] Checking activity reminders 
[2026-04-07 13:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:08] [INFO] Checking activity reminders 
[2026-04-07 13:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:13] [INFO] Checking activity reminders 
[2026-04-07 13:12:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:28] [INFO] Checking activity reminders 
[2026-04-07 13:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:38] [INFO] Checking activity reminders 
[2026-04-07 13:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:44] [INFO] Checking activity reminders 
[2026-04-07 13:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:12:58] [INFO] Checking activity reminders 
[2026-04-07 13:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:08] [INFO] Checking activity reminders 
[2026-04-07 13:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:14] [INFO] Checking activity reminders 
[2026-04-07 13:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:28] [INFO] Checking activity reminders 
[2026-04-07 13:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:38] [INFO] Checking activity reminders 
[2026-04-07 13:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:44] [INFO] Checking activity reminders 
[2026-04-07 13:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:13:58] [INFO] Checking activity reminders 
[2026-04-07 13:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:08] [INFO] Checking activity reminders 
[2026-04-07 13:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:14] [INFO] Checking activity reminders 
[2026-04-07 13:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:28] [INFO] Checking activity reminders 
[2026-04-07 13:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:38] [INFO] Checking activity reminders 
[2026-04-07 13:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:44] [INFO] Checking activity reminders 
[2026-04-07 13:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:14:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:14:52","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 13:14:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:14:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1025","is_new_deal":false}
[2026-04-07 13:14:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:14:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:14:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:14:52] [INFO] getContactPrimaryPhone called {"contact_id":"1025"}
[2026-04-07 13:14:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:14:52] [INFO] getContactPrimaryPhone result {"contact_id":"1025","person_found":true,"primary_phone":"9120445350"}
[2026-04-07 13:14:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120445350"}
[2026-04-07 13:14:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120445350","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:14:52"}
[2026-04-07 13:14:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","existing_deal_found":true,"existing_contact_id":"1025","existing_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:14:52"}
[2026-04-07 13:14:52] [INFO] DealController.save validated payments {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-07 13:14:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1025","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 13:14:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c1e6192e4.67895249","contact_didar_id":"1025","title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9120445350","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کیانی","existing_deal":"YES","existing_deal_id":"local_69b72c1e6192e4.67895249","existing_deal_status":"Pending","server_time":"2026-04-07 13:14:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 13:14:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:14:53] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 13:14:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:14:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:14:58] [INFO] Checking activity reminders 
[2026-04-07 13:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:08] [INFO] Checking activity reminders 
[2026-04-07 13:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:15:09","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1025","is_new_deal":false}
[2026-04-07 13:15:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:15:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:15:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:15:09] [INFO] getContactPrimaryPhone called {"contact_id":"1025"}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:09] [INFO] getContactPrimaryPhone result {"contact_id":"1025","person_found":true,"primary_phone":"9120445350"}
[2026-04-07 13:15:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120445350"}
[2026-04-07 13:15:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120445350","contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:15:09"}
[2026-04-07 13:15:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","existing_deal_found":true,"existing_contact_id":"1025","existing_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:15:09"}
[2026-04-07 13:15:09] [INFO] DealController.save validated payments {"deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 13:15:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1025","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 13:15:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72c1e6192e4.67895249","contact_didar_id":"1025","title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9120445350","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کیانی","existing_deal":"YES","existing_deal_id":"local_69b72c1e6192e4.67895249","existing_deal_status":"Pending","server_time":"2026-04-07 13:15:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:09] [INFO] Deal success processed {"contact_id":"1025","person_name":"کیانی","products_count":1}
[2026-04-07 13:15:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72c1e6192e4.67895249","contact_id":"1025","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9120445350 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 13:15:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:09] [INFO] Updating virtual stage {"contact_id":"1025","stage_name":"with_purchase","force":true}
[2026-04-07 13:15:09] [INFO] Virtual stage successfully saved {"contact_id":"1025","stage_name":"with_purchase"}
[2026-04-07 13:15:09] [INFO] Moved contact out of kariz after successful deal {"contact_id":"1025","deal_id":"local_69b72c1e6192e4.67895249","target_stage":"with_purchase"}
[2026-04-07 13:15:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1025","person_id":"11062"}
[2026-04-07 13:15:14] [INFO] Checking activity reminders 
[2026-04-07 13:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:28] [INFO] Checking activity reminders 
[2026-04-07 13:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:38] [INFO] Checking activity reminders 
[2026-04-07 13:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:44] [INFO] Checking activity reminders 
[2026-04-07 13:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:15:58] [INFO] Checking activity reminders 
[2026-04-07 13:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:16:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:16:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:16:09] [INFO] Checking activity reminders 
[2026-04-07 13:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:16:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:16:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:16:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:16:28] [INFO] Checking activity reminders 
[2026-04-07 13:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:16:30] [INFO] Checking activity reminders 
[2026-04-07 13:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:16:39] [INFO] Checking activity reminders 
[2026-04-07 13:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:16:58] [INFO] Checking activity reminders 
[2026-04-07 13:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:00] [INFO] Checking activity reminders 
[2026-04-07 13:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:09] [INFO] Checking activity reminders 
[2026-04-07 13:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:12] [INFO] Checking activity reminders 
[2026-04-07 13:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:13] [INFO] Checking activity reminders 
[2026-04-07 13:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:39] [INFO] Checking activity reminders 
[2026-04-07 13:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:17:43] [INFO] Checking activity reminders 
[2026-04-07 13:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:18:09] [INFO] Checking activity reminders 
[2026-04-07 13:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:18:14] [INFO] Checking activity reminders 
[2026-04-07 13:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:18:39] [INFO] Checking activity reminders 
[2026-04-07 13:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:18:44] [INFO] Checking activity reminders 
[2026-04-07 13:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:19:09] [INFO] Checking activity reminders 
[2026-04-07 13:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:19:14] [INFO] Checking activity reminders 
[2026-04-07 13:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:19:39] [INFO] Checking activity reminders 
[2026-04-07 13:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:19:44] [INFO] Checking activity reminders 
[2026-04-07 13:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:09] [INFO] Checking activity reminders 
[2026-04-07 13:20:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:20:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:14] [INFO] Checking activity reminders 
[2026-04-07 13:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:37] [INFO] Checking activity reminders 
[2026-04-07 13:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:39] [INFO] Checking activity reminders 
[2026-04-07 13:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:20:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:20:44] [INFO] Checking activity reminders 
[2026-04-07 13:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:20:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 13:20:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 13:20:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 13:21:09] [INFO] Checking activity reminders 
[2026-04-07 13:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:21:10] [INFO] Checking activity reminders 
[2026-04-07 13:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:21:14] [INFO] Checking activity reminders 
[2026-04-07 13:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:21:39] [INFO] Checking activity reminders 
[2026-04-07 13:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:21:40] [INFO] Checking activity reminders 
[2026-04-07 13:21:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:21:44] [INFO] Checking activity reminders 
[2026-04-07 13:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:00] [INFO] Checking activity reminders 
[2026-04-07 13:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:06] [INFO] Checking activity reminders 
[2026-04-07 13:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:09] [INFO] Checking activity reminders 
[2026-04-07 13:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:15] [INFO] Checking activity reminders 
[2026-04-07 13:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:39] [INFO] Checking activity reminders 
[2026-04-07 13:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:22:45] [INFO] Checking activity reminders 
[2026-04-07 13:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:23:09] [INFO] Checking activity reminders 
[2026-04-07 13:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:23:17] [INFO] Checking activity reminders 
[2026-04-07 13:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:23:40] [INFO] Checking activity reminders 
[2026-04-07 13:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:23:48] [INFO] Checking activity reminders 
[2026-04-07 13:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:24:10] [INFO] Checking activity reminders 
[2026-04-07 13:24:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:24:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:24:18] [INFO] Checking activity reminders 
[2026-04-07 13:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:24:40] [INFO] Checking activity reminders 
[2026-04-07 13:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:24:48] [INFO] Checking activity reminders 
[2026-04-07 13:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:10] [INFO] Checking activity reminders 
[2026-04-07 13:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:18] [INFO] Checking activity reminders 
[2026-04-07 13:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:40] [INFO] Checking activity reminders 
[2026-04-07 13:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:48] [INFO] Checking activity reminders 
[2026-04-07 13:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:49] [INFO] Checking activity reminders 
[2026-04-07 13:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:25:53] [INFO] Activity save request {"post_data":{"contact_id":"983","deal_id":"local_69d4bd470a8d20.97501450","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"1ماه بوده کانال بعد حذف شده \/با مشاوره استاد خونه نفرخته پارسال 4میلیارد تو سود \/ شیراز الان هست داره برمیگیرده مشهد مغازه نقره فروشی جمع کرده سیار کیفی بفروشه \/ ماشین میخواد کاسبی کنه \/ گفتم با یه سیگنال 4میلیارد تو سودی 8ت زده بودی کلا \r\n10 کیلو طلا داره گفتم خطرناکه \r\nارسال ش کارت بیعانه امروز بزنه پرداخت دوم هفته اینده تسویه اردیبهشت \r\nمیگه نقدینگی کمه مشتری چک پاس نکرده \r\nکارشناسی از سایت ببینه میگه تلگرام باز نمیکنه","activity_duration":"30","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:25:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"983","note_was_empty":true}
[2026-04-07 13:25:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"983","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:53] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-07 13:25:53] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-07 13:25:53] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-07 13:25:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bd470a8d20.97501450","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 13:25:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4d4a93f51e8.26194234","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4d4a93f51e8.26194234"}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:53] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-07 13:25:53] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-07 13:25:53] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-07 13:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-07 13:25:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-07 13:26:18] [INFO] Checking activity reminders 
[2026-04-07 13:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:26:48] [INFO] Checking activity reminders 
[2026-04-07 13:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:27:19] [INFO] Checking activity reminders 
[2026-04-07 13:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:27:49] [INFO] Checking activity reminders 
[2026-04-07 13:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:28:19] [INFO] Checking activity reminders 
[2026-04-07 13:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:28:49] [INFO] Checking activity reminders 
[2026-04-07 13:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:29:25] [INFO] Checking activity reminders 
[2026-04-07 13:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:29:44] [INFO] Checking activity reminders 
[2026-04-07 13:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:29:55] [INFO] Checking activity reminders 
[2026-04-07 13:29:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:29:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:30:26] [INFO] Checking activity reminders 
[2026-04-07 13:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:30:56] [INFO] Checking activity reminders 
[2026-04-07 13:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:31:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20971","deal_id":"local_69d4a8b07a4067.06131327","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:31:04","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 13:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:31:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20971","is_new_deal":false}
[2026-04-07 13:31:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:31:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:31:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:31:04] [INFO] getContactPrimaryPhone called {"contact_id":"20971"}
[2026-04-07 13:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:31:04] [INFO] getContactPrimaryPhone result {"contact_id":"20971","person_found":true,"primary_phone":"9146560232"}
[2026-04-07 13:31:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146560232"}
[2026-04-07 13:31:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146560232","contact_id":"20971","deal_id":"local_69d4a8b07a4067.06131327","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:31:04"}
[2026-04-07 13:31:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4a8b07a4067.06131327","contact_id":"20971","existing_deal_found":true,"existing_contact_id":"20971","existing_title":"معامله دوم 9146560232 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 13:31:04"}
[2026-04-07 13:31:04] [INFO] DealController.save validated payments {"deal_id":"local_69d4a8b07a4067.06131327","contact_id":"20971","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-07 13:31:04] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20971","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 13:31:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4a8b07a4067.06131327","contact_didar_id":"20971","title":"معامله دوم 9146560232 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9146560232","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صمد داوری خسروشاهی","existing_deal":"YES","existing_deal_id":"local_69d4a8b07a4067.06131327","existing_deal_status":"Pending","server_time":"2026-04-07 13:31:04","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 13:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:31:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4a8b07a4067.06131327","contact_id":"20971","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9146560232 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:31:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:31:26] [INFO] Checking activity reminders 
[2026-04-07 13:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:31:56] [INFO] Checking activity reminders 
[2026-04-07 13:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:32:13] [INFO] Checking activity reminders 
[2026-04-07 13:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:32:27] [INFO] Checking activity reminders 
[2026-04-07 13:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:32:43] [INFO] Checking activity reminders 
[2026-04-07 13:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:32:57] [INFO] Checking activity reminders 
[2026-04-07 13:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:33:13] [INFO] Checking activity reminders 
[2026-04-07 13:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:33:27] [INFO] Checking activity reminders 
[2026-04-07 13:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:33:43] [INFO] Checking activity reminders 
[2026-04-07 13:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:33:57] [INFO] Checking activity reminders 
[2026-04-07 13:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:34:13] [INFO] Checking activity reminders 
[2026-04-07 13:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:34:27] [INFO] Checking activity reminders 
[2026-04-07 13:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:34:44] [INFO] Checking activity reminders 
[2026-04-07 13:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:34:57] [INFO] Checking activity reminders 
[2026-04-07 13:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:35:14] [INFO] Checking activity reminders 
[2026-04-07 13:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:35:27] [INFO] Checking activity reminders 
[2026-04-07 13:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:35:44] [INFO] Checking activity reminders 
[2026-04-07 13:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:35:58] [INFO] Checking activity reminders 
[2026-04-07 13:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:36:28] [INFO] Checking activity reminders 
[2026-04-07 13:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:36:58] [INFO] Checking activity reminders 
[2026-04-07 13:36:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:36:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:37:28] [INFO] Checking activity reminders 
[2026-04-07 13:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:37:58] [INFO] Checking activity reminders 
[2026-04-07 13:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:38:28] [INFO] Checking activity reminders 
[2026-04-07 13:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:38:28] [INFO] Checking activity reminders 
[2026-04-07 13:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:38:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-07 13:38:58] [INFO] Checking activity reminders 
[2026-04-07 13:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:39:28] [INFO] Checking activity reminders 
[2026-04-07 13:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:40:00] [INFO] Checking activity reminders 
[2026-04-07 13:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:40:24] [INFO] Checking activity reminders 
[2026-04-07 13:40:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:40:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:40:30] [INFO] Checking activity reminders 
[2026-04-07 13:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:40:52] [INFO] Checking activity reminders 
[2026-04-07 13:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:41:00] [INFO] Checking activity reminders 
[2026-04-07 13:41:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:41:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:41:22] [INFO] Checking activity reminders 
[2026-04-07 13:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:41:30] [INFO] Checking activity reminders 
[2026-04-07 13:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:42:00] [INFO] Checking activity reminders 
[2026-04-07 13:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:42:30] [INFO] Checking activity reminders 
[2026-04-07 13:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:42:36] [INFO] Activity save request {"post_data":{"contact_id":"20971","deal_id":"local_69d4a8b07a4067.06131327","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ماموریت دولتی بود \/ نمیتونست راحت صحبت کنه \r\nحتما در کانال میخواد باشه ارسال شبا در بله \r\n","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:42:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:42:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:42:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20971","note_was_empty":true}
[2026-04-07 13:42:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"20971","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:42:36] [INFO] Updating virtual stage {"contact_id":"20971","stage_name":"deal_registered","force":false}
[2026-04-07 13:42:36] [INFO] Virtual stage successfully saved {"contact_id":"20971","stage_name":"deal_registered"}
[2026-04-07 13:42:36] [INFO] Virtual stage updated after activity save {"contact_id":"20971"}
[2026-04-07 13:42:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4a8b07a4067.06131327","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 13:42:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4d8941055a7.24208163","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:42:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4d8941055a7.24208163"}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:42:36] [INFO] Updating virtual stage {"contact_id":"20971","stage_name":"deal_registered","force":false}
[2026-04-07 13:42:36] [INFO] Virtual stage successfully saved {"contact_id":"20971","stage_name":"deal_registered"}
[2026-04-07 13:42:36] [INFO] Virtual stage updated after activity save {"contact_id":"20971"}
[2026-04-07 13:42:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-07 13:43:00] [INFO] Checking activity reminders 
[2026-04-07 13:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:43:03] [INFO] Checking activity reminders 
[2026-04-07 13:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:43:30] [INFO] Checking activity reminders 
[2026-04-07 13:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:44:01] [INFO] Checking activity reminders 
[2026-04-07 13:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:44:31] [INFO] Checking activity reminders 
[2026-04-07 13:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:44:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:01] [INFO] Checking activity reminders 
[2026-04-07 13:45:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:45:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:45:13] [INFO] Activity save request {"post_data":{"contact_id":"16084","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"چک در تاریخ 1\/18 دریافت شد در میزیتو ارسال \r\n\r\n","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 13:45:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 13:45:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 13:45:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16084","note_was_empty":true}
[2026-04-07 13:45:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"16084","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 13:45:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4d93165edf1.43928005","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 13:45:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4d93165edf1.43928005"}
[2026-04-07 13:45:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:13] [INFO] Updating virtual stage {"contact_id":"16084","stage_name":"with_purchase","force":false}
[2026-04-07 13:45:13] [INFO] Virtual stage successfully saved {"contact_id":"16084","stage_name":"with_purchase"}
[2026-04-07 13:45:13] [INFO] Virtual stage updated after activity save {"contact_id":"16084"}
[2026-04-07 13:45:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16084","person_id":"13850"}
[2026-04-07 13:45:31] [INFO] Checking activity reminders 
[2026-04-07 13:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:01] [INFO] Checking activity reminders 
[2026-04-07 13:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:34] [INFO] Checking activity reminders 
[2026-04-07 13:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:50] [INFO] Checking activity reminders 
[2026-04-07 13:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:51] [INFO] Checking activity reminders 
[2026-04-07 13:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:53] [INFO] Checking activity reminders 
[2026-04-07 13:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:46:58] [INFO] Checking activity reminders 
[2026-04-07 13:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:47:13] [INFO] Checking activity reminders 
[2026-04-07 13:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:47:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:20] [INFO] generateDealTitle result {"contact_id":"12229","person_name":"حیدری","mobile":"9147669710","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9147669710"}
[2026-04-07 13:47:28] [INFO] Checking activity reminders 
[2026-04-07 13:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:47:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12229","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:47:36","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12229","is_new_deal":true}
[2026-04-07 13:47:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:47:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:47:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:47:36] [INFO] getContactPrimaryPhone called {"contact_id":"12229"}
[2026-04-07 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:36] [INFO] getContactPrimaryPhone result {"contact_id":"12229","person_found":true,"primary_phone":"9147669710"}
[2026-04-07 13:47:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147669710"}
[2026-04-07 13:47:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147669710","contact_id":"12229","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:47:36"}
[2026-04-07 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:36] [INFO] generateDealTitle result {"contact_id":"12229","person_name":"حیدری","mobile":"9147669710","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9147669710"}
[2026-04-07 13:47:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12229","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:47:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12229","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:47:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12229","title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9147669710","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حیدری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:47:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:47:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12229","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:47:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 13:47:43] [INFO] Checking activity reminders 
[2026-04-07 13:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:47:58] [INFO] Checking activity reminders 
[2026-04-07 13:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:48:13] [INFO] Checking activity reminders 
[2026-04-07 13:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:48:22] [INFO] Checking activity reminders 
[2026-04-07 13:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:48:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8150","person_id":"13773"}
[2026-04-07 13:48:28] [INFO] Checking activity reminders 
[2026-04-07 13:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:48:38] [INFO] Checking activity reminders 
[2026-04-07 13:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:48:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:00] [INFO] Checking activity reminders 
[2026-04-07 13:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:49:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:03] [INFO] generateDealTitle result {"contact_id":"21469","person_name":"مقداد باقری","mobile":"9151090206","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151090206"}
[2026-04-07 13:49:08] [INFO] Checking activity reminders 
[2026-04-07 13:49:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:49:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:49:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21469","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:49:21","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:49:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21469","is_new_deal":true}
[2026-04-07 13:49:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:49:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:49:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:49:21] [INFO] getContactPrimaryPhone called {"contact_id":"21469"}
[2026-04-07 13:49:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:21] [INFO] getContactPrimaryPhone result {"contact_id":"21469","person_found":true,"primary_phone":"9151090206"}
[2026-04-07 13:49:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151090206"}
[2026-04-07 13:49:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151090206","contact_id":"21469","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:49:21"}
[2026-04-07 13:49:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:21] [INFO] generateDealTitle result {"contact_id":"21469","person_name":"مقداد باقری","mobile":"9151090206","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151090206"}
[2026-04-07 13:49:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21469","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:49:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21469","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:49:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21469","title":"معامله دوم 9151090206 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151090206","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقداد باقری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:49:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:49:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:49:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21469","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9151090206 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:49:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 13:49:30] [INFO] Checking activity reminders 
[2026-04-07 13:49:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:49:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:49:36] [INFO] Checking activity reminders 
[2026-04-07 13:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:49:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7771","person_id":"17583"}
[2026-04-07 13:49:55] [INFO] Checking activity reminders 
[2026-04-07 13:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:00] [INFO] Checking activity reminders 
[2026-04-07 13:50:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:50:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:50:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:01] [INFO] generateDealTitle result {"contact_id":"20948","person_name":"احمد وحدتی","mobile":"9152251602","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152251602"}
[2026-04-07 13:50:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20948","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:50:17","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:50:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20948","is_new_deal":true}
[2026-04-07 13:50:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:50:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:50:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:50:17] [INFO] getContactPrimaryPhone called {"contact_id":"20948"}
[2026-04-07 13:50:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:17] [INFO] getContactPrimaryPhone result {"contact_id":"20948","person_found":true,"primary_phone":"9152251602"}
[2026-04-07 13:50:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152251602"}
[2026-04-07 13:50:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152251602","contact_id":"20948","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:50:17"}
[2026-04-07 13:50:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:17] [INFO] generateDealTitle result {"contact_id":"20948","person_name":"احمد وحدتی","mobile":"9152251602","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152251602"}
[2026-04-07 13:50:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20948","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:50:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20948","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:50:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20948","title":"معامله دوم 9152251602 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152251602","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احمد وحدتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:50:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:50:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20948","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9152251602 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:50:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 13:50:25] [INFO] Checking activity reminders 
[2026-04-07 13:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:50:30] [INFO] Checking activity reminders 
[2026-04-07 13:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:50:37] [INFO] Checking activity reminders 
[2026-04-07 13:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:50:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:50:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:50:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:50:45] [INFO] generateDealTitle result {"contact_id":"6967","person_name":"استانستی","mobile":"9153635810","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9153635810"}
[2026-04-07 13:51:00] [INFO] Checking activity reminders 
[2026-04-07 13:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:51:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6967","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:51:00","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:51:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6967","is_new_deal":true}
[2026-04-07 13:51:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:51:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:51:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:51:00] [INFO] getContactPrimaryPhone called {"contact_id":"6967"}
[2026-04-07 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:51:00] [INFO] getContactPrimaryPhone result {"contact_id":"6967","person_found":true,"primary_phone":"9153635810"}
[2026-04-07 13:51:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153635810"}
[2026-04-07 13:51:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153635810","contact_id":"6967","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:51:00"}
[2026-04-07 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:51:00] [INFO] generateDealTitle result {"contact_id":"6967","person_name":"استانستی","mobile":"9153635810","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9153635810"}
[2026-04-07 13:51:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6967","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:51:00] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:51:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6967","title":"معامله سوم 9153635810 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9153635810","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"استانستی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:51:00","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:51:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:51:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:51:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9153635810 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:51:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:51:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 13:51:07] [INFO] Checking activity reminders 
[2026-04-07 13:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:51:30] [INFO] Checking activity reminders 
[2026-04-07 13:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:51:34] [INFO] Checking activity reminders 
[2026-04-07 13:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:51:45] [INFO] Checking activity reminders 
[2026-04-07 13:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:51:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:51:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:51:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:51:49] [INFO] generateDealTitle result {"contact_id":"11305","person_name":"حنایی","mobile":"9154419954","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9154419954"}
[2026-04-07 13:52:01] [INFO] Checking activity reminders 
[2026-04-07 13:52:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:52:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:52:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11305","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:52:06","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:52:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11305","is_new_deal":true}
[2026-04-07 13:52:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:06] [INFO] getContactPrimaryPhone called {"contact_id":"11305"}
[2026-04-07 13:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:52:06] [INFO] getContactPrimaryPhone result {"contact_id":"11305","person_found":true,"primary_phone":"9154419954"}
[2026-04-07 13:52:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9154419954"}
[2026-04-07 13:52:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9154419954","contact_id":"11305","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:52:06"}
[2026-04-07 13:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:52:06] [INFO] generateDealTitle result {"contact_id":"11305","person_name":"حنایی","mobile":"9154419954","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9154419954"}
[2026-04-07 13:52:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11305","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:52:06] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11305","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:52:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11305","title":"معامله دوم 9154419954 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9154419954","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حنایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:52:06","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:52:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:52:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:52:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11305","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9154419954 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:52:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:52:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 13:52:25] [INFO] Checking activity reminders 
[2026-04-07 13:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:52:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:31] [INFO] generateDealTitle result {"contact_id":"15348","person_name":"محمد طاها محمدیان","mobile":"9154478123","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9154478123"}
[2026-04-07 13:52:32] [INFO] Checking activity reminders 
[2026-04-07 13:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:52:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15348","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:52:47","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15348","is_new_deal":true}
[2026-04-07 13:52:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:52:47] [INFO] getContactPrimaryPhone called {"contact_id":"15348"}
[2026-04-07 13:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:47] [INFO] getContactPrimaryPhone result {"contact_id":"15348","person_found":true,"primary_phone":"9154478123"}
[2026-04-07 13:52:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9154478123"}
[2026-04-07 13:52:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9154478123","contact_id":"15348","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:52:47"}
[2026-04-07 13:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:47] [INFO] generateDealTitle result {"contact_id":"15348","person_name":"محمد طاها محمدیان","mobile":"9154478123","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9154478123"}
[2026-04-07 13:52:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15348","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:52:47] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15348","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:52:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15348","title":"معامله دوم 9154478123 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9154478123","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد طاها محمدیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:52:47","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:52:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15348","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9154478123 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:52:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 13:52:55] [INFO] Checking activity reminders 
[2026-04-07 13:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:53:02] [INFO] Checking activity reminders 
[2026-04-07 13:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:53:25] [INFO] Checking activity reminders 
[2026-04-07 13:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:53:32] [INFO] Checking activity reminders 
[2026-04-07 13:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:53:55] [INFO] Checking activity reminders 
[2026-04-07 13:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:06] [INFO] Checking activity reminders 
[2026-04-07 13:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:11] [INFO] Checking activity reminders 
[2026-04-07 13:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-07 13:54:18] [INFO] Checking activity reminders 
[2026-04-07 13:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:24] [INFO] generateDealTitle result {"contact_id":"12529","person_name":"کاظمی","mobile":"9155199715","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9155199715"}
[2026-04-07 13:54:37] [INFO] Checking activity reminders 
[2026-04-07 13:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12529","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:54:37","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12529","is_new_deal":true}
[2026-04-07 13:54:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:54:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:54:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:54:37] [INFO] getContactPrimaryPhone called {"contact_id":"12529"}
[2026-04-07 13:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:37] [INFO] getContactPrimaryPhone result {"contact_id":"12529","person_found":true,"primary_phone":"9155199715"}
[2026-04-07 13:54:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155199715"}
[2026-04-07 13:54:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155199715","contact_id":"12529","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:54:37"}
[2026-04-07 13:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:37] [INFO] generateDealTitle result {"contact_id":"12529","person_name":"کاظمی","mobile":"9155199715","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9155199715"}
[2026-04-07 13:54:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12529","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:54:37] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12529","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:54:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12529","title":"معامله چهارم 9155199715 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9155199715","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کاظمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:54:37","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:54:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12529","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9155199715 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:54:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:54:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-07 13:54:54] [INFO] Checking activity reminders 
[2026-04-07 13:54:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:54:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:54:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:54:59] [INFO] generateDealTitle result {"contact_id":"20869","person_name":"علی احمدی","mobile":"9155343514","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155343514"}
[2026-04-07 13:55:07] [INFO] Checking activity reminders 
[2026-04-07 13:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:55:24] [INFO] Checking activity reminders 
[2026-04-07 13:55:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:55:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:55:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20869","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:55:26","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:55:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20869","is_new_deal":true}
[2026-04-07 13:55:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:55:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:55:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:55:26] [INFO] getContactPrimaryPhone called {"contact_id":"20869"}
[2026-04-07 13:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:55:26] [INFO] getContactPrimaryPhone result {"contact_id":"20869","person_found":true,"primary_phone":"9155343514"}
[2026-04-07 13:55:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155343514"}
[2026-04-07 13:55:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155343514","contact_id":"20869","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:55:26"}
[2026-04-07 13:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:55:26] [INFO] generateDealTitle result {"contact_id":"20869","person_name":"علی احمدی","mobile":"9155343514","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155343514"}
[2026-04-07 13:55:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20869","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:55:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20869","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:55:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20869","title":"معامله دوم 9155343514 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155343514","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:55:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:55:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:55:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20869","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9155343514 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:55:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 13:55:37] [INFO] Checking activity reminders 
[2026-04-07 13:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:55:40] [INFO] Checking activity reminders 
[2026-04-07 13:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:55:48] [INFO] Checking activity reminders 
[2026-04-07 13:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:55:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21152","person_id":"3607"}
[2026-04-07 13:56:00] [INFO] Checking activity reminders 
[2026-04-07 13:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:56:08] [INFO] Checking activity reminders 
[2026-04-07 13:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:56:08] [INFO] Checking activity reminders 
[2026-04-07 13:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:56:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:13] [INFO] generateDealTitle result {"contact_id":"7992","person_name":"نصرتی","mobile":"9157452585","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9157452585"}
[2026-04-07 13:56:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7992","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:56:34","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7992","is_new_deal":true}
[2026-04-07 13:56:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:56:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:56:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:56:34] [INFO] getContactPrimaryPhone called {"contact_id":"7992"}
[2026-04-07 13:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:34] [INFO] getContactPrimaryPhone result {"contact_id":"7992","person_found":true,"primary_phone":"9157452585"}
[2026-04-07 13:56:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9157452585"}
[2026-04-07 13:56:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9157452585","contact_id":"7992","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:56:34"}
[2026-04-07 13:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:34] [INFO] generateDealTitle result {"contact_id":"7992","person_name":"نصرتی","mobile":"9157452585","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9157452585"}
[2026-04-07 13:56:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7992","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:56:34] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7992","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:56:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7992","title":"معامله دوم 9157452585 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9157452585","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصرتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:56:34","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:56:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7992","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9157452585 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:56:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 13:56:39] [INFO] Checking activity reminders 
[2026-04-07 13:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:56:50] [INFO] Checking activity reminders 
[2026-04-07 13:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:56:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12379","person_id":"3896"}
[2026-04-07 13:57:09] [INFO] Checking activity reminders 
[2026-04-07 13:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:57:13] [INFO] Checking activity reminders 
[2026-04-07 13:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:21] [INFO] generateDealTitle result {"contact_id":"10290","person_name":"حمید نوراله زاده","mobile":"9031088288","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031088288"}
[2026-04-07 13:57:39] [INFO] Checking activity reminders 
[2026-04-07 13:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:57:43] [INFO] Checking activity reminders 
[2026-04-07 13:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:57:52] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10290","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 13:57:52","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 13:57:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10290","is_new_deal":true}
[2026-04-07 13:57:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 13:57:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:57:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 13:57:52] [INFO] getContactPrimaryPhone called {"contact_id":"10290"}
[2026-04-07 13:57:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:52] [INFO] getContactPrimaryPhone result {"contact_id":"10290","person_found":true,"primary_phone":"9031088288"}
[2026-04-07 13:57:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9031088288"}
[2026-04-07 13:57:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9031088288","contact_id":"10290","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 13:57:52"}
[2026-04-07 13:57:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:52] [INFO] generateDealTitle result {"contact_id":"10290","person_name":"حمید نوراله زاده","mobile":"9031088288","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031088288"}
[2026-04-07 13:57:52] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"10290","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 13:57:52] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10290","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 13:57:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"10290","title":"معامله دوم 9031088288 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9031088288","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید نوراله زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 13:57:52","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 13:57:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:57:52] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 13:57:52] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"10290","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9031088288 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 13:57:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 13:57:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 13:58:09] [INFO] Checking activity reminders 
[2026-04-07 13:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:58:39] [INFO] Checking activity reminders 
[2026-04-07 13:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:58:41] [INFO] Checking activity reminders 
[2026-04-07 13:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:58:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 13:58:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 13:58:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 13:58:52] [INFO] generateDealTitle result {"contact_id":"11923","person_name":"ناصری","mobile":"9159875301","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9159875301"}
[2026-04-07 13:59:09] [INFO] Checking activity reminders 
[2026-04-07 13:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:59:12] [INFO] Checking activity reminders 
[2026-04-07 13:59:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:59:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:59:39] [INFO] Checking activity reminders 
[2026-04-07 13:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 13:59:42] [INFO] Checking activity reminders 
[2026-04-07 13:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 13:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:00:09] [INFO] Checking activity reminders 
[2026-04-07 14:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:00:12] [INFO] Checking activity reminders 
[2026-04-07 14:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:00:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11923","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:00:20","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 14:00:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11923","is_new_deal":true}
[2026-04-07 14:00:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:00:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:00:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:00:20] [INFO] getContactPrimaryPhone called {"contact_id":"11923"}
[2026-04-07 14:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 14:00:20] [INFO] getContactPrimaryPhone result {"contact_id":"11923","person_found":true,"primary_phone":"9159875301"}
[2026-04-07 14:00:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159875301"}
[2026-04-07 14:00:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159875301","contact_id":"11923","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:00:20"}
[2026-04-07 14:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 14:00:20] [INFO] generateDealTitle result {"contact_id":"11923","person_name":"ناصری","mobile":"9159875301","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9159875301"}
[2026-04-07 14:00:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11923","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:00:20] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11923","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:00:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11923","title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9159875301","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:00:20","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:00:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 14:00:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:00:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11923","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:00:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:00:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 14:00:39] [INFO] Checking activity reminders 
[2026-04-07 14:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:00:41] [INFO] Checking activity reminders 
[2026-04-07 14:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:00:54] [INFO] Checking activity reminders 
[2026-04-07 14:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:01:04] [INFO] Checking activity reminders 
[2026-04-07 14:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:01:10] [INFO] Checking activity reminders 
[2026-04-07 14:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:31] [INFO] generateDealTitle result {"contact_id":"7955","person_name":"بهاریان","mobile":"9163335648","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9163335648"}
[2026-04-07 14:01:34] [INFO] Checking activity reminders 
[2026-04-07 14:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:01:40] [INFO] Checking activity reminders 
[2026-04-07 14:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:01:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7955","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:01:48","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7955","is_new_deal":true}
[2026-04-07 14:01:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:01:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:01:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:01:48] [INFO] getContactPrimaryPhone called {"contact_id":"7955"}
[2026-04-07 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:48] [INFO] getContactPrimaryPhone result {"contact_id":"7955","person_found":true,"primary_phone":"9163335648"}
[2026-04-07 14:01:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163335648"}
[2026-04-07 14:01:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163335648","contact_id":"7955","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:01:48"}
[2026-04-07 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:48] [INFO] generateDealTitle result {"contact_id":"7955","person_name":"بهاریان","mobile":"9163335648","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9163335648"}
[2026-04-07 14:01:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7955","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:01:48] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7955","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:01:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7955","title":"معامله چهارم 9163335648 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9163335648","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهاریان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:01:48","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:01:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:01:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7955","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9163335648 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:01:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:01:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 14:02:03] [INFO] Checking activity reminders 
[2026-04-07 14:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:02:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:09] [INFO] generateDealTitle result {"contact_id":"21199","person_name":"پیمان اسکافی","mobile":"9163714279","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9163714279"}
[2026-04-07 14:02:11] [INFO] Checking activity reminders 
[2026-04-07 14:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:02:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21199","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:02:26","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21199","is_new_deal":true}
[2026-04-07 14:02:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:02:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:02:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:02:26] [INFO] getContactPrimaryPhone called {"contact_id":"21199"}
[2026-04-07 14:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:26] [INFO] getContactPrimaryPhone result {"contact_id":"21199","person_found":true,"primary_phone":"9163714279"}
[2026-04-07 14:02:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163714279"}
[2026-04-07 14:02:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163714279","contact_id":"21199","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:02:26"}
[2026-04-07 14:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:26] [INFO] generateDealTitle result {"contact_id":"21199","person_name":"پیمان اسکافی","mobile":"9163714279","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9163714279"}
[2026-04-07 14:02:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21199","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:02:26] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21199","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:02:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21199","title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9163714279","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پیمان اسکافی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:02:26","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:02:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21199","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:02:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:02:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 14:02:39] [INFO] Checking activity reminders 
[2026-04-07 14:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:02:42] [INFO] Checking activity reminders 
[2026-04-07 14:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:02:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:02:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:02:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:03:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:03:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:03:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:03:09] [INFO] Checking activity reminders 
[2026-04-07 14:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:03:12] [INFO] Checking activity reminders 
[2026-04-07 14:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:03:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:03:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:03:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:03:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:03:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:03:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:03:40] [INFO] Checking activity reminders 
[2026-04-07 14:03:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:03:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:03:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:03:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:03:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:03:43] [INFO] Checking activity reminders 
[2026-04-07 14:03:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:03:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:04:10] [INFO] Checking activity reminders 
[2026-04-07 14:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:04:13] [INFO] Checking activity reminders 
[2026-04-07 14:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:04:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:04:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:04:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:04:40] [INFO] Checking activity reminders 
[2026-04-07 14:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:04:43] [INFO] Checking activity reminders 
[2026-04-07 14:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:05:10] [INFO] Checking activity reminders 
[2026-04-07 14:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:05:13] [INFO] Checking activity reminders 
[2026-04-07 14:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:05:43] [INFO] Checking activity reminders 
[2026-04-07 14:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:06:14] [INFO] Checking activity reminders 
[2026-04-07 14:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:06:44] [INFO] Checking activity reminders 
[2026-04-07 14:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:07:14] [INFO] Checking activity reminders 
[2026-04-07 14:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:07:46] [INFO] Checking activity reminders 
[2026-04-07 14:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:08:19] [INFO] Checking activity reminders 
[2026-04-07 14:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:08:49] [INFO] Checking activity reminders 
[2026-04-07 14:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:09:20] [INFO] Checking activity reminders 
[2026-04-07 14:09:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:09:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:09:50] [INFO] Checking activity reminders 
[2026-04-07 14:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:10:20] [INFO] Checking activity reminders 
[2026-04-07 14:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:10:37] [INFO] Checking activity reminders 
[2026-04-07 14:10:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:10:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:10:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 14:10:51] [INFO] Checking activity reminders 
[2026-04-07 14:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:11:00] [INFO] Checking activity reminders 
[2026-04-07 14:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:11:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:08] [INFO] generateDealTitle result {"contact_id":"21277","person_name":"اقای فرحانی خوزستان","mobile":"9160603312","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9160603312"}
[2026-04-07 14:11:21] [INFO] Checking activity reminders 
[2026-04-07 14:11:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:11:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:11:30] [INFO] Checking activity reminders 
[2026-04-07 14:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:11:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21277","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:11:50","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21277","is_new_deal":true}
[2026-04-07 14:11:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:11:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:11:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:11:50] [INFO] getContactPrimaryPhone called {"contact_id":"21277"}
[2026-04-07 14:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:50] [INFO] getContactPrimaryPhone result {"contact_id":"21277","person_found":true,"primary_phone":"9160603312"}
[2026-04-07 14:11:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9160603312"}
[2026-04-07 14:11:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9160603312","contact_id":"21277","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:11:50"}
[2026-04-07 14:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:50] [INFO] generateDealTitle result {"contact_id":"21277","person_name":"اقای فرحانی خوزستان","mobile":"9160603312","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9160603312"}
[2026-04-07 14:11:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21277","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:11:50] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"21277","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:11:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21277","title":"معامله دوم 9160603312 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9160603312","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای فرحانی خوزستان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:11:50","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:11:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:11:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21277","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9160603312 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:11:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:11:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:11:52] [INFO] Checking activity reminders 
[2026-04-07 14:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:12:01] [INFO] Checking activity reminders 
[2026-04-07 14:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:12:22] [INFO] Checking activity reminders 
[2026-04-07 14:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:12:36] [INFO] Checking activity reminders 
[2026-04-07 14:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:12:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:12:42] [INFO] generateDealTitle result {"contact_id":"2624","person_name":"ایوب کیوانلو","mobile":"9159719004","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9159719004"}
[2026-04-07 14:12:52] [INFO] Checking activity reminders 
[2026-04-07 14:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:13:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2624","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:13:05","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2624","is_new_deal":true}
[2026-04-07 14:13:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:13:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:13:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:13:05] [INFO] getContactPrimaryPhone called {"contact_id":"2624"}
[2026-04-07 14:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:05] [INFO] getContactPrimaryPhone result {"contact_id":"2624","person_found":true,"primary_phone":"9159719004"}
[2026-04-07 14:13:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159719004"}
[2026-04-07 14:13:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159719004","contact_id":"2624","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:13:05"}
[2026-04-07 14:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:05] [INFO] generateDealTitle result {"contact_id":"2624","person_name":"ایوب کیوانلو","mobile":"9159719004","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9159719004"}
[2026-04-07 14:13:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2624","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:13:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"2624","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:13:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2624","title":"معامله سوم 9159719004 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9159719004","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"ایوب کیوانلو","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:13:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:13:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2624","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9159719004 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:13:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:07] [INFO] Checking activity reminders 
[2026-04-07 14:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:13:22] [INFO] Checking activity reminders 
[2026-04-07 14:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:13:24] [INFO] Lead update received {"contact_id":"2624","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 14:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2624"}
[2026-04-07 14:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:41] [INFO] Checking activity reminders 
[2026-04-07 14:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:13:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 14:13:54] [INFO] Checking activity reminders 
[2026-04-07 14:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:13:58] [INFO] Checking activity reminders 
[2026-04-07 14:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:14:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:14:16] [INFO] Lead update received {"contact_id":"21277","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 14:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:14:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21277"}
[2026-04-07 14:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:14:24] [INFO] Checking activity reminders 
[2026-04-07 14:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:14:51] [INFO] Checking activity reminders 
[2026-04-07 14:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:14:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:14:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:14:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:14:56] [INFO] Checking activity reminders 
[2026-04-07 14:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:15:21] [INFO] Checking activity reminders 
[2026-04-07 14:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:15:26] [INFO] Checking activity reminders 
[2026-04-07 14:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:15:51] [INFO] Checking activity reminders 
[2026-04-07 14:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:15:57] [INFO] Checking activity reminders 
[2026-04-07 14:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:16:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:16:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:16:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:16:21] [INFO] Checking activity reminders 
[2026-04-07 14:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:16:27] [INFO] Checking activity reminders 
[2026-04-07 14:16:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:16:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:16:51] [INFO] Checking activity reminders 
[2026-04-07 14:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:16:57] [INFO] Checking activity reminders 
[2026-04-07 14:16:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:16:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:17:21] [INFO] Checking activity reminders 
[2026-04-07 14:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:17:27] [INFO] Checking activity reminders 
[2026-04-07 14:17:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:17:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:17:52] [INFO] Checking activity reminders 
[2026-04-07 14:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:17:57] [INFO] Checking activity reminders 
[2026-04-07 14:17:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:17:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:18:23] [INFO] Checking activity reminders 
[2026-04-07 14:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:18:28] [INFO] Checking activity reminders 
[2026-04-07 14:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:18:53] [INFO] Checking activity reminders 
[2026-04-07 14:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:18:58] [INFO] Checking activity reminders 
[2026-04-07 14:18:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:18:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:19:23] [INFO] Checking activity reminders 
[2026-04-07 14:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:19:31] [INFO] Checking activity reminders 
[2026-04-07 14:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:19:53] [INFO] Checking activity reminders 
[2026-04-07 14:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:20:02] [INFO] Checking activity reminders 
[2026-04-07 14:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:20:23] [INFO] Checking activity reminders 
[2026-04-07 14:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:20:32] [INFO] Checking activity reminders 
[2026-04-07 14:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:20:53] [INFO] Checking activity reminders 
[2026-04-07 14:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:21:02] [INFO] Checking activity reminders 
[2026-04-07 14:21:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:21:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:21:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-07 14:21:28] [INFO] Checking activity reminders 
[2026-04-07 14:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:21:33] [INFO] Checking activity reminders 
[2026-04-07 14:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:21:39] [INFO] Checking activity reminders 
[2026-04-07 14:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:21:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:51] [INFO] Lead update received {"contact_id":"9142","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 14:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:51] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9142"}
[2026-04-07 14:21:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:21:55] [INFO] generateDealTitle result {"contact_id":"9142","person_name":"اقای حسینایی","mobile":"9159260107","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9159260107"}
[2026-04-07 14:22:03] [INFO] Checking activity reminders 
[2026-04-07 14:22:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:22:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:22:09] [INFO] Checking activity reminders 
[2026-04-07 14:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:22:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9142","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:22:14","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:22:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9142","is_new_deal":true}
[2026-04-07 14:22:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:22:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:22:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:22:14] [INFO] getContactPrimaryPhone called {"contact_id":"9142"}
[2026-04-07 14:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:22:14] [INFO] getContactPrimaryPhone result {"contact_id":"9142","person_found":true,"primary_phone":"9159260107"}
[2026-04-07 14:22:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159260107"}
[2026-04-07 14:22:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159260107","contact_id":"9142","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:22:14"}
[2026-04-07 14:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:22:14] [INFO] generateDealTitle result {"contact_id":"9142","person_name":"اقای حسینایی","mobile":"9159260107","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9159260107"}
[2026-04-07 14:22:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9142","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:22:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"9142","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:22:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9142","title":"معامله دوم 9159260107 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9159260107","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای حسینایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:22:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:22:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:22:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9142","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9159260107 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-07 14:22:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 14:22:33] [INFO] Checking activity reminders 
[2026-04-07 14:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:22:45] [INFO] Checking activity reminders 
[2026-04-07 14:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:22:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:22:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:22:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:23:04] [INFO] Checking activity reminders 
[2026-04-07 14:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:23:15] [INFO] Checking activity reminders 
[2026-04-07 14:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:23:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:23:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:23:34] [INFO] Checking activity reminders 
[2026-04-07 14:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:23:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:23:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:23:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:23:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:23:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:23:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:23:55] [INFO] Checking activity reminders 
[2026-04-07 14:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:23:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:04] [INFO] Checking activity reminders 
[2026-04-07 14:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:24:07] [INFO] Lead update received {"contact_id":"15050","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 14:24:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:07] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15050"}
[2026-04-07 14:24:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:13] [INFO] generateDealTitle result {"contact_id":"15050","person_name":"خانم قلی زاده","mobile":"9156038188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9156038188"}
[2026-04-07 14:24:25] [INFO] Checking activity reminders 
[2026-04-07 14:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:24:27] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15050","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:24:27","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 14:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15050","is_new_deal":true}
[2026-04-07 14:24:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:24:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:24:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:24:27] [INFO] getContactPrimaryPhone called {"contact_id":"15050"}
[2026-04-07 14:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:27] [INFO] getContactPrimaryPhone result {"contact_id":"15050","person_found":true,"primary_phone":"9156038188"}
[2026-04-07 14:24:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9156038188"}
[2026-04-07 14:24:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9156038188","contact_id":"15050","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 14:24:27"}
[2026-04-07 14:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:27] [INFO] generateDealTitle result {"contact_id":"15050","person_name":"خانم قلی زاده","mobile":"9156038188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9156038188"}
[2026-04-07 14:24:27] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15050","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-07 14:24:27] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15050","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 14:24:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15050","title":"معامله دوم 9156038188 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9156038188","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خانم قلی زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 14:24:27","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 14:24:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:27] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 14:24:27] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15050","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9156038188 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:24:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 14:24:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:24:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:24:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:24:35] [INFO] Checking activity reminders 
[2026-04-07 14:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:24:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:24:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:24:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:24:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:24:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:25:05] [INFO] Checking activity reminders 
[2026-04-07 14:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:25:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:25:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:25:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:25:28] [INFO] Checking activity reminders 
[2026-04-07 14:25:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:25:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:25:35] [INFO] Checking activity reminders 
[2026-04-07 14:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:25:35] [INFO] Checking activity reminders 
[2026-04-07 14:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:25:39] [INFO] Checking activity reminders 
[2026-04-07 14:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:26:06] [INFO] Checking activity reminders 
[2026-04-07 14:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:26:06] [INFO] Checking activity reminders 
[2026-04-07 14:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:26:08] [INFO] Checking activity reminders 
[2026-04-07 14:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:26:38] [INFO] Checking activity reminders 
[2026-04-07 14:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:26:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:05] [INFO] Lead update received {"contact_id":"9700","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 14:27:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:05] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9700"}
[2026-04-07 14:27:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:08] [INFO] Checking activity reminders 
[2026-04-07 14:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:27:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9700","deal_id":"local_694fc7146061a3.58196181","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:27:25","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 14:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9700","is_new_deal":false}
[2026-04-07 14:27:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:27:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:27:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 14:27:25] [INFO] getContactPrimaryPhone called {"contact_id":"9700"}
[2026-04-07 14:27:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:25] [INFO] getContactPrimaryPhone result {"contact_id":"9700","person_found":true,"primary_phone":"9170161011"}
[2026-04-07 14:27:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170161011"}
[2026-04-07 14:27:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170161011","contact_id":"9700","deal_id":"local_694fc7146061a3.58196181","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:27:25"}
[2026-04-07 14:27:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_694fc7146061a3.58196181","contact_id":"9700","existing_deal_found":true,"existing_contact_id":"9700","existing_title":"معامله اول 9170161011 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:27:25"}
[2026-04-07 14:27:26] [INFO] DealController.save validated payments {"deal_id":"local_694fc7146061a3.58196181","contact_id":"9700","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 14:27:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9700","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 14:27:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694fc7146061a3.58196181","contact_didar_id":"9700","title":"معامله اول 9170161011 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9170161011","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرفان کاوه","existing_deal":"YES","existing_deal_id":"local_694fc7146061a3.58196181","existing_deal_status":"Pending","server_time":"2026-04-07 14:27:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 14:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694fc7146061a3.58196181","contact_id":"9700","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9170161011 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-07 14:27:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:27:39] [INFO] Checking activity reminders 
[2026-04-07 14:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:28:09] [INFO] Checking activity reminders 
[2026-04-07 14:28:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:28:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:28:39] [INFO] Checking activity reminders 
[2026-04-07 14:28:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:28:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:28:46] [INFO] Activity save request {"post_data":{"contact_id":"9700","deal_id":"local_694fc7146061a3.58196181","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کاسب خودرو \/ 2 ماهه نتونسته درامد فعالی داشته باشه \r\nنوسان گیری در بازار مالی \r\nپرزنت 6 ماهه کانال \r\n","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:28:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 14:28:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:28:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9700","note_was_empty":true}
[2026-04-07 14:28:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"9700","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:28:46] [INFO] Updating virtual stage {"contact_id":"9700","stage_name":"deal_registered","force":false}
[2026-04-07 14:28:46] [INFO] Virtual stage successfully saved {"contact_id":"9700","stage_name":"deal_registered"}
[2026-04-07 14:28:46] [INFO] Virtual stage updated after activity save {"contact_id":"9700"}
[2026-04-07 14:28:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694fc7146061a3.58196181","stage":"تماس پیگیری","status_change":null}
[2026-04-07 14:28:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4e3669afff1.06143953","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:28:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4e3669afff1.06143953"}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:28:46] [INFO] Updating virtual stage {"contact_id":"9700","stage_name":"deal_registered","force":false}
[2026-04-07 14:28:46] [INFO] Virtual stage successfully saved {"contact_id":"9700","stage_name":"deal_registered"}
[2026-04-07 14:28:46] [INFO] Virtual stage updated after activity save {"contact_id":"9700"}
[2026-04-07 14:28:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9700","person_id":"13934"}
[2026-04-07 14:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:29:10] [INFO] Checking activity reminders 
[2026-04-07 14:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:29:40] [INFO] Checking activity reminders 
[2026-04-07 14:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:30:10] [INFO] Checking activity reminders 
[2026-04-07 14:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:30:38] [INFO] Activity save request {"post_data":{"contact_id":"8074","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:30:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 14:30:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:30:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8074","note_was_empty":true}
[2026-04-07 14:30:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"8074","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 14:30:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4e3d66cddd2.90184063","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:30:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4e3d66cddd2.90184063"}
[2026-04-07 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:30:38] [INFO] Updating virtual stage {"contact_id":"8074","stage_name":"deal_registered","force":false}
[2026-04-07 14:30:38] [INFO] Virtual stage successfully saved {"contact_id":"8074","stage_name":"deal_registered"}
[2026-04-07 14:30:38] [INFO] Virtual stage updated after activity save {"contact_id":"8074"}
[2026-04-07 14:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-07 14:30:40] [INFO] Checking activity reminders 
[2026-04-07 14:30:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:30:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:31:11] [INFO] Checking activity reminders 
[2026-04-07 14:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:31:43] [INFO] Checking activity reminders 
[2026-04-07 14:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:32:13] [INFO] Checking activity reminders 
[2026-04-07 14:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:32:43] [INFO] Checking activity reminders 
[2026-04-07 14:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:33:13] [INFO] Checking activity reminders 
[2026-04-07 14:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:33:43] [INFO] Checking activity reminders 
[2026-04-07 14:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:34:13] [INFO] Checking activity reminders 
[2026-04-07 14:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:34:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:34:44] [INFO] Checking activity reminders 
[2026-04-07 14:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:35:14] [INFO] Checking activity reminders 
[2026-04-07 14:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:35:44] [INFO] Checking activity reminders 
[2026-04-07 14:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:36:15] [INFO] Checking activity reminders 
[2026-04-07 14:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:36:45] [INFO] Checking activity reminders 
[2026-04-07 14:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:37:15] [INFO] Checking activity reminders 
[2026-04-07 14:37:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:37:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:37:46] [INFO] Checking activity reminders 
[2026-04-07 14:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:38:16] [INFO] Checking activity reminders 
[2026-04-07 14:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:38:46] [INFO] Checking activity reminders 
[2026-04-07 14:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:39:16] [INFO] Checking activity reminders 
[2026-04-07 14:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:39:46] [INFO] Checking activity reminders 
[2026-04-07 14:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:40:16] [INFO] Checking activity reminders 
[2026-04-07 14:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:40:47] [INFO] Checking activity reminders 
[2026-04-07 14:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:40:51] [WARNING] Auth check failed - not authenticated {"session_id":"fc8mv1tlv3cnetiutpjjpojf13","session_keys":[],"action":"log_client_event"}
[2026-04-07 14:40:51] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-07 14:40:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 14:40:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 14:40:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 14:40:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 14:41:17] [INFO] Checking activity reminders 
[2026-04-07 14:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:41:24] [INFO] Checking activity reminders 
[2026-04-07 14:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:41:47] [INFO] Checking activity reminders 
[2026-04-07 14:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:41:55] [INFO] Checking activity reminders 
[2026-04-07 14:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8092","person_id":"3456"}
[2026-04-07 14:42:17] [INFO] Checking activity reminders 
[2026-04-07 14:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:42:25] [INFO] Checking activity reminders 
[2026-04-07 14:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:42:47] [INFO] Checking activity reminders 
[2026-04-07 14:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:42:58] [INFO] Activity save request {"post_data":{"contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه طلا و دلار دارم \r\nگفتم دلار بفرست \r\nبرای کانال 39 شش ماهه پرزنت کردم \/ خیلی حرفاش تناقض داره \r\nارسال شبا ملت در پیامک ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:42:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 14:42:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:42:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2947","note_was_empty":true}
[2026-04-07 14:42:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"2947","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:42:58] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-07 14:42:58] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-07 14:42:58] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-07 14:42:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca90762afa17.07440898","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 14:42:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4e6ba4eb035.27172355","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:42:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4e6ba4eb035.27172355"}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:42:58] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-07 14:42:58] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-07 14:42:58] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-07 14:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:43:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:43:08","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 14:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:43:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2947","is_new_deal":false}
[2026-04-07 14:43:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:43:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:43:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:43:08] [INFO] getContactPrimaryPhone called {"contact_id":"2947"}
[2026-04-07 14:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:43:08] [INFO] getContactPrimaryPhone result {"contact_id":"2947","person_found":true,"primary_phone":"9121211748"}
[2026-04-07 14:43:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121211748"}
[2026-04-07 14:43:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121211748","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:43:08"}
[2026-04-07 14:43:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","existing_deal_found":true,"existing_contact_id":"2947","existing_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:43:08"}
[2026-04-07 14:43:08] [INFO] DealController.save validated payments {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-07 14:43:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2947","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 14:43:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90762afa17.07440898","contact_didar_id":"2947","title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9121211748","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین صنعتی","existing_deal":"YES","existing_deal_id":"local_69ca90762afa17.07440898","existing_deal_status":"Pending","server_time":"2026-04-07 14:43:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 14:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:43:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:43:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-07 14:43:17] [INFO] Checking activity reminders 
[2026-04-07 14:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:43:20] [INFO] Checking activity reminders 
[2026-04-07 14:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:43:32] [INFO] Checking activity reminders 
[2026-04-07 14:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:43:43] [INFO] Checking activity reminders 
[2026-04-07 14:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:43:48] [INFO] Checking activity reminders 
[2026-04-07 14:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:44:18] [INFO] Checking activity reminders 
[2026-04-07 14:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:44:48] [INFO] Checking activity reminders 
[2026-04-07 14:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:45:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:45:18] [INFO] Checking activity reminders 
[2026-04-07 14:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:45:59] [INFO] Checking activity reminders 
[2026-04-07 14:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:46:12] [INFO] Checking activity reminders 
[2026-04-07 14:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:46:21] [INFO] Checking activity reminders 
[2026-04-07 14:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:46:26] [INFO] Checking activity reminders 
[2026-04-07 14:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:46:38] [INFO] Checking activity reminders 
[2026-04-07 14:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:46:38] [INFO] Checking activity reminders 
[2026-04-07 14:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:03] [INFO] Checking activity reminders 
[2026-04-07 14:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2756","person_id":"3920"}
[2026-04-07 14:47:08] [INFO] Checking activity reminders 
[2026-04-07 14:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:21] [INFO] Checking activity reminders 
[2026-04-07 14:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:23] [INFO] Checking activity reminders 
[2026-04-07 14:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:25] [INFO] Checking activity reminders 
[2026-04-07 14:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:27] [INFO] Checking activity reminders 
[2026-04-07 14:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:28] [INFO] Checking activity reminders 
[2026-04-07 14:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:47:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6967","deal_id":"local_69d4da8cd7d966.48107679","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 14:47:44","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 14:47:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:47:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6967","is_new_deal":false}
[2026-04-07 14:47:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 14:47:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:47:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 14:47:44] [INFO] getContactPrimaryPhone called {"contact_id":"6967"}
[2026-04-07 14:47:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:47:44] [INFO] getContactPrimaryPhone result {"contact_id":"6967","person_found":true,"primary_phone":"9153635810"}
[2026-04-07 14:47:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153635810"}
[2026-04-07 14:47:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153635810","contact_id":"6967","deal_id":"local_69d4da8cd7d966.48107679","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:47:44"}
[2026-04-07 14:47:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4da8cd7d966.48107679","contact_id":"6967","existing_deal_found":true,"existing_contact_id":"6967","existing_title":"معامله سوم 9153635810 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 14:47:44"}
[2026-04-07 14:47:44] [INFO] DealController.save validated payments {"deal_id":"local_69d4da8cd7d966.48107679","contact_id":"6967","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 14:47:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6967","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 14:47:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4da8cd7d966.48107679","contact_didar_id":"6967","title":"معامله سوم 9153635810 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9153635810","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"استانستی","existing_deal":"YES","existing_deal_id":"local_69d4da8cd7d966.48107679","existing_deal_status":"Pending","server_time":"2026-04-07 14:47:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 14:47:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:47:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4da8cd7d966.48107679","contact_id":"6967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9153635810 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 14:47:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 14:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:47:57] [INFO] Checking activity reminders 
[2026-04-07 14:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:48:01] [INFO] Checking activity reminders 
[2026-04-07 14:48:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:48:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:48:11] [INFO] Activity save request {"post_data":{"contact_id":"6967","deal_id":"local_69d4da8cd7d966.48107679","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 14:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 14:48:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 14:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6967","note_was_empty":true}
[2026-04-07 14:48:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"6967","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 14:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:11] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-07 14:48:11] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-07 14:48:11] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-07 14:48:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da8cd7d966.48107679","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 14:48:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4e7f3cb9d56.97138505","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 14:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4e7f3cb9d56.97138505"}
[2026-04-07 14:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:11] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-07 14:48:11] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-07 14:48:11] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-07 14:48:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-07 14:48:27] [INFO] Checking activity reminders 
[2026-04-07 14:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:48:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 14:48:34] [INFO] Checking activity reminders 
[2026-04-07 14:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:48:58] [INFO] Checking activity reminders 
[2026-04-07 14:48:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:48:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:49:04] [INFO] Checking activity reminders 
[2026-04-07 14:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:49:28] [INFO] Checking activity reminders 
[2026-04-07 14:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:49:34] [INFO] Checking activity reminders 
[2026-04-07 14:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:49:34] [WARNING] Auth check failed - not authenticated {"session_id":"cog29ruqeohkijkdu6nshs1dco","session_keys":[],"action":"log_client_event"}
[2026-04-07 14:49:35] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-07 14:49:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 14:49:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-07 14:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:49:58] [INFO] Checking activity reminders 
[2026-04-07 14:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:05] [INFO] Checking activity reminders 
[2026-04-07 14:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:07] [INFO] Checking activity reminders 
[2026-04-07 14:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:10] [INFO] Checking activity reminders 
[2026-04-07 14:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:28] [INFO] Checking activity reminders 
[2026-04-07 14:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:35] [INFO] Checking activity reminders 
[2026-04-07 14:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:50:58] [INFO] Checking activity reminders 
[2026-04-07 14:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:51:06] [INFO] Checking activity reminders 
[2026-04-07 14:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:51:15] [INFO] Activity save request {"post_data":{"contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت واریز تا پنج شنبه صبح ساعت ۱۰ \r\nمیگه شرایط جنگ چند روز بهم فرصت بدین\r\nنمیخواستم کانال باشم شما تماس گرفتین تصمیمم برگشت \r\nلینک کانال ۴۰۴ رو نداشت ارسال شد","activity_duration":"25","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 14:51:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"820","note_was_empty":true}
[2026-04-07 14:51:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"820","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:15] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-07 14:51:15] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-07 14:51:15] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-07 14:51:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bdce250d32.40067496","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 14:51:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4e8ab630546.31454427","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4e8ab630546.31454427"}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:15] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-07 14:51:15] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-07 14:51:15] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-07 14:51:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-07 14:51:28] [INFO] Checking activity reminders 
[2026-04-07 14:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:51:29] [INFO] Checking activity reminders 
[2026-04-07 14:51:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:51:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:51:34] [INFO] Checking activity reminders 
[2026-04-07 14:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:51:58] [INFO] Checking activity reminders 
[2026-04-07 14:51:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:51:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:52:10] [INFO] Checking activity reminders 
[2026-04-07 14:52:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:52:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:52:13] [INFO] Checking activity reminders 
[2026-04-07 14:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:52:28] [INFO] Checking activity reminders 
[2026-04-07 14:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:52:36] [INFO] Checking activity reminders 
[2026-04-07 14:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:52:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-07 14:52:58] [INFO] Checking activity reminders 
[2026-04-07 14:52:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:52:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:53:21] [INFO] Checking activity reminders 
[2026-04-07 14:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:53:28] [INFO] Checking activity reminders 
[2026-04-07 14:53:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:53:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:53:29] [INFO] Checking activity reminders 
[2026-04-07 14:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:53:54] [INFO] Checking activity reminders 
[2026-04-07 14:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:53:59] [INFO] Checking activity reminders 
[2026-04-07 14:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:54:11] [INFO] Checking activity reminders 
[2026-04-07 14:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13392","person_id":"13935"}
[2026-04-07 14:54:29] [INFO] Checking activity reminders 
[2026-04-07 14:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:54:59] [INFO] Checking activity reminders 
[2026-04-07 14:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:11] [INFO] Checking activity reminders 
[2026-04-07 14:55:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:16] [INFO] Checking activity reminders 
[2026-04-07 14:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16501","person_id":"10333"}
[2026-04-07 14:55:29] [INFO] Checking activity reminders 
[2026-04-07 14:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:47] [INFO] Checking activity reminders 
[2026-04-07 14:55:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:57] [INFO] Checking activity reminders 
[2026-04-07 14:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:55:59] [INFO] Checking activity reminders 
[2026-04-07 14:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:56:17] [INFO] Checking activity reminders 
[2026-04-07 14:56:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:56:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:56:29] [INFO] Checking activity reminders 
[2026-04-07 14:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:56:59] [INFO] Checking activity reminders 
[2026-04-07 14:56:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:56:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:57:29] [INFO] Checking activity reminders 
[2026-04-07 14:57:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:57:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:57:59] [INFO] Checking activity reminders 
[2026-04-07 14:57:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:57:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:58:08] [INFO] Checking activity reminders 
[2026-04-07 14:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:58:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11246","person_id":"12880"}
[2026-04-07 14:58:29] [INFO] Checking activity reminders 
[2026-04-07 14:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:58:52] [INFO] Checking activity reminders 
[2026-04-07 14:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:58:59] [INFO] Checking activity reminders 
[2026-04-07 14:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:59:16] [INFO] Checking activity reminders 
[2026-04-07 14:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:59:20] [INFO] Checking activity reminders 
[2026-04-07 14:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 14:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20973","person_id":"14413"}
[2026-04-07 14:59:30] [INFO] Checking activity reminders 
[2026-04-07 14:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 14:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:00:00] [INFO] Checking activity reminders 
[2026-04-07 15:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:00:05] [INFO] Checking activity reminders 
[2026-04-07 15:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:00:30] [INFO] Checking activity reminders 
[2026-04-07 15:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:01:00] [INFO] Checking activity reminders 
[2026-04-07 15:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:01:13] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:01:13","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:01:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12229","is_new_deal":false}
[2026-04-07 15:01:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:01:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:01:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:01:13] [INFO] getContactPrimaryPhone called {"contact_id":"12229"}
[2026-04-07 15:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:01:13] [INFO] getContactPrimaryPhone result {"contact_id":"12229","person_found":true,"primary_phone":"9147669710"}
[2026-04-07 15:01:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147669710"}
[2026-04-07 15:01:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147669710","contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:01:13"}
[2026-04-07 15:01:13] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","existing_deal_found":true,"existing_contact_id":"12229","existing_title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:01:13"}
[2026-04-07 15:01:13] [INFO] DealController.save validated payments {"deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 15:01:13] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12229","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:01:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4d9c05036c6.57138482","contact_didar_id":"12229","title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9147669710","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حیدری","existing_deal":"YES","existing_deal_id":"local_69d4d9c05036c6.57138482","existing_deal_status":"Pending","server_time":"2026-04-07 15:01:13","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:01:13] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 15:01:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:01:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:01:15] [INFO] Checking activity reminders 
[2026-04-07 15:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:01:30] [INFO] Checking activity reminders 
[2026-04-07 15:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:01:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"965","person_id":"10029"}
[2026-04-07 15:01:45] [INFO] Checking activity reminders 
[2026-04-07 15:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:02:00] [INFO] Checking activity reminders 
[2026-04-07 15:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:02:00] [INFO] Checking activity reminders 
[2026-04-07 15:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:02:30] [INFO] Checking activity reminders 
[2026-04-07 15:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:02:38] [INFO] Checking activity reminders 
[2026-04-07 15:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:02:52] [INFO] Checking activity reminders 
[2026-04-07 15:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:03:00] [INFO] Activity save request {"post_data":{"contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 15:03:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12229","note_was_empty":true}
[2026-04-07 15:03:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"12229","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:00] [INFO] Updating virtual stage {"contact_id":"12229","stage_name":"deal_registered","force":false}
[2026-04-07 15:03:00] [INFO] Virtual stage successfully saved {"contact_id":"12229","stage_name":"deal_registered"}
[2026-04-07 15:03:00] [INFO] Virtual stage updated after activity save {"contact_id":"12229"}
[2026-04-07 15:03:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4d9c05036c6.57138482","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 15:03:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4eb6ccc2238.89301070","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4eb6ccc2238.89301070"}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:00] [INFO] Updating virtual stage {"contact_id":"12229","stage_name":"deal_registered","force":false}
[2026-04-07 15:03:00] [INFO] Virtual stage successfully saved {"contact_id":"12229","stage_name":"deal_registered"}
[2026-04-07 15:03:00] [INFO] Virtual stage updated after activity save {"contact_id":"12229"}
[2026-04-07 15:03:00] [INFO] Checking activity reminders 
[2026-04-07 15:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:03:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-07 15:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:03:31] [INFO] Checking activity reminders 
[2026-04-07 15:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:03:37] [INFO] Checking activity reminders 
[2026-04-07 15:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"999","person_id":"16868"}
[2026-04-07 15:04:01] [INFO] Checking activity reminders 
[2026-04-07 15:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:04:19] [INFO] Checking activity reminders 
[2026-04-07 15:04:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:04:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:04:31] [INFO] Checking activity reminders 
[2026-04-07 15:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:01] [INFO] Checking activity reminders 
[2026-04-07 15:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:03] [INFO] Checking activity reminders 
[2026-04-07 15:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:19] [INFO] Checking activity reminders 
[2026-04-07 15:05:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7026","person_id":"15249"}
[2026-04-07 15:05:31] [INFO] Checking activity reminders 
[2026-04-07 15:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:42] [INFO] Checking activity reminders 
[2026-04-07 15:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:05:57] [INFO] Checking activity reminders 
[2026-04-07 15:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:01] [INFO] Checking activity reminders 
[2026-04-07 15:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7273","deal_id":"local_69d499c50e48e1.99503615","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:06:03","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 15:06:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7273","is_new_deal":false}
[2026-04-07 15:06:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:06:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:06:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:06:03] [INFO] getContactPrimaryPhone called {"contact_id":"7273"}
[2026-04-07 15:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 15:06:03] [INFO] getContactPrimaryPhone result {"contact_id":"7273","person_found":true,"primary_phone":"9143423806"}
[2026-04-07 15:06:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143423806"}
[2026-04-07 15:06:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143423806","contact_id":"7273","deal_id":"local_69d499c50e48e1.99503615","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:06:03"}
[2026-04-07 15:06:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","existing_deal_found":true,"existing_contact_id":"7273","existing_title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:06:03"}
[2026-04-07 15:06:03] [INFO] DealController.save validated payments {"deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 15:06:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7273","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:06:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d499c50e48e1.99503615","contact_didar_id":"7273","title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143423806","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رسول بهرامی","existing_deal":"YES","existing_deal_id":"local_69d499c50e48e1.99503615","existing_deal_status":"Pending","server_time":"2026-04-07 15:06:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 15:06:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d499c50e48e1.99503615","contact_id":"7273","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9143423806 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 15:06:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7273","person_id":"13781"}
[2026-04-07 15:06:10] [INFO] Checking activity reminders 
[2026-04-07 15:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:12] [INFO] Checking activity reminders 
[2026-04-07 15:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:14] [INFO] Checking activity reminders 
[2026-04-07 15:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:16] [INFO] Checking activity reminders 
[2026-04-07 15:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:06:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:06:46] [INFO] Checking activity reminders 
[2026-04-07 15:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:07:16] [INFO] Checking activity reminders 
[2026-04-07 15:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:07:46] [INFO] Checking activity reminders 
[2026-04-07 15:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:08:16] [INFO] Checking activity reminders 
[2026-04-07 15:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:08:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:08:23","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:08:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d285cc674a84.48649371","is_new_deal":false}
[2026-04-07 15:08:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 15:08:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 15:08:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 15:08:23] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-07 15:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:08:23] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d285cc674a84.48649371","person_found":true,"primary_phone":"9163657985"}
[2026-04-07 15:08:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163657985"}
[2026-04-07 15:08:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163657985","contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:08:23"}
[2026-04-07 15:08:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","existing_deal_found":true,"existing_contact_id":"local_69d285cc674a84.48649371","existing_title":"معامله اول 9163657985 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:08:23"}
[2026-04-07 15:08:23] [INFO] DealController.save validated payments {"deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 15:08:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d285cc674a84.48649371","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:08:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d285cc6e756","contact_didar_id":"local_69d285cc674a84.48649371","title":"معامله اول 9163657985 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9163657985","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدمهدی نصرتی","existing_deal":"YES","existing_deal_id":"local_69d285cc6e756","existing_deal_status":"Pending","server_time":"2026-04-07 15:08:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:08:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d285cc6e756","contact_id":"local_69d285cc674a84.48649371","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9163657985 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-07 15:08:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:08:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:08:46] [INFO] Checking activity reminders 
[2026-04-07 15:08:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:08:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:08:57] [INFO] Checking activity reminders 
[2026-04-07 15:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:09:27] [INFO] Checking activity reminders 
[2026-04-07 15:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:09:57] [INFO] Checking activity reminders 
[2026-04-07 15:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:10:27] [INFO] Checking activity reminders 
[2026-04-07 15:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:10:57] [INFO] Checking activity reminders 
[2026-04-07 15:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:11:27] [INFO] Checking activity reminders 
[2026-04-07 15:11:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:11:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:11:57] [INFO] Checking activity reminders 
[2026-04-07 15:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:12:27] [INFO] Checking activity reminders 
[2026-04-07 15:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:12:58] [INFO] Checking activity reminders 
[2026-04-07 15:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:13:28] [INFO] Checking activity reminders 
[2026-04-07 15:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:13:58] [INFO] Checking activity reminders 
[2026-04-07 15:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:14:28] [INFO] Checking activity reminders 
[2026-04-07 15:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:14:58] [INFO] Checking activity reminders 
[2026-04-07 15:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:15:28] [INFO] Checking activity reminders 
[2026-04-07 15:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:15:58] [INFO] Checking activity reminders 
[2026-04-07 15:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:16:28] [INFO] Checking activity reminders 
[2026-04-07 15:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:16:48] [INFO] Checking activity reminders 
[2026-04-07 15:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:16:58] [INFO] Checking activity reminders 
[2026-04-07 15:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:16:59] [INFO] Checking activity reminders 
[2026-04-07 15:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-07 15:17:28] [INFO] Checking activity reminders 
[2026-04-07 15:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:17:58] [INFO] Checking activity reminders 
[2026-04-07 15:17:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:17:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:18:03] [INFO] Checking activity reminders 
[2026-04-07 15:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1005","person_id":"13733"}
[2026-04-07 15:18:29] [INFO] Checking activity reminders 
[2026-04-07 15:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:18:59] [INFO] Checking activity reminders 
[2026-04-07 15:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:19:18] [INFO] Checking activity reminders 
[2026-04-07 15:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:19:29] [INFO] Checking activity reminders 
[2026-04-07 15:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4757","person_id":"6984"}
[2026-04-07 15:19:48] [INFO] Checking activity reminders 
[2026-04-07 15:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:19:59] [INFO] Checking activity reminders 
[2026-04-07 15:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:01] [INFO] Checking activity reminders 
[2026-04-07 15:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:16] [INFO] Checking activity reminders 
[2026-04-07 15:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:29] [INFO] Checking activity reminders 
[2026-04-07 15:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:39] [INFO] Checking activity reminders 
[2026-04-07 15:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:44] [INFO] Activity save request {"post_data":{"contact_id":"local_69d285cc674a84.48649371","deal_id":"local_69d285cc6e756","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه با هداوند کار واسطه گری خودرو راه انداختیم \/ بهش گفتم امسال جابجایی سرمایه و ریسک زیادی برای سرمایه هاست \r\nجلسه داشت \/اطلاع میده ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 15:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 15:20:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 15:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d285cc674a84.48649371","note_was_empty":true}
[2026-04-07 15:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:44] [INFO] Updating virtual stage {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered","force":false}
[2026-04-07 15:20:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered"}
[2026-04-07 15:20:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-07 15:20:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d285cc6e756","stage":"تماس پیگیری","status_change":null}
[2026-04-07 15:20:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4ef94e8bee9.22346742","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 15:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4ef94e8bee9.22346742"}
[2026-04-07 15:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:44] [INFO] Updating virtual stage {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered","force":false}
[2026-04-07 15:20:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285cc674a84.48649371","stage_name":"deal_registered"}
[2026-04-07 15:20:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285cc674a84.48649371"}
[2026-04-07 15:20:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285cc674a84.48649371","person_id":"21992"}
[2026-04-07 15:20:58] [INFO] Checking activity reminders 
[2026-04-07 15:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:20:59] [INFO] Checking activity reminders 
[2026-04-07 15:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:21:15] [INFO] Checking activity reminders 
[2026-04-07 15:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1567","person_id":"13878"}
[2026-04-07 15:21:29] [INFO] Checking activity reminders 
[2026-04-07 15:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:21:46] [INFO] Checking activity reminders 
[2026-04-07 15:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:21:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 15:21:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:49] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:50] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:52] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:52] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-07 15:21:52] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-07 15:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:21:59] [INFO] Checking activity reminders 
[2026-04-07 15:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:00] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:22:00] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 15:22:00] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 15:22:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:22:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:22:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:22:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:22:05] [INFO] Checking activity reminders 
[2026-04-07 15:22:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:09] [INFO] Checking activity reminders 
[2026-04-07 15:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:23] [INFO] Checking activity reminders 
[2026-04-07 15:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:29] [INFO] Checking activity reminders 
[2026-04-07 15:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:31] [INFO] Checking activity reminders 
[2026-04-07 15:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:35] [INFO] Checking activity reminders 
[2026-04-07 15:22:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:22:49","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:22:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"6428","is_new_deal":false}
[2026-04-07 15:22:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-04-07 15:22:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-04-07 15:22:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-04-07 15:22:49] [INFO] getContactPrimaryPhone called {"contact_id":"6428"}
[2026-04-07 15:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:22:49] [INFO] getContactPrimaryPhone result {"contact_id":"6428","person_found":true,"primary_phone":"9169762778"}
[2026-04-07 15:22:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9169762778"}
[2026-04-07 15:22:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9169762778","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:22:49"}
[2026-04-07 15:22:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","existing_deal_found":true,"existing_contact_id":"6428","existing_title":"معامله سوم 9169762778 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:22:49"}
[2026-04-07 15:22:49] [INFO] DealController.save validated payments {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-07 15:22:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6428","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:22:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b25d1287705.12209602","contact_didar_id":"6428","title":"معامله سوم 9169762778 | کانال VIP","base_title_used":"معامله سوم 9169762778","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خزایی خزایی","existing_deal":"YES","existing_deal_id":"local_699b25d1287705.12209602","existing_deal_status":"Pending","server_time":"2026-04-07 15:22:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:22:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b25d1287705.12209602","contact_id":"6428","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9169762778 | کانال VIP","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:22:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:22:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:22:56] [INFO] Checking activity reminders 
[2026-04-07 15:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:22:59] [INFO] Checking activity reminders 
[2026-04-07 15:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:23:01] [INFO] Checking activity reminders 
[2026-04-07 15:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:23:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2057","person_id":"7038"}
[2026-04-07 15:23:27] [INFO] Checking activity reminders 
[2026-04-07 15:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:23:29] [INFO] Checking activity reminders 
[2026-04-07 15:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:23:31] [INFO] Checking activity reminders 
[2026-04-07 15:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:23:57] [INFO] Checking activity reminders 
[2026-04-07 15:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:00] [INFO] Checking activity reminders 
[2026-04-07 15:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:01] [INFO] Checking activity reminders 
[2026-04-07 15:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:24:27] [INFO] Checking activity reminders 
[2026-04-07 15:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:30] [INFO] Checking activity reminders 
[2026-04-07 15:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:24:31","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:24:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6428","is_new_deal":false}
[2026-04-07 15:24:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:24:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:24:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:24:31] [INFO] getContactPrimaryPhone called {"contact_id":"6428"}
[2026-04-07 15:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:24:31] [INFO] getContactPrimaryPhone result {"contact_id":"6428","person_found":true,"primary_phone":"9169762778"}
[2026-04-07 15:24:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9169762778"}
[2026-04-07 15:24:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9169762778","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:24:31"}
[2026-04-07 15:24:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","existing_deal_found":true,"existing_contact_id":"6428","existing_title":"معامله سوم 9169762778 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:24:31"}
[2026-04-07 15:24:31] [INFO] DealController.save validated payments {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-07 15:24:31] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6428","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:24:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b25d1287705.12209602","contact_didar_id":"6428","title":"معامله سوم 9169762778 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9169762778","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خزایی خزایی","existing_deal":"YES","existing_deal_id":"local_699b25d1287705.12209602","existing_deal_status":"Pending","server_time":"2026-04-07 15:24:31","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:24:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b25d1287705.12209602","contact_id":"6428","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9169762778 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:24:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:24:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:24:32] [INFO] Checking activity reminders 
[2026-04-07 15:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:24:43] [INFO] Checking activity reminders 
[2026-04-07 15:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:00] [INFO] Checking activity reminders 
[2026-04-07 15:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:02] [INFO] Checking activity reminders 
[2026-04-07 15:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:18] [INFO] Checking activity reminders 
[2026-04-07 15:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:25:19","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6428","is_new_deal":false}
[2026-04-07 15:25:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:25:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:25:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:25:19] [INFO] getContactPrimaryPhone called {"contact_id":"6428"}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:19] [INFO] getContactPrimaryPhone result {"contact_id":"6428","person_found":true,"primary_phone":"9169762778"}
[2026-04-07 15:25:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9169762778"}
[2026-04-07 15:25:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9169762778","contact_id":"6428","deal_id":"local_699b25d1287705.12209602","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:25:19"}
[2026-04-07 15:25:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","existing_deal_found":true,"existing_contact_id":"6428","existing_title":"معامله سوم 9169762778 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:25:19"}
[2026-04-07 15:25:19] [INFO] DealController.save validated payments {"deal_id":"local_699b25d1287705.12209602","contact_id":"6428","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 15:25:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6428","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:25:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699b25d1287705.12209602","contact_didar_id":"6428","title":"معامله سوم 9169762778 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9169762778","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خزایی خزایی","existing_deal":"YES","existing_deal_id":"local_699b25d1287705.12209602","existing_deal_status":"Pending","server_time":"2026-04-07 15:25:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:19] [INFO] Deal success processed {"contact_id":"6428","person_name":"خزایی خزایی","products_count":1}
[2026-04-07 15:25:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699b25d1287705.12209602","contact_id":"6428","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9169762778 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:25:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:19] [INFO] Updating virtual stage {"contact_id":"6428","stage_name":"with_purchase","force":true}
[2026-04-07 15:25:19] [INFO] Virtual stage successfully saved {"contact_id":"6428","stage_name":"with_purchase"}
[2026-04-07 15:25:19] [INFO] Moved contact out of kariz after successful deal {"contact_id":"6428","deal_id":"local_699b25d1287705.12209602","target_stage":"with_purchase"}
[2026-04-07 15:25:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:29] [INFO] Updating virtual stage {"contact_id":"6428","stage_name":"with_purchase","force":true}
[2026-04-07 15:25:29] [INFO] Virtual stage successfully saved {"contact_id":"6428","stage_name":"with_purchase"}
[2026-04-07 15:25:29] [INFO] Moved contact out of kariz after successful deal {"contact_id":"6428","deal_id":"local_699b25d1287705.12209602","target_stage":"with_purchase"}
[2026-04-07 15:25:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6428","person_id":"2731"}
[2026-04-07 15:25:30] [INFO] Checking activity reminders 
[2026-04-07 15:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:32] [INFO] Checking activity reminders 
[2026-04-07 15:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:45] [INFO] Checking activity reminders 
[2026-04-07 15:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7175","person_id":"12069"}
[2026-04-07 15:26:00] [INFO] Checking activity reminders 
[2026-04-07 15:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:02] [INFO] Checking activity reminders 
[2026-04-07 15:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:11] [INFO] Checking activity reminders 
[2026-04-07 15:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:24] [INFO] Checking activity reminders 
[2026-04-07 15:26:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:30] [INFO] Checking activity reminders 
[2026-04-07 15:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:33] [INFO] Checking activity reminders 
[2026-04-07 15:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:38] [INFO] Checking activity reminders 
[2026-04-07 15:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:26:46] [INFO] Checking activity reminders 
[2026-04-07 15:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:00] [INFO] Checking activity reminders 
[2026-04-07 15:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:03] [INFO] Checking activity reminders 
[2026-04-07 15:27:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:04] [INFO] Checking activity reminders 
[2026-04-07 15:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:12] [INFO] Checking activity reminders 
[2026-04-07 15:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:30] [INFO] Checking activity reminders 
[2026-04-07 15:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:32] [INFO] Checking activity reminders 
[2026-04-07 15:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:33] [INFO] Checking activity reminders 
[2026-04-07 15:27:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:27:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:27:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8103","person_id":"10696"}
[2026-04-07 15:28:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21628","person_id":"9028"}
[2026-04-07 15:28:00] [INFO] Checking activity reminders 
[2026-04-07 15:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:28:03] [INFO] Checking activity reminders 
[2026-04-07 15:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:28:31] [INFO] Checking activity reminders 
[2026-04-07 15:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:28:33] [INFO] Checking activity reminders 
[2026-04-07 15:28:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:28:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:01] [INFO] Checking activity reminders 
[2026-04-07 15:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:03] [INFO] Checking activity reminders 
[2026-04-07 15:29:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:05] [INFO] Checking activity reminders 
[2026-04-07 15:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:07] [INFO] Checking activity reminders 
[2026-04-07 15:29:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:14] [INFO] Checking activity reminders 
[2026-04-07 15:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:18] [INFO] Checking activity reminders 
[2026-04-07 15:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:19] [INFO] Checking activity reminders 
[2026-04-07 15:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:34] [INFO] Checking activity reminders 
[2026-04-07 15:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:34] [INFO] Checking activity reminders 
[2026-04-07 15:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:29:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3248","person_id":"20542"}
[2026-04-07 15:29:49] [INFO] Checking activity reminders 
[2026-04-07 15:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:04] [INFO] Checking activity reminders 
[2026-04-07 15:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:05] [INFO] Checking activity reminders 
[2026-04-07 15:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:20] [INFO] Checking activity reminders 
[2026-04-07 15:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:34] [INFO] Checking activity reminders 
[2026-04-07 15:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:50] [INFO] Checking activity reminders 
[2026-04-07 15:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:30:54] [INFO] Checking activity reminders 
[2026-04-07 15:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:04] [INFO] Checking activity reminders 
[2026-04-07 15:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:20] [INFO] Checking activity reminders 
[2026-04-07 15:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:24] [INFO] Checking activity reminders 
[2026-04-07 15:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:35] [INFO] Checking activity reminders 
[2026-04-07 15:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:50] [INFO] Checking activity reminders 
[2026-04-07 15:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:31:55] [INFO] Checking activity reminders 
[2026-04-07 15:31:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:31:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3739","person_id":"12582"}
[2026-04-07 15:32:05] [INFO] Checking activity reminders 
[2026-04-07 15:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:20] [INFO] Checking activity reminders 
[2026-04-07 15:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:27] [INFO] Checking activity reminders 
[2026-04-07 15:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:34] [INFO] Checking activity reminders 
[2026-04-07 15:32:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:35] [INFO] Checking activity reminders 
[2026-04-07 15:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:32:50] [INFO] Checking activity reminders 
[2026-04-07 15:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:33:01] [INFO] Checking activity reminders 
[2026-04-07 15:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:33:05] [INFO] Checking activity reminders 
[2026-04-07 15:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:33:05] [INFO] Lead update received {"contact_id":"21469","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 15:33:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:33:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:33:05] [DEBUG] findByPhone: Found person {"phones":["9152032319"],"found_id":"17551","found_didar_id":"14043","found_name":"باقری"}
[2026-04-07 15:33:05] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9152032319","found_didar_id":"14043","found_local_id":"17551","found_name":"باقری"}
[2026-04-07 15:33:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14043","person_id":"17551"}
[2026-04-07 15:33:05] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9152032319","found_id":"17551","found_didar_id":"14043","exclude_id":17107,"exclude_didar_id":"21469"}
[2026-04-07 15:33:05] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  باقری (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-07 15:33:14] [INFO] Checking activity reminders 
[2026-04-07 15:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:33:35] [INFO] Checking activity reminders 
[2026-04-07 15:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:33:54] [INFO] Checking activity reminders 
[2026-04-07 15:33:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:33:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:03] [INFO] Checking activity reminders 
[2026-04-07 15:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9282","person_id":"19326"}
[2026-04-07 15:34:05] [INFO] Checking activity reminders 
[2026-04-07 15:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:08] [INFO] Checking activity reminders 
[2026-04-07 15:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:14] [INFO] Lead update received {"contact_id":"21469","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 15:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21469"}
[2026-04-07 15:34:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21469","deal_id":"local_69d4da29ead6e8.92741993","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:34:29","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21469","is_new_deal":false}
[2026-04-07 15:34:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:34:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:34:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:34:29] [INFO] getContactPrimaryPhone called {"contact_id":"21469"}
[2026-04-07 15:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:29] [INFO] getContactPrimaryPhone result {"contact_id":"21469","person_found":true,"primary_phone":"9151090206"}
[2026-04-07 15:34:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151090206"}
[2026-04-07 15:34:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151090206","contact_id":"21469","deal_id":"local_69d4da29ead6e8.92741993","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:34:29"}
[2026-04-07 15:34:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4da29ead6e8.92741993","contact_id":"21469","existing_deal_found":true,"existing_contact_id":"21469","existing_title":"معامله دوم 9151090206 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:34:29"}
[2026-04-07 15:34:29] [INFO] DealController.save validated payments {"deal_id":"local_69d4da29ead6e8.92741993","contact_id":"21469","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 15:34:29] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21469","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:34:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4da29ead6e8.92741993","contact_didar_id":"21469","title":"معامله دوم 9151090206 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151090206","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقداد باقری","existing_deal":"YES","existing_deal_id":"local_69d4da29ead6e8.92741993","existing_deal_status":"Pending","server_time":"2026-04-07 15:34:29","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4da29ead6e8.92741993","contact_id":"21469","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9151090206 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 15:34:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:34:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 15:34:35] [INFO] Checking activity reminders 
[2026-04-07 15:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:38] [INFO] Checking activity reminders 
[2026-04-07 15:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:34:53] [INFO] Checking activity reminders 
[2026-04-07 15:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:35:05] [INFO] Checking activity reminders 
[2026-04-07 15:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:35:08] [INFO] Checking activity reminders 
[2026-04-07 15:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:35:38] [INFO] Checking activity reminders 
[2026-04-07 15:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:36:08] [INFO] Checking activity reminders 
[2026-04-07 15:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:36:38] [INFO] Checking activity reminders 
[2026-04-07 15:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:36:43] [INFO] Checking activity reminders 
[2026-04-07 15:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:36:53] [INFO] Checking activity reminders 
[2026-04-07 15:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:37:04] [INFO] Checking activity reminders 
[2026-04-07 15:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:37:13] [INFO] Checking activity reminders 
[2026-04-07 15:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:37:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:37:25] [INFO] Checking activity reminders 
[2026-04-07 15:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:37:34] [INFO] Checking activity reminders 
[2026-04-07 15:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:37:34] [INFO] Checking activity reminders 
[2026-04-07 15:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:38:04] [INFO] Checking activity reminders 
[2026-04-07 15:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:38:34] [INFO] Checking activity reminders 
[2026-04-07 15:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:38:49] [INFO] Checking activity reminders 
[2026-04-07 15:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:39:04] [INFO] Checking activity reminders 
[2026-04-07 15:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:39:25] [INFO] Checking activity reminders 
[2026-04-07 15:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:39:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:39:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:39:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:39:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:39:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:39:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:39:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:39:35] [INFO] Checking activity reminders 
[2026-04-07 15:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14043","person_id":"17551"}
[2026-04-07 15:39:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14541","person_id":"14043"}
[2026-04-07 15:40:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14043","person_id":"17551"}
[2026-04-07 15:40:04] [INFO] Checking activity reminders 
[2026-04-07 15:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:40:05] [INFO] Checking activity reminders 
[2026-04-07 15:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:40:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14043","person_id":"17551"}
[2026-04-07 15:40:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14043","person_id":"17551"}
[2026-04-07 15:40:31] [INFO] Checking activity reminders 
[2026-04-07 15:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21628","person_id":"9028"}
[2026-04-07 15:40:35] [INFO] Checking activity reminders 
[2026-04-07 15:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21628","person_id":"9028"}
[2026-04-07 15:41:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:41:01] [INFO] Checking activity reminders 
[2026-04-07 15:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:41:05] [INFO] Checking activity reminders 
[2026-04-07 15:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:41:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:41:14","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:41:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2036","is_new_deal":false}
[2026-04-07 15:41:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:41:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:41:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:41:14] [INFO] getContactPrimaryPhone called {"contact_id":"2036"}
[2026-04-07 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:41:14] [INFO] getContactPrimaryPhone result {"contact_id":"2036","person_found":true,"primary_phone":"9132338301"}
[2026-04-07 15:41:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132338301"}
[2026-04-07 15:41:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132338301","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:41:14"}
[2026-04-07 15:41:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","existing_deal_found":true,"existing_contact_id":"2036","existing_title":"معامله چهارم 9132338301 | vip","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:41:14"}
[2026-04-07 15:41:14] [INFO] DealController.save validated payments {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 15:41:14] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2036","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:41:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ec9d429d3e5.75537030","contact_didar_id":"2036","title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9132338301","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":9000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جمشیدیان","existing_deal":"YES","existing_deal_id":"local_699ec9d429d3e5.75537030","existing_deal_status":"Pending","server_time":"2026-04-07 15:41:14","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:41:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":9000000,"server_time":"2026-04-07 15:41:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:41:31] [INFO] Checking activity reminders 
[2026-04-07 15:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:41:35] [INFO] Checking activity reminders 
[2026-04-07 15:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:41:42] [INFO] Checking activity reminders 
[2026-04-07 15:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:41:49] [INFO] Checking activity reminders 
[2026-04-07 15:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:01] [INFO] Checking activity reminders 
[2026-04-07 15:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:05] [INFO] Checking activity reminders 
[2026-04-07 15:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:42:27] [INFO] Checking activity reminders 
[2026-04-07 15:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:42:31] [INFO] Checking activity reminders 
[2026-04-07 15:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:38] [INFO] Checking activity reminders 
[2026-04-07 15:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:45] [INFO] Checking activity reminders 
[2026-04-07 15:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:42:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8795","person_id":"10978"}
[2026-04-07 15:43:02] [INFO] Checking activity reminders 
[2026-04-07 15:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:09] [INFO] Checking activity reminders 
[2026-04-07 15:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:15] [INFO] Checking activity reminders 
[2026-04-07 15:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:43:26","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2036","is_new_deal":false}
[2026-04-07 15:43:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:26] [INFO] getContactPrimaryPhone called {"contact_id":"2036"}
[2026-04-07 15:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:26] [INFO] getContactPrimaryPhone result {"contact_id":"2036","person_found":true,"primary_phone":"9132338301"}
[2026-04-07 15:43:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132338301"}
[2026-04-07 15:43:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132338301","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:43:26"}
[2026-04-07 15:43:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","existing_deal_found":true,"existing_contact_id":"2036","existing_title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:43:26"}
[2026-04-07 15:43:26] [INFO] DealController.save validated payments {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 15:43:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2036","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:43:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ec9d429d3e5.75537030","contact_didar_id":"2036","title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9132338301","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جمشیدیان","existing_deal":"YES","existing_deal_id":"local_699ec9d429d3e5.75537030","existing_deal_status":"Pending","server_time":"2026-04-07 15:43:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-07 15:43:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:32] [INFO] Checking activity reminders 
[2026-04-07 15:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:32] [INFO] Checking activity reminders 
[2026-04-07 15:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:43:34","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2036","is_new_deal":false}
[2026-04-07 15:43:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:43:34] [INFO] getContactPrimaryPhone called {"contact_id":"2036"}
[2026-04-07 15:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:34] [INFO] getContactPrimaryPhone result {"contact_id":"2036","person_found":true,"primary_phone":"9132338301"}
[2026-04-07 15:43:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132338301"}
[2026-04-07 15:43:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132338301","contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:43:34"}
[2026-04-07 15:43:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","existing_deal_found":true,"existing_contact_id":"2036","existing_title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:43:34"}
[2026-04-07 15:43:34] [INFO] DealController.save validated payments {"deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 15:43:34] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2036","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:43:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ec9d429d3e5.75537030","contact_didar_id":"2036","title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9132338301","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جمشیدیان","existing_deal":"YES","existing_deal_id":"local_699ec9d429d3e5.75537030","existing_deal_status":"Pending","server_time":"2026-04-07 15:43:34","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ec9d429d3e5.75537030","contact_id":"2036","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9132338301 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-07 15:43:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:43:45] [INFO] Checking activity reminders 
[2026-04-07 15:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:43:58] [INFO] Checking activity reminders 
[2026-04-07 15:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:44:05] [INFO] Activity save request {"post_data":{"contact_id":"2036","deal_id":"local_699ec9d429d3e5.75537030","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا 1\/30 تسویه میشود ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 15:44:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2036","note_was_empty":true}
[2026-04-07 15:44:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"2036","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:05] [INFO] Updating virtual stage {"contact_id":"2036","stage_name":"deal_registered","force":false}
[2026-04-07 15:44:05] [INFO] Virtual stage successfully saved {"contact_id":"2036","stage_name":"deal_registered"}
[2026-04-07 15:44:05] [INFO] Virtual stage updated after activity save {"contact_id":"2036"}
[2026-04-07 15:44:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ec9d429d3e5.75537030","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-07 15:44:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4f50d304ca3.46400449","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4f50d304ca3.46400449"}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:05] [INFO] Updating virtual stage {"contact_id":"2036","stage_name":"deal_registered","force":false}
[2026-04-07 15:44:05] [INFO] Virtual stage successfully saved {"contact_id":"2036","stage_name":"deal_registered"}
[2026-04-07 15:44:05] [INFO] Virtual stage updated after activity save {"contact_id":"2036"}
[2026-04-07 15:44:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2036","person_id":"16647"}
[2026-04-07 15:44:15] [INFO] Checking activity reminders 
[2026-04-07 15:44:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:44:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:44:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:44:29] [INFO] Checking activity reminders 
[2026-04-07 15:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:44:39] [INFO] Checking activity reminders 
[2026-04-07 15:44:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:44:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:44:45] [INFO] Checking activity reminders 
[2026-04-07 15:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:45:08] [INFO] Checking activity reminders 
[2026-04-07 15:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:45:15] [INFO] Checking activity reminders 
[2026-04-07 15:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:45:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:45:32","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2617","is_new_deal":false}
[2026-04-07 15:45:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:45:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:45:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:45:32] [INFO] getContactPrimaryPhone called {"contact_id":"2617"}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [INFO] getContactPrimaryPhone result {"contact_id":"2617","person_found":true,"primary_phone":"9113331689"}
[2026-04-07 15:45:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113331689"}
[2026-04-07 15:45:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113331689","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:45:32"}
[2026-04-07 15:45:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","existing_deal_found":true,"existing_contact_id":"2617","existing_title":"معامله اول 9113331689 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:45:32"}
[2026-04-07 15:45:32] [INFO] DealController.save validated payments {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 15:45:32] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2617","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:45:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694aaf8b65a676.33889150","contact_didar_id":"2617","title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9113331689","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی پور","existing_deal":"YES","existing_deal_id":"local_694aaf8b65a676.33889150","existing_deal_status":"Won","server_time":"2026-04-07 15:45:32","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [INFO] Deal success processed {"contact_id":"2617","person_name":"هادی پور","products_count":1}
[2026-04-07 15:45:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:45:32","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:32] [INFO] Updating virtual stage {"contact_id":"2617","stage_name":"with_purchase","force":true}
[2026-04-07 15:45:32] [INFO] Virtual stage successfully saved {"contact_id":"2617","stage_name":"with_purchase"}
[2026-04-07 15:45:32] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","target_stage":"with_purchase"}
[2026-04-07 15:45:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:45:38] [INFO] Checking activity reminders 
[2026-04-07 15:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:45:46] [INFO] Checking activity reminders 
[2026-04-07 15:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:45:53] [INFO] Checking activity reminders 
[2026-04-07 15:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:46:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2806","person_id":"12727"}
[2026-04-07 15:46:09] [INFO] Checking activity reminders 
[2026-04-07 15:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:46:16] [INFO] Checking activity reminders 
[2026-04-07 15:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:46:40] [INFO] Checking activity reminders 
[2026-04-07 15:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:46:46] [INFO] Checking activity reminders 
[2026-04-07 15:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:46:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:46:59] [INFO] Checking activity reminders 
[2026-04-07 15:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:09] [INFO] Checking activity reminders 
[2026-04-07 15:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:10] [INFO] Checking activity reminders 
[2026-04-07 15:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:47:26] [INFO] Checking activity reminders 
[2026-04-07 15:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:35] [INFO] Checking activity reminders 
[2026-04-07 15:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:40] [INFO] Checking activity reminders 
[2026-04-07 15:47:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:55] [INFO] Checking activity reminders 
[2026-04-07 15:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:47:56] [INFO] Checking activity reminders 
[2026-04-07 15:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:48:03","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2617","is_new_deal":false}
[2026-04-07 15:48:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:03] [INFO] getContactPrimaryPhone called {"contact_id":"2617"}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:03] [INFO] getContactPrimaryPhone result {"contact_id":"2617","person_found":true,"primary_phone":"9113331689"}
[2026-04-07 15:48:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113331689"}
[2026-04-07 15:48:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113331689","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:48:03"}
[2026-04-07 15:48:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","existing_deal_found":true,"existing_contact_id":"2617","existing_title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:48:03"}
[2026-04-07 15:48:03] [INFO] DealController.save validated payments {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 15:48:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2617","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:48:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694aaf8b65a676.33889150","contact_didar_id":"2617","title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9113331689","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی پور","existing_deal":"YES","existing_deal_id":"local_694aaf8b65a676.33889150","existing_deal_status":"Won","server_time":"2026-04-07 15:48:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:03] [INFO] Deal success processed {"contact_id":"2617","person_name":"هادی پور","products_count":1}
[2026-04-07 15:48:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:48:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:03] [INFO] Updating virtual stage {"contact_id":"2617","stage_name":"with_purchase","force":true}
[2026-04-07 15:48:03] [INFO] Virtual stage successfully saved {"contact_id":"2617","stage_name":"with_purchase"}
[2026-04-07 15:48:03] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","target_stage":"with_purchase"}
[2026-04-07 15:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:10] [INFO] Checking activity reminders 
[2026-04-07 15:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:11] [INFO] Checking activity reminders 
[2026-04-07 15:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:22] [INFO] Checking activity reminders 
[2026-04-07 15:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2901","person_id":"16192"}
[2026-04-07 15:48:26] [INFO] Checking activity reminders 
[2026-04-07 15:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:48:26","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2617","is_new_deal":false}
[2026-04-07 15:48:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:48:26] [INFO] getContactPrimaryPhone called {"contact_id":"2617"}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:26] [INFO] getContactPrimaryPhone result {"contact_id":"2617","person_found":true,"primary_phone":"9113331689"}
[2026-04-07 15:48:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113331689"}
[2026-04-07 15:48:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113331689","contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:48:26"}
[2026-04-07 15:48:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","existing_deal_found":true,"existing_contact_id":"2617","existing_title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 15:48:26"}
[2026-04-07 15:48:26] [INFO] DealController.save validated payments {"deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 15:48:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2617","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 15:48:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694aaf8b65a676.33889150","contact_didar_id":"2617","title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9113331689","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی پور","existing_deal":"YES","existing_deal_id":"local_694aaf8b65a676.33889150","existing_deal_status":"Won","server_time":"2026-04-07 15:48:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:26] [INFO] Deal success processed {"contact_id":"2617","person_name":"هادی پور","products_count":1}
[2026-04-07 15:48:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694aaf8b65a676.33889150","contact_id":"2617","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9113331689 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-07 15:48:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:26] [INFO] Updating virtual stage {"contact_id":"2617","stage_name":"with_purchase","force":true}
[2026-04-07 15:48:26] [INFO] Virtual stage successfully saved {"contact_id":"2617","stage_name":"with_purchase"}
[2026-04-07 15:48:26] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","target_stage":"with_purchase"}
[2026-04-07 15:48:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:48:40] [INFO] Checking activity reminders 
[2026-04-07 15:48:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:46] [INFO] Checking activity reminders 
[2026-04-07 15:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:48:56] [INFO] Checking activity reminders 
[2026-04-07 15:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:49:00] [INFO] Updating virtual stage {"contact_id":"2617","stage_name":"with_purchase","force":true}
[2026-04-07 15:49:00] [INFO] Virtual stage successfully saved {"contact_id":"2617","stage_name":"with_purchase"}
[2026-04-07 15:49:00] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2617","deal_id":"local_694aaf8b65a676.33889150","target_stage":"with_purchase"}
[2026-04-07 15:49:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:49:10] [INFO] Checking activity reminders 
[2026-04-07 15:49:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:49:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:19] [INFO] Checking activity reminders 
[2026-04-07 15:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:21] [INFO] Checking activity reminders 
[2026-04-07 15:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:41] [INFO] Checking activity reminders 
[2026-04-07 15:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:49] [INFO] Checking activity reminders 
[2026-04-07 15:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:49:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1831","person_id":"11665"}
[2026-04-07 15:50:13] [INFO] Checking activity reminders 
[2026-04-07 15:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:50:20] [INFO] Checking activity reminders 
[2026-04-07 15:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:50:20] [INFO] Checking activity reminders 
[2026-04-07 15:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:50:33] [INFO] Checking activity reminders 
[2026-04-07 15:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:51:15] [INFO] Checking activity reminders 
[2026-04-07 15:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:51:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:51:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:51:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:51:39] [INFO] Checking activity reminders 
[2026-04-07 15:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:51:45] [INFO] Checking activity reminders 
[2026-04-07 15:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:51:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2617","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:51:49","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:51:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2617","is_new_deal":false}
[2026-04-07 15:51:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:49] [INFO] getContactPrimaryPhone called {"contact_id":"2617"}
[2026-04-07 15:51:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:49] [INFO] getContactPrimaryPhone result {"contact_id":"2617","person_found":true,"primary_phone":"9113331689"}
[2026-04-07 15:51:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113331689"}
[2026-04-07 15:51:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113331689","contact_id":"2617","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:51:49"}
[2026-04-07 15:51:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2617","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:51:49"}
[2026-04-07 15:51:49] [WARNING] Deal save blocked: deal_id does not belong to contact {"deal_id":"local_6954f4ec362857.79229911","incoming_contact_id":"2617","existing_contact_id":"2967","incoming_title":"کانال VIP با پشتیبانی","requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:51:49"}
[2026-04-07 15:51:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2617","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:51:53","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2617","is_new_deal":true}
[2026-04-07 15:51:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:51:53] [INFO] getContactPrimaryPhone called {"contact_id":"2617"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [INFO] getContactPrimaryPhone result {"contact_id":"2617","person_found":true,"primary_phone":"9113331689"}
[2026-04-07 15:51:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113331689"}
[2026-04-07 15:51:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113331689","contact_id":"2617","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:51:53"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [INFO] generateDealTitle result {"contact_id":"2617","person_name":"هادی پور","mobile":"9113331689","existing_deals":5,"ordinal":"ششم","title":"معامله ششم 9113331689"}
[2026-04-07 15:51:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2617","payments_count":11,"status":"won","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 15:51:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2617","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:51:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2617","title":"معامله ششم 9113331689 | کانال VIP با پشتیبانی","base_title_used":"معامله ششم 9113331689","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"won","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-07 15:51:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [INFO] Deal success processed {"contact_id":"2617","person_name":"هادی پور","products_count":1}
[2026-04-07 15:51:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-07 15:51:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2617","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله ششم 9113331689 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-07 15:51:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:51:53] [INFO] Updating virtual stage {"contact_id":"2617","stage_name":"with_purchase","force":true}
[2026-04-07 15:51:53] [INFO] Virtual stage successfully saved {"contact_id":"2617","stage_name":"with_purchase"}
[2026-04-07 15:51:53] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2617","deal_id":"","target_stage":"with_purchase"}
[2026-04-07 15:51:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 15:52:15] [INFO] Checking activity reminders 
[2026-04-07 15:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:17] [WARNING] Auth check failed - not authenticated {"session_id":"3hkqigf53i0ja2jr6ccs0f8sgu","session_keys":[],"action":"log_client_event"}
[2026-04-07 15:52:17] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-07 15:52:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:52:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:52:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:52:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:52:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 15:52:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 15:52:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 15:52:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 15:52:47] [INFO] Checking activity reminders 
[2026-04-07 15:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:49] [INFO] Checking activity reminders 
[2026-04-07 15:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:50] [INFO] Checking activity reminders 
[2026-04-07 15:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:50] [INFO] Checking activity reminders 
[2026-04-07 15:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:54] [INFO] Checking activity reminders 
[2026-04-07 15:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21176","person_id":"18534"}
[2026-04-07 15:53:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 15:53:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:53:09","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:53:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-07 15:53:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:09] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-07 15:53:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:09] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-07 15:53:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-07 15:53:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:53:09"}
[2026-04-07 15:53:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:53:09"}
[2026-04-07 15:53:09] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-07 15:53:09] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:53:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Won","server_time":"2026-04-07 15:53:09","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:53:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-07 15:53:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:53:20] [INFO] Checking activity reminders 
[2026-04-07 15:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:53:21] [INFO] Checking activity reminders 
[2026-04-07 15:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:53:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 15:53:21","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 15:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2967","is_new_deal":false}
[2026-04-07 15:53:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 15:53:21] [INFO] getContactPrimaryPhone called {"contact_id":"2967"}
[2026-04-07 15:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:21] [INFO] getContactPrimaryPhone result {"contact_id":"2967","person_found":true,"primary_phone":"9120372622"}
[2026-04-07 15:53:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120372622"}
[2026-04-07 15:53:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120372622","contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:53:21"}
[2026-04-07 15:53:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","existing_deal_found":true,"existing_contact_id":"2967","existing_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 15:53:21"}
[2026-04-07 15:53:21] [INFO] DealController.save validated payments {"deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","payments_count":11,"status":"won","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 15:53:21] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 15:53:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6954f4ec362857.79229911","contact_didar_id":"2967","title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9120372622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"won","payable_amount":79000000,"payment_amount":74000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رزاق پور","existing_deal":"YES","existing_deal_id":"local_6954f4ec362857.79229911","existing_deal_status":"Pending","server_time":"2026-04-07 15:53:21","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 15:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:21] [INFO] Deal success processed {"contact_id":"2967","person_name":"مجتبی رزاق پور","products_count":1}
[2026-04-07 15:53:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6954f4ec362857.79229911","contact_id":"2967","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9120372622 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":74000000,"server_time":"2026-04-07 15:53:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 15:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:21] [INFO] Updating virtual stage {"contact_id":"2967","stage_name":"with_purchase","force":true}
[2026-04-07 15:53:21] [INFO] Virtual stage successfully saved {"contact_id":"2967","stage_name":"with_purchase"}
[2026-04-07 15:53:21] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2967","deal_id":"local_6954f4ec362857.79229911","target_stage":"with_purchase"}
[2026-04-07 15:53:24] [INFO] Checking activity reminders 
[2026-04-07 15:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:53:38] [INFO] Checking activity reminders 
[2026-04-07 15:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 15:53:51] [INFO] Checking activity reminders 
[2026-04-07 15:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:53:55] [INFO] Checking activity reminders 
[2026-04-07 15:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:03] [INFO] Checking activity reminders 
[2026-04-07 15:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:21] [INFO] Checking activity reminders 
[2026-04-07 15:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:25] [INFO] Checking activity reminders 
[2026-04-07 15:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:37] [INFO] Checking activity reminders 
[2026-04-07 15:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3002","person_id":"12418"}
[2026-04-07 15:54:51] [INFO] Checking activity reminders 
[2026-04-07 15:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:54:56] [INFO] Checking activity reminders 
[2026-04-07 15:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:06] [INFO] Checking activity reminders 
[2026-04-07 15:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:15] [INFO] Checking activity reminders 
[2026-04-07 15:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:21] [INFO] Checking activity reminders 
[2026-04-07 15:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:26] [INFO] Checking activity reminders 
[2026-04-07 15:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:51] [INFO] Checking activity reminders 
[2026-04-07 15:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:52] [INFO] Checking activity reminders 
[2026-04-07 15:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:55:56] [INFO] Checking activity reminders 
[2026-04-07 15:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:21] [INFO] Checking activity reminders 
[2026-04-07 15:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:26] [INFO] Checking activity reminders 
[2026-04-07 15:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:35] [INFO] Checking activity reminders 
[2026-04-07 15:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:51] [INFO] Checking activity reminders 
[2026-04-07 15:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:52] [INFO] Checking activity reminders 
[2026-04-07 15:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:56:56] [INFO] Checking activity reminders 
[2026-04-07 15:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20879","person_id":"9469"}
[2026-04-07 15:57:21] [INFO] Checking activity reminders 
[2026-04-07 15:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:23] [INFO] Checking activity reminders 
[2026-04-07 15:57:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:26] [INFO] Checking activity reminders 
[2026-04-07 15:57:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:32] [INFO] Checking activity reminders 
[2026-04-07 15:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:51] [INFO] Checking activity reminders 
[2026-04-07 15:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:56] [INFO] Checking activity reminders 
[2026-04-07 15:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:57:57] [INFO] Checking activity reminders 
[2026-04-07 15:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:21] [INFO] Checking activity reminders 
[2026-04-07 15:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:27] [INFO] Checking activity reminders 
[2026-04-07 15:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:34] [INFO] Checking activity reminders 
[2026-04-07 15:58:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:44] [INFO] Checking activity reminders 
[2026-04-07 15:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:52] [INFO] Checking activity reminders 
[2026-04-07 15:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:58:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8016","person_id":"5438"}
[2026-04-07 15:58:57] [INFO] Checking activity reminders 
[2026-04-07 15:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:14] [INFO] Checking activity reminders 
[2026-04-07 15:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:22] [INFO] Checking activity reminders 
[2026-04-07 15:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:27] [INFO] Checking activity reminders 
[2026-04-07 15:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:28] [INFO] Checking activity reminders 
[2026-04-07 15:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:52] [INFO] Checking activity reminders 
[2026-04-07 15:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:57] [INFO] Checking activity reminders 
[2026-04-07 15:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 15:59:59] [INFO] Checking activity reminders 
[2026-04-07 15:59:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 15:59:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10227","person_id":"6519"}
[2026-04-07 16:00:22] [INFO] Checking activity reminders 
[2026-04-07 16:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:27] [INFO] Checking activity reminders 
[2026-04-07 16:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:43] [INFO] Checking activity reminders 
[2026-04-07 16:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:46] [INFO] Checking activity reminders 
[2026-04-07 16:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:52] [INFO] Checking activity reminders 
[2026-04-07 16:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:00:57] [INFO] Checking activity reminders 
[2026-04-07 16:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:14] [INFO] Checking activity reminders 
[2026-04-07 16:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:22] [INFO] Checking activity reminders 
[2026-04-07 16:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3054","person_id":"6998"}
[2026-04-07 16:01:28] [INFO] Checking activity reminders 
[2026-04-07 16:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:44] [INFO] Checking activity reminders 
[2026-04-07 16:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:52] [INFO] Checking activity reminders 
[2026-04-07 16:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:01:58] [INFO] Checking activity reminders 
[2026-04-07 16:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:07] [INFO] Checking activity reminders 
[2026-04-07 16:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:19] [INFO] Checking activity reminders 
[2026-04-07 16:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:22] [INFO] Checking activity reminders 
[2026-04-07 16:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:28] [INFO] Checking activity reminders 
[2026-04-07 16:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:49] [INFO] Checking activity reminders 
[2026-04-07 16:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:53] [INFO] Checking activity reminders 
[2026-04-07 16:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:02:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"920","person_id":"14596"}
[2026-04-07 16:02:58] [INFO] Checking activity reminders 
[2026-04-07 16:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:03:23] [INFO] Checking activity reminders 
[2026-04-07 16:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:03:29] [INFO] Checking activity reminders 
[2026-04-07 16:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:03:53] [INFO] Checking activity reminders 
[2026-04-07 16:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:03:59] [INFO] Checking activity reminders 
[2026-04-07 16:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:23] [INFO] Checking activity reminders 
[2026-04-07 16:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:27] [INFO] Checking activity reminders 
[2026-04-07 16:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:29] [INFO] Checking activity reminders 
[2026-04-07 16:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:32] [INFO] Checking activity reminders 
[2026-04-07 16:04:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:40] [INFO] Checking activity reminders 
[2026-04-07 16:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9028","person_id":"15027"}
[2026-04-07 16:04:53] [INFO] Checking activity reminders 
[2026-04-07 16:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:04:59] [INFO] Checking activity reminders 
[2026-04-07 16:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:10] [INFO] Checking activity reminders 
[2026-04-07 16:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:23] [INFO] Checking activity reminders 
[2026-04-07 16:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:29] [INFO] Checking activity reminders 
[2026-04-07 16:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:41] [INFO] Checking activity reminders 
[2026-04-07 16:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:53] [INFO] Checking activity reminders 
[2026-04-07 16:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:05:59] [INFO] Checking activity reminders 
[2026-04-07 16:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:06:12] [INFO] Checking activity reminders 
[2026-04-07 16:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:06:23] [INFO] Checking activity reminders 
[2026-04-07 16:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:06:30] [INFO] Checking activity reminders 
[2026-04-07 16:06:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:06:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:06:42] [INFO] Checking activity reminders 
[2026-04-07 16:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:06:53] [INFO] Checking activity reminders 
[2026-04-07 16:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:00] [INFO] Checking activity reminders 
[2026-04-07 16:07:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:12] [INFO] Checking activity reminders 
[2026-04-07 16:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:19] [INFO] Checking activity reminders 
[2026-04-07 16:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:24] [INFO] Checking activity reminders 
[2026-04-07 16:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:32] [INFO] Checking activity reminders 
[2026-04-07 16:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:50] [INFO] Checking activity reminders 
[2026-04-07 16:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:07:54] [INFO] Checking activity reminders 
[2026-04-07 16:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:00] [INFO] Checking activity reminders 
[2026-04-07 16:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:14] [INFO] Checking activity reminders 
[2026-04-07 16:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15358","person_id":"20226"}
[2026-04-07 16:08:24] [INFO] Checking activity reminders 
[2026-04-07 16:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:44] [INFO] Checking activity reminders 
[2026-04-07 16:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:54] [INFO] Checking activity reminders 
[2026-04-07 16:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:08:59] [INFO] Checking activity reminders 
[2026-04-07 16:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:09:04] [INFO] Checking activity reminders 
[2026-04-07 16:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:09:24] [INFO] Checking activity reminders 
[2026-04-07 16:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:09:54] [INFO] Checking activity reminders 
[2026-04-07 16:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:10:24] [INFO] Checking activity reminders 
[2026-04-07 16:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:10:30] [INFO] Checking activity reminders 
[2026-04-07 16:10:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:10:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:10:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-07 16:10:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-07 16:10:54] [INFO] Checking activity reminders 
[2026-04-07 16:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:11:00] [INFO] Checking activity reminders 
[2026-04-07 16:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:11:24] [INFO] Checking activity reminders 
[2026-04-07 16:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:11:30] [INFO] Checking activity reminders 
[2026-04-07 16:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:11:53] [INFO] Checking activity reminders 
[2026-04-07 16:11:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:11:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:11:55] [INFO] Checking activity reminders 
[2026-04-07 16:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:12:01] [INFO] Checking activity reminders 
[2026-04-07 16:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:12:14] [INFO] Checking activity reminders 
[2026-04-07 16:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:12:25] [INFO] Checking activity reminders 
[2026-04-07 16:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:12:50] [INFO] Checking activity reminders 
[2026-04-07 16:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:12:55] [INFO] Checking activity reminders 
[2026-04-07 16:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:13:00] [INFO] Checking activity reminders 
[2026-04-07 16:13:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:13:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:13:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989b6b14d10a7.53854196","person_id":"21640"}
[2026-04-07 16:13:25] [INFO] Checking activity reminders 
[2026-04-07 16:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:13:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20869","deal_id":"local_69d4db96a7b7c3.75172419","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:13:27","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:13:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:13:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20869","is_new_deal":false}
[2026-04-07 16:13:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:13:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:13:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:13:27] [INFO] getContactPrimaryPhone called {"contact_id":"20869"}
[2026-04-07 16:13:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:13:27] [INFO] getContactPrimaryPhone result {"contact_id":"20869","person_found":true,"primary_phone":"9155343514"}
[2026-04-07 16:13:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155343514"}
[2026-04-07 16:13:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155343514","contact_id":"20869","deal_id":"local_69d4db96a7b7c3.75172419","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:13:27"}
[2026-04-07 16:13:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4db96a7b7c3.75172419","contact_id":"20869","existing_deal_found":true,"existing_contact_id":"20869","existing_title":"معامله دوم 9155343514 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:13:27"}
[2026-04-07 16:13:27] [INFO] DealController.save validated payments {"deal_id":"local_69d4db96a7b7c3.75172419","contact_id":"20869","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 16:13:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20869","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:13:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4db96a7b7c3.75172419","contact_didar_id":"20869","title":"معامله دوم 9155343514 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155343514","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی احمدی","existing_deal":"YES","existing_deal_id":"local_69d4db96a7b7c3.75172419","existing_deal_status":"Pending","server_time":"2026-04-07 16:13:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:13:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:13:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4db96a7b7c3.75172419","contact_id":"20869","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9155343514 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:13:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:13:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:13:30] [INFO] Checking activity reminders 
[2026-04-07 16:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:13:43] [INFO] Checking activity reminders 
[2026-04-07 16:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:13:55] [INFO] Checking activity reminders 
[2026-04-07 16:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:14:10] [INFO] Checking activity reminders 
[2026-04-07 16:14:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:14:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:14:25] [INFO] Checking activity reminders 
[2026-04-07 16:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:14:26] [WARNING] Auth check failed - not authenticated {"session_id":"b5vp4mqbplulljt2o4ier38crb","session_keys":[],"action":"log_client_event"}
[2026-04-07 16:14:26] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 16:14:26] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 16:14:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 16:14:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 16:14:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 16:14:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 16:14:40] [INFO] Checking activity reminders 
[2026-04-07 16:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:14:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 16:14:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 16:14:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 16:14:55] [INFO] Checking activity reminders 
[2026-04-07 16:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:14:56] [INFO] Checking activity reminders 
[2026-04-07 16:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:04] [INFO] Checking activity reminders 
[2026-04-07 16:15:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:15:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 16:15:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 16:15:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 16:15:25] [INFO] Checking activity reminders 
[2026-04-07 16:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:30] [INFO] Checking activity reminders 
[2026-04-07 16:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:39] [INFO] Checking activity reminders 
[2026-04-07 16:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:55] [INFO] Checking activity reminders 
[2026-04-07 16:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:15:56] [INFO] Activity save request {"post_data":{"contact_id":"20869","deal_id":"local_69d4db96a7b7c3.75172419","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تو فکر و ذهنش خیال کرده کانال یکساله هست \/ بهش گفتم یکساله 404 مبلغ30 م بوده \r\n20 دقیقه مشاوره و متقاعد برای 15 م پرداخت کانال 404 \r\nبرای 405 پرزنت 6 ماهه با پشتیبانی و مشاوره استاد مکتوب ارسال شد \r\nمیگه سرمایه ام الان قفله \/ شرایط حضور ندارم","activity_duration":"20","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:15:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:15:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:15:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20869","note_was_empty":true}
[2026-04-07 16:15:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"20869","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:15:56] [INFO] Updating virtual stage {"contact_id":"20869","stage_name":"deal_registered","force":false}
[2026-04-07 16:15:56] [INFO] Virtual stage successfully saved {"contact_id":"20869","stage_name":"deal_registered"}
[2026-04-07 16:15:56] [INFO] Virtual stage updated after activity save {"contact_id":"20869"}
[2026-04-07 16:15:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4db96a7b7c3.75172419","stage":"تماس پیگیری","status_change":null}
[2026-04-07 16:15:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4fc847cacc5.40816176","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:15:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4fc847cacc5.40816176"}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:15:56] [INFO] Updating virtual stage {"contact_id":"20869","stage_name":"deal_registered","force":false}
[2026-04-07 16:15:56] [INFO] Virtual stage successfully saved {"contact_id":"20869","stage_name":"deal_registered"}
[2026-04-07 16:15:56] [INFO] Virtual stage updated after activity save {"contact_id":"20869"}
[2026-04-07 16:15:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20869","person_id":"3548"}
[2026-04-07 16:16:00] [INFO] Checking activity reminders 
[2026-04-07 16:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:16:17] [INFO] Checking activity reminders 
[2026-04-07 16:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:16:25] [INFO] Checking activity reminders 
[2026-04-07 16:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:16:31] [INFO] Checking activity reminders 
[2026-04-07 16:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:16:32] [INFO] Checking activity reminders 
[2026-04-07 16:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-07 16:16:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7955","deal_id":"local_69d4dd14433360.73051740","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:16:51","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:16:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7955","is_new_deal":false}
[2026-04-07 16:16:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:16:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:16:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:16:51] [INFO] getContactPrimaryPhone called {"contact_id":"7955"}
[2026-04-07 16:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:16:51] [INFO] getContactPrimaryPhone result {"contact_id":"7955","person_found":true,"primary_phone":"9163335648"}
[2026-04-07 16:16:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163335648"}
[2026-04-07 16:16:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163335648","contact_id":"7955","deal_id":"local_69d4dd14433360.73051740","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:16:51"}
[2026-04-07 16:16:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dd14433360.73051740","contact_id":"7955","existing_deal_found":true,"existing_contact_id":"7955","existing_title":"معامله چهارم 9163335648 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:16:51"}
[2026-04-07 16:16:51] [INFO] DealController.save validated payments {"deal_id":"local_69d4dd14433360.73051740","contact_id":"7955","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 16:16:51] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7955","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:16:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dd14433360.73051740","contact_didar_id":"7955","title":"معامله چهارم 9163335648 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9163335648","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهاریان","existing_deal":"YES","existing_deal_id":"local_69d4dd14433360.73051740","existing_deal_status":"Pending","server_time":"2026-04-07 16:16:51","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:16:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dd14433360.73051740","contact_id":"7955","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9163335648 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:16:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:16:56] [INFO] Checking activity reminders 
[2026-04-07 16:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:05] [WARNING] Auth check failed - not authenticated {"session_id":"b5vp4mqbplulljt2o4ier38crb","session_keys":[],"action":"log_client_event"}
[2026-04-07 16:17:05] [INFO] Master password used for login {"user_id":"15","identifier":"خانم شایسته","role":"agent"}
[2026-04-07 16:17:05] [INFO] User logged in {"user_id":"15","email":"hanaficars9@gmail.com","role":"agent","via_master":true}
[2026-04-07 16:17:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 16:17:13] [INFO] Checking activity reminders 
[2026-04-07 16:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 16:17:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-07 16:17:26] [INFO] Checking activity reminders 
[2026-04-07 16:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:31] [INFO] Activity save request {"post_data":{"contact_id":"7955","deal_id":"local_69d4dd14433360.73051740","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه در بورس کانال cip\r\n نمیتونه از 405 استفاده کنه ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:17:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7955","note_was_empty":true}
[2026-04-07 16:17:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"7955","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:31] [INFO] Updating virtual stage {"contact_id":"7955","stage_name":"deal_registered","force":false}
[2026-04-07 16:17:31] [INFO] Virtual stage successfully saved {"contact_id":"7955","stage_name":"deal_registered"}
[2026-04-07 16:17:31] [INFO] Virtual stage updated after activity save {"contact_id":"7955"}
[2026-04-07 16:17:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dd14433360.73051740","stage":"تماس پیگیری","status_change":null}
[2026-04-07 16:17:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4fce3f1c023.92571222","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4fce3f1c023.92571222"}
[2026-04-07 16:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:31] [INFO] Updating virtual stage {"contact_id":"7955","stage_name":"deal_registered","force":false}
[2026-04-07 16:17:32] [INFO] Virtual stage successfully saved {"contact_id":"7955","stage_name":"deal_registered"}
[2026-04-07 16:17:32] [INFO] Virtual stage updated after activity save {"contact_id":"7955"}
[2026-04-07 16:17:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7955","person_id":"3683"}
[2026-04-07 16:17:36] [INFO] Checking activity reminders 
[2026-04-07 16:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:17:43] [INFO] Checking activity reminders 
[2026-04-07 16:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:45] [INFO] Checking activity reminders 
[2026-04-07 16:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:49] [INFO] Checking activity reminders 
[2026-04-07 16:17:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:51] [INFO] Checking activity reminders 
[2026-04-07 16:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3553","person_id":"4815"}
[2026-04-07 16:18:06] [INFO] Checking activity reminders 
[2026-04-07 16:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:13] [INFO] Activity save request {"post_data":{"contact_id":"21469","deal_id":"local_69d4da29ead6e8.92741993","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه 17 مییلارد در بانک رفاه یکماهه 30 درصد گذاشته \r\n50 میلیون نقد برای شرایط جنگ و بحران گرفته \r\nپرزنت 405 \r\nارسال اطلاعات 404 در بله ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:18:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21469","note_was_empty":true}
[2026-04-07 16:18:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"21469","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:13] [INFO] Updating virtual stage {"contact_id":"21469","stage_name":"deal_registered","force":false}
[2026-04-07 16:18:13] [INFO] Virtual stage successfully saved {"contact_id":"21469","stage_name":"deal_registered"}
[2026-04-07 16:18:13] [INFO] Virtual stage updated after activity save {"contact_id":"21469"}
[2026-04-07 16:18:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da29ead6e8.92741993","stage":"تماس پیگیری","status_change":null}
[2026-04-07 16:18:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d4fd0dbaa790.26813093","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d4fd0dbaa790.26813093"}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:13] [INFO] Updating virtual stage {"contact_id":"21469","stage_name":"deal_registered","force":false}
[2026-04-07 16:18:13] [INFO] Virtual stage successfully saved {"contact_id":"21469","stage_name":"deal_registered"}
[2026-04-07 16:18:13] [INFO] Virtual stage updated after activity save {"contact_id":"21469"}
[2026-04-07 16:18:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:18:20] [INFO] Checking activity reminders 
[2026-04-07 16:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:21] [INFO] Checking activity reminders 
[2026-04-07 16:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:24] [INFO] Checking activity reminders 
[2026-04-07 16:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:24] [INFO] Checking activity reminders 
[2026-04-07 16:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12683","person_id":"10534"}
[2026-04-07 16:18:36] [INFO] Checking activity reminders 
[2026-04-07 16:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:46] [INFO] Checking activity reminders 
[2026-04-07 16:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12016","deal_id":"local_69d4b9dae092d5.54227776","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:18:48","session_id":"b5vp4mqbplulljt2o4ier38crb"}
[2026-04-07 16:18:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 16:18:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12016","is_new_deal":false}
[2026-04-07 16:18:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:18:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:18:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:18:48] [INFO] getContactPrimaryPhone called {"contact_id":"12016"}
[2026-04-07 16:18:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 16:18:48] [INFO] getContactPrimaryPhone result {"contact_id":"12016","person_found":true,"primary_phone":"9196079424"}
[2026-04-07 16:18:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9196079424"}
[2026-04-07 16:18:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9196079424","contact_id":"12016","deal_id":"local_69d4b9dae092d5.54227776","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-04-07 16:18:48"}
[2026-04-07 16:18:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4b9dae092d5.54227776","contact_id":"12016","existing_deal_found":true,"existing_contact_id":"12016","existing_title":"معامله دوم 9196079424 | کانال VIP با پشتیبانی","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","server_time":"2026-04-07 16:18:48"}
[2026-04-07 16:18:48] [INFO] DealController.save validated payments {"deal_id":"local_69d4b9dae092d5.54227776","contact_id":"12016","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 16:18:48] [INFO] DealController.save validating permissions {"current_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"12016","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:18:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4b9dae092d5.54227776","contact_didar_id":"12016","title":"معامله دوم 9196079424 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9196079424","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانم ببر افکن","existing_deal":"YES","existing_deal_id":"local_69d4b9dae092d5.54227776","existing_deal_status":"Pending","server_time":"2026-04-07 16:18:48","session_data":{"didar_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","name":"خانم شایسته","user_id":"15"}}
[2026-04-07 16:18:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 16:18:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4b9dae092d5.54227776","contact_id":"12016","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_name":"خانم شایسته","deal_title":"معامله دوم 9196079424 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:18:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:18:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12016","person_id":"1049"}
[2026-04-07 16:18:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1803","person_id":"12595"}
[2026-04-07 16:18:54] [INFO] Checking activity reminders 
[2026-04-07 16:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:18:56] [INFO] Checking activity reminders 
[2026-04-07 16:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:06] [INFO] Checking activity reminders 
[2026-04-07 16:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:08] [INFO] Checking activity reminders 
[2026-04-07 16:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:24] [INFO] Checking activity reminders 
[2026-04-07 16:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12664","person_id":"5314"}
[2026-04-07 16:19:36] [INFO] Checking activity reminders 
[2026-04-07 16:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:52] [INFO] Checking activity reminders 
[2026-04-07 16:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:54] [INFO] Checking activity reminders 
[2026-04-07 16:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:19:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2704","person_id":"13757"}
[2026-04-07 16:20:06] [INFO] Checking activity reminders 
[2026-04-07 16:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:20:18] [INFO] Checking activity reminders 
[2026-04-07 16:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:20:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-07 16:20:24] [INFO] Checking activity reminders 
[2026-04-07 16:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:20:47] [INFO] Checking activity reminders 
[2026-04-07 16:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:20:55] [INFO] Checking activity reminders 
[2026-04-07 16:20:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:20:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-07 16:21:18] [INFO] Checking activity reminders 
[2026-04-07 16:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:21:25] [INFO] Checking activity reminders 
[2026-04-07 16:21:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:21:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:21:52] [INFO] Checking activity reminders 
[2026-04-07 16:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:21:55] [INFO] Checking activity reminders 
[2026-04-07 16:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:22:18] [INFO] Checking activity reminders 
[2026-04-07 16:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:22:26] [INFO] Checking activity reminders 
[2026-04-07 16:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:22:46] [INFO] Checking activity reminders 
[2026-04-07 16:22:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:22:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:22:56] [INFO] Checking activity reminders 
[2026-04-07 16:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:23:06] [INFO] Checking activity reminders 
[2026-04-07 16:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:23:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2962","person_id":"2637"}
[2026-04-07 16:23:26] [INFO] Checking activity reminders 
[2026-04-07 16:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:23:31] [INFO] Checking activity reminders 
[2026-04-07 16:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:23:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12733","person_id":"17361"}
[2026-04-07 16:23:56] [INFO] Checking activity reminders 
[2026-04-07 16:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:23:59] [INFO] Checking activity reminders 
[2026-04-07 16:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:04] [INFO] Checking activity reminders 
[2026-04-07 16:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:15] [INFO] Checking activity reminders 
[2026-04-07 16:24:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:26] [INFO] Checking activity reminders 
[2026-04-07 16:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:31] [INFO] Checking activity reminders 
[2026-04-07 16:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:49] [INFO] Checking activity reminders 
[2026-04-07 16:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:24:56] [INFO] Checking activity reminders 
[2026-04-07 16:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:25:26] [INFO] Checking activity reminders 
[2026-04-07 16:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:25:31] [INFO] Checking activity reminders 
[2026-04-07 16:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:25:42] [INFO] Checking activity reminders 
[2026-04-07 16:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:25:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8168","person_id":"20035"}
[2026-04-07 16:25:56] [INFO] Checking activity reminders 
[2026-04-07 16:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:26:14] [INFO] Checking activity reminders 
[2026-04-07 16:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:26:26] [INFO] Checking activity reminders 
[2026-04-07 16:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:26:43] [INFO] Checking activity reminders 
[2026-04-07 16:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:26:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-07 16:26:56] [INFO] Checking activity reminders 
[2026-04-07 16:26:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:26:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:27:11] [INFO] Checking activity reminders 
[2026-04-07 16:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11091","person_id":"9088"}
[2026-04-07 16:27:26] [INFO] Checking activity reminders 
[2026-04-07 16:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:27:39] [INFO] Checking activity reminders 
[2026-04-07 16:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-04-07 16:27:57] [INFO] Checking activity reminders 
[2026-04-07 16:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:28:10] [INFO] Checking activity reminders 
[2026-04-07 16:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:28:17] [INFO] Checking activity reminders 
[2026-04-07 16:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:28:27] [INFO] Checking activity reminders 
[2026-04-07 16:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:28:47] [INFO] Checking activity reminders 
[2026-04-07 16:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:28:57] [INFO] Checking activity reminders 
[2026-04-07 16:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:29:17] [INFO] Checking activity reminders 
[2026-04-07 16:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:29:27] [INFO] Checking activity reminders 
[2026-04-07 16:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:29:37] [INFO] Checking activity reminders 
[2026-04-07 16:29:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:29:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:29:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7241","person_id":"16470"}
[2026-04-07 16:29:56] [INFO] Checking activity reminders 
[2026-04-07 16:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:29:57] [INFO] Checking activity reminders 
[2026-04-07 16:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3043","person_id":"17280"}
[2026-04-07 16:30:27] [INFO] Checking activity reminders 
[2026-04-07 16:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:30:27] [INFO] Checking activity reminders 
[2026-04-07 16:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_96","person_id":"21173"}
[2026-04-07 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_96","person_id":"21173"}
[2026-04-07 16:30:57] [INFO] Checking activity reminders 
[2026-04-07 16:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:30:57] [INFO] Checking activity reminders 
[2026-04-07 16:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:09] [INFO] Checking activity reminders 
[2026-04-07 16:31:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"20948","deal_id":"local_69d4da62000db2.97020551","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:31:10","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:31:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"20948","is_new_deal":false}
[2026-04-07 16:31:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 16:31:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 16:31:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-07 16:31:10] [INFO] getContactPrimaryPhone called {"contact_id":"20948"}
[2026-04-07 16:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:31:10] [INFO] getContactPrimaryPhone result {"contact_id":"20948","person_found":true,"primary_phone":"9152251602"}
[2026-04-07 16:31:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152251602"}
[2026-04-07 16:31:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152251602","contact_id":"20948","deal_id":"local_69d4da62000db2.97020551","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:31:10"}
[2026-04-07 16:31:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4da62000db2.97020551","contact_id":"20948","existing_deal_found":true,"existing_contact_id":"20948","existing_title":"معامله دوم 9152251602 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:31:10"}
[2026-04-07 16:31:10] [INFO] DealController.save validated payments {"deal_id":"local_69d4da62000db2.97020551","contact_id":"20948","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-07 16:31:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20948","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:31:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4da62000db2.97020551","contact_didar_id":"20948","title":"معامله دوم 9152251602 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9152251602","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احمد وحدتی","existing_deal":"YES","existing_deal_id":"local_69d4da62000db2.97020551","existing_deal_status":"Pending","server_time":"2026-04-07 16:31:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:31:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4da62000db2.97020551","contact_id":"20948","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9152251602 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-07 16:31:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:31:20] [INFO] Checking activity reminders 
[2026-04-07 16:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:27] [INFO] Checking activity reminders 
[2026-04-07 16:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:28] [INFO] Checking activity reminders 
[2026-04-07 16:31:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"657","person_id":"8163"}
[2026-04-07 16:31:57] [INFO] Checking activity reminders 
[2026-04-07 16:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:31:58] [INFO] Checking activity reminders 
[2026-04-07 16:31:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:31:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:32:27] [INFO] Checking activity reminders 
[2026-04-07 16:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:32:44] [INFO] Activity save request {"post_data":{"contact_id":"20948","deal_id":"local_69d4da62000db2.97020551","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مشهد \r\nبرای کانال 405 یکساله مشکل پرداخت داشت \r\n6 ماهه پرزنت شد \r\nبدون پشتیبانی \/ ارسال شماره شبا \r\nدوره ی پیش بینی براش خیلی جذاب بود ","activity_duration":"12","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:32:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20948","note_was_empty":true}
[2026-04-07 16:32:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"20948","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:44] [INFO] Updating virtual stage {"contact_id":"20948","stage_name":"deal_registered","force":false}
[2026-04-07 16:32:44] [INFO] Virtual stage successfully saved {"contact_id":"20948","stage_name":"deal_registered"}
[2026-04-07 16:32:44] [INFO] Virtual stage updated after activity save {"contact_id":"20948"}
[2026-04-07 16:32:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da62000db2.97020551","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-07 16:32:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50074d125c6.89296354","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50074d125c6.89296354"}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:44] [INFO] Updating virtual stage {"contact_id":"20948","stage_name":"deal_registered","force":false}
[2026-04-07 16:32:44] [INFO] Virtual stage successfully saved {"contact_id":"20948","stage_name":"deal_registered"}
[2026-04-07 16:32:44] [INFO] Virtual stage updated after activity save {"contact_id":"20948"}
[2026-04-07 16:32:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-07 16:32:56] [INFO] Checking activity reminders 
[2026-04-07 16:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:32:57] [INFO] Checking activity reminders 
[2026-04-07 16:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:33:15] [INFO] Checking activity reminders 
[2026-04-07 16:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:33:16] [INFO] Checking activity reminders 
[2026-04-07 16:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:33:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:33:29] [INFO] Checking activity reminders 
[2026-04-07 16:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:33:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9457","person_id":"13957"}
[2026-04-07 16:33:46] [INFO] Checking activity reminders 
[2026-04-07 16:33:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:33:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:34:09] [INFO] Checking activity reminders 
[2026-04-07 16:34:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:34:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:34:16] [INFO] Checking activity reminders 
[2026-04-07 16:34:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:34:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:34:39] [INFO] Checking activity reminders 
[2026-04-07 16:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:34:46] [INFO] Checking activity reminders 
[2026-04-07 16:34:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:34:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:34:54] [INFO] Checking activity reminders 
[2026-04-07 16:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:35:11] [INFO] Checking activity reminders 
[2026-04-07 16:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:35:16] [INFO] Checking activity reminders 
[2026-04-07 16:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:35:28] [INFO] Checking activity reminders 
[2026-04-07 16:35:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:35:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:35:46] [INFO] Checking activity reminders 
[2026-04-07 16:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:35:46] [INFO] Checking activity reminders 
[2026-04-07 16:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:36:16] [INFO] Checking activity reminders 
[2026-04-07 16:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:36:33] [INFO] Checking activity reminders 
[2026-04-07 16:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:36:43] [INFO] Checking activity reminders 
[2026-04-07 16:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:36:46] [INFO] Checking activity reminders 
[2026-04-07 16:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4939","person_id":"14239"}
[2026-04-07 16:37:03] [INFO] Checking activity reminders 
[2026-04-07 16:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:16] [INFO] Checking activity reminders 
[2026-04-07 16:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:17] [INFO] Checking activity reminders 
[2026-04-07 16:37:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2760","person_id":"13880"}
[2026-04-07 16:37:47] [INFO] Checking activity reminders 
[2026-04-07 16:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:47] [INFO] Checking activity reminders 
[2026-04-07 16:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:56] [INFO] Checking activity reminders 
[2026-04-07 16:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:37:59] [INFO] Checking activity reminders 
[2026-04-07 16:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:38:08] [INFO] Checking activity reminders 
[2026-04-07 16:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:38:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10290","deal_id":"local_69d4dc28c1c330.76203528","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:38:16","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:38:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10290","is_new_deal":false}
[2026-04-07 16:38:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:38:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:38:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:38:16] [INFO] getContactPrimaryPhone called {"contact_id":"10290"}
[2026-04-07 16:38:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:16] [INFO] getContactPrimaryPhone result {"contact_id":"10290","person_found":true,"primary_phone":"9031088288"}
[2026-04-07 16:38:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9031088288"}
[2026-04-07 16:38:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9031088288","contact_id":"10290","deal_id":"local_69d4dc28c1c330.76203528","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:38:16"}
[2026-04-07 16:38:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dc28c1c330.76203528","contact_id":"10290","existing_deal_found":true,"existing_contact_id":"10290","existing_title":"معامله دوم 9031088288 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:38:16"}
[2026-04-07 16:38:16] [INFO] DealController.save validated payments {"deal_id":"local_69d4dc28c1c330.76203528","contact_id":"10290","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 16:38:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10290","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:38:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dc28c1c330.76203528","contact_didar_id":"10290","title":"معامله دوم 9031088288 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9031088288","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمید نوراله زاده","existing_deal":"YES","existing_deal_id":"local_69d4dc28c1c330.76203528","existing_deal_status":"Pending","server_time":"2026-04-07 16:38:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:38:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dc28c1c330.76203528","contact_id":"10290","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9031088288 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:38:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:38:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:17] [INFO] Checking activity reminders 
[2026-04-07 16:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:38:39] [INFO] Activity save request {"post_data":{"contact_id":"10290","deal_id":"local_69d4dc28c1c330.76203528","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:38:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10290","note_was_empty":true}
[2026-04-07 16:38:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"10290","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:39] [INFO] Updating virtual stage {"contact_id":"10290","stage_name":"deal_registered","force":false}
[2026-04-07 16:38:39] [INFO] Virtual stage successfully saved {"contact_id":"10290","stage_name":"deal_registered"}
[2026-04-07 16:38:39] [INFO] Virtual stage updated after activity save {"contact_id":"10290"}
[2026-04-07 16:38:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dc28c1c330.76203528","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 16:38:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d501d7216219.43653944","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d501d7216219.43653944"}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:39] [INFO] Updating virtual stage {"contact_id":"10290","stage_name":"deal_registered","force":false}
[2026-04-07 16:38:39] [INFO] Virtual stage successfully saved {"contact_id":"10290","stage_name":"deal_registered"}
[2026-04-07 16:38:39] [INFO] Virtual stage updated after activity save {"contact_id":"10290"}
[2026-04-07 16:38:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10290","person_id":"7041"}
[2026-04-07 16:38:47] [INFO] Checking activity reminders 
[2026-04-07 16:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:39:03] [INFO] Checking activity reminders 
[2026-04-07 16:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:39:11] [INFO] Checking activity reminders 
[2026-04-07 16:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:39:17] [INFO] Checking activity reminders 
[2026-04-07 16:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:39:19] [INFO] Checking activity reminders 
[2026-04-07 16:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:39:49] [INFO] Checking activity reminders 
[2026-04-07 16:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:40:01] [INFO] Checking activity reminders 
[2026-04-07 16:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:40:19] [INFO] Checking activity reminders 
[2026-04-07 16:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:40:49] [INFO] Checking activity reminders 
[2026-04-07 16:40:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:40:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:41:19] [INFO] Checking activity reminders 
[2026-04-07 16:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:41:49] [INFO] Checking activity reminders 
[2026-04-07 16:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:42:19] [INFO] Checking activity reminders 
[2026-04-07 16:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:42:49] [INFO] Checking activity reminders 
[2026-04-07 16:42:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:42:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:43:20] [INFO] Checking activity reminders 
[2026-04-07 16:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:43:50] [INFO] Checking activity reminders 
[2026-04-07 16:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:44:20] [INFO] Checking activity reminders 
[2026-04-07 16:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:44:50] [INFO] Checking activity reminders 
[2026-04-07 16:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:45:20] [INFO] Checking activity reminders 
[2026-04-07 16:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:45:50] [INFO] Checking activity reminders 
[2026-04-07 16:45:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:45:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:46:21] [INFO] Checking activity reminders 
[2026-04-07 16:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:46:51] [INFO] Checking activity reminders 
[2026-04-07 16:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:21] [INFO] Checking activity reminders 
[2026-04-07 16:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:21] [INFO] Checking activity reminders 
[2026-04-07 16:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:24] [INFO] Checking activity reminders 
[2026-04-07 16:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:33] [INFO] Checking activity reminders 
[2026-04-07 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:54] [INFO] Checking activity reminders 
[2026-04-07 16:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:47:57] [INFO] Checking activity reminders 
[2026-04-07 16:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:48:24] [INFO] Checking activity reminders 
[2026-04-07 16:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:48:27] [INFO] Checking activity reminders 
[2026-04-07 16:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:48:54] [INFO] Checking activity reminders 
[2026-04-07 16:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:48:59] [INFO] Checking activity reminders 
[2026-04-07 16:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:49:14] [INFO] Checking activity reminders 
[2026-04-07 16:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"892","person_id":"12437"}
[2026-04-07 16:49:24] [INFO] Checking activity reminders 
[2026-04-07 16:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:49:44] [INFO] Checking activity reminders 
[2026-04-07 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:49:54] [INFO] Checking activity reminders 
[2026-04-07 16:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:50:14] [INFO] Checking activity reminders 
[2026-04-07 16:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:50:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11305","deal_id":"local_69d4daceefebc4.21028240","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:50:16","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11305","is_new_deal":false}
[2026-04-07 16:50:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:50:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:50:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:50:16] [INFO] getContactPrimaryPhone called {"contact_id":"11305"}
[2026-04-07 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:16] [INFO] getContactPrimaryPhone result {"contact_id":"11305","person_found":true,"primary_phone":"9154419954"}
[2026-04-07 16:50:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9154419954"}
[2026-04-07 16:50:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9154419954","contact_id":"11305","deal_id":"local_69d4daceefebc4.21028240","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:50:16"}
[2026-04-07 16:50:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4daceefebc4.21028240","contact_id":"11305","existing_deal_found":true,"existing_contact_id":"11305","existing_title":"معامله دوم 9154419954 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:50:16"}
[2026-04-07 16:50:16] [INFO] DealController.save validated payments {"deal_id":"local_69d4daceefebc4.21028240","contact_id":"11305","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 16:50:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11305","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:50:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4daceefebc4.21028240","contact_didar_id":"11305","title":"معامله دوم 9154419954 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9154419954","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حنایی","existing_deal":"YES","existing_deal_id":"local_69d4daceefebc4.21028240","existing_deal_status":"Pending","server_time":"2026-04-07 16:50:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4daceefebc4.21028240","contact_id":"11305","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9154419954 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:50:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:24] [INFO] Checking activity reminders 
[2026-04-07 16:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:50:44] [INFO] Activity save request {"post_data":{"contact_id":"11305","deal_id":"local_69d4daceefebc4.21028240","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک داد شرایط صحبت نداره \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:50:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11305","note_was_empty":true}
[2026-04-07 16:50:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"11305","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Updating virtual stage {"contact_id":"11305","stage_name":"deal_registered","force":false}
[2026-04-07 16:50:44] [INFO] Virtual stage successfully saved {"contact_id":"11305","stage_name":"deal_registered"}
[2026-04-07 16:50:44] [INFO] Virtual stage updated after activity save {"contact_id":"11305"}
[2026-04-07 16:50:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4daceefebc4.21028240","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 16:50:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d504ac6c2a09.37604705","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d504ac6c2a09.37604705"}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Updating virtual stage {"contact_id":"11305","stage_name":"deal_registered","force":false}
[2026-04-07 16:50:44] [INFO] Virtual stage successfully saved {"contact_id":"11305","stage_name":"deal_registered"}
[2026-04-07 16:50:44] [INFO] Virtual stage updated after activity save {"contact_id":"11305"}
[2026-04-07 16:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11305","person_id":"17451"}
[2026-04-07 16:50:44] [INFO] Checking activity reminders 
[2026-04-07 16:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:50:54] [INFO] Checking activity reminders 
[2026-04-07 16:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:51:07] [INFO] Checking activity reminders 
[2026-04-07 16:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:51:08] [INFO] Checking activity reminders 
[2026-04-07 16:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:51:10] [INFO] Checking activity reminders 
[2026-04-07 16:51:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:51:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:51:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:51:15] [INFO] Checking activity reminders 
[2026-04-07 16:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:51:40] [INFO] Checking activity reminders 
[2026-04-07 16:51:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:51:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:10] [INFO] Checking activity reminders 
[2026-04-07 16:52:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:52:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:52:33] [INFO] Checking activity reminders 
[2026-04-07 16:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:40] [INFO] Checking activity reminders 
[2026-04-07 16:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:42] [INFO] Checking activity reminders 
[2026-04-07 16:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"892","person_id":"12437"}
[2026-04-07 16:52:48] [INFO] Checking activity reminders 
[2026-04-07 16:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:52:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:52:54","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:52:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21199","is_new_deal":false}
[2026-04-07 16:52:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:52:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:52:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:52:54] [INFO] getContactPrimaryPhone called {"contact_id":"21199"}
[2026-04-07 16:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:52:54] [INFO] getContactPrimaryPhone result {"contact_id":"21199","person_found":true,"primary_phone":"9163714279"}
[2026-04-07 16:52:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163714279"}
[2026-04-07 16:52:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163714279","contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:52:54"}
[2026-04-07 16:52:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","existing_deal_found":true,"existing_contact_id":"21199","existing_title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:52:54"}
[2026-04-07 16:52:54] [INFO] DealController.save validated payments {"deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 16:52:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21199","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:52:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dd3a3bc5a5.41181680","contact_didar_id":"21199","title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9163714279","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پیمان اسکافی","existing_deal":"YES","existing_deal_id":"local_69d4dd3a3bc5a5.41181680","existing_deal_status":"Pending","server_time":"2026-04-07 16:52:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:52:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:52:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:52:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Activity save request {"post_data":{"contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:53:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21199","note_was_empty":true}
[2026-04-07 16:53:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"21199","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Updating virtual stage {"contact_id":"21199","stage_name":"deal_registered","force":false}
[2026-04-07 16:53:07] [INFO] Virtual stage successfully saved {"contact_id":"21199","stage_name":"deal_registered"}
[2026-04-07 16:53:07] [INFO] Virtual stage updated after activity save {"contact_id":"21199"}
[2026-04-07 16:53:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dd3a3bc5a5.41181680","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 16:53:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d5053b40a1b9.38507412","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d5053b40a1b9.38507412"}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:07] [INFO] Updating virtual stage {"contact_id":"21199","stage_name":"deal_registered","force":false}
[2026-04-07 16:53:07] [INFO] Virtual stage successfully saved {"contact_id":"21199","stage_name":"deal_registered"}
[2026-04-07 16:53:07] [INFO] Virtual stage updated after activity save {"contact_id":"21199"}
[2026-04-07 16:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 16:53:12] [INFO] Checking activity reminders 
[2026-04-07 16:53:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:53:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:53:19] [INFO] Checking activity reminders 
[2026-04-07 16:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:53:42] [INFO] Checking activity reminders 
[2026-04-07 16:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:53:49] [INFO] Checking activity reminders 
[2026-04-07 16:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:54:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 16:54:19] [INFO] Checking activity reminders 
[2026-04-07 16:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:54:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:54:43] [INFO] Checking activity reminders 
[2026-04-07 16:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:54:47] [INFO] Lead update received {"contact_id":"21469","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 16:54:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:54:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:54:47] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21469"}
[2026-04-07 16:54:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-07 16:54:49] [INFO] Checking activity reminders 
[2026-04-07 16:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:13] [INFO] Checking activity reminders 
[2026-04-07 16:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:20] [INFO] Checking activity reminders 
[2026-04-07 16:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:44] [INFO] Checking activity reminders 
[2026-04-07 16:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:45] [INFO] Checking activity reminders 
[2026-04-07 16:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:51] [INFO] Checking activity reminders 
[2026-04-07 16:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:52] [INFO] Checking activity reminders 
[2026-04-07 16:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:55:59] [INFO] Checking activity reminders 
[2026-04-07 16:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:56:14] [INFO] Checking activity reminders 
[2026-04-07 16:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:56:34] [INFO] Checking activity reminders 
[2026-04-07 16:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:56:44] [INFO] Checking activity reminders 
[2026-04-07 16:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:56:51] [INFO] Checking activity reminders 
[2026-04-07 16:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:56:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-04-07 16:56:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 16:56:57","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 16:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:56:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11923","is_new_deal":false}
[2026-04-07 16:56:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 16:56:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:56:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 16:56:57] [INFO] getContactPrimaryPhone called {"contact_id":"11923"}
[2026-04-07 16:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:56:57] [INFO] getContactPrimaryPhone result {"contact_id":"11923","person_found":true,"primary_phone":"9159875301"}
[2026-04-07 16:56:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159875301"}
[2026-04-07 16:56:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159875301","contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:56:57"}
[2026-04-07 16:56:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","existing_deal_found":true,"existing_contact_id":"11923","existing_title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 16:56:57"}
[2026-04-07 16:56:57] [INFO] DealController.save validated payments {"deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 16:56:57] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11923","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 16:56:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dcbcbe7ef8.38675734","contact_didar_id":"11923","title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9159875301","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصری","existing_deal":"YES","existing_deal_id":"local_69d4dcbcbe7ef8.38675734","existing_deal_status":"Pending","server_time":"2026-04-07 16:56:57","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 16:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:56:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 16:56:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 16:56:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:11] [INFO] Checking activity reminders 
[2026-04-07 16:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:57:20] [INFO] Checking activity reminders 
[2026-04-07 16:57:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:57:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:57:21] [INFO] Checking activity reminders 
[2026-04-07 16:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:57:29] [INFO] Lead update received {"contact_id":"11923","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 16:57:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:29] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11923"}
[2026-04-07 16:57:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Activity save request {"post_data":{"contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیامک \r\nبیپاسخ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 16:57:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11923","note_was_empty":true}
[2026-04-07 16:57:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"11923","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-07 16:57:51] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-07 16:57:51] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-07 16:57:51] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dcbcbe7ef8.38675734","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 16:57:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50657260843.55778336","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50657260843.55778336"}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-07 16:57:51] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-07 16:57:51] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-07 16:57:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 16:57:51] [INFO] Checking activity reminders 
[2026-04-07 16:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:57:59] [INFO] Checking activity reminders 
[2026-04-07 16:57:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:57:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:58:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"776","person_id":"4379"}
[2026-04-07 16:58:21] [INFO] Checking activity reminders 
[2026-04-07 16:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:58:29] [INFO] Checking activity reminders 
[2026-04-07 16:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:59:05] [INFO] Checking activity reminders 
[2026-04-07 16:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 16:59:14] [INFO] Checking activity reminders 
[2026-04-07 16:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 16:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:00:22] [INFO] Checking activity reminders 
[2026-04-07 17:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:00:34] [INFO] Checking activity reminders 
[2026-04-07 17:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10586","person_id":"5026"}
[2026-04-07 17:01:00] [INFO] Checking activity reminders 
[2026-04-07 17:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:01:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3278","person_id":"6999"}
[2026-04-07 17:01:30] [INFO] Checking activity reminders 
[2026-04-07 17:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:01:58] [INFO] Checking activity reminders 
[2026-04-07 17:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:02:38] [INFO] Checking activity reminders 
[2026-04-07 17:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:02:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6149","person_id":"18550"}
[2026-04-07 17:03:00] [INFO] Checking activity reminders 
[2026-04-07 17:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:03:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6337","person_id":"14027"}
[2026-04-07 17:03:25] [INFO] Checking activity reminders 
[2026-04-07 17:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:03:45] [INFO] Checking activity reminders 
[2026-04-07 17:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:03:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5194","person_id":"9880"}
[2026-04-07 17:04:15] [INFO] Checking activity reminders 
[2026-04-07 17:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:04:47] [INFO] Checking activity reminders 
[2026-04-07 17:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:04:53] [INFO] Checking activity reminders 
[2026-04-07 17:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:07:24] [WARNING] Auth check failed - not authenticated {"session_id":"h8v8rcd9ml9lia5538at1goit4","session_keys":[],"action":"log_client_event"}
[2026-04-07 17:07:24] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-07 17:07:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 17:08:00] [INFO] Checking activity reminders 
[2026-04-07 17:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:07] [INFO] Checking activity reminders 
[2026-04-07 17:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:13] [INFO] Checking activity reminders 
[2026-04-07 17:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:08:25] [INFO] Checking activity reminders 
[2026-04-07 17:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:29] [INFO] Checking activity reminders 
[2026-04-07 17:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:34] [INFO] Checking activity reminders 
[2026-04-07 17:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:43] [INFO] Checking activity reminders 
[2026-04-07 17:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:08:55] [INFO] Checking activity reminders 
[2026-04-07 17:08:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:08:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:08] [INFO] Checking activity reminders 
[2026-04-07 17:09:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:14] [INFO] Checking activity reminders 
[2026-04-07 17:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:21] [INFO] Checking activity reminders 
[2026-04-07 17:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:25] [INFO] Checking activity reminders 
[2026-04-07 17:09:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:25] [INFO] Checking activity reminders 
[2026-04-07 17:09:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:09:30] [INFO] Lead update received {"contact_id":"9892","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-07 17:09:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:09:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:09:30] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9892"}
[2026-04-07 17:09:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:09:56] [INFO] Checking activity reminders 
[2026-04-07 17:09:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:09:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:10:06] [INFO] Checking activity reminders 
[2026-04-07 17:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"986","person_id":"8027"}
[2026-04-07 17:10:17] [INFO] Activity save request {"post_data":{"contact_id":"9892","deal_id":"local_6946b129b34719.71100366","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"بله وصل نمیشه خط دوم وصل بشه ، از دبی اقامتش کنسل شده همه چی رو هواس","activity_duration":"15","direction":"incoming","current_stage":"ارسال لینک پرداخت","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:10:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:10:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:10:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9892","note_was_empty":true}
[2026-04-07 17:10:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"9892","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:10:17] [INFO] Updating virtual stage {"contact_id":"9892","stage_name":"deal_registered","force":false}
[2026-04-07 17:10:17] [INFO] Virtual stage successfully saved {"contact_id":"9892","stage_name":"deal_registered"}
[2026-04-07 17:10:17] [INFO] Virtual stage updated after activity save {"contact_id":"9892"}
[2026-04-07 17:10:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6946b129b34719.71100366","stage":"پشتیبانی","status_change":null}
[2026-04-07 17:10:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d509411fd764.02224725","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:10:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69d509411fd764.02224725"}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:10:17] [INFO] Updating virtual stage {"contact_id":"9892","stage_name":"deal_registered","force":false}
[2026-04-07 17:10:17] [INFO] Virtual stage successfully saved {"contact_id":"9892","stage_name":"deal_registered"}
[2026-04-07 17:10:17] [INFO] Virtual stage updated after activity save {"contact_id":"9892"}
[2026-04-07 17:10:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 17:12:06] [INFO] Checking activity reminders 
[2026-04-07 17:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:12:51] [INFO] Checking activity reminders 
[2026-04-07 17:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2953","person_id":"17170"}
[2026-04-07 17:13:14] [INFO] Checking activity reminders 
[2026-04-07 17:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:18] [INFO] Checking activity reminders 
[2026-04-07 17:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:13:26] [INFO] Checking activity reminders 
[2026-04-07 17:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:43] [INFO] Checking activity reminders 
[2026-04-07 17:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:43] [INFO] Checking activity reminders 
[2026-04-07 17:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:14:02] [INFO] Checking activity reminders 
[2026-04-07 17:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:13] [INFO] Checking activity reminders 
[2026-04-07 17:14:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:23] [INFO] Checking activity reminders 
[2026-04-07 17:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:30] [INFO] Checking activity reminders 
[2026-04-07 17:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:40] [INFO] Checking activity reminders 
[2026-04-07 17:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:43] [INFO] Checking activity reminders 
[2026-04-07 17:14:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:14:55] [INFO] Checking activity reminders 
[2026-04-07 17:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:15:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10377","person_id":"3338"}
[2026-04-07 17:15:13] [INFO] Checking activity reminders 
[2026-04-07 17:15:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:15:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:15:37] [INFO] Checking activity reminders 
[2026-04-07 17:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:15:46] [INFO] Checking activity reminders 
[2026-04-07 17:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:15:52] [INFO] Checking activity reminders 
[2026-04-07 17:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1828","person_id":"10528"}
[2026-04-07 17:16:07] [INFO] Checking activity reminders 
[2026-04-07 17:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:16:16] [INFO] Checking activity reminders 
[2026-04-07 17:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:16:23] [INFO] Checking activity reminders 
[2026-04-07 17:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:16:41] [INFO] Activity save request {"post_data":{"contact_id":"20071","deal_id":"local_69d4bf11ceb6e7.54321223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"گفت همسرم عضو بوده الان خوابه ۱ ساعت دیگه تماس \r\nاقای رمضانی","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:16:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20071","note_was_empty":true}
[2026-04-07 17:16:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"20071","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:41] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-07 17:16:41] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-07 17:16:41] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-07 17:16:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bf11ceb6e7.54321223","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:16:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50ac1b94094.38601180","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50ac1b94094.38601180"}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:41] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-07 17:16:41] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-07 17:16:41] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-07 17:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-07 17:16:46] [INFO] Checking activity reminders 
[2026-04-07 17:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:17:17] [INFO] Checking activity reminders 
[2026-04-07 17:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:17:36] [INFO] Checking activity reminders 
[2026-04-07 17:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:17:45] [INFO] Checking activity reminders 
[2026-04-07 17:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:17:47] [INFO] Checking activity reminders 
[2026-04-07 17:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:17:51] [INFO] Checking activity reminders 
[2026-04-07 17:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:18:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:18:17] [INFO] Checking activity reminders 
[2026-04-07 17:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:18:22] [INFO] Checking activity reminders 
[2026-04-07 17:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:18:47] [INFO] Checking activity reminders 
[2026-04-07 17:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:19:18] [INFO] Checking activity reminders 
[2026-04-07 17:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:19:48] [INFO] Checking activity reminders 
[2026-04-07 17:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:20:18] [INFO] Checking activity reminders 
[2026-04-07 17:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:20:21] [INFO] Activity save request {"post_data":{"contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"میگه استاد خیلی مبلغ برد بالا \r\nبراش 6 ماهه گفتم \r\nباشگاه بود خیلی شلوغ بود \/ تماس مجدد ","activity_duration":"3","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:20:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21199","note_was_empty":true}
[2026-04-07 17:20:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"21199","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:21] [INFO] Updating virtual stage {"contact_id":"21199","stage_name":"deal_registered","force":false}
[2026-04-07 17:20:21] [INFO] Virtual stage successfully saved {"contact_id":"21199","stage_name":"deal_registered"}
[2026-04-07 17:20:21] [INFO] Virtual stage updated after activity save {"contact_id":"21199"}
[2026-04-07 17:20:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dd3a3bc5a5.41181680","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 17:20:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50b9dafbd34.67894814","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50b9dafbd34.67894814"}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:21] [INFO] Updating virtual stage {"contact_id":"21199","stage_name":"deal_registered","force":false}
[2026-04-07 17:20:21] [INFO] Virtual stage successfully saved {"contact_id":"21199","stage_name":"deal_registered"}
[2026-04-07 17:20:21] [INFO] Virtual stage updated after activity save {"contact_id":"21199"}
[2026-04-07 17:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:20:32","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21199","is_new_deal":false}
[2026-04-07 17:20:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:20:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:20:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:20:32] [INFO] getContactPrimaryPhone called {"contact_id":"21199"}
[2026-04-07 17:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:32] [INFO] getContactPrimaryPhone result {"contact_id":"21199","person_found":true,"primary_phone":"9163714279"}
[2026-04-07 17:20:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163714279"}
[2026-04-07 17:20:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163714279","contact_id":"21199","deal_id":"local_69d4dd3a3bc5a5.41181680","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:20:32"}
[2026-04-07 17:20:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","existing_deal_found":true,"existing_contact_id":"21199","existing_title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:20:32"}
[2026-04-07 17:20:32] [INFO] DealController.save validated payments {"deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 17:20:32] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21199","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:20:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dd3a3bc5a5.41181680","contact_didar_id":"21199","title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9163714279","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پیمان اسکافی","existing_deal":"YES","existing_deal_id":"local_69d4dd3a3bc5a5.41181680","existing_deal_status":"Pending","server_time":"2026-04-07 17:20:32","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:20:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dd3a3bc5a5.41181680","contact_id":"21199","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9163714279 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:20:32","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21199","person_id":"3799"}
[2026-04-07 17:21:07] [INFO] Checking activity reminders 
[2026-04-07 17:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:21:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"905","person_id":"3198"}
[2026-04-07 17:21:38] [INFO] Checking activity reminders 
[2026-04-07 17:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:21:46] [INFO] Checking activity reminders 
[2026-04-07 17:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:22:01] [INFO] Checking activity reminders 
[2026-04-07 17:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:22:01] [INFO] Checking activity reminders 
[2026-04-07 17:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:22:02] [INFO] Checking activity reminders 
[2026-04-07 17:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:22:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 17:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:22:32] [INFO] Checking activity reminders 
[2026-04-07 17:22:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:22:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:22:34] [INFO] Checking activity reminders 
[2026-04-07 17:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:23:02] [INFO] Checking activity reminders 
[2026-04-07 17:23:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:23:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:23:04] [INFO] Checking activity reminders 
[2026-04-07 17:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:23:32] [INFO] Checking activity reminders 
[2026-04-07 17:23:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:23:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:23:34] [INFO] Checking activity reminders 
[2026-04-07 17:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:24:02] [INFO] Checking activity reminders 
[2026-04-07 17:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:24:04] [INFO] Checking activity reminders 
[2026-04-07 17:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:24:33] [INFO] Checking activity reminders 
[2026-04-07 17:24:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:24:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:24:34] [INFO] Checking activity reminders 
[2026-04-07 17:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:25:04] [INFO] Checking activity reminders 
[2026-04-07 17:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:25:11] [INFO] Checking activity reminders 
[2026-04-07 17:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:25:34] [INFO] Checking activity reminders 
[2026-04-07 17:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:25:38] [INFO] Checking activity reminders 
[2026-04-07 17:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:04] [INFO] Checking activity reminders 
[2026-04-07 17:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:05] [INFO] Checking activity reminders 
[2026-04-07 17:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:34] [INFO] Checking activity reminders 
[2026-04-07 17:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:35] [INFO] Checking activity reminders 
[2026-04-07 17:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:48] [INFO] Checking activity reminders 
[2026-04-07 17:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:26:55] [INFO] Checking activity reminders 
[2026-04-07 17:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:04] [INFO] Checking activity reminders 
[2026-04-07 17:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:05] [INFO] Checking activity reminders 
[2026-04-07 17:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:05] [INFO] Checking activity reminders 
[2026-04-07 17:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"496","person_id":"12975"}
[2026-04-07 17:27:34] [INFO] Checking activity reminders 
[2026-04-07 17:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:35] [INFO] Checking activity reminders 
[2026-04-07 17:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:35] [INFO] Checking activity reminders 
[2026-04-07 17:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:44] [INFO] Checking activity reminders 
[2026-04-07 17:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:27:55] [INFO] Checking activity reminders 
[2026-04-07 17:27:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:27:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:05] [INFO] Checking activity reminders 
[2026-04-07 17:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:05] [INFO] Checking activity reminders 
[2026-04-07 17:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:09] [INFO] Activity save request {"post_data":{"contact_id":"15050","deal_id":"local_69d4e263e929b2.43727540","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ملک نیمه ساخته داشته پارسال ایتاد گفتن بفروشه طلا کنه ۹۰۰ ت سود کرده \r\nجا به جایی خونه داره خیلی تشکر کرد گفت دوست دارم باشم ولی پول ندارم ۲ ماه دیگه ۳۰۰ میاد دستم \r\nدوستش خانوم رضایی از کنار ایشون ۱۵۰۰ طلا خریده نمیدونه بفروشه یا نه گفتم ۶ ماهه باشین شراکتی قرار شد صحبت کنه ۱ ساعت دیگه اطلاع","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:28:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15050","note_was_empty":true}
[2026-04-07 17:28:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"15050","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:09] [INFO] Updating virtual stage {"contact_id":"15050","stage_name":"deal_registered","force":false}
[2026-04-07 17:28:09] [INFO] Virtual stage successfully saved {"contact_id":"15050","stage_name":"deal_registered"}
[2026-04-07 17:28:09] [INFO] Virtual stage updated after activity save {"contact_id":"15050"}
[2026-04-07 17:28:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4e263e929b2.43727540","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:28:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50d716dc7f5.95776211","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50d716dc7f5.95776211"}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:09] [INFO] Updating virtual stage {"contact_id":"15050","stage_name":"deal_registered","force":false}
[2026-04-07 17:28:09] [INFO] Virtual stage successfully saved {"contact_id":"15050","stage_name":"deal_registered"}
[2026-04-07 17:28:09] [INFO] Virtual stage updated after activity save {"contact_id":"15050"}
[2026-04-07 17:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-07 17:28:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:28:21] [INFO] Checking activity reminders 
[2026-04-07 17:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:35] [INFO] Checking activity reminders 
[2026-04-07 17:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:36] [INFO] Checking activity reminders 
[2026-04-07 17:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:28:40] [INFO] Checking activity reminders 
[2026-04-07 17:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:29:05] [INFO] Checking activity reminders 
[2026-04-07 17:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:29:11] [INFO] Checking activity reminders 
[2026-04-07 17:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:29:35] [INFO] Checking activity reminders 
[2026-04-07 17:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:30:05] [INFO] Checking activity reminders 
[2026-04-07 17:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:30:35] [INFO] Checking activity reminders 
[2026-04-07 17:30:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:30:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"496","person_id":"12975"}
[2026-04-07 17:30:41] [INFO] Checking activity reminders 
[2026-04-07 17:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:30:57] [INFO] Checking activity reminders 
[2026-04-07 17:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:05] [INFO] Checking activity reminders 
[2026-04-07 17:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:07] [INFO] Checking activity reminders 
[2026-04-07 17:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:25] [INFO] Checking activity reminders 
[2026-04-07 17:31:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:31] [INFO] Checking activity reminders 
[2026-04-07 17:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:35] [INFO] Checking activity reminders 
[2026-04-07 17:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:31:48] [INFO] Checking activity reminders 
[2026-04-07 17:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:32:01] [INFO] Checking activity reminders 
[2026-04-07 17:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:32:05] [INFO] Checking activity reminders 
[2026-04-07 17:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:32:33] [INFO] Checking activity reminders 
[2026-04-07 17:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:32:35] [INFO] Checking activity reminders 
[2026-04-07 17:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:32:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-04-07 17:33:05] [INFO] Checking activity reminders 
[2026-04-07 17:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:33:11] [INFO] Checking activity reminders 
[2026-04-07 17:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:33:16] [INFO] Checking activity reminders 
[2026-04-07 17:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:33:36] [INFO] Checking activity reminders 
[2026-04-07 17:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:33:37] [INFO] Checking activity reminders 
[2026-04-07 17:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:33:49] [INFO] Checking activity reminders 
[2026-04-07 17:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:34:01] [INFO] Activity save request {"post_data":{"contact_id":"15348","deal_id":"local_69d4daf7459e98.79921400","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سرمایه اش کم شد \r\nطمع کرد \r\n4 سکه \/10 گرم طلا \r\nنقد نداره\r\nبورس نداره \r\nخودرو نداره \r\nبرای خانواده مشکلی پیش اومده سرمایه داده \r\nنمایشگاه فقط کمیسیونی کار میکنه \/ کاسبی تعطیله \r\nپرزنت 405 ","activity_duration":"12","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:34:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15348","note_was_empty":true}
[2026-04-07 17:34:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"15348","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:01] [INFO] Updating virtual stage {"contact_id":"15348","stage_name":"deal_registered","force":false}
[2026-04-07 17:34:01] [INFO] Virtual stage successfully saved {"contact_id":"15348","stage_name":"deal_registered"}
[2026-04-07 17:34:01] [INFO] Virtual stage updated after activity save {"contact_id":"15348"}
[2026-04-07 17:34:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4daf7459e98.79921400","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:34:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d50ed15db5d3.15767483","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d50ed15db5d3.15767483"}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:01] [INFO] Updating virtual stage {"contact_id":"15348","stage_name":"deal_registered","force":false}
[2026-04-07 17:34:01] [INFO] Virtual stage successfully saved {"contact_id":"15348","stage_name":"deal_registered"}
[2026-04-07 17:34:01] [INFO] Virtual stage updated after activity save {"contact_id":"15348"}
[2026-04-07 17:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:06] [INFO] Checking activity reminders 
[2026-04-07 17:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:34:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15348","deal_id":"local_69d4daf7459e98.79921400","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:34:09","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15348","is_new_deal":false}
[2026-04-07 17:34:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:34:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:34:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:34:09] [INFO] getContactPrimaryPhone called {"contact_id":"15348"}
[2026-04-07 17:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:09] [INFO] getContactPrimaryPhone result {"contact_id":"15348","person_found":true,"primary_phone":"9154478123"}
[2026-04-07 17:34:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9154478123"}
[2026-04-07 17:34:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9154478123","contact_id":"15348","deal_id":"local_69d4daf7459e98.79921400","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:34:09"}
[2026-04-07 17:34:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4daf7459e98.79921400","contact_id":"15348","existing_deal_found":true,"existing_contact_id":"15348","existing_title":"معامله دوم 9154478123 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:34:09"}
[2026-04-07 17:34:09] [INFO] DealController.save validated payments {"deal_id":"local_69d4daf7459e98.79921400","contact_id":"15348","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 17:34:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15348","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:34:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4daf7459e98.79921400","contact_didar_id":"15348","title":"معامله دوم 9154478123 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9154478123","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد طاها محمدیان","existing_deal":"YES","existing_deal_id":"local_69d4daf7459e98.79921400","existing_deal_status":"Pending","server_time":"2026-04-07 17:34:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4daf7459e98.79921400","contact_id":"15348","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9154478123 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:34:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:34:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:34:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:34:36] [INFO] Checking activity reminders 
[2026-04-07 17:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:34:41] [INFO] Checking activity reminders 
[2026-04-07 17:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:34:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:34:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:34:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:06] [INFO] Checking activity reminders 
[2026-04-07 17:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:35:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:35:24] [INFO] Checking activity reminders 
[2026-04-07 17:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:35:36] [INFO] Checking activity reminders 
[2026-04-07 17:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:35:40] [INFO] Checking activity reminders 
[2026-04-07 17:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:35:49] [INFO] Checking activity reminders 
[2026-04-07 17:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:35:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2967","person_id":"11038"}
[2026-04-07 17:36:19] [INFO] Checking activity reminders 
[2026-04-07 17:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:36:21] [INFO] Checking activity reminders 
[2026-04-07 17:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:36:29] [INFO] Checking activity reminders 
[2026-04-07 17:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:36:49] [INFO] Checking activity reminders 
[2026-04-07 17:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:36:59] [INFO] Checking activity reminders 
[2026-04-07 17:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:37:19] [INFO] Checking activity reminders 
[2026-04-07 17:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:37:30] [INFO] Checking activity reminders 
[2026-04-07 17:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:37:49] [INFO] Checking activity reminders 
[2026-04-07 17:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:38:00] [INFO] Checking activity reminders 
[2026-04-07 17:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:38:19] [INFO] Checking activity reminders 
[2026-04-07 17:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:38:30] [INFO] Checking activity reminders 
[2026-04-07 17:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:38:49] [INFO] Checking activity reminders 
[2026-04-07 17:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:39:04] [INFO] Activity save request {"post_data":{"contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"پیامک داد مریضه شرایط صحبت نداشت تماس میگیره ","activity_duration":"1","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:39:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11923","note_was_empty":true}
[2026-04-07 17:39:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"11923","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:04] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-07 17:39:04] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-07 17:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-07 17:39:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dcbcbe7ef8.38675734","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 17:39:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d510005c3403.76749468","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d510005c3403.76749468"}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:04] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-07 17:39:04] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-07 17:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-07 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-07 17:39:19] [INFO] Checking activity reminders 
[2026-04-07 17:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:39:41] [INFO] Checking activity reminders 
[2026-04-07 17:39:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:39:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:39:49] [INFO] Checking activity reminders 
[2026-04-07 17:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:39:54] [INFO] Checking activity reminders 
[2026-04-07 17:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:39:59] [INFO] Checking activity reminders 
[2026-04-07 17:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:09] [INFO] Checking activity reminders 
[2026-04-07 17:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:20] [INFO] Checking activity reminders 
[2026-04-07 17:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:27] [INFO] Checking activity reminders 
[2026-04-07 17:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:31] [INFO] Checking activity reminders 
[2026-04-07 17:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:31] [INFO] Checking activity reminders 
[2026-04-07 17:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:42] [INFO] Checking activity reminders 
[2026-04-07 17:40:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:44] [INFO] Checking activity reminders 
[2026-04-07 17:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:46] [INFO] Checking activity reminders 
[2026-04-07 17:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:40:48] [INFO] Checking activity reminders 
[2026-04-07 17:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:41:01] [INFO] Checking activity reminders 
[2026-04-07 17:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:41:04] [INFO] Checking activity reminders 
[2026-04-07 17:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:41:31] [INFO] Checking activity reminders 
[2026-04-07 17:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:41:34] [INFO] Checking activity reminders 
[2026-04-07 17:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:41:53] [INFO] Activity save request {"post_data":{"contact_id":"9142","deal_id":"local_69d4e1de350dc1.03582799","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پول داده طلا فروش ۲ میلیارد پولشو خورده بابا طرف دارا با نصف پرداخت میکنه\r\nزمین ۲ تا پارسال خریده از سیگنالها یکم خالی هست میگه میخوام اما الان سرمایه نقد ندارم \r\nشاید ۲ ماه دیگه ","activity_duration":"30","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:41:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:41:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:41:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9142","note_was_empty":true}
[2026-04-07 17:41:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"9142","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 17:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:41:53] [INFO] Updating virtual stage {"contact_id":"9142","stage_name":"deal_registered","force":false}
[2026-04-07 17:41:53] [INFO] Virtual stage successfully saved {"contact_id":"9142","stage_name":"deal_registered"}
[2026-04-07 17:41:53] [INFO] Virtual stage updated after activity save {"contact_id":"9142"}
[2026-04-07 17:41:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4e1de350dc1.03582799","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:41:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d510a9ddb660.62295463","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:41:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d510a9ddb660.62295463"}
[2026-04-07 17:41:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:41:53] [INFO] Updating virtual stage {"contact_id":"9142","stage_name":"deal_registered","force":false}
[2026-04-07 17:41:53] [INFO] Virtual stage successfully saved {"contact_id":"9142","stage_name":"deal_registered"}
[2026-04-07 17:41:53] [INFO] Virtual stage updated after activity save {"contact_id":"9142"}
[2026-04-07 17:41:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9142","person_id":"3918"}
[2026-04-07 17:42:01] [INFO] Checking activity reminders 
[2026-04-07 17:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:03] [INFO] Checking activity reminders 
[2026-04-07 17:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:04] [INFO] Checking activity reminders 
[2026-04-07 17:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:05] [INFO] Checking activity reminders 
[2026-04-07 17:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"974","person_id":"6980"}
[2026-04-07 17:42:34] [INFO] Checking activity reminders 
[2026-04-07 17:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:35] [INFO] Checking activity reminders 
[2026-04-07 17:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:42] [INFO] Checking activity reminders 
[2026-04-07 17:42:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:42:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:42:46] [INFO] Checking activity reminders 
[2026-04-07 17:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:00] [INFO] Checking activity reminders 
[2026-04-07 17:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:11] [INFO] Checking activity reminders 
[2026-04-07 17:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:12] [INFO] Checking activity reminders 
[2026-04-07 17:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:14] [INFO] Checking activity reminders 
[2026-04-07 17:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15348","person_id":"17447"}
[2026-04-07 17:43:41] [INFO] Checking activity reminders 
[2026-04-07 17:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:49] [INFO] Checking activity reminders 
[2026-04-07 17:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:43:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:43:58] [INFO] Checking activity reminders 
[2026-04-07 17:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"974","person_id":"6980"}
[2026-04-07 17:44:11] [INFO] Checking activity reminders 
[2026-04-07 17:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:23] [INFO] Checking activity reminders 
[2026-04-07 17:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:23] [INFO] Checking activity reminders 
[2026-04-07 17:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:26] [INFO] Checking activity reminders 
[2026-04-07 17:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:28] [INFO] Checking activity reminders 
[2026-04-07 17:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:44:46] [INFO] Checking activity reminders 
[2026-04-07 17:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:52] [INFO] Checking activity reminders 
[2026-04-07 17:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:44:54] [INFO] Checking activity reminders 
[2026-04-07 17:44:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:44:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:45:07] [INFO] Checking activity reminders 
[2026-04-07 17:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:45:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2893","person_id":"14834"}
[2026-04-07 17:45:18] [INFO] Checking activity reminders 
[2026-04-07 17:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:45:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 17:45:27] [INFO] Checking activity reminders 
[2026-04-07 17:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:45:40] [INFO] Checking activity reminders 
[2026-04-07 17:45:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:45:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:45:52] [INFO] Checking activity reminders 
[2026-04-07 17:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:46:22] [INFO] Checking activity reminders 
[2026-04-07 17:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:46:31] [INFO] Checking activity reminders 
[2026-04-07 17:46:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:46:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:46:37] [INFO] Checking activity reminders 
[2026-04-07 17:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:46:52] [INFO] Checking activity reminders 
[2026-04-07 17:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:46:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:16] [INFO] Checking activity reminders 
[2026-04-07 17:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:22] [INFO] Checking activity reminders 
[2026-04-07 17:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:28] [INFO] Checking activity reminders 
[2026-04-07 17:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:53] [INFO] Checking activity reminders 
[2026-04-07 17:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:53] [INFO] Checking activity reminders 
[2026-04-07 17:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:47:58] [INFO] Checking activity reminders 
[2026-04-07 17:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:23] [INFO] Checking activity reminders 
[2026-04-07 17:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:48:28] [INFO] Checking activity reminders 
[2026-04-07 17:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:48:38] [INFO] Checking activity reminders 
[2026-04-07 17:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:48:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2233","person_id":"5163"}
[2026-04-07 17:48:53] [INFO] Checking activity reminders 
[2026-04-07 17:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:48:55] [INFO] Checking activity reminders 
[2026-04-07 17:48:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:48:58] [INFO] Checking activity reminders 
[2026-04-07 17:48:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:48:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:49:23] [INFO] Checking activity reminders 
[2026-04-07 17:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:49:28] [INFO] Checking activity reminders 
[2026-04-07 17:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:49:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 17:49:53] [INFO] Checking activity reminders 
[2026-04-07 17:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:49:59] [INFO] Checking activity reminders 
[2026-04-07 17:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:50:22] [INFO] Checking activity reminders 
[2026-04-07 17:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:50:23] [INFO] Checking activity reminders 
[2026-04-07 17:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-07 17:50:29] [INFO] Checking activity reminders 
[2026-04-07 17:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:50:53] [INFO] Checking activity reminders 
[2026-04-07 17:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:50:59] [INFO] Checking activity reminders 
[2026-04-07 17:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:51:23] [INFO] Checking activity reminders 
[2026-04-07 17:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:51:29] [INFO] Checking activity reminders 
[2026-04-07 17:51:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:51:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:51:54] [INFO] Checking activity reminders 
[2026-04-07 17:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:51:59] [INFO] Checking activity reminders 
[2026-04-07 17:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:20] [INFO] Checking activity reminders 
[2026-04-07 17:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:23] [INFO] Checking activity reminders 
[2026-04-07 17:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-07 17:52:29] [INFO] Checking activity reminders 
[2026-04-07 17:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:30] [INFO] Checking activity reminders 
[2026-04-07 17:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 17:52:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 17:52:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 17:52:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 17:52:53] [INFO] Checking activity reminders 
[2026-04-07 17:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:52:59] [INFO] Checking activity reminders 
[2026-04-07 17:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-07 17:53:07] [INFO] Checking activity reminders 
[2026-04-07 17:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7992","deal_id":"local_69d4dbda85c419.62616226","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:53:20","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7992","is_new_deal":false}
[2026-04-07 17:53:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:53:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:53:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:53:20] [INFO] getContactPrimaryPhone called {"contact_id":"7992"}
[2026-04-07 17:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:20] [INFO] getContactPrimaryPhone result {"contact_id":"7992","person_found":true,"primary_phone":"9157452585"}
[2026-04-07 17:53:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9157452585"}
[2026-04-07 17:53:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9157452585","contact_id":"7992","deal_id":"local_69d4dbda85c419.62616226","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:53:20"}
[2026-04-07 17:53:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dbda85c419.62616226","contact_id":"7992","existing_deal_found":true,"existing_contact_id":"7992","existing_title":"معامله دوم 9157452585 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:53:20"}
[2026-04-07 17:53:20] [INFO] DealController.save validated payments {"deal_id":"local_69d4dbda85c419.62616226","contact_id":"7992","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 17:53:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7992","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:53:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dbda85c419.62616226","contact_didar_id":"7992","title":"معامله دوم 9157452585 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9157452585","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصرتی","existing_deal":"YES","existing_deal_id":"local_69d4dbda85c419.62616226","existing_deal_status":"Pending","server_time":"2026-04-07 17:53:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dbda85c419.62616226","contact_id":"7992","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9157452585 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:53:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:53:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:23] [INFO] Checking activity reminders 
[2026-04-07 17:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:30] [INFO] Checking activity reminders 
[2026-04-07 17:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:32] [INFO] Checking activity reminders 
[2026-04-07 17:53:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:44] [INFO] Activity save request {"post_data":{"contact_id":"7992","deal_id":"local_69d4dbda85c419.62616226","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در دسترس نیست \r\nپیام و پیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:53:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7992","note_was_empty":true}
[2026-04-07 17:53:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"7992","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:44] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-07 17:53:44] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-07 17:53:44] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-07 17:53:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dbda85c419.62616226","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:53:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d51370bbf347.74895453","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d51370bbf347.74895453"}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:44] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-07 17:53:44] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-07 17:53:44] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-07 17:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-07 17:53:45] [INFO] Checking activity reminders 
[2026-04-07 17:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:53:49] [INFO] Checking activity reminders 
[2026-04-07 17:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:54:00] [INFO] Checking activity reminders 
[2026-04-07 17:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:54:19] [INFO] Checking activity reminders 
[2026-04-07 17:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:54:30] [INFO] Checking activity reminders 
[2026-04-07 17:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:54:49] [INFO] Checking activity reminders 
[2026-04-07 17:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:55:00] [INFO] Checking activity reminders 
[2026-04-07 17:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:55:19] [INFO] Checking activity reminders 
[2026-04-07 17:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:55:30] [INFO] Checking activity reminders 
[2026-04-07 17:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:55:49] [INFO] Checking activity reminders 
[2026-04-07 17:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:00] [INFO] Checking activity reminders 
[2026-04-07 17:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:07] [INFO] Checking activity reminders 
[2026-04-07 17:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:16] [INFO] Checking activity reminders 
[2026-04-07 17:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:19] [INFO] Checking activity reminders 
[2026-04-07 17:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:30] [INFO] Checking activity reminders 
[2026-04-07 17:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:56:49] [INFO] Checking activity reminders 
[2026-04-07 17:56:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:56:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:00] [INFO] Checking activity reminders 
[2026-04-07 17:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:20] [INFO] Checking activity reminders 
[2026-04-07 17:57:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:21] [INFO] Checking activity reminders 
[2026-04-07 17:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:31] [INFO] Checking activity reminders 
[2026-04-07 17:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:34] [INFO] Checking activity reminders 
[2026-04-07 17:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:57:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-07 17:57:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8817","deal_id":"local_69d498720375c9.94412261","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:57:42","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:57:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8817","is_new_deal":false}
[2026-04-07 17:57:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:57:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:57:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:57:42] [INFO] getContactPrimaryPhone called {"contact_id":"8817"}
[2026-04-07 17:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:57:42] [INFO] getContactPrimaryPhone result {"contact_id":"8817","person_found":true,"primary_phone":"9141088308"}
[2026-04-07 17:57:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141088308"}
[2026-04-07 17:57:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141088308","contact_id":"8817","deal_id":"local_69d498720375c9.94412261","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:57:42"}
[2026-04-07 17:57:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d498720375c9.94412261","contact_id":"8817","existing_deal_found":true,"existing_contact_id":"8817","existing_title":"معامله سوم 9141088308 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:57:42"}
[2026-04-07 17:57:42] [INFO] DealController.save validated payments {"deal_id":"local_69d498720375c9.94412261","contact_id":"8817","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-07 17:57:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8817","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:57:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d498720375c9.94412261","contact_didar_id":"8817","title":"معامله سوم 9141088308 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9141088308","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا بهاری","existing_deal":"YES","existing_deal_id":"local_69d498720375c9.94412261","existing_deal_status":"Pending","server_time":"2026-04-07 17:57:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:57:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d498720375c9.94412261","contact_id":"8817","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9141088308 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:57:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:57:50] [INFO] Checking activity reminders 
[2026-04-07 17:57:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:57:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:01] [INFO] Checking activity reminders 
[2026-04-07 17:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:03] [INFO] Checking activity reminders 
[2026-04-07 17:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:05] [INFO] Activity save request {"post_data":{"contact_id":"8817","deal_id":"local_69d498720375c9.94412261","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:58:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8817","note_was_empty":true}
[2026-04-07 17:58:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"8817","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:05] [INFO] Updating virtual stage {"contact_id":"8817","stage_name":"deal_registered","force":false}
[2026-04-07 17:58:05] [INFO] Virtual stage successfully saved {"contact_id":"8817","stage_name":"deal_registered"}
[2026-04-07 17:58:05] [INFO] Virtual stage updated after activity save {"contact_id":"8817"}
[2026-04-07 17:58:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d498720375c9.94412261","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-07 17:58:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d51475670e20.73237179","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d51475670e20.73237179"}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:05] [INFO] Updating virtual stage {"contact_id":"8817","stage_name":"deal_registered","force":false}
[2026-04-07 17:58:05] [INFO] Virtual stage successfully saved {"contact_id":"8817","stage_name":"deal_registered"}
[2026-04-07 17:58:05] [INFO] Virtual stage updated after activity save {"contact_id":"8817"}
[2026-04-07 17:58:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8817","person_id":"17995"}
[2026-04-07 17:58:10] [INFO] Checking activity reminders 
[2026-04-07 17:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:11] [INFO] Checking activity reminders 
[2026-04-07 17:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:19] [INFO] Checking activity reminders 
[2026-04-07 17:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11263","person_id":"2202"}
[2026-04-07 17:58:31] [INFO] Checking activity reminders 
[2026-04-07 17:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:40] [INFO] Checking activity reminders 
[2026-04-07 17:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:41] [INFO] Checking activity reminders 
[2026-04-07 17:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:58:48] [INFO] Checking activity reminders 
[2026-04-07 17:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:58:50] [INFO] Activity save request {"post_data":{"contact_id":"2624","deal_id":"local_69d4dfb9891c64.35840789","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ملک خریده خالی شده میگه تا برج ۴ خالی هستم میتکنم چک برای اون تایم بدم\r\nگفتم ۳۰ درصد بزن ارباقی چک میگه ندارم\r\nگفتم جور کن تا فردا اطلاع بده\r\nسرمایه ملک و طلا","activity_duration":"25","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 17:58:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2624","note_was_empty":true}
[2026-04-07 17:58:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"2624","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:50] [INFO] Updating virtual stage {"contact_id":"2624","stage_name":"deal_registered","force":false}
[2026-04-07 17:58:50] [INFO] Virtual stage successfully saved {"contact_id":"2624","stage_name":"deal_registered"}
[2026-04-07 17:58:50] [INFO] Virtual stage updated after activity save {"contact_id":"2624"}
[2026-04-07 17:58:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dfb9891c64.35840789","stage":"تماس پیگیری","status_change":null}
[2026-04-07 17:58:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d514a2be6685.55350039","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d514a2be6685.55350039"}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:50] [INFO] Updating virtual stage {"contact_id":"2624","stage_name":"deal_registered","force":false}
[2026-04-07 17:58:50] [INFO] Virtual stage successfully saved {"contact_id":"2624","stage_name":"deal_registered"}
[2026-04-07 17:58:50] [INFO] Virtual stage updated after activity save {"contact_id":"2624"}
[2026-04-07 17:58:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2624","person_id":"3844"}
[2026-04-07 17:58:53] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:58:53","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:58:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"810","is_new_deal":false}
[2026-04-07 17:58:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:58:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:58:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:58:53] [INFO] getContactPrimaryPhone called {"contact_id":"810"}
[2026-04-07 17:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:58:53] [INFO] getContactPrimaryPhone result {"contact_id":"810","person_found":true,"primary_phone":"9108564684"}
[2026-04-07 17:58:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9108564684"}
[2026-04-07 17:58:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9108564684","contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:58:53"}
[2026-04-07 17:58:53] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","existing_deal_found":true,"existing_contact_id":"810","existing_title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:58:53"}
[2026-04-07 17:58:53] [INFO] DealController.save validated payments {"deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 17:58:53] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"810","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:58:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbaf032730a8.00052863","contact_didar_id":"810","title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9108564684","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان جعفری","existing_deal":"YES","existing_deal_id":"local_69bbaf032730a8.00052863","existing_deal_status":"Pending","server_time":"2026-04-07 17:58:53","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:58:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:58:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:58:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:59:01] [INFO] Checking activity reminders 
[2026-04-07 17:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 17:59:12] [INFO] Checking activity reminders 
[2026-04-07 17:59:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:59:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 17:59:16","session_id":"59u5ou4dersbjap2mdf1bu1ksj"}
[2026-04-07 17:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:59:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"810","is_new_deal":false}
[2026-04-07 17:59:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-07 17:59:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:59:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-07 17:59:16] [INFO] getContactPrimaryPhone called {"contact_id":"810"}
[2026-04-07 17:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:59:16] [INFO] getContactPrimaryPhone result {"contact_id":"810","person_found":true,"primary_phone":"9108564684"}
[2026-04-07 17:59:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9108564684"}
[2026-04-07 17:59:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9108564684","contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:59:16"}
[2026-04-07 17:59:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","existing_deal_found":true,"existing_contact_id":"810","existing_title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-07 17:59:16"}
[2026-04-07 17:59:16] [INFO] DealController.save validated payments {"deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-07 17:59:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"810","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-07 17:59:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbaf032730a8.00052863","contact_didar_id":"810","title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9108564684","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان جعفری","existing_deal":"YES","existing_deal_id":"local_69bbaf032730a8.00052863","existing_deal_status":"Pending","server_time":"2026-04-07 17:59:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-07 17:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:59:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbaf032730a8.00052863","contact_id":"810","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9108564684 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-07 17:59:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 17:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 17:59:20] [INFO] Checking activity reminders 
[2026-04-07 17:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:59:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10569","person_id":"15951"}
[2026-04-07 17:59:31] [INFO] Checking activity reminders 
[2026-04-07 17:59:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:59:42] [INFO] Checking activity reminders 
[2026-04-07 17:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 17:59:52] [INFO] Checking activity reminders 
[2026-04-07 17:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 17:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:09] [INFO] Checking activity reminders 
[2026-04-07 18:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:12] [INFO] Checking activity reminders 
[2026-04-07 18:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:12] [INFO] Checking activity reminders 
[2026-04-07 18:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:21] [INFO] Checking activity reminders 
[2026-04-07 18:00:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3554","person_id":"11556"}
[2026-04-07 18:00:40] [INFO] Checking activity reminders 
[2026-04-07 18:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:42] [INFO] Checking activity reminders 
[2026-04-07 18:00:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:00:52] [INFO] Activity save request {"post_data":{"contact_id":"810","deal_id":"local_69bbaf032730a8.00052863","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تبریز \r\nسرمایه در مرغداری و ذدرامد خیلی پایین \r\nطلا نگه داشته \r\nبرای کانال سرمایه نداره و نمیتونه وارد بشه \r\nدر صورت تایید خودش تماس ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 18:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 18:00:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 18:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"810","note_was_empty":true}
[2026-04-07 18:00:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"810","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-07 18:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:52] [INFO] Updating virtual stage {"contact_id":"810","stage_name":"deal_registered","force":false}
[2026-04-07 18:00:52] [INFO] Virtual stage successfully saved {"contact_id":"810","stage_name":"deal_registered"}
[2026-04-07 18:00:52] [INFO] Virtual stage updated after activity save {"contact_id":"810"}
[2026-04-07 18:00:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaf032730a8.00052863","stage":"تماس پیگیری","status_change":null}
[2026-04-07 18:00:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d5151cec7787.48659244","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 18:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d5151cec7787.48659244"}
[2026-04-07 18:00:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:52] [INFO] Updating virtual stage {"contact_id":"810","stage_name":"deal_registered","force":false}
[2026-04-07 18:00:52] [INFO] Virtual stage successfully saved {"contact_id":"810","stage_name":"deal_registered"}
[2026-04-07 18:00:52] [INFO] Virtual stage updated after activity save {"contact_id":"810"}
[2026-04-07 18:00:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"810","person_id":"14716"}
[2026-04-07 18:00:59] [INFO] Checking activity reminders 
[2026-04-07 18:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:06] [INFO] Checking activity reminders 
[2026-04-07 18:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:08] [INFO] Checking activity reminders 
[2026-04-07 18:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:10] [INFO] Checking activity reminders 
[2026-04-07 18:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:20] [INFO] Checking activity reminders 
[2026-04-07 18:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:38] [INFO] Checking activity reminders 
[2026-04-07 18:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:40] [INFO] Checking activity reminders 
[2026-04-07 18:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:01:56] [INFO] Checking activity reminders 
[2026-04-07 18:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2617","person_id":"11592"}
[2026-04-07 18:02:10] [INFO] Checking activity reminders 
[2026-04-07 18:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:26] [INFO] Checking activity reminders 
[2026-04-07 18:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:36] [INFO] Checking activity reminders 
[2026-04-07 18:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:40] [INFO] Checking activity reminders 
[2026-04-07 18:02:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:46] [INFO] Checking activity reminders 
[2026-04-07 18:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:47] [INFO] Checking activity reminders 
[2026-04-07 18:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:55] [INFO] Checking activity reminders 
[2026-04-07 18:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:02:56] [INFO] Checking activity reminders 
[2026-04-07 18:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:10] [INFO] Checking activity reminders 
[2026-04-07 18:03:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:25] [INFO] Checking activity reminders 
[2026-04-07 18:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:26] [INFO] Checking activity reminders 
[2026-04-07 18:03:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:40] [INFO] Checking activity reminders 
[2026-04-07 18:03:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:55] [INFO] Checking activity reminders 
[2026-04-07 18:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:03:56] [INFO] Checking activity reminders 
[2026-04-07 18:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:04:11] [INFO] Checking activity reminders 
[2026-04-07 18:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:04:26] [INFO] Checking activity reminders 
[2026-04-07 18:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:04:41] [INFO] Checking activity reminders 
[2026-04-07 18:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:04:54] [INFO] Checking activity reminders 
[2026-04-07 18:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:04:56] [INFO] Checking activity reminders 
[2026-04-07 18:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10581","person_id":"9717"}
[2026-04-07 18:05:11] [INFO] Checking activity reminders 
[2026-04-07 18:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:18] [INFO] Checking activity reminders 
[2026-04-07 18:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:27] [INFO] Checking activity reminders 
[2026-04-07 18:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:32] [INFO] Checking activity reminders 
[2026-04-07 18:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:41] [INFO] Checking activity reminders 
[2026-04-07 18:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:05:57] [INFO] Checking activity reminders 
[2026-04-07 18:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:02] [INFO] Checking activity reminders 
[2026-04-07 18:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:11] [INFO] Checking activity reminders 
[2026-04-07 18:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:27] [INFO] Checking activity reminders 
[2026-04-07 18:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:41] [INFO] Checking activity reminders 
[2026-04-07 18:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:57] [INFO] Checking activity reminders 
[2026-04-07 18:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:06:57] [INFO] Checking activity reminders 
[2026-04-07 18:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:08] [INFO] Checking activity reminders 
[2026-04-07 18:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:11] [INFO] Checking activity reminders 
[2026-04-07 18:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7417","person_id":"18327"}
[2026-04-07 18:07:29] [INFO] Checking activity reminders 
[2026-04-07 18:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:41] [INFO] Checking activity reminders 
[2026-04-07 18:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:51] [INFO] Checking activity reminders 
[2026-04-07 18:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:07:59] [INFO] Checking activity reminders 
[2026-04-07 18:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:00] [INFO] Checking activity reminders 
[2026-04-07 18:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:04] [INFO] Checking activity reminders 
[2026-04-07 18:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:11] [INFO] Checking activity reminders 
[2026-04-07 18:08:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:29] [INFO] Checking activity reminders 
[2026-04-07 18:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:42] [INFO] Checking activity reminders 
[2026-04-07 18:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:51] [INFO] Checking activity reminders 
[2026-04-07 18:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:08:59] [INFO] Checking activity reminders 
[2026-04-07 18:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:12] [INFO] Checking activity reminders 
[2026-04-07 18:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:29] [INFO] Checking activity reminders 
[2026-04-07 18:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:33] [INFO] Checking activity reminders 
[2026-04-07 18:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15926","person_id":"13569"}
[2026-04-07 18:09:42] [INFO] Checking activity reminders 
[2026-04-07 18:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:47] [INFO] Checking activity reminders 
[2026-04-07 18:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:09:53] [INFO] Checking activity reminders 
[2026-04-07 18:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:10:10] [INFO] Activity save request {"post_data":{"contact_id":"4962","deal_id":"local_69d4be23757221.43725230","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"۲ تا ملک سرمایه زمین هر کدام ۸ ت مجموع ۱۶ ت میشه \r\nملک مصرف دارین\r\nدنا سواری مصرف\r\nطلا ۱۵۰۰ میلیارد دوخل بورس\r\n۵ سکه \r\nرمز ارز ۵۰ میلیون\r\nنقدینگی ۱۵۰۰ \r\nشغل کارمند پتروشیمی \r\nنمیخواد کانال رو برنامه شخصی داره فعلا گفت خواستم اطلاع میدم خیلی محترم بود","activity_duration":"25","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-07 18:10:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4962","note_was_empty":true}
[2026-04-07 18:10:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"4962","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:10] [INFO] Updating virtual stage {"contact_id":"4962","stage_name":"deal_registered","force":false}
[2026-04-07 18:10:10] [INFO] Virtual stage successfully saved {"contact_id":"4962","stage_name":"deal_registered"}
[2026-04-07 18:10:10] [INFO] Virtual stage updated after activity save {"contact_id":"4962"}
[2026-04-07 18:10:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4be23757221.43725230","stage":"تماس پیگیری","status_change":null}
[2026-04-07 18:10:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d5174a3f8741.84541088","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d5174a3f8741.84541088"}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:10] [INFO] Updating virtual stage {"contact_id":"4962","stage_name":"deal_registered","force":false}
[2026-04-07 18:10:10] [INFO] Virtual stage successfully saved {"contact_id":"4962","stage_name":"deal_registered"}
[2026-04-07 18:10:10] [INFO] Virtual stage updated after activity save {"contact_id":"4962"}
[2026-04-07 18:10:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4962","person_id":"2829"}
[2026-04-07 18:10:12] [INFO] Checking activity reminders 
[2026-04-07 18:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:10:17] [INFO] Checking activity reminders 
[2026-04-07 18:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:10:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 18:10:39] [INFO] Checking activity reminders 
[2026-04-07 18:10:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:10:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:10:59] [INFO] Checking activity reminders 
[2026-04-07 18:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:11:05] [INFO] Checking activity reminders 
[2026-04-07 18:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:11:09] [INFO] Checking activity reminders 
[2026-04-07 18:11:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:11:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:11:27] [INFO] Checking activity reminders 
[2026-04-07 18:11:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:11:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:11:57] [INFO] Checking activity reminders 
[2026-04-07 18:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:12:36] [INFO] Checking activity reminders 
[2026-04-07 18:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:12:48] [INFO] Checking activity reminders 
[2026-04-07 18:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:13:43] [INFO] Checking activity reminders 
[2026-04-07 18:13:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:13:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:14:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:14:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:16:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:16:42] [INFO] Checking activity reminders 
[2026-04-07 18:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:16:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:17:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"check_reminders"}
[2026-04-07 18:17:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:03] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:04] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:04] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:06] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:06] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:08] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_products"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"get_leads"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:09] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:11] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:12] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:17] [WARNING] Auth check failed - not authenticated {"session_id":"302snspdguukf1u6hf64ghd1q9","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:17:17] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 18:17:17] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 18:17:18] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 18:17:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:17:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:17:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:17:48] [INFO] Checking activity reminders 
[2026-04-07 18:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:17:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:18:18] [INFO] Checking activity reminders 
[2026-04-07 18:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:18:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 18:18:19","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 18:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:18:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","is_new_deal":false}
[2026-04-07 18:18:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:18:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:18:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:18:19] [INFO] getContactPrimaryPhone called {"contact_id":"3795"}
[2026-04-07 18:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:18:19] [INFO] getContactPrimaryPhone result {"contact_id":"3795","person_found":true,"primary_phone":"9358897876"}
[2026-04-07 18:18:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9358897876"}
[2026-04-07 18:18:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9358897876","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:18:19"}
[2026-04-07 18:18:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","existing_deal_found":true,"existing_contact_id":"3795","existing_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:18:19"}
[2026-04-07 18:18:19] [INFO] DealController.save validated payments {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-07 18:18:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3795","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 18:18:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a4c6f738cf8.41001784","contact_didar_id":"3795","title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9358897876","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آل موسوی","existing_deal":"YES","existing_deal_id":"local_694a4c6f738cf8.41001784","existing_deal_status":"Pending","server_time":"2026-04-07 18:18:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 18:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:18:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":30000000,"server_time":"2026-04-07 18:18:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 18:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:18:48] [INFO] Checking activity reminders 
[2026-04-07 18:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:18:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 18:18:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:18:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:18:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:19:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21141","person_id":"7992"}
[2026-04-07 18:19:18] [INFO] Checking activity reminders 
[2026-04-07 18:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:19:26] [INFO] Checking activity reminders 
[2026-04-07 18:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:19:28] [WARNING] Auth check failed - not authenticated {"session_id":"s4tup1m1hkbp738510h9gkmqrg","session_keys":[],"action":"log_client_event"}
[2026-04-07 18:19:28] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-07 18:19:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 18:19:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 18:19:29","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 18:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","is_new_deal":false}
[2026-04-07 18:19:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:29] [INFO] getContactPrimaryPhone called {"contact_id":"3795"}
[2026-04-07 18:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:29] [INFO] getContactPrimaryPhone result {"contact_id":"3795","person_found":true,"primary_phone":"9358897876"}
[2026-04-07 18:19:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9358897876"}
[2026-04-07 18:19:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9358897876","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:19:29"}
[2026-04-07 18:19:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","existing_deal_found":true,"existing_contact_id":"3795","existing_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:19:29"}
[2026-04-07 18:19:29] [INFO] DealController.save validated payments {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-07 18:19:29] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3795","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 18:19:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a4c6f738cf8.41001784","contact_didar_id":"3795","title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9358897876","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آل موسوی","existing_deal":"YES","existing_deal_id":"local_694a4c6f738cf8.41001784","existing_deal_status":"Pending","server_time":"2026-04-07 18:19:29","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 18:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-07 18:19:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 18:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:38] [INFO] Checking activity reminders 
[2026-04-07 18:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:19:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15498","person_id":"12989"}
[2026-04-07 18:19:49] [INFO] Checking activity reminders 
[2026-04-07 18:19:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:19:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:19:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-07 18:19:57","session_id":"302snspdguukf1u6hf64ghd1q9"}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"3795","is_new_deal":false}
[2026-04-07 18:19:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-07 18:19:57] [INFO] getContactPrimaryPhone called {"contact_id":"3795"}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:57] [INFO] getContactPrimaryPhone result {"contact_id":"3795","person_found":true,"primary_phone":"9358897876"}
[2026-04-07 18:19:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9358897876"}
[2026-04-07 18:19:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9358897876","contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:19:57"}
[2026-04-07 18:19:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","existing_deal_found":true,"existing_contact_id":"3795","existing_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-07 18:19:57"}
[2026-04-07 18:19:57] [INFO] DealController.save validated payments {"deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-07 18:19:57] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3795","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-07 18:19:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a4c6f738cf8.41001784","contact_didar_id":"3795","title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9358897876","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آل موسوی","existing_deal":"YES","existing_deal_id":"local_694a4c6f738cf8.41001784","existing_deal_status":"Pending","server_time":"2026-04-07 18:19:57","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:57] [INFO] Deal success processed {"contact_id":"3795","person_name":"آل موسوی","products_count":1}
[2026-04-07 18:19:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a4c6f738cf8.41001784","contact_id":"3795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9358897876 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-07 18:19:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:57] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"with_purchase","force":true}
[2026-04-07 18:19:57] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"with_purchase"}
[2026-04-07 18:19:57] [INFO] Moved contact out of kariz after successful deal {"contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","target_stage":"with_purchase"}
[2026-04-07 18:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:19:59] [INFO] Checking activity reminders 
[2026-04-07 18:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:08] [INFO] Checking activity reminders 
[2026-04-07 18:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2846","person_id":"11580"}
[2026-04-07 18:20:19] [INFO] Checking activity reminders 
[2026-04-07 18:20:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:20:19] [INFO] Updating virtual stage {"contact_id":"3795","stage_name":"with_purchase","force":true}
[2026-04-07 18:20:19] [INFO] Virtual stage successfully saved {"contact_id":"3795","stage_name":"with_purchase"}
[2026-04-07 18:20:19] [INFO] Moved contact out of kariz after successful deal {"contact_id":"3795","deal_id":"local_694a4c6f738cf8.41001784","target_stage":"with_purchase"}
[2026-04-07 18:20:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3795","person_id":"7807"}
[2026-04-07 18:20:29] [INFO] Checking activity reminders 
[2026-04-07 18:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:20:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:20:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:20:37] [INFO] Checking activity reminders 
[2026-04-07 18:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:47] [INFO] Checking activity reminders 
[2026-04-07 18:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:49] [INFO] Checking activity reminders 
[2026-04-07 18:20:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:20:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 18:20:59] [INFO] Checking activity reminders 
[2026-04-07 18:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:21:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:21:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:21:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:21:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:21:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:21:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:21:17] [INFO] Checking activity reminders 
[2026-04-07 18:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:21:21] [INFO] Checking activity reminders 
[2026-04-07 18:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:21:21] [INFO] Checking activity reminders 
[2026-04-07 18:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:21:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15299","person_id":"15748"}
[2026-04-07 18:21:51] [INFO] Checking activity reminders 
[2026-04-07 18:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:21:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15299","person_id":"15748"}
[2026-04-07 18:21:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 18:21:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 18:21:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 18:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15299","person_id":"15748"}
[2026-04-07 18:21:58] [INFO] Checking activity reminders 
[2026-04-07 18:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:22:20] [INFO] Checking activity reminders 
[2026-04-07 18:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:22:21] [INFO] Checking activity reminders 
[2026-04-07 18:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:22:37] [INFO] Checking activity reminders 
[2026-04-07 18:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:22:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6574","person_id":"10803"}
[2026-04-07 18:22:53] [INFO] Checking activity reminders 
[2026-04-07 18:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:23:03] [INFO] Checking activity reminders 
[2026-04-07 18:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:23:09] [INFO] Checking activity reminders 
[2026-04-07 18:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4023","person_id":"2745"}
[2026-04-07 18:23:23] [INFO] Checking activity reminders 
[2026-04-07 18:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:23:34] [INFO] Checking activity reminders 
[2026-04-07 18:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:23:59] [INFO] Checking activity reminders 
[2026-04-07 18:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:24:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14832","person_id":"16933"}
[2026-04-07 18:24:20] [INFO] Checking activity reminders 
[2026-04-07 18:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:24:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6300","person_id":"2588"}
[2026-04-07 18:24:35] [INFO] Checking activity reminders 
[2026-04-07 18:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:24:49] [INFO] Checking activity reminders 
[2026-04-07 18:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:24:58] [INFO] Checking activity reminders 
[2026-04-07 18:24:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:24:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:25:12] [INFO] Checking activity reminders 
[2026-04-07 18:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:25:22] [INFO] Checking activity reminders 
[2026-04-07 18:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:25:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9a7325153.22369790","person_id":"21529"}
[2026-04-07 18:25:41] [INFO] Checking activity reminders 
[2026-04-07 18:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:26:02] [INFO] Checking activity reminders 
[2026-04-07 18:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:26:11] [INFO] Checking activity reminders 
[2026-04-07 18:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:26:45] [INFO] Checking activity reminders 
[2026-04-07 18:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:27:01] [INFO] Checking activity reminders 
[2026-04-07 18:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:27:09] [INFO] Checking activity reminders 
[2026-04-07 18:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:27:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14719","person_id":"7042"}
[2026-04-07 18:27:29] [INFO] Checking activity reminders 
[2026-04-07 18:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:27:44] [INFO] Checking activity reminders 
[2026-04-07 18:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:29:47] [INFO] Checking activity reminders 
[2026-04-07 18:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:30:22] [INFO] Checking activity reminders 
[2026-04-07 18:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:30:42] [INFO] Checking activity reminders 
[2026-04-07 18:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:30:53] [INFO] Checking activity reminders 
[2026-04-07 18:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16058","person_id":"13775"}
[2026-04-07 18:31:19] [INFO] Checking activity reminders 
[2026-04-07 18:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:31:37] [INFO] Checking activity reminders 
[2026-04-07 18:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:31:57] [INFO] Checking activity reminders 
[2026-04-07 18:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:32:25] [INFO] Checking activity reminders 
[2026-04-07 18:32:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:32:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-04-07 18:32:52] [INFO] Checking activity reminders 
[2026-04-07 18:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:32:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-07 18:33:24] [INFO] Checking activity reminders 
[2026-04-07 18:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:33:47] [INFO] Checking activity reminders 
[2026-04-07 18:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b1a881e9adc0.54806435","person_id":"21824"}
[2026-04-07 18:34:18] [INFO] Checking activity reminders 
[2026-04-07 18:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-07 18:34:47] [INFO] Checking activity reminders 
[2026-04-07 18:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:34:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11111","person_id":"13814"}
[2026-04-07 18:35:11] [INFO] Checking activity reminders 
[2026-04-07 18:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:36:13] [INFO] Checking activity reminders 
[2026-04-07 18:36:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:36:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:36:37] [INFO] Checking activity reminders 
[2026-04-07 18:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:36:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2845","person_id":"13899"}
[2026-04-07 18:37:07] [INFO] Checking activity reminders 
[2026-04-07 18:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:37:24] [INFO] Checking activity reminders 
[2026-04-07 18:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:37:44] [INFO] Checking activity reminders 
[2026-04-07 18:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:37:56] [INFO] Checking activity reminders 
[2026-04-07 18:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:38:30] [INFO] Checking activity reminders 
[2026-04-07 18:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:39:00] [INFO] Checking activity reminders 
[2026-04-07 18:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:39:36] [INFO] Checking activity reminders 
[2026-04-07 18:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:40:30] [INFO] Checking activity reminders 
[2026-04-07 18:40:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:40:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:40:56] [INFO] Checking activity reminders 
[2026-04-07 18:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:40:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1951","person_id":"5723"}
[2026-04-07 18:41:24] [INFO] Checking activity reminders 
[2026-04-07 18:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:41:44] [INFO] Checking activity reminders 
[2026-04-07 18:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:41:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20341","person_id":"548"}
[2026-04-07 18:42:11] [INFO] Checking activity reminders 
[2026-04-07 18:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:42:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-07 18:42:32] [INFO] Checking activity reminders 
[2026-04-07 18:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:43:07] [INFO] Checking activity reminders 
[2026-04-07 18:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5803","person_id":"11848"}
[2026-04-07 18:43:30] [INFO] Checking activity reminders 
[2026-04-07 18:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:43:39] [INFO] Checking activity reminders 
[2026-04-07 18:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:43:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-07 18:44:21] [INFO] Checking activity reminders 
[2026-04-07 18:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:44:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-07 18:44:38] [INFO] Checking activity reminders 
[2026-04-07 18:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:44:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2876","person_id":"11196"}
[2026-04-07 18:45:13] [INFO] Checking activity reminders 
[2026-04-07 18:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:45:35] [INFO] Checking activity reminders 
[2026-04-07 18:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:50:18] [INFO] Checking activity reminders 
[2026-04-07 18:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9892","person_id":"4690"}
[2026-04-07 18:50:40] [INFO] Checking activity reminders 
[2026-04-07 18:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 18:53:27] [INFO] Checking activity reminders 
[2026-04-07 18:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 18:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:00:43] [INFO] Checking activity reminders 
[2026-04-07 19:00:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:00:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:01:13] [INFO] Checking activity reminders 
[2026-04-07 19:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:01:43] [INFO] Checking activity reminders 
[2026-04-07 19:01:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:01:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:02:13] [INFO] Checking activity reminders 
[2026-04-07 19:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:02:43] [INFO] Checking activity reminders 
[2026-04-07 19:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:03:13] [INFO] Checking activity reminders 
[2026-04-07 19:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:03:43] [INFO] Checking activity reminders 
[2026-04-07 19:03:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:03:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:04:13] [INFO] Checking activity reminders 
[2026-04-07 19:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:04:44] [INFO] Checking activity reminders 
[2026-04-07 19:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 19:05:14] [INFO] Checking activity reminders 
[2026-04-07 19:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 19:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 20:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"58mq9dtklfg80gcpm6312pj7qb","session_keys":[],"action":"log_client_event"}
[2026-04-07 20:32:22] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-07 20:32:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 20:32:53] [INFO] Checking activity reminders 
[2026-04-07 20:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 20:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 20:33:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 21:42:42] [WARNING] Auth check failed - not authenticated {"session_id":"5ibqu6g507ime6c7eif3ghc143","session_keys":[],"action":"log_client_event"}
[2026-04-07 21:42:42] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-07 21:42:42] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-07 21:42:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-07 21:42:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-07 21:42:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-07 21:42:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-07 21:43:12] [INFO] Checking activity reminders 
[2026-04-07 21:43:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 21:43:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 21:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-07 21:43:43] [INFO] Checking activity reminders 
[2026-04-07 21:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 21:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 22:03:16] [INFO] Checking activity reminders 
[2026-04-07 22:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 22:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 22:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d2259ddbf192.01124033","person_id":"21984"}
[2026-04-07 22:03:47] [INFO] Checking activity reminders 
[2026-04-07 22:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 22:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 22:12:17] [INFO] Checking activity reminders 
[2026-04-07 22:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 22:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 22:12:20] [INFO] Checking activity reminders 
[2026-04-07 22:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 22:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-07 22:12:50] [INFO] Checking activity reminders 
[2026-04-07 22:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-07 22:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:45:38] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 09:45:39] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-08 09:45:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 09:46:10] [INFO] Checking activity reminders 
[2026-04-08 09:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:46:40] [INFO] Checking activity reminders 
[2026-04-08 09:46:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:46:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:47:10] [INFO] Checking activity reminders 
[2026-04-08 09:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:47:42] [INFO] Checking activity reminders 
[2026-04-08 09:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:48:12] [INFO] Checking activity reminders 
[2026-04-08 09:48:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:48:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:48:42] [INFO] Checking activity reminders 
[2026-04-08 09:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:49:12] [INFO] Checking activity reminders 
[2026-04-08 09:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:49:43] [INFO] Checking activity reminders 
[2026-04-08 09:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:50:13] [INFO] Checking activity reminders 
[2026-04-08 09:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:50:43] [INFO] Checking activity reminders 
[2026-04-08 09:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:51:13] [INFO] Checking activity reminders 
[2026-04-08 09:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:51:43] [INFO] Checking activity reminders 
[2026-04-08 09:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:52:13] [INFO] Checking activity reminders 
[2026-04-08 09:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:52:43] [INFO] Checking activity reminders 
[2026-04-08 09:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:53:13] [INFO] Checking activity reminders 
[2026-04-08 09:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:53:43] [INFO] Checking activity reminders 
[2026-04-08 09:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:54:13] [INFO] Checking activity reminders 
[2026-04-08 09:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:54:43] [INFO] Checking activity reminders 
[2026-04-08 09:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:55:13] [INFO] Checking activity reminders 
[2026-04-08 09:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:55:43] [INFO] Checking activity reminders 
[2026-04-08 09:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:56:13] [INFO] Checking activity reminders 
[2026-04-08 09:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:56:43] [INFO] Checking activity reminders 
[2026-04-08 09:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:57:13] [INFO] Checking activity reminders 
[2026-04-08 09:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:57:44] [INFO] Checking activity reminders 
[2026-04-08 09:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:58:14] [INFO] Checking activity reminders 
[2026-04-08 09:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:58:44] [INFO] Checking activity reminders 
[2026-04-08 09:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:59:14] [INFO] Checking activity reminders 
[2026-04-08 09:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 09:59:44] [INFO] Checking activity reminders 
[2026-04-08 09:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 09:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:00:14] [INFO] Checking activity reminders 
[2026-04-08 10:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:00:44] [INFO] Checking activity reminders 
[2026-04-08 10:00:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:00:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:01:14] [INFO] Checking activity reminders 
[2026-04-08 10:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:01:44] [INFO] Checking activity reminders 
[2026-04-08 10:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:02:14] [INFO] Checking activity reminders 
[2026-04-08 10:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:02:44] [INFO] Checking activity reminders 
[2026-04-08 10:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:03:14] [INFO] Checking activity reminders 
[2026-04-08 10:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:03:44] [INFO] Checking activity reminders 
[2026-04-08 10:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:04:14] [INFO] Checking activity reminders 
[2026-04-08 10:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:04:44] [INFO] Checking activity reminders 
[2026-04-08 10:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:05:14] [INFO] Checking activity reminders 
[2026-04-08 10:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:05:45] [INFO] Checking activity reminders 
[2026-04-08 10:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:19:17] [INFO] Checking activity reminders 
[2026-04-08 10:19:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:19:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:30:25] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 10:30:25] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 10:30:25] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 10:30:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 10:30:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 10:30:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 10:30:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 10:30:56] [INFO] Checking activity reminders 
[2026-04-08 10:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:31:26] [INFO] Checking activity reminders 
[2026-04-08 10:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:32:18] [INFO] Checking activity reminders 
[2026-04-08 10:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:32:48] [INFO] Checking activity reminders 
[2026-04-08 10:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:33:22] [INFO] Checking activity reminders 
[2026-04-08 10:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:33:52] [INFO] Checking activity reminders 
[2026-04-08 10:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:34:26] [INFO] Checking activity reminders 
[2026-04-08 10:34:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:34:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:34:56] [INFO] Checking activity reminders 
[2026-04-08 10:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:34:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:35:26] [INFO] Checking activity reminders 
[2026-04-08 10:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:35:56] [INFO] Checking activity reminders 
[2026-04-08 10:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:36:26] [INFO] Checking activity reminders 
[2026-04-08 10:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:37:01] [INFO] Checking activity reminders 
[2026-04-08 10:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:37:31] [INFO] Checking activity reminders 
[2026-04-08 10:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:38:01] [INFO] Checking activity reminders 
[2026-04-08 10:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:38:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:38:31] [INFO] Checking activity reminders 
[2026-04-08 10:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:39:01] [INFO] Checking activity reminders 
[2026-04-08 10:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:39:31] [INFO] Checking activity reminders 
[2026-04-08 10:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:40:01] [INFO] Checking activity reminders 
[2026-04-08 10:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:40:31] [INFO] Checking activity reminders 
[2026-04-08 10:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:41:01] [INFO] Checking activity reminders 
[2026-04-08 10:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:41:31] [INFO] Checking activity reminders 
[2026-04-08 10:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:41:38] [INFO] Activity save request {"post_data":{"contact_id":"21277","deal_id":"local_69d4df6ed723b8.17268438","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مدام بیزی میزنه ارسال \\یامک\/ بله نداره سرچ کردم\/ با توجه به فعالیت احتمالا عراق هست دسترسی بهش نیست فعلا\r\nهدف تمدید کانال","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 10:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 10:41:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 10:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21277","note_was_empty":true}
[2026-04-08 10:41:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"21277","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 10:41:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:38] [INFO] Updating virtual stage {"contact_id":"21277","stage_name":"deal_registered","force":false}
[2026-04-08 10:41:38] [INFO] Virtual stage successfully saved {"contact_id":"21277","stage_name":"deal_registered"}
[2026-04-08 10:41:38] [INFO] Virtual stage updated after activity save {"contact_id":"21277"}
[2026-04-08 10:41:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4df6ed723b8.17268438","stage":"تماس پیگیری","status_change":null}
[2026-04-08 10:41:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d5ffaadbc539.79376745","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 10:41:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d5ffaadbc539.79376745"}
[2026-04-08 10:41:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:39] [INFO] Updating virtual stage {"contact_id":"21277","stage_name":"deal_registered","force":false}
[2026-04-08 10:41:39] [INFO] Virtual stage successfully saved {"contact_id":"21277","stage_name":"deal_registered"}
[2026-04-08 10:41:39] [INFO] Virtual stage updated after activity save {"contact_id":"21277"}
[2026-04-08 10:41:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21277","person_id":"3968"}
[2026-04-08 10:41:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:42:02] [INFO] Checking activity reminders 
[2026-04-08 10:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:42:32] [INFO] Checking activity reminders 
[2026-04-08 10:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:43:02] [INFO] Checking activity reminders 
[2026-04-08 10:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:43:32] [INFO] Checking activity reminders 
[2026-04-08 10:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:44:02] [INFO] Checking activity reminders 
[2026-04-08 10:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:44:32] [INFO] Checking activity reminders 
[2026-04-08 10:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:45:02] [INFO] Checking activity reminders 
[2026-04-08 10:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:45:32] [INFO] Checking activity reminders 
[2026-04-08 10:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:46:02] [INFO] Checking activity reminders 
[2026-04-08 10:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:46:32] [INFO] Checking activity reminders 
[2026-04-08 10:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:47:02] [INFO] Checking activity reminders 
[2026-04-08 10:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:47:04] [INFO] Activity save request {"post_data":{"contact_id":"9593","deal_id":"local_69d4bc40b1a1d4.49878057","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نیم ساعت دیگه تماس هدف تمدید کانال","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 10:47:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9593","note_was_empty":true}
[2026-04-08 10:47:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"9593","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:04] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-08 10:47:04] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-08 10:47:04] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-08 10:47:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bc40b1a1d4.49878057","stage":"تماس پیگیری","status_change":null}
[2026-04-08 10:47:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d600f00b1ff3.02134527","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d600f00b1ff3.02134527"}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:04] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-08 10:47:04] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-08 10:47:04] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-08 10:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 10:47:32] [INFO] Checking activity reminders 
[2026-04-08 10:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:48:02] [INFO] Checking activity reminders 
[2026-04-08 10:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:48:33] [INFO] Checking activity reminders 
[2026-04-08 10:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:49:03] [INFO] Checking activity reminders 
[2026-04-08 10:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:49:33] [INFO] Checking activity reminders 
[2026-04-08 10:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:50:03] [INFO] Checking activity reminders 
[2026-04-08 10:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:50:34] [INFO] Checking activity reminders 
[2026-04-08 10:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:51:04] [INFO] Checking activity reminders 
[2026-04-08 10:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:51:34] [INFO] Checking activity reminders 
[2026-04-08 10:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:52:04] [INFO] Checking activity reminders 
[2026-04-08 10:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:52:14] [INFO] Checking activity reminders 
[2026-04-08 10:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:52:32] [INFO] Checking activity reminders 
[2026-04-08 10:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:52:34] [INFO] Checking activity reminders 
[2026-04-08 10:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:52:48] [INFO] Checking activity reminders 
[2026-04-08 10:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:53:04] [INFO] Checking activity reminders 
[2026-04-08 10:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:53:24] [INFO] Checking activity reminders 
[2026-04-08 10:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:53:34] [INFO] Checking activity reminders 
[2026-04-08 10:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:54:04] [INFO] Checking activity reminders 
[2026-04-08 10:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:54:27] [INFO] Checking activity reminders 
[2026-04-08 10:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:54:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:34] [INFO] Checking activity reminders 
[2026-04-08 10:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:36] [INFO] generateDealTitle result {"contact_id":"16318","person_name":"امین محسن پوریانی","mobile":"9166432935","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166432935"}
[2026-04-08 10:54:54] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16318","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 10:54:54","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 10:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16318","is_new_deal":true}
[2026-04-08 10:54:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 10:54:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:54:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:54:54] [INFO] getContactPrimaryPhone called {"contact_id":"16318"}
[2026-04-08 10:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:54] [INFO] getContactPrimaryPhone result {"contact_id":"16318","person_found":true,"primary_phone":"9166432935"}
[2026-04-08 10:54:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9166432935"}
[2026-04-08 10:54:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9166432935","contact_id":"16318","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 10:54:54"}
[2026-04-08 10:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:54] [INFO] generateDealTitle result {"contact_id":"16318","person_name":"امین محسن پوریانی","mobile":"9166432935","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166432935"}
[2026-04-08 10:54:54] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16318","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 10:54:54] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16318","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 10:54:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16318","title":"معامله دوم 9166432935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9166432935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین محسن پوریانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 10:54:54","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 10:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 10:54:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16318","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9166432935 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 10:54:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 10:54:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 10:54:59] [INFO] Checking activity reminders 
[2026-04-08 10:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:55:04] [INFO] Checking activity reminders 
[2026-04-08 10:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:55:21] [INFO] Checking activity reminders 
[2026-04-08 10:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:55:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:28] [INFO] generateDealTitle result {"contact_id":"20744","person_name":"اسماعیلی","mobile":"9166643093","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166643093"}
[2026-04-08 10:55:34] [INFO] Checking activity reminders 
[2026-04-08 10:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:55:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20744","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 10:55:43","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 10:55:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20744","is_new_deal":true}
[2026-04-08 10:55:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 10:55:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:55:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:55:43] [INFO] getContactPrimaryPhone called {"contact_id":"20744"}
[2026-04-08 10:55:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:43] [INFO] getContactPrimaryPhone result {"contact_id":"20744","person_found":true,"primary_phone":"9166643093"}
[2026-04-08 10:55:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9166643093"}
[2026-04-08 10:55:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9166643093","contact_id":"20744","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 10:55:43"}
[2026-04-08 10:55:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:43] [INFO] generateDealTitle result {"contact_id":"20744","person_name":"اسماعیلی","mobile":"9166643093","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9166643093"}
[2026-04-08 10:55:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20744","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 10:55:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20744","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 10:55:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20744","title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9166643093","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 10:55:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 10:55:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 10:55:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20744","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 10:55:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 10:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 10:55:51] [INFO] Checking activity reminders 
[2026-04-08 10:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:56:04] [INFO] Checking activity reminders 
[2026-04-08 10:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:56:22] [INFO] Checking activity reminders 
[2026-04-08 10:56:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:56:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:56:34] [INFO] Checking activity reminders 
[2026-04-08 10:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:56:52] [INFO] Checking activity reminders 
[2026-04-08 10:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:57:05] [INFO] Checking activity reminders 
[2026-04-08 10:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:57:22] [INFO] Checking activity reminders 
[2026-04-08 10:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:57:35] [INFO] Checking activity reminders 
[2026-04-08 10:57:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:57:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:57:52] [INFO] Checking activity reminders 
[2026-04-08 10:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:58:05] [INFO] Checking activity reminders 
[2026-04-08 10:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:58:23] [INFO] Checking activity reminders 
[2026-04-08 10:58:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:58:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:58:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:31] [INFO] generateDealTitle result {"contact_id":"12766","person_name":"محمد دالوند","mobile":"9167953547","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9167953547"}
[2026-04-08 10:58:35] [INFO] Checking activity reminders 
[2026-04-08 10:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:58:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12766","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 10:58:46","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 10:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12766","is_new_deal":true}
[2026-04-08 10:58:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 10:58:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:58:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 10:58:46] [INFO] getContactPrimaryPhone called {"contact_id":"12766"}
[2026-04-08 10:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:46] [INFO] getContactPrimaryPhone result {"contact_id":"12766","person_found":true,"primary_phone":"9167953547"}
[2026-04-08 10:58:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9167953547"}
[2026-04-08 10:58:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9167953547","contact_id":"12766","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 10:58:46"}
[2026-04-08 10:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:46] [INFO] generateDealTitle result {"contact_id":"12766","person_name":"محمد دالوند","mobile":"9167953547","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9167953547"}
[2026-04-08 10:58:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12766","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 10:58:46] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12766","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 10:58:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12766","title":"معامله دوم 9167953547 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9167953547","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد دالوند","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 10:58:46","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 10:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:58:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 10:58:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12766","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9167953547 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 10:58:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 10:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 10:59:00] [INFO] Checking activity reminders 
[2026-04-08 10:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:59:05] [INFO] Checking activity reminders 
[2026-04-08 10:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"987","person_id":"2940"}
[2026-04-08 10:59:32] [INFO] Checking activity reminders 
[2026-04-08 10:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:59:35] [INFO] Checking activity reminders 
[2026-04-08 10:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 10:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 10:59:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:00:03] [INFO] Checking activity reminders 
[2026-04-08 11:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:00:05] [INFO] Checking activity reminders 
[2026-04-08 11:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:00:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:00:33] [INFO] Checking activity reminders 
[2026-04-08 11:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:00:35] [INFO] Checking activity reminders 
[2026-04-08 11:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:00:50] [WARNING] Auth check failed - not authenticated {"session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p","session_keys":[],"action":"log_client_event"}
[2026-04-08 11:00:51] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-08 11:00:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 11:00:57] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-08 11:00:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 11:01:05] [INFO] Checking activity reminders 
[2026-04-08 11:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:05] [INFO] Checking activity reminders 
[2026-04-08 11:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:01:24","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 11:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:01:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"17001","is_new_deal":false}
[2026-04-08 11:01:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:01:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:01:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:01:24] [INFO] getContactPrimaryPhone called {"contact_id":"17001"}
[2026-04-08 11:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:01:24] [INFO] getContactPrimaryPhone result {"contact_id":"17001","person_found":true,"primary_phone":"9170655399"}
[2026-04-08 11:01:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170655399"}
[2026-04-08 11:01:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170655399","contact_id":"17001","deal_id":"local_699ed482204c51.63145890","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:01:24"}
[2026-04-08 11:01:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","existing_deal_found":true,"existing_contact_id":"17001","existing_title":"معامله دوم 9170655399 | کانال VIP با پشتیبانی، کانال VIP بدون پشتیبان شش ماهه، کانال VIP با پشتیبانی شش ماهه، کانال VIP بدون پشتیبان","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:01:24"}
[2026-04-08 11:01:24] [INFO] DealController.save validated payments {"deal_id":"local_699ed482204c51.63145890","contact_id":"17001","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 11:01:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"17001","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 11:01:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ed482204c51.63145890","contact_didar_id":"17001","title":"معامله دوم 9170655399 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9170655399","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بردبار","existing_deal":"YES","existing_deal_id":"local_699ed482204c51.63145890","existing_deal_status":"Pending","server_time":"2026-04-08 11:01:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 11:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:01:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ed482204c51.63145890","contact_id":"17001","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9170655399 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-04-08 11:01:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:01:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:01:35] [INFO] Checking activity reminders 
[2026-04-08 11:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:35] [INFO] Checking activity reminders 
[2026-04-08 11:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:40] [INFO] Checking activity reminders 
[2026-04-08 11:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17001","person_id":"2711"}
[2026-04-08 11:01:42] [INFO] Checking activity reminders 
[2026-04-08 11:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:54] [INFO] Checking activity reminders 
[2026-04-08 11:01:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:01:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-08 11:02:05] [INFO] Checking activity reminders 
[2026-04-08 11:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:02:12] [INFO] Checking activity reminders 
[2026-04-08 11:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:02:14] [INFO] Checking activity reminders 
[2026-04-08 11:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:02:43] [INFO] Checking activity reminders 
[2026-04-08 11:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:02:48] [INFO] Checking activity reminders 
[2026-04-08 11:02:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:02:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:02:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:02:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:02:56] [INFO] generateDealTitle result {"contact_id":"3149","person_name":"سعادت مهر","mobile":"9177712932","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9177712932"}
[2026-04-08 11:03:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3149","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:03:12","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 11:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:03:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3149","is_new_deal":true}
[2026-04-08 11:03:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:12] [INFO] getContactPrimaryPhone called {"contact_id":"3149"}
[2026-04-08 11:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:03:12] [INFO] getContactPrimaryPhone result {"contact_id":"3149","person_found":true,"primary_phone":"9177712932"}
[2026-04-08 11:03:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177712932"}
[2026-04-08 11:03:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177712932","contact_id":"3149","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:03:12"}
[2026-04-08 11:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:03:12] [INFO] generateDealTitle result {"contact_id":"3149","person_name":"سعادت مهر","mobile":"9177712932","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9177712932"}
[2026-04-08 11:03:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3149","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 11:03:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3149","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 11:03:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3149","title":"معامله سوم 9177712932 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9177712932","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعادت مهر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 11:03:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 11:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:03:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 11:03:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3149","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9177712932 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:03:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:03:13] [INFO] Checking activity reminders 
[2026-04-08 11:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:03:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:03:30] [INFO] Checking activity reminders 
[2026-04-08 11:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:03:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:37] [INFO] generateDealTitle result {"contact_id":"15806","person_name":"امید طالع زاده","mobile":"9173156400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173156400"}
[2026-04-08 11:03:43] [INFO] Checking activity reminders 
[2026-04-08 11:03:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:03:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:03:51] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15806","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:03:51","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 11:03:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15806","is_new_deal":true}
[2026-04-08 11:03:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:03:51] [INFO] getContactPrimaryPhone called {"contact_id":"15806"}
[2026-04-08 11:03:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:51] [INFO] getContactPrimaryPhone result {"contact_id":"15806","person_found":true,"primary_phone":"9173156400"}
[2026-04-08 11:03:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173156400"}
[2026-04-08 11:03:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173156400","contact_id":"15806","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:03:51"}
[2026-04-08 11:03:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:51] [INFO] generateDealTitle result {"contact_id":"15806","person_name":"امید طالع زاده","mobile":"9173156400","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173156400"}
[2026-04-08 11:03:51] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15806","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 11:03:51] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15806","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 11:03:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15806","title":"معامله دوم 9173156400 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173156400","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید طالع زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 11:03:51","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 11:03:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:03:51] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 11:03:51] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9173156400 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:03:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:03:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:04:01] [INFO] Checking activity reminders 
[2026-04-08 11:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:04:31] [INFO] Checking activity reminders 
[2026-04-08 11:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:06] [INFO] Checking activity reminders 
[2026-04-08 11:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:15] [INFO] Checking activity reminders 
[2026-04-08 11:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:23] [INFO] Checking activity reminders 
[2026-04-08 11:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:05:37] [INFO] Checking activity reminders 
[2026-04-08 11:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:40] [INFO] Checking activity reminders 
[2026-04-08 11:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:05:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:05:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:05:48] [INFO] generateDealTitle result {"contact_id":"15162","person_name":"هادی رنجبر","mobile":"9173842950","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173842950"}
[2026-04-08 11:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:06:07] [INFO] Checking activity reminders 
[2026-04-08 11:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:06:10] [INFO] Checking activity reminders 
[2026-04-08 11:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:06:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15162","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:06:25","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:06:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15162","is_new_deal":true}
[2026-04-08 11:06:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:06:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:06:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:06:25] [INFO] getContactPrimaryPhone called {"contact_id":"15162"}
[2026-04-08 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:06:25] [INFO] getContactPrimaryPhone result {"contact_id":"15162","person_found":true,"primary_phone":"9173842950"}
[2026-04-08 11:06:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173842950"}
[2026-04-08 11:06:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173842950","contact_id":"15162","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:06:25"}
[2026-04-08 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:06:25] [INFO] generateDealTitle result {"contact_id":"15162","person_name":"هادی رنجبر","mobile":"9173842950","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9173842950"}
[2026-04-08 11:06:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15162","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 11:06:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15162","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 11:06:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15162","title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173842950","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی رنجبر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 11:06:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 11:06:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:06:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 11:06:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15162","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:06:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:06:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:06:37] [INFO] Checking activity reminders 
[2026-04-08 11:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:06:49] [INFO] Checking activity reminders 
[2026-04-08 11:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:06:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:06:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:06:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:06:57] [INFO] generateDealTitle result {"contact_id":"21634","person_name":"شایان فر","mobile":"9175283142","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175283142"}
[2026-04-08 11:07:07] [INFO] Checking activity reminders 
[2026-04-08 11:07:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:07:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:07:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21634","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:07:16","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 11:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:07:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21634","is_new_deal":true}
[2026-04-08 11:07:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:07:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:07:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:07:16] [INFO] getContactPrimaryPhone called {"contact_id":"21634"}
[2026-04-08 11:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:07:16] [INFO] getContactPrimaryPhone result {"contact_id":"21634","person_found":true,"primary_phone":"9175283142"}
[2026-04-08 11:07:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175283142"}
[2026-04-08 11:07:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175283142","contact_id":"21634","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 11:07:16"}
[2026-04-08 11:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:07:16] [INFO] generateDealTitle result {"contact_id":"21634","person_name":"شایان فر","mobile":"9175283142","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175283142"}
[2026-04-08 11:07:16] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21634","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 11:07:16] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21634","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 11:07:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21634","title":"معامله دوم 9175283142 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9175283142","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شایان فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 11:07:16","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 11:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:07:16] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 11:07:16] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21634","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9175283142 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:07:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 11:07:22] [INFO] Checking activity reminders 
[2026-04-08 11:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:07:37] [INFO] Checking activity reminders 
[2026-04-08 11:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:08:07] [INFO] Checking activity reminders 
[2026-04-08 11:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:08:37] [INFO] Checking activity reminders 
[2026-04-08 11:08:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:08:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:09:07] [INFO] Checking activity reminders 
[2026-04-08 11:09:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:09:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:09:31] [INFO] Checking activity reminders 
[2026-04-08 11:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:09:37] [INFO] Checking activity reminders 
[2026-04-08 11:09:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:09:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:09:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 11:09:52] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 11:09:54] [INFO] Checking activity reminders 
[2026-04-08 11:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:10:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:10:07] [INFO] Checking activity reminders 
[2026-04-08 11:10:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:10:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:10:24] [INFO] Checking activity reminders 
[2026-04-08 11:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:10:37] [INFO] Checking activity reminders 
[2026-04-08 11:10:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:10:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:10:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:10:52","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 11:10:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:10:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11454","is_new_deal":false}
[2026-04-08 11:10:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:10:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:10:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 11:10:52] [INFO] getContactPrimaryPhone called {"contact_id":"11454"}
[2026-04-08 11:10:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:10:52] [INFO] getContactPrimaryPhone result {"contact_id":"11454","person_found":true,"primary_phone":"9177842033"}
[2026-04-08 11:10:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177842033"}
[2026-04-08 11:10:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177842033","contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:10:52"}
[2026-04-08 11:10:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","existing_deal_found":true,"existing_contact_id":"11454","existing_title":"معامله دوم 9177842033 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:10:52"}
[2026-04-08 11:10:52] [INFO] DealController.save validated payments {"deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 11:10:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11454","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 11:10:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6959f383bd4665.70878914","contact_didar_id":"11454","title":"معامله دوم 9177842033 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9177842033","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"دوپیکر","existing_deal":"YES","existing_deal_id":"local_6959f383bd4665.70878914","existing_deal_status":"Pending","server_time":"2026-04-08 11:10:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 11:10:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:10:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9177842033 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 11:10:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:10:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:10:54] [INFO] Checking activity reminders 
[2026-04-08 11:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:11:08] [INFO] Checking activity reminders 
[2026-04-08 11:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:11:24] [INFO] Checking activity reminders 
[2026-04-08 11:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:11:38] [INFO] Checking activity reminders 
[2026-04-08 11:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:11:55] [INFO] Checking activity reminders 
[2026-04-08 11:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:12:08] [INFO] Checking activity reminders 
[2026-04-08 11:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:12:09] [INFO] Activity save request {"post_data":{"contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تازه متوجه ویس استاد برای 6 ماهه شده \r\nنیازی به پشتیبانی نداره اطلاعات براش شفافه \r\nپرزنت پیش بینی \r\nاطلاع میده \/ منتظر حقوق","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:12:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11454","note_was_empty":true}
[2026-04-08 11:12:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"11454","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:09] [INFO] Updating virtual stage {"contact_id":"11454","stage_name":"deal_registered","force":false}
[2026-04-08 11:12:09] [INFO] Virtual stage successfully saved {"contact_id":"11454","stage_name":"deal_registered"}
[2026-04-08 11:12:09] [INFO] Virtual stage updated after activity save {"contact_id":"11454"}
[2026-04-08 11:12:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6959f383bd4665.70878914","stage":"تماس پیگیری","status_change":null}
[2026-04-08 11:12:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d606d126fb19.73054565","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d606d126fb19.73054565"}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:09] [INFO] Updating virtual stage {"contact_id":"11454","stage_name":"deal_registered","force":false}
[2026-04-08 11:12:09] [INFO] Virtual stage successfully saved {"contact_id":"11454","stage_name":"deal_registered"}
[2026-04-08 11:12:09] [INFO] Virtual stage updated after activity save {"contact_id":"11454"}
[2026-04-08 11:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-08 11:12:16] [INFO] Checking activity reminders 
[2026-04-08 11:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:12:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:12:38] [INFO] Checking activity reminders 
[2026-04-08 11:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:12:46] [INFO] Checking activity reminders 
[2026-04-08 11:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:13:08] [INFO] Checking activity reminders 
[2026-04-08 11:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:13:16] [INFO] Checking activity reminders 
[2026-04-08 11:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:13:38] [INFO] Checking activity reminders 
[2026-04-08 11:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:13:46] [INFO] Checking activity reminders 
[2026-04-08 11:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:14:08] [INFO] Checking activity reminders 
[2026-04-08 11:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:14:17] [INFO] Checking activity reminders 
[2026-04-08 11:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:14:38] [INFO] Checking activity reminders 
[2026-04-08 11:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:14:47] [INFO] Checking activity reminders 
[2026-04-08 11:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:15:08] [INFO] Checking activity reminders 
[2026-04-08 11:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:15:17] [INFO] Checking activity reminders 
[2026-04-08 11:15:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:15:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:15:38] [INFO] Checking activity reminders 
[2026-04-08 11:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:15:47] [INFO] Checking activity reminders 
[2026-04-08 11:15:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:15:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:16:08] [INFO] Checking activity reminders 
[2026-04-08 11:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:16:17] [INFO] Checking activity reminders 
[2026-04-08 11:16:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:16:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:16:38] [INFO] Checking activity reminders 
[2026-04-08 11:16:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:16:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:17:08] [INFO] Checking activity reminders 
[2026-04-08 11:17:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:17:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:17:39] [INFO] Checking activity reminders 
[2026-04-08 11:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:18:09] [INFO] Checking activity reminders 
[2026-04-08 11:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:18:39] [INFO] Checking activity reminders 
[2026-04-08 11:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:18:59] [INFO] Checking activity reminders 
[2026-04-08 11:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:19:09] [INFO] Checking activity reminders 
[2026-04-08 11:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:19:32] [INFO] Checking activity reminders 
[2026-04-08 11:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:19:39] [INFO] Checking activity reminders 
[2026-04-08 11:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:20:04] [INFO] Checking activity reminders 
[2026-04-08 11:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:20:09] [INFO] Checking activity reminders 
[2026-04-08 11:20:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:20:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:20:39] [INFO] Checking activity reminders 
[2026-04-08 11:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:21:09] [INFO] Checking activity reminders 
[2026-04-08 11:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:21:39] [INFO] Checking activity reminders 
[2026-04-08 11:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:22:09] [INFO] Checking activity reminders 
[2026-04-08 11:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:22:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3149","deal_id":"local_69d604b8b3d1f2.77230727","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:22:17","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 11:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3149","is_new_deal":false}
[2026-04-08 11:22:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:22:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:22:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:22:17] [INFO] getContactPrimaryPhone called {"contact_id":"3149"}
[2026-04-08 11:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:17] [INFO] getContactPrimaryPhone result {"contact_id":"3149","person_found":true,"primary_phone":"9177712932"}
[2026-04-08 11:22:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177712932"}
[2026-04-08 11:22:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177712932","contact_id":"3149","deal_id":"local_69d604b8b3d1f2.77230727","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:22:17"}
[2026-04-08 11:22:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d604b8b3d1f2.77230727","contact_id":"3149","existing_deal_found":true,"existing_contact_id":"3149","existing_title":"معامله سوم 9177712932 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:22:17"}
[2026-04-08 11:22:17] [INFO] DealController.save validated payments {"deal_id":"local_69d604b8b3d1f2.77230727","contact_id":"3149","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 11:22:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3149","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 11:22:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d604b8b3d1f2.77230727","contact_didar_id":"3149","title":"معامله سوم 9177712932 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9177712932","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعادت مهر","existing_deal":"YES","existing_deal_id":"local_69d604b8b3d1f2.77230727","existing_deal_status":"Pending","server_time":"2026-04-08 11:22:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 11:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d604b8b3d1f2.77230727","contact_id":"3149","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9177712932 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:22:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Activity save request {"post_data":{"contact_id":"3149","deal_id":"local_69d604b8b3d1f2.77230727","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:22:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3149","note_was_empty":true}
[2026-04-08 11:22:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"3149","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Updating virtual stage {"contact_id":"3149","stage_name":"deal_registered","force":false}
[2026-04-08 11:22:37] [INFO] Virtual stage successfully saved {"contact_id":"3149","stage_name":"deal_registered"}
[2026-04-08 11:22:37] [INFO] Virtual stage updated after activity save {"contact_id":"3149"}
[2026-04-08 11:22:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d604b8b3d1f2.77230727","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 11:22:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d60945451347.07533783","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69d60945451347.07533783"}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:37] [INFO] Updating virtual stage {"contact_id":"3149","stage_name":"deal_registered","force":false}
[2026-04-08 11:22:37] [INFO] Virtual stage successfully saved {"contact_id":"3149","stage_name":"deal_registered"}
[2026-04-08 11:22:37] [INFO] Virtual stage updated after activity save {"contact_id":"3149"}
[2026-04-08 11:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3149","person_id":"13736"}
[2026-04-08 11:22:39] [INFO] Checking activity reminders 
[2026-04-08 11:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:22:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:23:09] [INFO] Checking activity reminders 
[2026-04-08 11:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:23:34] [INFO] Checking activity reminders 
[2026-04-08 11:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:23:39] [INFO] Checking activity reminders 
[2026-04-08 11:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:24:05] [INFO] Checking activity reminders 
[2026-04-08 11:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:24:09] [INFO] Checking activity reminders 
[2026-04-08 11:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:24:35] [INFO] Checking activity reminders 
[2026-04-08 11:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:24:39] [INFO] Checking activity reminders 
[2026-04-08 11:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:25:05] [INFO] Checking activity reminders 
[2026-04-08 11:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:25:09] [INFO] Checking activity reminders 
[2026-04-08 11:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:25:20] [INFO] Lead update received {"contact_id":"15162","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:25:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15162"}
[2026-04-08 11:25:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:25:35] [INFO] Checking activity reminders 
[2026-04-08 11:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:25:40] [INFO] Checking activity reminders 
[2026-04-08 11:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:26:05] [INFO] Checking activity reminders 
[2026-04-08 11:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:26:10] [INFO] Checking activity reminders 
[2026-04-08 11:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:26:35] [INFO] Checking activity reminders 
[2026-04-08 11:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:26:40] [INFO] Checking activity reminders 
[2026-04-08 11:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:27:05] [INFO] Checking activity reminders 
[2026-04-08 11:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:27:10] [INFO] Checking activity reminders 
[2026-04-08 11:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:27:36] [INFO] Checking activity reminders 
[2026-04-08 11:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:27:40] [INFO] Checking activity reminders 
[2026-04-08 11:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:28:06] [INFO] Checking activity reminders 
[2026-04-08 11:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:28:10] [INFO] Checking activity reminders 
[2026-04-08 11:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:28:36] [INFO] Checking activity reminders 
[2026-04-08 11:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:28:40] [INFO] Checking activity reminders 
[2026-04-08 11:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:29:06] [INFO] Checking activity reminders 
[2026-04-08 11:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:29:10] [INFO] Checking activity reminders 
[2026-04-08 11:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:29:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:29:21","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 11:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15162","is_new_deal":false}
[2026-04-08 11:29:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:29:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:29:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:29:21] [INFO] getContactPrimaryPhone called {"contact_id":"15162"}
[2026-04-08 11:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:21] [INFO] getContactPrimaryPhone result {"contact_id":"15162","person_found":true,"primary_phone":"9173842950"}
[2026-04-08 11:29:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173842950"}
[2026-04-08 11:29:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173842950","contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:29:21"}
[2026-04-08 11:29:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","existing_deal_found":true,"existing_contact_id":"15162","existing_title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:29:21"}
[2026-04-08 11:29:21] [INFO] DealController.save validated payments {"deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 11:29:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15162","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 11:29:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d60579c1e878.40370022","contact_didar_id":"15162","title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173842950","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی رنجبر","existing_deal":"YES","existing_deal_id":"local_69d60579c1e878.40370022","existing_deal_status":"Pending","server_time":"2026-04-08 11:29:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 11:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:29:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:36] [INFO] Checking activity reminders 
[2026-04-08 11:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:29:40] [INFO] Checking activity reminders 
[2026-04-08 11:29:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:29:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:29:49] [INFO] Activity save request {"post_data":{"contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nخوش و همسرش بیپاسخ \r\nپیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:29:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15162","note_was_empty":true}
[2026-04-08 11:29:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"15162","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:49] [INFO] Updating virtual stage {"contact_id":"15162","stage_name":"deal_registered","force":false}
[2026-04-08 11:29:49] [INFO] Virtual stage successfully saved {"contact_id":"15162","stage_name":"deal_registered"}
[2026-04-08 11:29:49] [INFO] Virtual stage updated after activity save {"contact_id":"15162"}
[2026-04-08 11:29:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d60579c1e878.40370022","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 11:29:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d60af50f92b3.34630454","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69d60af50f92b3.34630454"}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:29:49] [INFO] Updating virtual stage {"contact_id":"15162","stage_name":"deal_registered","force":false}
[2026-04-08 11:29:49] [INFO] Virtual stage successfully saved {"contact_id":"15162","stage_name":"deal_registered"}
[2026-04-08 11:29:49] [INFO] Virtual stage updated after activity save {"contact_id":"15162"}
[2026-04-08 11:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 11:30:06] [INFO] Checking activity reminders 
[2026-04-08 11:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:30:10] [INFO] Checking activity reminders 
[2026-04-08 11:30:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:30:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:30:36] [INFO] Checking activity reminders 
[2026-04-08 11:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:31:07] [INFO] Checking activity reminders 
[2026-04-08 11:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:31:37] [INFO] Checking activity reminders 
[2026-04-08 11:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:32:07] [INFO] Checking activity reminders 
[2026-04-08 11:32:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:32:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:32:37] [INFO] Checking activity reminders 
[2026-04-08 11:32:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:32:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:33:07] [INFO] Checking activity reminders 
[2026-04-08 11:33:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:33:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:33:37] [INFO] Checking activity reminders 
[2026-04-08 11:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:34:08] [INFO] Checking activity reminders 
[2026-04-08 11:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:34:38] [INFO] Checking activity reminders 
[2026-04-08 11:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:35:08] [INFO] Checking activity reminders 
[2026-04-08 11:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:35:38] [INFO] Checking activity reminders 
[2026-04-08 11:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:08] [INFO] Checking activity reminders 
[2026-04-08 11:36:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:39] [INFO] Checking activity reminders 
[2026-04-08 11:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:41] [INFO] Checking activity reminders 
[2026-04-08 11:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:43] [INFO] Checking activity reminders 
[2026-04-08 11:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:45] [INFO] Checking activity reminders 
[2026-04-08 11:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:51] [INFO] Checking activity reminders 
[2026-04-08 11:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:54] [INFO] Checking activity reminders 
[2026-04-08 11:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:56] [INFO] Checking activity reminders 
[2026-04-08 11:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:36:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:37:26] [INFO] Checking activity reminders 
[2026-04-08 11:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:37:56] [INFO] Checking activity reminders 
[2026-04-08 11:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:38:13] [INFO] Checking activity reminders 
[2026-04-08 11:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:38:27] [INFO] Checking activity reminders 
[2026-04-08 11:38:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:38:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:38:43] [INFO] Checking activity reminders 
[2026-04-08 11:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:38:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12766","deal_id":"local_69d603ae30a583.55358249","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:38:48","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 11:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:38:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12766","is_new_deal":false}
[2026-04-08 11:38:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:38:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:38:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:38:48] [INFO] getContactPrimaryPhone called {"contact_id":"12766"}
[2026-04-08 11:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:38:48] [INFO] getContactPrimaryPhone result {"contact_id":"12766","person_found":true,"primary_phone":"9167953547"}
[2026-04-08 11:38:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9167953547"}
[2026-04-08 11:38:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9167953547","contact_id":"12766","deal_id":"local_69d603ae30a583.55358249","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:38:48"}
[2026-04-08 11:38:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d603ae30a583.55358249","contact_id":"12766","existing_deal_found":true,"existing_contact_id":"12766","existing_title":"معامله دوم 9167953547 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:38:48"}
[2026-04-08 11:38:48] [INFO] DealController.save validated payments {"deal_id":"local_69d603ae30a583.55358249","contact_id":"12766","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 11:38:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12766","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 11:38:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d603ae30a583.55358249","contact_didar_id":"12766","title":"معامله دوم 9167953547 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9167953547","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد دالوند","existing_deal":"YES","existing_deal_id":"local_69d603ae30a583.55358249","existing_deal_status":"Pending","server_time":"2026-04-08 11:38:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 11:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:38:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d603ae30a583.55358249","contact_id":"12766","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9167953547 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:38:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:38:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:38:57] [INFO] Checking activity reminders 
[2026-04-08 11:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:39:10] [INFO] Activity save request {"post_data":{"contact_id":"12766","deal_id":"local_69d603ae30a583.55358249","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:39:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12766","note_was_empty":true}
[2026-04-08 11:39:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"12766","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:10] [INFO] Updating virtual stage {"contact_id":"12766","stage_name":"deal_registered","force":false}
[2026-04-08 11:39:10] [INFO] Virtual stage successfully saved {"contact_id":"12766","stage_name":"deal_registered"}
[2026-04-08 11:39:10] [INFO] Virtual stage updated after activity save {"contact_id":"12766"}
[2026-04-08 11:39:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d603ae30a583.55358249","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 11:39:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d60d2602f632.38003347","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d60d2602f632.38003347"}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:10] [INFO] Updating virtual stage {"contact_id":"12766","stage_name":"deal_registered","force":false}
[2026-04-08 11:39:10] [INFO] Virtual stage successfully saved {"contact_id":"12766","stage_name":"deal_registered"}
[2026-04-08 11:39:10] [INFO] Virtual stage updated after activity save {"contact_id":"12766"}
[2026-04-08 11:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12766","person_id":"3008"}
[2026-04-08 11:39:13] [INFO] Checking activity reminders 
[2026-04-08 11:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:39:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:39:27] [INFO] Checking activity reminders 
[2026-04-08 11:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:39:43] [INFO] Checking activity reminders 
[2026-04-08 11:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:39:57] [INFO] Checking activity reminders 
[2026-04-08 11:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:40:13] [INFO] Checking activity reminders 
[2026-04-08 11:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:40:27] [INFO] Checking activity reminders 
[2026-04-08 11:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:40:43] [INFO] Checking activity reminders 
[2026-04-08 11:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:40:57] [INFO] Checking activity reminders 
[2026-04-08 11:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:41:13] [INFO] Checking activity reminders 
[2026-04-08 11:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:41:27] [INFO] Checking activity reminders 
[2026-04-08 11:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:41:43] [INFO] Checking activity reminders 
[2026-04-08 11:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:41:57] [INFO] Checking activity reminders 
[2026-04-08 11:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:42:13] [INFO] Checking activity reminders 
[2026-04-08 11:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:42:27] [INFO] Checking activity reminders 
[2026-04-08 11:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:42:43] [INFO] Checking activity reminders 
[2026-04-08 11:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:42:58] [INFO] Checking activity reminders 
[2026-04-08 11:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:43:12] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 11:43:12","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 11:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20744","is_new_deal":false}
[2026-04-08 11:43:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 11:43:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:43:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 11:43:12] [INFO] getContactPrimaryPhone called {"contact_id":"20744"}
[2026-04-08 11:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:12] [INFO] getContactPrimaryPhone result {"contact_id":"20744","person_found":true,"primary_phone":"9166643093"}
[2026-04-08 11:43:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9166643093"}
[2026-04-08 11:43:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9166643093","contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:43:12"}
[2026-04-08 11:43:12] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","existing_deal_found":true,"existing_contact_id":"20744","existing_title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 11:43:12"}
[2026-04-08 11:43:12] [INFO] DealController.save validated payments {"deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 11:43:12] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20744","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 11:43:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d602f7b47959.98792636","contact_didar_id":"20744","title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9166643093","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیلی","existing_deal":"YES","existing_deal_id":"local_69d602f7b47959.98792636","existing_deal_status":"Pending","server_time":"2026-04-08 11:43:12","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 11:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:12] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 11:43:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 11:43:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:14] [INFO] Checking activity reminders 
[2026-04-08 11:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:43:28] [INFO] Checking activity reminders 
[2026-04-08 11:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:43:34] [INFO] Checking activity reminders 
[2026-04-08 11:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:43:40] [INFO] Activity save request {"post_data":{"contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \/ سرکار بود \r\nساعت 5-6 عصر تماس مجدد ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:43:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:43:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:43:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20744","note_was_empty":true}
[2026-04-08 11:43:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"20744","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 11:43:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:40] [INFO] Updating virtual stage {"contact_id":"20744","stage_name":"deal_registered","force":false}
[2026-04-08 11:43:41] [INFO] Virtual stage successfully saved {"contact_id":"20744","stage_name":"deal_registered"}
[2026-04-08 11:43:41] [INFO] Virtual stage updated after activity save {"contact_id":"20744"}
[2026-04-08 11:43:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d602f7b47959.98792636","stage":"تماس پیگیری","status_change":null}
[2026-04-08 11:43:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d60e34ed4c38.45900594","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d60e34ed4c38.45900594"}
[2026-04-08 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:41] [INFO] Updating virtual stage {"contact_id":"20744","stage_name":"deal_registered","force":false}
[2026-04-08 11:43:41] [INFO] Virtual stage successfully saved {"contact_id":"20744","stage_name":"deal_registered"}
[2026-04-08 11:43:41] [INFO] Virtual stage updated after activity save {"contact_id":"20744"}
[2026-04-08 11:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 11:43:44] [INFO] Checking activity reminders 
[2026-04-08 11:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 11:43:58] [INFO] Checking activity reminders 
[2026-04-08 11:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:04] [INFO] Checking activity reminders 
[2026-04-08 11:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:14] [INFO] Checking activity reminders 
[2026-04-08 11:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:28] [INFO] Checking activity reminders 
[2026-04-08 11:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:34] [INFO] Checking activity reminders 
[2026-04-08 11:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:44] [INFO] Checking activity reminders 
[2026-04-08 11:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:44:51] [INFO] Checking activity reminders 
[2026-04-08 11:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:45:14] [INFO] Checking activity reminders 
[2026-04-08 11:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:45:21] [INFO] Checking activity reminders 
[2026-04-08 11:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:45:44] [INFO] Checking activity reminders 
[2026-04-08 11:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:45:51] [INFO] Checking activity reminders 
[2026-04-08 11:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:46:14] [INFO] Checking activity reminders 
[2026-04-08 11:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:46:21] [INFO] Checking activity reminders 
[2026-04-08 11:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:46:44] [INFO] Checking activity reminders 
[2026-04-08 11:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:46:46] [INFO] Checking activity reminders 
[2026-04-08 11:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:47:14] [INFO] Checking activity reminders 
[2026-04-08 11:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:47:17] [INFO] Checking activity reminders 
[2026-04-08 11:47:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:47:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:47:45] [INFO] Checking activity reminders 
[2026-04-08 11:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:47:47] [INFO] Checking activity reminders 
[2026-04-08 11:47:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:47:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:48:15] [INFO] Checking activity reminders 
[2026-04-08 11:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:48:17] [INFO] Checking activity reminders 
[2026-04-08 11:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:48:45] [INFO] Checking activity reminders 
[2026-04-08 11:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:48:47] [INFO] Checking activity reminders 
[2026-04-08 11:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:49:15] [INFO] Checking activity reminders 
[2026-04-08 11:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:49:17] [INFO] Checking activity reminders 
[2026-04-08 11:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:49:45] [INFO] Checking activity reminders 
[2026-04-08 11:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:49:47] [INFO] Checking activity reminders 
[2026-04-08 11:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:50:15] [INFO] Checking activity reminders 
[2026-04-08 11:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:50:17] [INFO] Checking activity reminders 
[2026-04-08 11:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:50:45] [INFO] Checking activity reminders 
[2026-04-08 11:50:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:50:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:50:47] [INFO] Checking activity reminders 
[2026-04-08 11:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:51:15] [INFO] Checking activity reminders 
[2026-04-08 11:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:51:17] [INFO] Checking activity reminders 
[2026-04-08 11:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:51:45] [INFO] Checking activity reminders 
[2026-04-08 11:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:51:47] [INFO] Checking activity reminders 
[2026-04-08 11:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:52:15] [INFO] Checking activity reminders 
[2026-04-08 11:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:52:18] [INFO] Checking activity reminders 
[2026-04-08 11:52:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:52:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:52:45] [INFO] Checking activity reminders 
[2026-04-08 11:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:52:48] [INFO] Checking activity reminders 
[2026-04-08 11:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:53:15] [INFO] Checking activity reminders 
[2026-04-08 11:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:53:18] [INFO] Checking activity reminders 
[2026-04-08 11:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:53:45] [INFO] Checking activity reminders 
[2026-04-08 11:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:53:49] [INFO] Checking activity reminders 
[2026-04-08 11:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:54:16] [INFO] Checking activity reminders 
[2026-04-08 11:54:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:54:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:54:19] [INFO] Checking activity reminders 
[2026-04-08 11:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:54:46] [INFO] Checking activity reminders 
[2026-04-08 11:54:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:54:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:54:49] [INFO] Checking activity reminders 
[2026-04-08 11:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:55:16] [INFO] Checking activity reminders 
[2026-04-08 11:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:55:19] [INFO] Checking activity reminders 
[2026-04-08 11:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:55:46] [INFO] Checking activity reminders 
[2026-04-08 11:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:55:49] [INFO] Checking activity reminders 
[2026-04-08 11:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:56:16] [INFO] Checking activity reminders 
[2026-04-08 11:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:56:19] [INFO] Checking activity reminders 
[2026-04-08 11:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:56:46] [INFO] Checking activity reminders 
[2026-04-08 11:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:56:49] [INFO] Checking activity reminders 
[2026-04-08 11:56:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:56:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:57:16] [INFO] Checking activity reminders 
[2026-04-08 11:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:57:19] [INFO] Checking activity reminders 
[2026-04-08 11:57:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:57:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:57:46] [INFO] Checking activity reminders 
[2026-04-08 11:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:57:49] [INFO] Checking activity reminders 
[2026-04-08 11:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:58:16] [INFO] Checking activity reminders 
[2026-04-08 11:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:58:19] [INFO] Checking activity reminders 
[2026-04-08 11:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:58:46] [INFO] Checking activity reminders 
[2026-04-08 11:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:58:50] [INFO] Checking activity reminders 
[2026-04-08 11:58:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:58:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:58:58] [INFO] Activity save request {"post_data":{"contact_id":"9593","deal_id":"local_69d4bc40b1a1d4.49878057","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مغازه رو قبل جنگ جمع کرده شرکتی که کار میکرده از ایران رفته طرف\/ شراکتی ساخت و ساز انجام میده خوب بوده \/ شهر سر \\ل ذهاب هست \/ \r\n12 میلیارد اهن \/\r\n7میلیارد طلا\r\n2میلیارد دلار \r\nارسال ش کارت واریز تاس اعت 4 امروز یه بخشی تسویه اردیبهشت ","activity_duration":"25","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 11:58:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:58:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 11:58:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 11:58:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:58:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9593","note_was_empty":true}
[2026-04-08 11:58:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"9593","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 11:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:58:59] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-08 11:58:59] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-08 11:58:59] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-08 11:58:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bc40b1a1d4.49878057","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 11:58:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d611cac44422.55010476","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 11:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:58:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d611cac44422.55010476"}
[2026-04-08 11:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:58:59] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-08 11:58:59] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-08 11:58:59] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-08 11:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-08 11:59:16] [INFO] Checking activity reminders 
[2026-04-08 11:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:59:20] [INFO] Checking activity reminders 
[2026-04-08 11:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:59:46] [INFO] Checking activity reminders 
[2026-04-08 11:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 11:59:50] [INFO] Checking activity reminders 
[2026-04-08 11:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 11:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:00:16] [INFO] Checking activity reminders 
[2026-04-08 12:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:00:20] [INFO] Checking activity reminders 
[2026-04-08 12:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:00:47] [INFO] Checking activity reminders 
[2026-04-08 12:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:00:50] [INFO] Checking activity reminders 
[2026-04-08 12:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:01:17] [INFO] Checking activity reminders 
[2026-04-08 12:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:01:20] [INFO] Checking activity reminders 
[2026-04-08 12:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:01:47] [INFO] Checking activity reminders 
[2026-04-08 12:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:01:50] [INFO] Checking activity reminders 
[2026-04-08 12:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:02:17] [INFO] Checking activity reminders 
[2026-04-08 12:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:02:20] [INFO] Checking activity reminders 
[2026-04-08 12:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:02:47] [INFO] Checking activity reminders 
[2026-04-08 12:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:02:50] [INFO] Checking activity reminders 
[2026-04-08 12:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:03:17] [INFO] Checking activity reminders 
[2026-04-08 12:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:03:21] [INFO] Checking activity reminders 
[2026-04-08 12:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:03:47] [INFO] Checking activity reminders 
[2026-04-08 12:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:03:51] [INFO] Checking activity reminders 
[2026-04-08 12:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:04:17] [INFO] Checking activity reminders 
[2026-04-08 12:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:04:21] [INFO] Checking activity reminders 
[2026-04-08 12:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:04:47] [INFO] Checking activity reminders 
[2026-04-08 12:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:04:51] [INFO] Checking activity reminders 
[2026-04-08 12:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:05:17] [INFO] Checking activity reminders 
[2026-04-08 12:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:05:21] [INFO] Checking activity reminders 
[2026-04-08 12:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:05:47] [INFO] Checking activity reminders 
[2026-04-08 12:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:05:51] [INFO] Checking activity reminders 
[2026-04-08 12:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:06:17] [INFO] Checking activity reminders 
[2026-04-08 12:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:06:21] [INFO] Checking activity reminders 
[2026-04-08 12:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:06:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 12:06:47] [INFO] Checking activity reminders 
[2026-04-08 12:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:06:51] [INFO] Checking activity reminders 
[2026-04-08 12:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:07:18] [INFO] Checking activity reminders 
[2026-04-08 12:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:07:21] [INFO] Checking activity reminders 
[2026-04-08 12:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:07:48] [INFO] Checking activity reminders 
[2026-04-08 12:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:07:51] [INFO] Checking activity reminders 
[2026-04-08 12:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:08:18] [INFO] Checking activity reminders 
[2026-04-08 12:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:08:22] [INFO] Checking activity reminders 
[2026-04-08 12:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:08:48] [INFO] Checking activity reminders 
[2026-04-08 12:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:08:52] [INFO] Checking activity reminders 
[2026-04-08 12:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:09:18] [INFO] Checking activity reminders 
[2026-04-08 12:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:09:22] [INFO] Checking activity reminders 
[2026-04-08 12:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:09:48] [INFO] Checking activity reminders 
[2026-04-08 12:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:09:52] [INFO] Checking activity reminders 
[2026-04-08 12:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:10:18] [INFO] Checking activity reminders 
[2026-04-08 12:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:10:22] [INFO] Checking activity reminders 
[2026-04-08 12:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:10:48] [INFO] Checking activity reminders 
[2026-04-08 12:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:10:52] [INFO] Checking activity reminders 
[2026-04-08 12:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:11:18] [INFO] Checking activity reminders 
[2026-04-08 12:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:11:22] [INFO] Checking activity reminders 
[2026-04-08 12:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:11:48] [INFO] Checking activity reminders 
[2026-04-08 12:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:11:52] [INFO] Checking activity reminders 
[2026-04-08 12:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:12:19] [INFO] Checking activity reminders 
[2026-04-08 12:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:12:22] [INFO] Checking activity reminders 
[2026-04-08 12:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:12:49] [INFO] Checking activity reminders 
[2026-04-08 12:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:12:52] [INFO] Checking activity reminders 
[2026-04-08 12:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:13:19] [INFO] Checking activity reminders 
[2026-04-08 12:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:13:23] [INFO] Checking activity reminders 
[2026-04-08 12:13:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:13:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:13:49] [INFO] Checking activity reminders 
[2026-04-08 12:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:13:53] [INFO] Checking activity reminders 
[2026-04-08 12:13:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:13:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:14:19] [INFO] Checking activity reminders 
[2026-04-08 12:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:14:23] [INFO] Checking activity reminders 
[2026-04-08 12:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:14:49] [INFO] Checking activity reminders 
[2026-04-08 12:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:14:53] [INFO] Checking activity reminders 
[2026-04-08 12:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:15:19] [INFO] Checking activity reminders 
[2026-04-08 12:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:15:23] [INFO] Checking activity reminders 
[2026-04-08 12:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:15:49] [INFO] Checking activity reminders 
[2026-04-08 12:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:15:53] [INFO] Checking activity reminders 
[2026-04-08 12:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:16:19] [INFO] Checking activity reminders 
[2026-04-08 12:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:16:23] [INFO] Checking activity reminders 
[2026-04-08 12:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:16:53] [INFO] Checking activity reminders 
[2026-04-08 12:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:17:23] [INFO] Checking activity reminders 
[2026-04-08 12:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:17:30] [INFO] Checking activity reminders 
[2026-04-08 12:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:17:53] [INFO] Checking activity reminders 
[2026-04-08 12:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:18:00] [INFO] Checking activity reminders 
[2026-04-08 12:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:18:24] [INFO] Checking activity reminders 
[2026-04-08 12:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:18:31] [INFO] Checking activity reminders 
[2026-04-08 12:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:18:54] [INFO] Checking activity reminders 
[2026-04-08 12:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:19:01] [INFO] Checking activity reminders 
[2026-04-08 12:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:19:24] [INFO] Checking activity reminders 
[2026-04-08 12:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:19:31] [INFO] Checking activity reminders 
[2026-04-08 12:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:19:54] [INFO] Checking activity reminders 
[2026-04-08 12:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:20:01] [INFO] Checking activity reminders 
[2026-04-08 12:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:20:24] [INFO] Checking activity reminders 
[2026-04-08 12:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:20:31] [INFO] Checking activity reminders 
[2026-04-08 12:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:20:54] [INFO] Checking activity reminders 
[2026-04-08 12:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:21:01] [INFO] Checking activity reminders 
[2026-04-08 12:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:21:18] [INFO] Checking activity reminders 
[2026-04-08 12:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:21:31] [INFO] Checking activity reminders 
[2026-04-08 12:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:21:48] [INFO] Checking activity reminders 
[2026-04-08 12:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:22:01] [INFO] Checking activity reminders 
[2026-04-08 12:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:22:19] [INFO] Checking activity reminders 
[2026-04-08 12:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:22:31] [INFO] Checking activity reminders 
[2026-04-08 12:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:22:49] [INFO] Checking activity reminders 
[2026-04-08 12:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:23:01] [INFO] Checking activity reminders 
[2026-04-08 12:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:23:19] [INFO] Checking activity reminders 
[2026-04-08 12:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:23:31] [INFO] Checking activity reminders 
[2026-04-08 12:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:23:49] [INFO] Checking activity reminders 
[2026-04-08 12:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:24:01] [INFO] Checking activity reminders 
[2026-04-08 12:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:24:19] [INFO] Checking activity reminders 
[2026-04-08 12:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:24:32] [INFO] Checking activity reminders 
[2026-04-08 12:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:24:49] [INFO] Checking activity reminders 
[2026-04-08 12:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:25:02] [INFO] Checking activity reminders 
[2026-04-08 12:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:25:19] [INFO] Checking activity reminders 
[2026-04-08 12:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:25:23] [INFO] Checking activity reminders 
[2026-04-08 12:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:25:32] [INFO] Checking activity reminders 
[2026-04-08 12:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:25:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 12:25:49] [INFO] Checking activity reminders 
[2026-04-08 12:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:26:02] [INFO] Checking activity reminders 
[2026-04-08 12:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:26:19] [INFO] Checking activity reminders 
[2026-04-08 12:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:26:32] [INFO] Checking activity reminders 
[2026-04-08 12:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:26:49] [INFO] Checking activity reminders 
[2026-04-08 12:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:27:02] [INFO] Checking activity reminders 
[2026-04-08 12:27:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:27:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:27:19] [INFO] Checking activity reminders 
[2026-04-08 12:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:27:32] [INFO] Checking activity reminders 
[2026-04-08 12:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:27:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-08 12:27:50] [INFO] Checking activity reminders 
[2026-04-08 12:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:28:02] [INFO] Checking activity reminders 
[2026-04-08 12:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:28:20] [INFO] Checking activity reminders 
[2026-04-08 12:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:28:32] [INFO] Checking activity reminders 
[2026-04-08 12:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:28:50] [INFO] Checking activity reminders 
[2026-04-08 12:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:29:02] [INFO] Checking activity reminders 
[2026-04-08 12:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:29:20] [INFO] Checking activity reminders 
[2026-04-08 12:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:33:35] [INFO] Checking activity reminders 
[2026-04-08 12:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:34:06] [INFO] Checking activity reminders 
[2026-04-08 12:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:35:40] [INFO] Checking activity reminders 
[2026-04-08 12:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:36:10] [INFO] Checking activity reminders 
[2026-04-08 12:36:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:36:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:36:40] [INFO] Checking activity reminders 
[2026-04-08 12:36:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:36:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:37:10] [INFO] Checking activity reminders 
[2026-04-08 12:37:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:37:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:37:40] [INFO] Checking activity reminders 
[2026-04-08 12:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:38:10] [INFO] Checking activity reminders 
[2026-04-08 12:38:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:38:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:38:41] [INFO] Checking activity reminders 
[2026-04-08 12:38:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:38:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:39:11] [INFO] Checking activity reminders 
[2026-04-08 12:39:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:39:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:39:41] [INFO] Checking activity reminders 
[2026-04-08 12:39:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:39:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:40:11] [INFO] Checking activity reminders 
[2026-04-08 12:40:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:40:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:40:41] [INFO] Checking activity reminders 
[2026-04-08 12:40:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:40:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:41:11] [INFO] Checking activity reminders 
[2026-04-08 12:41:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:41:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:41:41] [INFO] Checking activity reminders 
[2026-04-08 12:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:42:11] [INFO] Checking activity reminders 
[2026-04-08 12:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:42:41] [INFO] Checking activity reminders 
[2026-04-08 12:42:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:42:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:43:11] [INFO] Checking activity reminders 
[2026-04-08 12:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:43:41] [INFO] Checking activity reminders 
[2026-04-08 12:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:44:12] [INFO] Checking activity reminders 
[2026-04-08 12:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:44:42] [INFO] Checking activity reminders 
[2026-04-08 12:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:45:12] [INFO] Checking activity reminders 
[2026-04-08 12:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:45:42] [INFO] Checking activity reminders 
[2026-04-08 12:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:46:12] [INFO] Checking activity reminders 
[2026-04-08 12:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:46:42] [INFO] Checking activity reminders 
[2026-04-08 12:46:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:46:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:46:52] [INFO] Checking activity reminders 
[2026-04-08 12:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:46:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 12:46:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 12:46:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 12:46:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 12:47:12] [INFO] Checking activity reminders 
[2026-04-08 12:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:47:26] [INFO] Checking activity reminders 
[2026-04-08 12:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:47:42] [INFO] Checking activity reminders 
[2026-04-08 12:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:48:12] [INFO] Checking activity reminders 
[2026-04-08 12:48:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:48:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:48:42] [INFO] Checking activity reminders 
[2026-04-08 12:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:49:12] [INFO] Checking activity reminders 
[2026-04-08 12:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:49:43] [INFO] Checking activity reminders 
[2026-04-08 12:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:50:04] [INFO] Checking activity reminders 
[2026-04-08 12:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:50:13] [INFO] Checking activity reminders 
[2026-04-08 12:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:50:34] [INFO] Checking activity reminders 
[2026-04-08 12:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:50:43] [INFO] Checking activity reminders 
[2026-04-08 12:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:06] [INFO] Checking activity reminders 
[2026-04-08 12:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:13] [INFO] Checking activity reminders 
[2026-04-08 12:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:36] [INFO] Checking activity reminders 
[2026-04-08 12:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:43] [INFO] Checking activity reminders 
[2026-04-08 12:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:48] [INFO] Checking activity reminders 
[2026-04-08 12:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:51:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 12:51:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 12:51:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 12:51:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 12:52:06] [INFO] Checking activity reminders 
[2026-04-08 12:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:52:13] [INFO] Checking activity reminders 
[2026-04-08 12:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:52:20] [INFO] Checking activity reminders 
[2026-04-08 12:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:52:36] [INFO] Checking activity reminders 
[2026-04-08 12:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:52:43] [INFO] Checking activity reminders 
[2026-04-08 12:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:52:48] [INFO] Checking activity reminders 
[2026-04-08 12:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:10] [INFO] Checking activity reminders 
[2026-04-08 12:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:13] [INFO] Checking activity reminders 
[2026-04-08 12:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:18] [INFO] Checking activity reminders 
[2026-04-08 12:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:40] [INFO] Checking activity reminders 
[2026-04-08 12:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:43] [INFO] Checking activity reminders 
[2026-04-08 12:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:49] [INFO] Checking activity reminders 
[2026-04-08 12:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:53:59] [INFO] Checking activity reminders 
[2026-04-08 12:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 12:54:13] [INFO] Checking activity reminders 
[2026-04-08 12:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:14] [INFO] Checking activity reminders 
[2026-04-08 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:14] [INFO] Checking activity reminders 
[2026-04-08 12:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:25] [INFO] Checking activity reminders 
[2026-04-08 12:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:43] [INFO] Checking activity reminders 
[2026-04-08 12:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:44] [INFO] Checking activity reminders 
[2026-04-08 12:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:44] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9175289757","09175289757"]}
[2026-04-08 12:54:44] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9175289757","09175289757"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-08 12:54:44] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9175289757","full_name":"لید جدید"}
[2026-04-08 12:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 12:54:44] [INFO] Notification created {"notification_id":"632","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-08 12:54:57] [INFO] Checking activity reminders 
[2026-04-08 12:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:54:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:03] [INFO] generateDealTitle result {"contact_id":"9893","person_name":"خانم دیوه","mobile":"9176949407","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9176949407"}
[2026-04-08 12:55:14] [INFO] Checking activity reminders 
[2026-04-08 12:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:17] [INFO] Checking activity reminders 
[2026-04-08 12:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:19] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9893","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 12:55:19","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 12:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9893","is_new_deal":true}
[2026-04-08 12:55:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 12:55:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:55:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:55:19] [INFO] getContactPrimaryPhone called {"contact_id":"9893"}
[2026-04-08 12:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:19] [INFO] getContactPrimaryPhone result {"contact_id":"9893","person_found":true,"primary_phone":"9176949407"}
[2026-04-08 12:55:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9176949407"}
[2026-04-08 12:55:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9176949407","contact_id":"9893","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 12:55:19"}
[2026-04-08 12:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:19] [INFO] generateDealTitle result {"contact_id":"9893","person_name":"خانم دیوه","mobile":"9176949407","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9176949407"}
[2026-04-08 12:55:19] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9893","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 12:55:19] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9893","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 12:55:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9893","title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9176949407","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم دیوه","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 12:55:19","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 12:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:19] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 12:55:19] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9893","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 12:55:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 12:55:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 12:55:32] [INFO] Checking activity reminders 
[2026-04-08 12:55:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5546","person_id":"4761"}
[2026-04-08 12:55:44] [INFO] Checking activity reminders 
[2026-04-08 12:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:47] [INFO] Checking activity reminders 
[2026-04-08 12:55:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:49] [INFO] Checking activity reminders 
[2026-04-08 12:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:55:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:02] [INFO] generateDealTitle result {"contact_id":"3353","person_name":"پیمان ناصری","mobile":"9178992900","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9178992900"}
[2026-04-08 12:56:14] [INFO] Checking activity reminders 
[2026-04-08 12:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:56:17] [INFO] Checking activity reminders 
[2026-04-08 12:56:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:56:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:56:19] [INFO] Checking activity reminders 
[2026-04-08 12:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:56:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3353","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 12:56:36","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3353","is_new_deal":true}
[2026-04-08 12:56:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 12:56:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:56:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:56:36] [INFO] getContactPrimaryPhone called {"contact_id":"3353"}
[2026-04-08 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:36] [INFO] getContactPrimaryPhone result {"contact_id":"3353","person_found":true,"primary_phone":"9178992900"}
[2026-04-08 12:56:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9178992900"}
[2026-04-08 12:56:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9178992900","contact_id":"3353","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 12:56:36"}
[2026-04-08 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:36] [INFO] generateDealTitle result {"contact_id":"3353","person_name":"پیمان ناصری","mobile":"9178992900","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9178992900"}
[2026-04-08 12:56:36] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3353","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 12:56:36] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3353","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 12:56:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3353","title":"معامله دوم 9178992900 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9178992900","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پیمان ناصری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 12:56:36","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:36] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 12:56:36] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3353","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9178992900 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 12:56:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 12:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 12:56:44] [INFO] Checking activity reminders 
[2026-04-08 12:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:56:47] [INFO] Checking activity reminders 
[2026-04-08 12:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:08] [INFO] Checking activity reminders 
[2026-04-08 12:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-08 12:57:14] [INFO] Checking activity reminders 
[2026-04-08 12:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:17] [INFO] Checking activity reminders 
[2026-04-08 12:57:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:38] [INFO] Checking activity reminders 
[2026-04-08 12:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:44] [INFO] Checking activity reminders 
[2026-04-08 12:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:57:52] [INFO] Checking activity reminders 
[2026-04-08 12:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:57:54] [INFO] generateDealTitle result {"contact_id":"5596","person_name":"علی سلیمانی","mobile":"9338872009","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9338872009"}
[2026-04-08 12:58:09] [INFO] Checking activity reminders 
[2026-04-08 12:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:14] [INFO] Checking activity reminders 
[2026-04-08 12:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:22] [INFO] Checking activity reminders 
[2026-04-08 12:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5596","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 12:58:25","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 12:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:58:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5596","is_new_deal":true}
[2026-04-08 12:58:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 12:58:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:58:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 12:58:25] [INFO] getContactPrimaryPhone called {"contact_id":"5596"}
[2026-04-08 12:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:58:25] [INFO] getContactPrimaryPhone result {"contact_id":"5596","person_found":true,"primary_phone":"9338872009"}
[2026-04-08 12:58:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9338872009"}
[2026-04-08 12:58:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9338872009","contact_id":"5596","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 12:58:25"}
[2026-04-08 12:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:58:25] [INFO] generateDealTitle result {"contact_id":"5596","person_name":"علی سلیمانی","mobile":"9338872009","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9338872009"}
[2026-04-08 12:58:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5596","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 12:58:25] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5596","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 12:58:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5596","title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9338872009","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی سلیمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 12:58:25","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 12:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:58:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 12:58:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5596","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 12:58:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 12:58:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:58:39] [INFO] Checking activity reminders 
[2026-04-08 12:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:44] [INFO] Checking activity reminders 
[2026-04-08 12:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:57] [INFO] Checking activity reminders 
[2026-04-08 12:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:57] [INFO] Checking activity reminders 
[2026-04-08 12:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:58:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-08 12:59:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-08 12:59:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15642","person_id":"14225"}
[2026-04-08 12:59:11] [INFO] generateDealTitle result {"contact_id":"15642","person_name":"امیرحسین قاسمی","mobile":"9103251488","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9103251488"}
[2026-04-08 12:59:14] [INFO] Checking activity reminders 
[2026-04-08 12:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:59:15] [INFO] Checking activity reminders 
[2026-04-08 12:59:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:59:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-08 12:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 12:59:27] [INFO] Checking activity reminders 
[2026-04-08 12:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:59:32] [INFO] Checking activity reminders 
[2026-04-08 12:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:59:45] [INFO] Checking activity reminders 
[2026-04-08 12:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 12:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 12:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 12:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 12:59:50] [INFO] generateDealTitle result {"contact_id":"20836","person_name":"هاوژین عبداله زاده","mobile":"9184009213","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9184009213"}
[2026-04-08 12:59:57] [INFO] Checking activity reminders 
[2026-04-08 12:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 12:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:02] [INFO] Checking activity reminders 
[2026-04-08 13:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20836","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:00:13","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 13:00:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20836","is_new_deal":true}
[2026-04-08 13:00:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:00:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:00:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:00:13] [INFO] getContactPrimaryPhone called {"contact_id":"20836"}
[2026-04-08 13:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 13:00:13] [INFO] getContactPrimaryPhone result {"contact_id":"20836","person_found":true,"primary_phone":"9184009213"}
[2026-04-08 13:00:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184009213"}
[2026-04-08 13:00:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184009213","contact_id":"20836","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:00:13"}
[2026-04-08 13:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 13:00:13] [INFO] generateDealTitle result {"contact_id":"20836","person_name":"هاوژین عبداله زاده","mobile":"9184009213","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9184009213"}
[2026-04-08 13:00:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20836","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:00:13] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20836","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:00:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20836","title":"معامله دوم 9184009213 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9184009213","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هاوژین عبداله زاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:00:13","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 13:00:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:00:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20836","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9184009213 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:00:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 13:00:15] [INFO] Checking activity reminders 
[2026-04-08 13:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:27] [INFO] Checking activity reminders 
[2026-04-08 13:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:45] [INFO] Checking activity reminders 
[2026-04-08 13:00:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:57] [INFO] Checking activity reminders 
[2026-04-08 13:00:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:00:59] [INFO] Checking activity reminders 
[2026-04-08 13:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:04] [INFO] generateDealTitle result {"contact_id":"88","person_name":"قمری","mobile":"9213968015","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9213968015"}
[2026-04-08 13:01:15] [INFO] Checking activity reminders 
[2026-04-08 13:01:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:01:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:01:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"88","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:01:22","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"88","is_new_deal":true}
[2026-04-08 13:01:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:22] [INFO] getContactPrimaryPhone called {"contact_id":"88"}
[2026-04-08 13:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:22] [INFO] getContactPrimaryPhone result {"contact_id":"88","person_found":true,"primary_phone":"9213968015"}
[2026-04-08 13:01:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213968015"}
[2026-04-08 13:01:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213968015","contact_id":"88","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:01:22"}
[2026-04-08 13:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:22] [INFO] generateDealTitle result {"contact_id":"88","person_name":"قمری","mobile":"9213968015","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9213968015"}
[2026-04-08 13:01:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"88","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:01:22] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"88","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:01:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"88","title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9213968015","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قمری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:01:22","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:01:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"88","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:01:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 13:01:27] [INFO] Checking activity reminders 
[2026-04-08 13:01:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:01:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:01:36] [INFO] Checking activity reminders 
[2026-04-08 13:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:41] [INFO] generateDealTitle result {"contact_id":"14954","person_name":"مجتبی جولاهی","mobile":"9184915906","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9184915906"}
[2026-04-08 13:01:45] [INFO] Checking activity reminders 
[2026-04-08 13:01:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:01:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:01:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14954","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:01:56","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14954","is_new_deal":true}
[2026-04-08 13:01:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:01:56] [INFO] getContactPrimaryPhone called {"contact_id":"14954"}
[2026-04-08 13:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:56] [INFO] getContactPrimaryPhone result {"contact_id":"14954","person_found":true,"primary_phone":"9184915906"}
[2026-04-08 13:01:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184915906"}
[2026-04-08 13:01:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184915906","contact_id":"14954","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:01:56"}
[2026-04-08 13:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:56] [INFO] generateDealTitle result {"contact_id":"14954","person_name":"مجتبی جولاهی","mobile":"9184915906","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9184915906"}
[2026-04-08 13:01:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14954","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:01:56] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14954","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:01:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14954","title":"معامله دوم 9184915906 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9184915906","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی جولاهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:01:56","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:01:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14954","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9184915906 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:01:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:01:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 13:01:57] [INFO] Checking activity reminders 
[2026-04-08 13:01:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:01:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:14] [INFO] Checking activity reminders 
[2026-04-08 13:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:15] [INFO] Checking activity reminders 
[2026-04-08 13:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:19] [INFO] generateDealTitle result {"contact_id":"1817","person_name":"احسان محمدی","mobile":"9185838623","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9185838623"}
[2026-04-08 13:02:27] [INFO] Checking activity reminders 
[2026-04-08 13:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1817","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:02:38","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1817","is_new_deal":true}
[2026-04-08 13:02:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:02:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:02:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:02:38] [INFO] getContactPrimaryPhone called {"contact_id":"1817"}
[2026-04-08 13:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:38] [INFO] getContactPrimaryPhone result {"contact_id":"1817","person_found":true,"primary_phone":"9185838623"}
[2026-04-08 13:02:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9185838623"}
[2026-04-08 13:02:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9185838623","contact_id":"1817","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:02:38"}
[2026-04-08 13:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:38] [INFO] generateDealTitle result {"contact_id":"1817","person_name":"احسان محمدی","mobile":"9185838623","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9185838623"}
[2026-04-08 13:02:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1817","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:02:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1817","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:02:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1817","title":"معامله سوم 9185838623 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9185838623","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:02:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:02:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1817","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9185838623 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:02:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 13:02:44] [INFO] Checking activity reminders 
[2026-04-08 13:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:45] [INFO] Checking activity reminders 
[2026-04-08 13:02:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:02:57] [INFO] Checking activity reminders 
[2026-04-08 13:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:03:04] [INFO] Checking activity reminders 
[2026-04-08 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:10] [INFO] generateDealTitle result {"contact_id":"14046","person_name":"سید رضا موسوی","mobile":"9186996629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9186996629"}
[2026-04-08 13:03:15] [INFO] Checking activity reminders 
[2026-04-08 13:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:03:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14046","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:03:24","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14046","is_new_deal":true}
[2026-04-08 13:03:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:03:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:03:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:03:24] [INFO] getContactPrimaryPhone called {"contact_id":"14046"}
[2026-04-08 13:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:24] [INFO] getContactPrimaryPhone result {"contact_id":"14046","person_found":true,"primary_phone":"9186996629"}
[2026-04-08 13:03:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9186996629"}
[2026-04-08 13:03:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9186996629","contact_id":"14046","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:03:24"}
[2026-04-08 13:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:24] [INFO] generateDealTitle result {"contact_id":"14046","person_name":"سید رضا موسوی","mobile":"9186996629","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9186996629"}
[2026-04-08 13:03:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14046","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:03:24] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14046","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:03:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14046","title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9186996629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سید رضا موسوی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:03:24","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:03:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14046","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:03:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:03:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:03:27] [INFO] Checking activity reminders 
[2026-04-08 13:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:03:45] [INFO] Checking activity reminders 
[2026-04-08 13:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:03:57] [INFO] Checking activity reminders 
[2026-04-08 13:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:04:15] [INFO] Checking activity reminders 
[2026-04-08 13:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:04:27] [INFO] Checking activity reminders 
[2026-04-08 13:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:04:45] [INFO] Checking activity reminders 
[2026-04-08 13:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:04:57] [INFO] Checking activity reminders 
[2026-04-08 13:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:05:16] [INFO] Checking activity reminders 
[2026-04-08 13:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:05:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:05:27] [INFO] Checking activity reminders 
[2026-04-08 13:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:05:46] [INFO] Checking activity reminders 
[2026-04-08 13:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:05:58] [INFO] Checking activity reminders 
[2026-04-08 13:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:06:16] [INFO] Checking activity reminders 
[2026-04-08 13:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:06:28] [INFO] Checking activity reminders 
[2026-04-08 13:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:06:46] [INFO] Checking activity reminders 
[2026-04-08 13:06:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:06:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:06:57] [INFO] Checking activity reminders 
[2026-04-08 13:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:06:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 13:06:58] [INFO] Checking activity reminders 
[2026-04-08 13:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:08] [INFO] Checking activity reminders 
[2026-04-08 13:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:07:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:07:16] [INFO] generateDealTitle result {"contact_id":"4597","person_name":"سماواتی","mobile":"9189119365","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9189119365"}
[2026-04-08 13:07:16] [INFO] Checking activity reminders 
[2026-04-08 13:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:28] [INFO] Checking activity reminders 
[2026-04-08 13:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:39] [INFO] Checking activity reminders 
[2026-04-08 13:07:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:46] [INFO] Checking activity reminders 
[2026-04-08 13:07:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:07:58] [INFO] Checking activity reminders 
[2026-04-08 13:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4597","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:08:07","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:08:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4597","is_new_deal":true}
[2026-04-08 13:08:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:07] [INFO] getContactPrimaryPhone called {"contact_id":"4597"}
[2026-04-08 13:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:08:07] [INFO] getContactPrimaryPhone result {"contact_id":"4597","person_found":true,"primary_phone":"9189119365"}
[2026-04-08 13:08:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9189119365"}
[2026-04-08 13:08:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9189119365","contact_id":"4597","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:08:07"}
[2026-04-08 13:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:08:07] [INFO] generateDealTitle result {"contact_id":"4597","person_name":"سماواتی","mobile":"9189119365","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9189119365"}
[2026-04-08 13:08:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4597","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:08:07] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4597","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:08:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4597","title":"معامله دوم 9189119365 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9189119365","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سماواتی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:08:07","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:08:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:08:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4597","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9189119365 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:08:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 13:08:09] [INFO] Checking activity reminders 
[2026-04-08 13:08:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:16] [INFO] Checking activity reminders 
[2026-04-08 13:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21634","deal_id":"local_69d605ac5ee268.56049474","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:08:22","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:08:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21634","is_new_deal":false}
[2026-04-08 13:08:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:22] [INFO] getContactPrimaryPhone called {"contact_id":"21634"}
[2026-04-08 13:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:08:22] [INFO] getContactPrimaryPhone result {"contact_id":"21634","person_found":true,"primary_phone":"9175283142"}
[2026-04-08 13:08:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175283142"}
[2026-04-08 13:08:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175283142","contact_id":"21634","deal_id":"local_69d605ac5ee268.56049474","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:08:22"}
[2026-04-08 13:08:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d605ac5ee268.56049474","contact_id":"21634","existing_deal_found":true,"existing_contact_id":"21634","existing_title":"معامله دوم 9175283142 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:08:22"}
[2026-04-08 13:08:22] [INFO] DealController.save validated payments {"deal_id":"local_69d605ac5ee268.56049474","contact_id":"21634","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 13:08:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21634","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:08:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d605ac5ee268.56049474","contact_didar_id":"21634","title":"معامله دوم 9175283142 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9175283142","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شایان فر","existing_deal":"YES","existing_deal_id":"local_69d605ac5ee268.56049474","existing_deal_status":"Pending","server_time":"2026-04-08 13:08:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:08:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d605ac5ee268.56049474","contact_id":"21634","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9175283142 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:08:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:08:26] [INFO] Checking activity reminders 
[2026-04-08 13:08:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:28] [INFO] Checking activity reminders 
[2026-04-08 13:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:33] [INFO] generateDealTitle result {"contact_id":"21052","person_name":"خانم پذیرفته","mobile":"9190825214","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9190825214"}
[2026-04-08 13:08:46] [INFO] Checking activity reminders 
[2026-04-08 13:08:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21052","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:08:48","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21052","is_new_deal":true}
[2026-04-08 13:08:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:08:48] [INFO] getContactPrimaryPhone called {"contact_id":"21052"}
[2026-04-08 13:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:48] [INFO] getContactPrimaryPhone result {"contact_id":"21052","person_found":true,"primary_phone":"9190825214"}
[2026-04-08 13:08:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190825214"}
[2026-04-08 13:08:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190825214","contact_id":"21052","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:08:48"}
[2026-04-08 13:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:48] [INFO] generateDealTitle result {"contact_id":"21052","person_name":"خانم پذیرفته","mobile":"9190825214","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9190825214"}
[2026-04-08 13:08:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21052","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:08:48] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21052","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:08:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21052","title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9190825214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم پذیرفته","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:08:48","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:08:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:08:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21052","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:08:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:08:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 13:08:56] [INFO] Checking activity reminders 
[2026-04-08 13:08:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:08:58] [INFO] Checking activity reminders 
[2026-04-08 13:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:16] [INFO] Checking activity reminders 
[2026-04-08 13:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:28] [INFO] Checking activity reminders 
[2026-04-08 13:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:28] [INFO] Checking activity reminders 
[2026-04-08 13:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:47] [INFO] Checking activity reminders 
[2026-04-08 13:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:47] [INFO] Checking activity reminders 
[2026-04-08 13:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:09:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:09:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:09:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:09:58] [INFO] Checking activity reminders 
[2026-04-08 13:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:10:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:10:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:10:17] [INFO] Checking activity reminders 
[2026-04-08 13:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:17] [INFO] Checking activity reminders 
[2026-04-08 13:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:10:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:10:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:10:28] [INFO] Checking activity reminders 
[2026-04-08 13:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:47] [INFO] Checking activity reminders 
[2026-04-08 13:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:48] [INFO] Checking activity reminders 
[2026-04-08 13:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:10:58] [INFO] Checking activity reminders 
[2026-04-08 13:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:08] [INFO] Activity save request {"post_data":{"contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"قبل سال صحبت تمدید شده بود \/ کانال 79ت و 6ماهه تا ساعت 15 با خانومش صحبت اطلاع \r\nخانومش تو کانال بوده بیشتر به خاط اخبار \/ ایرانسل دست خانومشه تماس جواب نمیده\r\nارسال ش کارت","activity_duration":"15","direction":"incoming","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 13:11:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5596","note_was_empty":true}
[2026-04-08 13:11:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"5596","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:08] [INFO] Updating virtual stage {"contact_id":"5596","stage_name":"deal_registered","force":false}
[2026-04-08 13:11:08] [INFO] Virtual stage successfully saved {"contact_id":"5596","stage_name":"deal_registered"}
[2026-04-08 13:11:08] [INFO] Virtual stage updated after activity save {"contact_id":"5596"}
[2026-04-08 13:11:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61fb9747ca9.89163716","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 13:11:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d622b4a45c64.73355664","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69d622b4a45c64.73355664"}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:08] [INFO] Updating virtual stage {"contact_id":"5596","stage_name":"deal_registered","force":false}
[2026-04-08 13:11:08] [INFO] Virtual stage successfully saved {"contact_id":"5596","stage_name":"deal_registered"}
[2026-04-08 13:11:08] [INFO] Virtual stage updated after activity save {"contact_id":"5596"}
[2026-04-08 13:11:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:11:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 13:11:17] [INFO] Checking activity reminders 
[2026-04-08 13:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:18] [INFO] Checking activity reminders 
[2026-04-08 13:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:29] [INFO] Checking activity reminders 
[2026-04-08 13:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:30] [INFO] Checking activity reminders 
[2026-04-08 13:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:35] [INFO] generateDealTitle result {"contact_id":"12732","person_name":"خانم عباسی","mobile":"9191718419","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9191718419"}
[2026-04-08 13:11:47] [INFO] Checking activity reminders 
[2026-04-08 13:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:11:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12732","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:11:53","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:11:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12732","is_new_deal":true}
[2026-04-08 13:11:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:11:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:11:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:11:53] [INFO] getContactPrimaryPhone called {"contact_id":"12732"}
[2026-04-08 13:11:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:53] [INFO] getContactPrimaryPhone result {"contact_id":"12732","person_found":true,"primary_phone":"9191718419"}
[2026-04-08 13:11:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191718419"}
[2026-04-08 13:11:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191718419","contact_id":"12732","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:11:53"}
[2026-04-08 13:11:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:53] [INFO] generateDealTitle result {"contact_id":"12732","person_name":"خانم عباسی","mobile":"9191718419","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9191718419"}
[2026-04-08 13:11:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12732","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:11:53] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12732","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:11:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12732","title":"معامله سوم 9191718419 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9191718419","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم عباسی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:11:53","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:11:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:11:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12732","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9191718419 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:11:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-08 13:11:59] [INFO] Checking activity reminders 
[2026-04-08 13:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:00] [INFO] Checking activity reminders 
[2026-04-08 13:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:10] [INFO] Checking activity reminders 
[2026-04-08 13:12:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:12:17] [INFO] Checking activity reminders 
[2026-04-08 13:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:29] [INFO] Checking activity reminders 
[2026-04-08 13:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:12:46] [INFO] Checking activity reminders 
[2026-04-08 13:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:47] [INFO] Checking activity reminders 
[2026-04-08 13:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:12:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:12:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:12:49] [INFO] generateDealTitle result {"contact_id":"21642","person_name":"بهرام محمدی","mobile":"9191831099","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9191831099"}
[2026-04-08 13:12:59] [INFO] Checking activity reminders 
[2026-04-08 13:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21642","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:13:05","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:13:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21642","is_new_deal":true}
[2026-04-08 13:13:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:05] [INFO] getContactPrimaryPhone called {"contact_id":"21642"}
[2026-04-08 13:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:13:05] [INFO] getContactPrimaryPhone result {"contact_id":"21642","person_found":true,"primary_phone":"9191831099"}
[2026-04-08 13:13:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191831099"}
[2026-04-08 13:13:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191831099","contact_id":"21642","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:13:05"}
[2026-04-08 13:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:13:05] [INFO] generateDealTitle result {"contact_id":"21642","person_name":"بهرام محمدی","mobile":"9191831099","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9191831099"}
[2026-04-08 13:13:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21642","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:13:05] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21642","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:13:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21642","title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9191831099","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرام محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:13:05","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:13:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:13:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21642","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:13:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:13:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 13:13:17] [INFO] Checking activity reminders 
[2026-04-08 13:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:23] [INFO] Checking activity reminders 
[2026-04-08 13:13:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:28] [INFO] generateDealTitle result {"contact_id":"15133","person_name":"الوندی","mobile":"9194005975","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9194005975"}
[2026-04-08 13:13:29] [INFO] Checking activity reminders 
[2026-04-08 13:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15133","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:13:43","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15133","is_new_deal":true}
[2026-04-08 13:13:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:13:43] [INFO] getContactPrimaryPhone called {"contact_id":"15133"}
[2026-04-08 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:43] [INFO] getContactPrimaryPhone result {"contact_id":"15133","person_found":true,"primary_phone":"9194005975"}
[2026-04-08 13:13:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9194005975"}
[2026-04-08 13:13:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9194005975","contact_id":"15133","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:13:43"}
[2026-04-08 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:43] [INFO] generateDealTitle result {"contact_id":"15133","person_name":"الوندی","mobile":"9194005975","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9194005975"}
[2026-04-08 13:13:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15133","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:13:43] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15133","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:13:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15133","title":"معامله سوم 9194005975 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9194005975","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"الوندی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:13:43","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:13:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15133","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9194005975 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:13:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:13:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 13:13:47] [INFO] Checking activity reminders 
[2026-04-08 13:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:55] [INFO] Checking activity reminders 
[2026-04-08 13:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:59] [INFO] Checking activity reminders 
[2026-04-08 13:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:13:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:13:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:13:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:14:14] [INFO] Checking activity reminders 
[2026-04-08 13:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-08 13:14:17] [INFO] Checking activity reminders 
[2026-04-08 13:14:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:23] [INFO] Checking activity reminders 
[2026-04-08 13:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:29] [INFO] Checking activity reminders 
[2026-04-08 13:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:34] [INFO] generateDealTitle result {"contact_id":"6796","person_name":"صفایی","mobile":"9197705480","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9197705480"}
[2026-04-08 13:14:47] [INFO] Checking activity reminders 
[2026-04-08 13:14:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6796","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:14:49","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6796","is_new_deal":true}
[2026-04-08 13:14:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:14:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:14:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:14:49] [INFO] getContactPrimaryPhone called {"contact_id":"6796"}
[2026-04-08 13:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:49] [INFO] getContactPrimaryPhone result {"contact_id":"6796","person_found":true,"primary_phone":"9197705480"}
[2026-04-08 13:14:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197705480"}
[2026-04-08 13:14:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197705480","contact_id":"6796","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:14:49"}
[2026-04-08 13:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:49] [INFO] generateDealTitle result {"contact_id":"6796","person_name":"صفایی","mobile":"9197705480","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9197705480"}
[2026-04-08 13:14:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6796","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:14:49] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6796","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:14:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6796","title":"معامله سوم 9197705480 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9197705480","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صفایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:14:49","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:14:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6796","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله سوم 9197705480 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:14:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 13:14:55] [INFO] Checking activity reminders 
[2026-04-08 13:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:14:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:14:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:14:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:14:59] [INFO] Checking activity reminders 
[2026-04-08 13:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:15:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:15:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:15:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:15:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:15:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:15:18] [INFO] Checking activity reminders 
[2026-04-08 13:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:15:29] [INFO] Checking activity reminders 
[2026-04-08 13:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:15:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:15:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:15:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:15:48] [INFO] Checking activity reminders 
[2026-04-08 13:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:15:51] [INFO] Checking activity reminders 
[2026-04-08 13:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:15:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-08 13:15:59] [INFO] Checking activity reminders 
[2026-04-08 13:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:02] [INFO] Checking activity reminders 
[2026-04-08 13:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:04] [INFO] Activity save request {"post_data":{"contact_id":"21634","deal_id":"local_69d605ac5ee268.56049474","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در کانال 404 بله نبوده \r\nارسال لینک در بله \r\nپرزنت 6 ماهه کانال 405 \r\nپیامک  ارسال شد ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 13:16:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21634","note_was_empty":true}
[2026-04-08 13:16:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"21634","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:04] [INFO] Updating virtual stage {"contact_id":"21634","stage_name":"deal_registered","force":false}
[2026-04-08 13:16:04] [INFO] Virtual stage successfully saved {"contact_id":"21634","stage_name":"deal_registered"}
[2026-04-08 13:16:04] [INFO] Virtual stage updated after activity save {"contact_id":"21634"}
[2026-04-08 13:16:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d605ac5ee268.56049474","stage":"تماس پیگیری","status_change":null}
[2026-04-08 13:16:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d623dc4675c6.54181547","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d623dc4675c6.54181547"}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:04] [INFO] Updating virtual stage {"contact_id":"21634","stage_name":"deal_registered","force":false}
[2026-04-08 13:16:04] [INFO] Virtual stage successfully saved {"contact_id":"21634","stage_name":"deal_registered"}
[2026-04-08 13:16:04] [INFO] Virtual stage updated after activity save {"contact_id":"21634"}
[2026-04-08 13:16:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21634","person_id":"3123"}
[2026-04-08 13:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-08 13:16:14] [INFO] Checking activity reminders 
[2026-04-08 13:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:18] [INFO] Checking activity reminders 
[2026-04-08 13:16:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:24] [INFO] generateDealTitle result {"contact_id":"20476","person_name":"میلاد شهرزاد","mobile":"9197915427","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9197915427"}
[2026-04-08 13:16:29] [INFO] Checking activity reminders 
[2026-04-08 13:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:33] [INFO] Checking activity reminders 
[2026-04-08 13:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20476","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:16:38","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20476","is_new_deal":true}
[2026-04-08 13:16:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 13:16:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:16:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 13:16:38] [INFO] getContactPrimaryPhone called {"contact_id":"20476"}
[2026-04-08 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:38] [INFO] getContactPrimaryPhone result {"contact_id":"20476","person_found":true,"primary_phone":"9197915427"}
[2026-04-08 13:16:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197915427"}
[2026-04-08 13:16:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197915427","contact_id":"20476","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 13:16:38"}
[2026-04-08 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:38] [INFO] generateDealTitle result {"contact_id":"20476","person_name":"میلاد شهرزاد","mobile":"9197915427","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9197915427"}
[2026-04-08 13:16:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20476","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 13:16:38] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20476","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 13:16:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20476","title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9197915427","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد شهرزاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:16:38","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:16:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20476","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 13:16:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 13:16:44] [INFO] Checking activity reminders 
[2026-04-08 13:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:16:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 13:16:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 13:16:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 13:17:00] [INFO] Checking activity reminders 
[2026-04-08 13:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:17:04] [INFO] Checking activity reminders 
[2026-04-08 13:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:17:14] [INFO] Checking activity reminders 
[2026-04-08 13:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:17:30] [INFO] Checking activity reminders 
[2026-04-08 13:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:17:34] [INFO] Checking activity reminders 
[2026-04-08 13:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:17:44] [INFO] Checking activity reminders 
[2026-04-08 13:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:00] [INFO] Checking activity reminders 
[2026-04-08 13:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:04] [INFO] Checking activity reminders 
[2026-04-08 13:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:15] [INFO] Checking activity reminders 
[2026-04-08 13:18:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:30] [INFO] Checking activity reminders 
[2026-04-08 13:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:34] [INFO] Checking activity reminders 
[2026-04-08 13:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:18:45] [INFO] Checking activity reminders 
[2026-04-08 13:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:00] [INFO] Checking activity reminders 
[2026-04-08 13:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:04] [INFO] Checking activity reminders 
[2026-04-08 13:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:15] [INFO] Checking activity reminders 
[2026-04-08 13:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:30] [INFO] Checking activity reminders 
[2026-04-08 13:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:34] [INFO] Checking activity reminders 
[2026-04-08 13:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:19:45] [INFO] Checking activity reminders 
[2026-04-08 13:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:20:04] [INFO] Checking activity reminders 
[2026-04-08 13:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:20:15] [INFO] Checking activity reminders 
[2026-04-08 13:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:20:34] [INFO] Checking activity reminders 
[2026-04-08 13:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:20:45] [INFO] Checking activity reminders 
[2026-04-08 13:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:20:59] [INFO] Checking activity reminders 
[2026-04-08 13:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:21:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:21:04] [INFO] Checking activity reminders 
[2026-04-08 13:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:21:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:21:27","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 13:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:21:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5596","is_new_deal":false}
[2026-04-08 13:21:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:21:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:21:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:21:27] [INFO] getContactPrimaryPhone called {"contact_id":"5596"}
[2026-04-08 13:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:21:27] [INFO] getContactPrimaryPhone result {"contact_id":"5596","person_found":true,"primary_phone":"9338872009"}
[2026-04-08 13:21:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9338872009"}
[2026-04-08 13:21:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9338872009","contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 13:21:27"}
[2026-04-08 13:21:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","existing_deal_found":true,"existing_contact_id":"5596","existing_title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 13:21:27"}
[2026-04-08 13:21:27] [INFO] DealController.save validated payments {"deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","payments_count":0,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-08 13:21:27] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5596","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:21:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61fb9747ca9.89163716","contact_didar_id":"5596","title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9338872009","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی سلیمانی","existing_deal":"YES","existing_deal_id":"local_69d61fb9747ca9.89163716","existing_deal_status":"Pending","server_time":"2026-04-08 13:21:27","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 13:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:21:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-08 13:21:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:21:29] [INFO] Checking activity reminders 
[2026-04-08 13:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:21:34] [INFO] Checking activity reminders 
[2026-04-08 13:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:21:59] [INFO] Checking activity reminders 
[2026-04-08 13:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:22:04] [INFO] Checking activity reminders 
[2026-04-08 13:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:22:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:22:20","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 13:22:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5596","is_new_deal":false}
[2026-04-08 13:22:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:22:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:22:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:22:20] [INFO] getContactPrimaryPhone called {"contact_id":"5596"}
[2026-04-08 13:22:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:20] [INFO] getContactPrimaryPhone result {"contact_id":"5596","person_found":true,"primary_phone":"9338872009"}
[2026-04-08 13:22:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9338872009"}
[2026-04-08 13:22:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9338872009","contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 13:22:20"}
[2026-04-08 13:22:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","existing_deal_found":true,"existing_contact_id":"5596","existing_title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 13:22:20"}
[2026-04-08 13:22:20] [INFO] DealController.save validated payments {"deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 13:22:20] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5596","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:22:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61fb9747ca9.89163716","contact_didar_id":"5596","title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9338872009","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"علی سلیمانی","existing_deal":"YES","existing_deal_id":"local_69d61fb9747ca9.89163716","existing_deal_status":"Pending","server_time":"2026-04-08 13:22:20","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 13:22:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61fb9747ca9.89163716","contact_id":"5596","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9338872009 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-08 13:22:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:22:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:29] [INFO] Checking activity reminders 
[2026-04-08 13:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:22:35] [INFO] Checking activity reminders 
[2026-04-08 13:22:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:22:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:22:55] [INFO] Activity save request {"post_data":{"contact_id":"5596","deal_id":"local_69d61fb9747ca9.89163716","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"6 ماهه 39 ت وازید شد \/ شهریور تمدید 6ماه دوم با ایرانسل خانومش ادد بشه","activity_duration":"5","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 13:22:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5596","note_was_empty":true}
[2026-04-08 13:22:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"5596","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Updating virtual stage {"contact_id":"5596","stage_name":"with_purchase","force":false}
[2026-04-08 13:22:55] [INFO] Virtual stage successfully saved {"contact_id":"5596","stage_name":"with_purchase"}
[2026-04-08 13:22:55] [INFO] Virtual stage updated after activity save {"contact_id":"5596"}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61fb9747ca9.89163716","stage":"اتمام","status_change":"Won"}
[2026-04-08 13:22:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d62577173e78.88828760","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69d62577173e78.88828760"}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:55] [INFO] Updating virtual stage {"contact_id":"5596","stage_name":"with_purchase","force":false}
[2026-04-08 13:22:55] [INFO] Virtual stage successfully saved {"contact_id":"5596","stage_name":"with_purchase"}
[2026-04-08 13:22:55] [INFO] Virtual stage updated after activity save {"contact_id":"5596"}
[2026-04-08 13:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5596","person_id":"8762"}
[2026-04-08 13:22:59] [INFO] Checking activity reminders 
[2026-04-08 13:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:23:05] [INFO] Checking activity reminders 
[2026-04-08 13:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:23:30] [INFO] Checking activity reminders 
[2026-04-08 13:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:23:35] [INFO] Checking activity reminders 
[2026-04-08 13:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:24:00] [INFO] Checking activity reminders 
[2026-04-08 13:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:24:05] [INFO] Checking activity reminders 
[2026-04-08 13:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:24:33] [INFO] Checking activity reminders 
[2026-04-08 13:24:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:24:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:24:35] [INFO] Checking activity reminders 
[2026-04-08 13:24:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:24:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:25:03] [INFO] Checking activity reminders 
[2026-04-08 13:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:25:05] [INFO] Checking activity reminders 
[2026-04-08 13:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:25:33] [INFO] Checking activity reminders 
[2026-04-08 13:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:25:35] [INFO] Checking activity reminders 
[2026-04-08 13:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:26:03] [INFO] Checking activity reminders 
[2026-04-08 13:26:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:26:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:26:05] [INFO] Checking activity reminders 
[2026-04-08 13:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:26:33] [INFO] Checking activity reminders 
[2026-04-08 13:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:26:35] [INFO] Checking activity reminders 
[2026-04-08 13:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:27:03] [INFO] Checking activity reminders 
[2026-04-08 13:27:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:27:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:27:05] [INFO] Checking activity reminders 
[2026-04-08 13:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:27:33] [INFO] Checking activity reminders 
[2026-04-08 13:27:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:27:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:27:35] [INFO] Checking activity reminders 
[2026-04-08 13:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:28:03] [INFO] Checking activity reminders 
[2026-04-08 13:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:28:06] [INFO] Checking activity reminders 
[2026-04-08 13:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:28:34] [INFO] Checking activity reminders 
[2026-04-08 13:28:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:28:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:28:36] [INFO] Checking activity reminders 
[2026-04-08 13:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:29:04] [INFO] Checking activity reminders 
[2026-04-08 13:29:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:29:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:29:06] [INFO] Checking activity reminders 
[2026-04-08 13:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:29:34] [INFO] Checking activity reminders 
[2026-04-08 13:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:29:36] [INFO] Checking activity reminders 
[2026-04-08 13:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:30:04] [INFO] Checking activity reminders 
[2026-04-08 13:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:30:06] [INFO] Checking activity reminders 
[2026-04-08 13:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:30:34] [INFO] Checking activity reminders 
[2026-04-08 13:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:30:36] [INFO] Checking activity reminders 
[2026-04-08 13:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:31:04] [INFO] Checking activity reminders 
[2026-04-08 13:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:31:06] [INFO] Checking activity reminders 
[2026-04-08 13:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:31:34] [INFO] Checking activity reminders 
[2026-04-08 13:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:31:36] [INFO] Checking activity reminders 
[2026-04-08 13:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:32:04] [INFO] Checking activity reminders 
[2026-04-08 13:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:32:06] [INFO] Checking activity reminders 
[2026-04-08 13:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:32:34] [INFO] Checking activity reminders 
[2026-04-08 13:32:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:32:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:32:36] [INFO] Checking activity reminders 
[2026-04-08 13:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:32:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:32:39","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:32:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:32:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","is_new_deal":false}
[2026-04-08 13:32:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:32:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:32:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:32:39] [INFO] getContactPrimaryPhone called {"contact_id":"15806"}
[2026-04-08 13:32:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:32:39] [INFO] getContactPrimaryPhone result {"contact_id":"15806","person_found":true,"primary_phone":"9173156400"}
[2026-04-08 13:32:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173156400"}
[2026-04-08 13:32:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173156400","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:32:39"}
[2026-04-08 13:32:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","existing_deal_found":true,"existing_contact_id":"15806","existing_title":"معامله دوم 9173156400 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:32:39"}
[2026-04-08 13:32:39] [INFO] DealController.save validated payments {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 13:32:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15806","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:32:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d604dfacd7b5.93148246","contact_didar_id":"15806","title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9173156400","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید طالع زاده","existing_deal":"YES","existing_deal_id":"local_69d604dfacd7b5.93148246","existing_deal_status":"Pending","server_time":"2026-04-08 13:32:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:32:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:32:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 13:32:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:32:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:33:04] [INFO] Checking activity reminders 
[2026-04-08 13:33:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:33:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:33:06] [INFO] Checking activity reminders 
[2026-04-08 13:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:33:34] [INFO] Checking activity reminders 
[2026-04-08 13:33:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:33:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:33:37] [INFO] Checking activity reminders 
[2026-04-08 13:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:34:04] [INFO] Checking activity reminders 
[2026-04-08 13:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:34:07] [INFO] Checking activity reminders 
[2026-04-08 13:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:34:37] [INFO] Checking activity reminders 
[2026-04-08 13:34:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:34:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:35:07] [INFO] Checking activity reminders 
[2026-04-08 13:35:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:35:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:35:37] [INFO] Checking activity reminders 
[2026-04-08 13:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:35:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:35:49","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:35:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","is_new_deal":false}
[2026-04-08 13:35:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:35:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:35:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:35:49] [INFO] getContactPrimaryPhone called {"contact_id":"15806"}
[2026-04-08 13:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:35:49] [INFO] getContactPrimaryPhone result {"contact_id":"15806","person_found":true,"primary_phone":"9173156400"}
[2026-04-08 13:35:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173156400"}
[2026-04-08 13:35:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173156400","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:35:49"}
[2026-04-08 13:35:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","existing_deal_found":true,"existing_contact_id":"15806","existing_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:35:49"}
[2026-04-08 13:35:49] [INFO] DealController.save validated payments {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 13:35:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15806","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:35:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d604dfacd7b5.93148246","contact_didar_id":"15806","title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9173156400","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید طالع زاده","existing_deal":"YES","existing_deal_id":"local_69d604dfacd7b5.93148246","existing_deal_status":"Pending","server_time":"2026-04-08 13:35:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:35:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":10000000,"server_time":"2026-04-08 13:35:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:35:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:07] [INFO] Checking activity reminders 
[2026-04-08 13:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:36:37] [INFO] Checking activity reminders 
[2026-04-08 13:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:36:51] [INFO] Activity save request {"post_data":{"contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"10 م بیعانه واریز \r\nبعد از پرداخت کامل و تسویه دسترسی به کانال \r\n","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 13:36:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15806","note_was_empty":true}
[2026-04-08 13:36:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"15806","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:51] [INFO] Updating virtual stage {"contact_id":"15806","stage_name":"deal_registered","force":false}
[2026-04-08 13:36:51] [INFO] Virtual stage successfully saved {"contact_id":"15806","stage_name":"deal_registered"}
[2026-04-08 13:36:51] [INFO] Virtual stage updated after activity save {"contact_id":"15806"}
[2026-04-08 13:36:51] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d604dfacd7b5.93148246","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-08 13:36:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d628bb3199c6.16138774","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:51] [INFO] Activity saved successfully {"activity_id":"local_activity_69d628bb3199c6.16138774"}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:36:51] [INFO] Updating virtual stage {"contact_id":"15806","stage_name":"deal_registered","force":false}
[2026-04-08 13:36:51] [INFO] Virtual stage successfully saved {"contact_id":"15806","stage_name":"deal_registered"}
[2026-04-08 13:36:51] [INFO] Virtual stage updated after activity save {"contact_id":"15806"}
[2026-04-08 13:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-08 13:37:07] [INFO] Checking activity reminders 
[2026-04-08 13:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:37:37] [INFO] Checking activity reminders 
[2026-04-08 13:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:37:55] [INFO] Checking activity reminders 
[2026-04-08 13:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:38:01] [INFO] Checking activity reminders 
[2026-04-08 13:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:38:03] [INFO] Checking activity reminders 
[2026-04-08 13:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:38:09] [INFO] Checking activity reminders 
[2026-04-08 13:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:42:18] [INFO] Checking activity reminders 
[2026-04-08 13:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:42:18] [INFO] Checking activity reminders 
[2026-04-08 13:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:42:18] [INFO] Checking activity reminders 
[2026-04-08 13:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:42:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:42:48] [INFO] Checking activity reminders 
[2026-04-08 13:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:43:08] [INFO] Lead update received {"contact_id":"1117","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 13:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:43:08] [DEBUG] findByPhone: Found person {"phones":["9334780676"],"found_id":"21978","found_didar_id":"local_69d224986b1d06.92096443","found_name":"سه کنجی"}
[2026-04-08 13:43:08] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9334780676","found_didar_id":"local_69d224986b1d06.92096443","found_local_id":"21978","found_name":"سه کنجی"}
[2026-04-08 13:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-08 13:43:08] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9334780676","found_id":"21978","found_didar_id":"local_69d224986b1d06.92096443","exclude_id":7014,"exclude_didar_id":"1117"}
[2026-04-08 13:43:08] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای سه کنجی (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-08 13:43:18] [INFO] Checking activity reminders 
[2026-04-08 13:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:44:53] [INFO] Checking activity reminders 
[2026-04-08 13:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:45:02] [INFO] Checking activity reminders 
[2026-04-08 13:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:45:36] [INFO] Checking activity reminders 
[2026-04-08 13:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:45:42] [INFO] Lead update received {"contact_id":"1117","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:45:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1117"}
[2026-04-08 13:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:46:06] [INFO] Checking activity reminders 
[2026-04-08 13:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:46:36] [INFO] Checking activity reminders 
[2026-04-08 13:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:47:07] [INFO] Checking activity reminders 
[2026-04-08 13:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:47:39] [INFO] Checking activity reminders 
[2026-04-08 13:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:48:09] [INFO] Checking activity reminders 
[2026-04-08 13:48:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:48:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:48:42] [INFO] Checking activity reminders 
[2026-04-08 13:48:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:48:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:49:12] [INFO] Checking activity reminders 
[2026-04-08 13:49:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:49:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:49:43] [INFO] Checking activity reminders 
[2026-04-08 13:49:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:49:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:50:13] [INFO] Checking activity reminders 
[2026-04-08 13:50:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:50:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:50:43] [INFO] Checking activity reminders 
[2026-04-08 13:50:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:50:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:51:13] [INFO] Checking activity reminders 
[2026-04-08 13:51:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:51:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:51:43] [INFO] Checking activity reminders 
[2026-04-08 13:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:52:13] [INFO] Checking activity reminders 
[2026-04-08 13:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:52:43] [INFO] Checking activity reminders 
[2026-04-08 13:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:53:13] [INFO] Checking activity reminders 
[2026-04-08 13:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:53:43] [INFO] Checking activity reminders 
[2026-04-08 13:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:54:13] [INFO] Checking activity reminders 
[2026-04-08 13:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:54:44] [INFO] Checking activity reminders 
[2026-04-08 13:54:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:54:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:55:14] [INFO] Checking activity reminders 
[2026-04-08 13:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:55:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:55:41","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:55:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","is_new_deal":false}
[2026-04-08 13:55:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:41] [INFO] getContactPrimaryPhone called {"contact_id":"1117"}
[2026-04-08 13:55:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:41] [INFO] getContactPrimaryPhone result {"contact_id":"1117","person_found":true,"primary_phone":"9132966165"}
[2026-04-08 13:55:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132966165"}
[2026-04-08 13:55:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132966165","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:55:41"}
[2026-04-08 13:55:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","existing_deal_found":true,"existing_contact_id":"1117","existing_title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:55:41"}
[2026-04-08 13:55:41] [INFO] DealController.save validated payments {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 13:55:41] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1117","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:55:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f3d98db67.30310510","contact_didar_id":"1117","title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9132966165","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد سجادی","existing_deal":"YES","existing_deal_id":"local_69d20f3d98db67.30310510","existing_deal_status":"Pending","server_time":"2026-04-08 13:55:41","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:55:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-08 13:55:41","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:55:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:44] [INFO] Checking activity reminders 
[2026-04-08 13:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:55:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:55:51","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1117","is_new_deal":false}
[2026-04-08 13:55:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 13:55:51] [INFO] getContactPrimaryPhone called {"contact_id":"1117"}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:51] [INFO] getContactPrimaryPhone result {"contact_id":"1117","person_found":true,"primary_phone":"9132966165"}
[2026-04-08 13:55:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132966165"}
[2026-04-08 13:55:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132966165","contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:55:51"}
[2026-04-08 13:55:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","existing_deal_found":true,"existing_contact_id":"1117","existing_title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:55:51"}
[2026-04-08 13:55:51] [INFO] DealController.save validated payments {"deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-08 13:55:51] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1117","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:55:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f3d98db67.30310510","contact_didar_id":"1117","title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9132966165","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد سجادی","existing_deal":"YES","existing_deal_id":"local_69d20f3d98db67.30310510","existing_deal_status":"Pending","server_time":"2026-04-08 13:55:51","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:51] [INFO] Deal success processed {"contact_id":"1117","person_name":"محمد سجادی","products_count":1}
[2026-04-08 13:55:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f3d98db67.30310510","contact_id":"1117","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9132966165 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-08 13:55:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:55:51] [INFO] Updating virtual stage {"contact_id":"1117","stage_name":"with_purchase","force":true}
[2026-04-08 13:55:51] [INFO] Virtual stage successfully saved {"contact_id":"1117","stage_name":"with_purchase"}
[2026-04-08 13:55:51] [INFO] Moved contact out of kariz after successful deal {"contact_id":"1117","deal_id":"local_69d20f3d98db67.30310510","target_stage":"with_purchase"}
[2026-04-08 13:55:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 13:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:56:14] [INFO] Checking activity reminders 
[2026-04-08 13:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:56:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:56:42] [INFO] generateDealTitle result {"contact_id":"9785","person_name":"فرامرزپور","mobile":"9933036341","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9933036341"}
[2026-04-08 13:56:44] [INFO] Checking activity reminders 
[2026-04-08 13:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:57:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:57:00","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:57:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","is_new_deal":true}
[2026-04-08 13:57:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:57:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:57:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:57:00] [INFO] getContactPrimaryPhone called {"contact_id":"9785"}
[2026-04-08 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:57:00] [INFO] getContactPrimaryPhone result {"contact_id":"9785","person_found":true,"primary_phone":"9933036341"}
[2026-04-08 13:57:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9933036341"}
[2026-04-08 13:57:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9933036341","contact_id":"9785","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:57:00"}
[2026-04-08 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:57:00] [INFO] generateDealTitle result {"contact_id":"9785","person_name":"فرامرزپور","mobile":"9933036341","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9933036341"}
[2026-04-08 13:57:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9785","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-08 13:57:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9785","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:57:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9785","title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9933036341","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرزپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 13:57:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:57:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 13:57:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9785","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-08 13:57:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:57:14] [INFO] Checking activity reminders 
[2026-04-08 13:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:57:44] [INFO] Checking activity reminders 
[2026-04-08 13:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:58:14] [INFO] Checking activity reminders 
[2026-04-08 13:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:58:36] [INFO] Activity save request {"post_data":{"contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه کانال \r\nبا خانمش مشورت \/ میگه استاد در زمان قطع اینترنت پیام ارسال \r\nمشاوره و پشتیبانی تماس مستقیم بهش گفتم \r\nارسال تجارت و واریز ","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 13:58:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9785","note_was_empty":true}
[2026-04-08 13:58:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"9785","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:36] [INFO] Updating virtual stage {"contact_id":"9785","stage_name":"deal_registered","force":false}
[2026-04-08 13:58:36] [INFO] Virtual stage successfully saved {"contact_id":"9785","stage_name":"deal_registered"}
[2026-04-08 13:58:36] [INFO] Virtual stage updated after activity save {"contact_id":"9785"}
[2026-04-08 13:58:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d62d7412ecd9.32168507","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 13:58:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d62dd4aaabd0.89729772","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d62dd4aaabd0.89729772"}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:36] [INFO] Updating virtual stage {"contact_id":"9785","stage_name":"deal_registered","force":false}
[2026-04-08 13:58:36] [INFO] Virtual stage successfully saved {"contact_id":"9785","stage_name":"deal_registered"}
[2026-04-08 13:58:36] [INFO] Virtual stage updated after activity save {"contact_id":"9785"}
[2026-04-08 13:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:58:44] [INFO] Checking activity reminders 
[2026-04-08 13:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:59:14] [INFO] Checking activity reminders 
[2026-04-08 13:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:59:45] [INFO] Checking activity reminders 
[2026-04-08 13:59:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 13:59:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 13:59:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:59:45","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:59:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","is_new_deal":false}
[2026-04-08 13:59:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:45] [INFO] getContactPrimaryPhone called {"contact_id":"9785"}
[2026-04-08 13:59:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:45] [INFO] getContactPrimaryPhone result {"contact_id":"9785","person_found":true,"primary_phone":"9933036341"}
[2026-04-08 13:59:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9933036341"}
[2026-04-08 13:59:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9933036341","contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:59:45"}
[2026-04-08 13:59:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","existing_deal_found":true,"existing_contact_id":"9785","existing_title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:59:46"}
[2026-04-08 13:59:46] [INFO] DealController.save validated payments {"deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 13:59:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9785","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:59:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d62d7412ecd9.32168507","contact_didar_id":"9785","title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9933036341","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرزپور","existing_deal":"YES","existing_deal_id":"local_69d62d7412ecd9.32168507","existing_deal_status":"Pending","server_time":"2026-04-08 13:59:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-08 13:59:46","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 13:59:56","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"9785","is_new_deal":false}
[2026-04-08 13:59:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 13:59:56] [INFO] getContactPrimaryPhone called {"contact_id":"9785"}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [INFO] getContactPrimaryPhone result {"contact_id":"9785","person_found":true,"primary_phone":"9933036341"}
[2026-04-08 13:59:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9933036341"}
[2026-04-08 13:59:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9933036341","contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:59:56"}
[2026-04-08 13:59:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","existing_deal_found":true,"existing_contact_id":"9785","existing_title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 13:59:56"}
[2026-04-08 13:59:56] [INFO] DealController.save validated payments {"deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-08 13:59:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9785","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 13:59:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d62d7412ecd9.32168507","contact_didar_id":"9785","title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9933036341","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرزپور","existing_deal":"YES","existing_deal_id":"local_69d62d7412ecd9.32168507","existing_deal_status":"Pending","server_time":"2026-04-08 13:59:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [INFO] Deal success processed {"contact_id":"9785","person_name":"فرامرزپور","products_count":1}
[2026-04-08 13:59:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d62d7412ecd9.32168507","contact_id":"9785","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9933036341 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-08 13:59:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 13:59:56] [INFO] Updating virtual stage {"contact_id":"9785","stage_name":"with_purchase","force":true}
[2026-04-08 13:59:56] [INFO] Virtual stage successfully saved {"contact_id":"9785","stage_name":"with_purchase"}
[2026-04-08 13:59:56] [INFO] Moved contact out of kariz after successful deal {"contact_id":"9785","deal_id":"local_69d62d7412ecd9.32168507","target_stage":"with_purchase"}
[2026-04-08 13:59:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9785","person_id":"6656"}
[2026-04-08 14:00:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 14:00:15] [INFO] Checking activity reminders 
[2026-04-08 14:00:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:00:16] [INFO] Checking activity reminders 
[2026-04-08 14:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:00:18] [INFO] Checking activity reminders 
[2026-04-08 14:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:00:19] [INFO] Checking activity reminders 
[2026-04-08 14:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:00:20] [INFO] Checking activity reminders 
[2026-04-08 14:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:00:50] [INFO] Checking activity reminders 
[2026-04-08 14:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:01:21] [INFO] Checking activity reminders 
[2026-04-08 14:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:01:51] [INFO] Checking activity reminders 
[2026-04-08 14:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:02:21] [INFO] Checking activity reminders 
[2026-04-08 14:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:02:51] [INFO] Checking activity reminders 
[2026-04-08 14:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:03:21] [INFO] Checking activity reminders 
[2026-04-08 14:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:03:51] [INFO] Checking activity reminders 
[2026-04-08 14:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:04:21] [INFO] Checking activity reminders 
[2026-04-08 14:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:04:51] [INFO] Checking activity reminders 
[2026-04-08 14:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:05:21] [INFO] Checking activity reminders 
[2026-04-08 14:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:05:51] [INFO] Checking activity reminders 
[2026-04-08 14:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:06:22] [INFO] Checking activity reminders 
[2026-04-08 14:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:06:52] [INFO] Checking activity reminders 
[2026-04-08 14:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:07:22] [INFO] Checking activity reminders 
[2026-04-08 14:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:07:52] [INFO] Checking activity reminders 
[2026-04-08 14:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:08:22] [INFO] Checking activity reminders 
[2026-04-08 14:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:08:52] [INFO] Checking activity reminders 
[2026-04-08 14:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:12] [INFO] Checking activity reminders 
[2026-04-08 14:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:21] [INFO] Checking activity reminders 
[2026-04-08 14:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:23] [INFO] Checking activity reminders 
[2026-04-08 14:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:24] [INFO] Checking activity reminders 
[2026-04-08 14:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:29] [INFO] Checking activity reminders 
[2026-04-08 14:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:09:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:09:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:09:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:09:38] [INFO] Checking activity reminders 
[2026-04-08 14:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:10:09] [INFO] Checking activity reminders 
[2026-04-08 14:10:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:10:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:10:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:10:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:10:35] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:10:39] [INFO] Checking activity reminders 
[2026-04-08 14:10:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:10:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:11:09] [INFO] Checking activity reminders 
[2026-04-08 14:11:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:11:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:11:39] [INFO] Checking activity reminders 
[2026-04-08 14:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:12:09] [INFO] Checking activity reminders 
[2026-04-08 14:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:12:42] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:12:42] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:12:42] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:15:48] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:15:48] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:15:48] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:18:16] [INFO] Checking activity reminders 
[2026-04-08 14:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:18:26] [INFO] Checking activity reminders 
[2026-04-08 14:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:18:32] [INFO] Checking activity reminders 
[2026-04-08 14:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:18:34] [INFO] Checking activity reminders 
[2026-04-08 14:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:18:37] [INFO] Checking activity reminders 
[2026-04-08 14:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:18:49] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:18:49] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:18:49] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:19:07] [INFO] Checking activity reminders 
[2026-04-08 14:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:19:38] [INFO] Checking activity reminders 
[2026-04-08 14:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:20:08] [INFO] Checking activity reminders 
[2026-04-08 14:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:20:41] [INFO] Checking activity reminders 
[2026-04-08 14:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:21:11] [INFO] Checking activity reminders 
[2026-04-08 14:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:21:26] [INFO] Checking activity reminders 
[2026-04-08 14:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:21:56] [INFO] Checking activity reminders 
[2026-04-08 14:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:21:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"88","deal_id":"local_69d6206a229041.44776372","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 14:21:57","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 14:21:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:21:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"88","is_new_deal":false}
[2026-04-08 14:21:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 14:21:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:21:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:21:57] [INFO] getContactPrimaryPhone called {"contact_id":"88"}
[2026-04-08 14:21:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:21:57] [INFO] getContactPrimaryPhone result {"contact_id":"88","person_found":true,"primary_phone":"9213968015"}
[2026-04-08 14:21:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213968015"}
[2026-04-08 14:21:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213968015","contact_id":"88","deal_id":"local_69d6206a229041.44776372","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:21:57"}
[2026-04-08 14:21:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6206a229041.44776372","contact_id":"88","existing_deal_found":true,"existing_contact_id":"88","existing_title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:21:57"}
[2026-04-08 14:21:57] [INFO] DealController.save validated payments {"deal_id":"local_69d6206a229041.44776372","contact_id":"88","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 14:21:57] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"88","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 14:21:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6206a229041.44776372","contact_didar_id":"88","title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9213968015","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قمری","existing_deal":"YES","existing_deal_id":"local_69d6206a229041.44776372","existing_deal_status":"Pending","server_time":"2026-04-08 14:21:57","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 14:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:21:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6206a229041.44776372","contact_id":"88","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 14:21:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 14:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:22:26] [INFO] Checking activity reminders 
[2026-04-08 14:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:22:56] [INFO] Checking activity reminders 
[2026-04-08 14:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:23:26] [INFO] Activity save request {"post_data":{"contact_id":"88","deal_id":"local_69d6206a229041.44776372","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خارج از ایران \/ عراق \r\nشرایط تماس نداشت \r\nپیام داد اخر ماه اومد ایران تماس میگیره ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:23:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:23:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:23:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"88","note_was_empty":true}
[2026-04-08 14:23:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"88","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:23:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:26] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-08 14:23:26] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-08 14:23:26] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-08 14:23:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6206a229041.44776372","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:23:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d633a6bffc52.31831626","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:23:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d633a6bffc52.31831626"}
[2026-04-08 14:23:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:26] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-08 14:23:26] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-08 14:23:26] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-08 14:23:26] [INFO] Checking activity reminders 
[2026-04-08 14:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-08 14:23:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:23:57] [INFO] Checking activity reminders 
[2026-04-08 14:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:24:19] [INFO] Activity save request {"post_data":{"contact_id":"7038","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:24:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:24:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:24:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7038","note_was_empty":true}
[2026-04-08 14:24:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"7038","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:24:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d633db3485e7.34282744","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:24:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d633db3485e7.34282744"}
[2026-04-08 14:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:24:19] [INFO] Updating virtual stage {"contact_id":"7038","stage_name":"deal_registered","force":false}
[2026-04-08 14:24:19] [INFO] Virtual stage successfully saved {"contact_id":"7038","stage_name":"deal_registered"}
[2026-04-08 14:24:19] [INFO] Virtual stage updated after activity save {"contact_id":"7038"}
[2026-04-08 14:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-08 14:24:27] [INFO] Checking activity reminders 
[2026-04-08 14:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:24:57] [INFO] Checking activity reminders 
[2026-04-08 14:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:25:27] [INFO] Checking activity reminders 
[2026-04-08 14:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:25:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 14:26:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:26:21] [INFO] Checking activity reminders 
[2026-04-08 14:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:26:32] [INFO] Checking activity reminders 
[2026-04-08 14:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:26:36] [INFO] Checking activity reminders 
[2026-04-08 14:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:26:47] [INFO] Checking activity reminders 
[2026-04-08 14:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:26:48] [INFO] Checking activity reminders 
[2026-04-08 14:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:27:19] [INFO] Checking activity reminders 
[2026-04-08 14:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:27:49] [INFO] Checking activity reminders 
[2026-04-08 14:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:27:53] [INFO] Activity save request {"post_data":{"contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال حساب های خودش مسدود \r\nفردا واریز مانده حساب \r\nارسال شماره شبا \r\n","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:27:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:27:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:27:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"848","note_was_empty":true}
[2026-04-08 14:27:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"848","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:27:53] [INFO] Updating virtual stage {"contact_id":"848","stage_name":"deal_registered","force":false}
[2026-04-08 14:27:53] [INFO] Virtual stage successfully saved {"contact_id":"848","stage_name":"deal_registered"}
[2026-04-08 14:27:53] [INFO] Virtual stage updated after activity save {"contact_id":"848"}
[2026-04-08 14:27:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695e59f9e1ad03.41227809","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-08 14:27:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d634b19eee29.06354555","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:27:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d634b19eee29.06354555"}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:27:53] [INFO] Updating virtual stage {"contact_id":"848","stage_name":"deal_registered","force":false}
[2026-04-08 14:27:53] [INFO] Virtual stage successfully saved {"contact_id":"848","stage_name":"deal_registered"}
[2026-04-08 14:27:53] [INFO] Virtual stage updated after activity save {"contact_id":"848"}
[2026-04-08 14:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-08 14:28:19] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:19] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:28:19] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:19] [INFO] Checking activity reminders 
[2026-04-08 14:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:28:22] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:22] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:28:22] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"rbac_catalog"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"get_users_list"}
[2026-04-08 14:28:34] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 14:28:40","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:28:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20866","is_new_deal":false}
[2026-04-08 14:28:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 14:28:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:28:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:28:40] [INFO] getContactPrimaryPhone called {"contact_id":"20866"}
[2026-04-08 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:28:40] [INFO] getContactPrimaryPhone result {"contact_id":"20866","person_found":true,"primary_phone":"9128762050"}
[2026-04-08 14:28:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128762050"}
[2026-04-08 14:28:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128762050","contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:28:40"}
[2026-04-08 14:28:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","existing_deal_found":true,"existing_contact_id":"20866","existing_title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:28:40"}
[2026-04-08 14:28:40] [INFO] DealController.save validated payments {"deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 14:28:40] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20866","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 14:28:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a321bcfec4.58364179","contact_didar_id":"20866","title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128762050","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سعید خسرو آزاد","existing_deal":"YES","existing_deal_id":"local_69d0a321bcfec4.58364179","existing_deal_status":"Pending","server_time":"2026-04-08 14:28:40","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:28:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a321bcfec4.58364179","contact_id":"20866","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9128762050 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 14:28:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 14:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:28:49] [INFO] Checking activity reminders 
[2026-04-08 14:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:28:52] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:28:52] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 14:28:52] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 14:28:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 14:28:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 14:28:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"}]}
[2026-04-08 14:28:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1}]}
[2026-04-08 14:29:19] [INFO] Checking activity reminders 
[2026-04-08 14:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:29:23] [INFO] Checking activity reminders 
[2026-04-08 14:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:29:49] [INFO] Checking activity reminders 
[2026-04-08 14:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:29:53] [INFO] Checking activity reminders 
[2026-04-08 14:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:30:00] [INFO] Activity save request {"post_data":{"contact_id":"20866","deal_id":"local_69d0a321bcfec4.58364179","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا برای 1 کیلو طلا دادگاه میرره \/ اجاره طلا شخص زندانه \r\nمابقی سرمایه در ملک 50 درصد سود داده \r\nسرمایه ای نداره برای عضویت در کانال \r\nخودش در الویتشه وارد کانال بشه ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:30:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20866","note_was_empty":true}
[2026-04-08 14:30:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"20866","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:00] [INFO] Updating virtual stage {"contact_id":"20866","stage_name":"deal_registered","force":false}
[2026-04-08 14:30:00] [INFO] Virtual stage successfully saved {"contact_id":"20866","stage_name":"deal_registered"}
[2026-04-08 14:30:00] [INFO] Virtual stage updated after activity save {"contact_id":"20866"}
[2026-04-08 14:30:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a321bcfec4.58364179","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:30:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6353089baf7.06261072","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6353089baf7.06261072"}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:00] [INFO] Updating virtual stage {"contact_id":"20866","stage_name":"deal_registered","force":false}
[2026-04-08 14:30:00] [INFO] Virtual stage successfully saved {"contact_id":"20866","stage_name":"deal_registered"}
[2026-04-08 14:30:00] [INFO] Virtual stage updated after activity save {"contact_id":"20866"}
[2026-04-08 14:30:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20866","person_id":"19964"}
[2026-04-08 14:30:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:30:19] [INFO] Checking activity reminders 
[2026-04-08 14:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:30:24] [INFO] Checking activity reminders 
[2026-04-08 14:30:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:30:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:30:49] [INFO] Checking activity reminders 
[2026-04-08 14:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:30:54] [INFO] Checking activity reminders 
[2026-04-08 14:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:31:19] [INFO] Checking activity reminders 
[2026-04-08 14:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:31:24] [INFO] Checking activity reminders 
[2026-04-08 14:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:31:50] [INFO] Checking activity reminders 
[2026-04-08 14:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:31:54] [INFO] Checking activity reminders 
[2026-04-08 14:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:32:11] [INFO] Activity save request {"post_data":{"contact_id":"local_695279d8d64848.96161288","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"چون خودش نوسان گیر و ترید میکنه میگه کارهایی که انجام میدم به تحلیل و سیگنال های استاد نزدیکه و نیازی الان به کانال ندارم \r\nمطمین شدم به کارهای خودرو اجگگر نیاز باشه تماس مجدد میگیرم ","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:32:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:32:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:32:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_695279d8d64848.96161288","note_was_empty":true}
[2026-04-08 14:32:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d635b3395d56.88979557","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:32:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d635b3395d56.88979557"}
[2026-04-08 14:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:32:11] [INFO] Updating virtual stage {"contact_id":"local_695279d8d64848.96161288","stage_name":"with_purchase","force":false}
[2026-04-08 14:32:11] [INFO] Virtual stage successfully saved {"contact_id":"local_695279d8d64848.96161288","stage_name":"with_purchase"}
[2026-04-08 14:32:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_695279d8d64848.96161288"}
[2026-04-08 14:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695279d8d64848.96161288","person_id":"21453"}
[2026-04-08 14:32:20] [INFO] Checking activity reminders 
[2026-04-08 14:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:32:24] [INFO] Checking activity reminders 
[2026-04-08 14:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:32:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:32:50] [INFO] Checking activity reminders 
[2026-04-08 14:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:32:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:32:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:32:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:32:54] [INFO] Checking activity reminders 
[2026-04-08 14:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:33:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 14:33:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 14:33:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 14:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_person_profile"}
[2026-04-08 14:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:33:20] [INFO] Checking activity reminders 
[2026-04-08 14:33:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:33:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:33:24] [INFO] Checking activity reminders 
[2026-04-08 14:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:33:50] [INFO] Checking activity reminders 
[2026-04-08 14:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:33:54] [INFO] Activity save request {"post_data":{"contact_id":"7666","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"درامد و کسب و کارش به چالش خورده \r\nپرزنت 405 یکساله و 6 ماهه \r\nمشورت با برادر \r\n","activity_duration":"7","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:33:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:33:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:33:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7666","note_was_empty":true}
[2026-04-08 14:33:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"7666","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:33:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6361ac5b464.89098334","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:33:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6361ac5b464.89098334"}
[2026-04-08 14:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:33:54] [INFO] Updating virtual stage {"contact_id":"7666","stage_name":"deal_registered","force":false}
[2026-04-08 14:33:54] [INFO] Virtual stage successfully saved {"contact_id":"7666","stage_name":"deal_registered"}
[2026-04-08 14:33:54] [INFO] Virtual stage updated after activity save {"contact_id":"7666"}
[2026-04-08 14:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 14:34:20] [INFO] Checking activity reminders 
[2026-04-08 14:34:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:34:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:34:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:34:50] [INFO] Checking activity reminders 
[2026-04-08 14:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:34:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:34:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:34:53] [INFO] generateDealTitle result {"contact_id":"20648","person_name":"محمد اسدی","mobile":"9123452349","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123452349"}
[2026-04-08 14:35:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"20648","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 14:35:13","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 14:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"20648","is_new_deal":true}
[2026-04-08 14:35:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 14:35:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 14:35:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 14:35:13] [INFO] getContactPrimaryPhone called {"contact_id":"20648"}
[2026-04-08 14:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:13] [INFO] getContactPrimaryPhone result {"contact_id":"20648","person_found":true,"primary_phone":"9123452349"}
[2026-04-08 14:35:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123452349"}
[2026-04-08 14:35:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123452349","contact_id":"20648","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:35:13"}
[2026-04-08 14:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:13] [INFO] generateDealTitle result {"contact_id":"20648","person_name":"محمد اسدی","mobile":"9123452349","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123452349"}
[2026-04-08 14:35:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20648","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-08 14:35:13] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20648","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 14:35:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20648","title":"معامله دوم 9123452349 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9123452349","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد اسدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 14:35:13","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 14:35:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 14:35:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20648","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9123452349 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-08 14:35:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 14:35:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:21] [INFO] Checking activity reminders 
[2026-04-08 14:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:35:51] [INFO] Checking activity reminders 
[2026-04-08 14:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:35:59] [INFO] Activity save request {"post_data":{"contact_id":"20648","deal_id":"local_69d63669ee3ed6.98206010","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"از اعضای cip  \r\nمستقیم استاد تماس داشتن \r\n54 عضویت 405 \r\nارسال لینک پرداخت ","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:35:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20648","note_was_empty":true}
[2026-04-08 14:35:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"20648","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:59] [INFO] Updating virtual stage {"contact_id":"20648","stage_name":"deal_registered","force":false}
[2026-04-08 14:35:59] [INFO] Virtual stage successfully saved {"contact_id":"20648","stage_name":"deal_registered"}
[2026-04-08 14:35:59] [INFO] Virtual stage updated after activity save {"contact_id":"20648"}
[2026-04-08 14:35:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d63669ee3ed6.98206010","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 14:35:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6369745fd16.19195654","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6369745fd16.19195654"}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:35:59] [INFO] Updating virtual stage {"contact_id":"20648","stage_name":"deal_registered","force":false}
[2026-04-08 14:35:59] [INFO] Virtual stage successfully saved {"contact_id":"20648","stage_name":"deal_registered"}
[2026-04-08 14:35:59] [INFO] Virtual stage updated after activity save {"contact_id":"20648"}
[2026-04-08 14:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 14:36:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:36:21] [INFO] Checking activity reminders 
[2026-04-08 14:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:36:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 14:36:35","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 14:36:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:36:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12229","is_new_deal":false}
[2026-04-08 14:36:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 14:36:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:36:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 14:36:35] [INFO] getContactPrimaryPhone called {"contact_id":"12229"}
[2026-04-08 14:36:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:36:35] [INFO] getContactPrimaryPhone result {"contact_id":"12229","person_found":true,"primary_phone":"9147669710"}
[2026-04-08 14:36:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9147669710"}
[2026-04-08 14:36:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9147669710","contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:36:35"}
[2026-04-08 14:36:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","existing_deal_found":true,"existing_contact_id":"12229","existing_title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:36:35"}
[2026-04-08 14:36:35] [INFO] DealController.save validated payments {"deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 14:36:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12229","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 14:36:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4d9c05036c6.57138482","contact_didar_id":"12229","title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9147669710","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حیدری","existing_deal":"YES","existing_deal_id":"local_69d4d9c05036c6.57138482","existing_deal_status":"Pending","server_time":"2026-04-08 14:36:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 14:36:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:36:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4d9c05036c6.57138482","contact_id":"12229","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9147669710 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 14:36:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 14:36:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:36:51] [INFO] Checking activity reminders 
[2026-04-08 14:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:37:21] [INFO] Checking activity reminders 
[2026-04-08 14:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:37:45] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:45] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"check_reminders"}
[2026-04-08 14:37:45] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:45] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:45] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_products"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_leads"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:46] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:47] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:47] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:48] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:49] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:49] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:50] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:50] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:51] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:51] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:51] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_leads"}
[2026-04-08 14:37:51] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:51] [INFO] Checking activity reminders 
[2026-04-08 14:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:37:51] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_products"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"get_leads"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:53] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:58] [WARNING] Auth check failed - not authenticated {"session_id":"r98m2ub14oumakeuadcrqqiltk","session_keys":[],"action":"log_client_event"}
[2026-04-08 14:37:58] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-08 14:37:58] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 14:38:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:38:21] [INFO] Checking activity reminders 
[2026-04-08 14:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:38:26] [INFO] Activity save request {"post_data":{"contact_id":"12229","deal_id":"local_69d4d9c05036c6.57138482","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"اصلا کاسبی برای عید نداشته \r\nطلای فیزیکی خرید و نمیخواد بفروشه \r\nجنس انبار نگه داشته \r\nوصولی برای چک نداشته \r\nنقدینگی برای کانال نداره \r\nاز استاد و سیگنال ها 404 خیلی استفاده داشته \/ دوست داره عضو کانال باشه \r\nمرز جلفا بود \/ در صورت پاس شدن چک ها میاد تو کانال ","activity_duration":"12","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:38:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12229","note_was_empty":true}
[2026-04-08 14:38:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"12229","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:26] [INFO] Updating virtual stage {"contact_id":"12229","stage_name":"deal_registered","force":false}
[2026-04-08 14:38:26] [INFO] Virtual stage successfully saved {"contact_id":"12229","stage_name":"deal_registered"}
[2026-04-08 14:38:26] [INFO] Virtual stage updated after activity save {"contact_id":"12229"}
[2026-04-08 14:38:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4d9c05036c6.57138482","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:38:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6372a60feb9.01757114","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6372a60feb9.01757114"}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:26] [INFO] Updating virtual stage {"contact_id":"12229","stage_name":"deal_registered","force":false}
[2026-04-08 14:38:26] [INFO] Virtual stage successfully saved {"contact_id":"12229","stage_name":"deal_registered"}
[2026-04-08 14:38:26] [INFO] Virtual stage updated after activity save {"contact_id":"12229"}
[2026-04-08 14:38:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12229","person_id":"17260"}
[2026-04-08 14:38:28] [INFO] Checking activity reminders 
[2026-04-08 14:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:38:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:38:49] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 14:38:51] [INFO] Checking activity reminders 
[2026-04-08 14:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:39:06] [INFO] Activity save request {"post_data":{"contact_id":"7992","deal_id":"local_69d4dbda85c419.62616226","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:39:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7992","note_was_empty":true}
[2026-04-08 14:39:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"7992","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:06] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-08 14:39:06] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-08 14:39:06] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-08 14:39:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dbda85c419.62616226","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:39:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d637522e9c31.04391537","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d637522e9c31.04391537"}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:06] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-08 14:39:06] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-08 14:39:06] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-08 14:39:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-08 14:39:16] [INFO] Checking activity reminders 
[2026-04-08 14:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:39:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:39:22] [INFO] Checking activity reminders 
[2026-04-08 14:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:39:49] [INFO] Checking activity reminders 
[2026-04-08 14:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:39:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b53a766e21c1.63962287","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 14:39:49","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 14:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:39:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"local_695cc3ba045d98.86248747","is_new_deal":false}
[2026-04-08 14:39:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 14:39:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 14:39:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 14:39:49] [INFO] getContactPrimaryPhone called {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-04-08 14:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:39:49] [INFO] getContactPrimaryPhone result {"contact_id":"local_695cc3ba045d98.86248747","person_found":true,"primary_phone":"9308512004"}
[2026-04-08 14:39:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9308512004"}
[2026-04-08 14:39:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9308512004","contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b53a766e21c1.63962287","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:39:49"}
[2026-04-08 14:39:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","existing_deal_found":true,"existing_contact_id":"local_695cc3ba045d98.86248747","existing_title":"معامله دوم 9308512004 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 14:39:49"}
[2026-04-08 14:39:49] [INFO] DealController.save validated payments {"deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 14:39:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_695cc3ba045d98.86248747","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 14:39:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53a766e21c1.63962287","contact_didar_id":"local_695cc3ba045d98.86248747","title":"معامله دوم 9308512004 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9308512004","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی محمدی","existing_deal":"YES","existing_deal_id":"local_69b53a766e21c1.63962287","existing_deal_status":"Pending","server_time":"2026-04-08 14:39:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 14:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:39:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53a766e21c1.63962287","contact_id":"local_695cc3ba045d98.86248747","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9308512004 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 14:39:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 14:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:39:52] [INFO] Checking activity reminders 
[2026-04-08 14:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:40:19] [INFO] Checking activity reminders 
[2026-04-08 14:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:40:22] [INFO] Checking activity reminders 
[2026-04-08 14:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:40:49] [INFO] Checking activity reminders 
[2026-04-08 14:40:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:40:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:40:53] [INFO] Checking activity reminders 
[2026-04-08 14:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:41:19] [INFO] Checking activity reminders 
[2026-04-08 14:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:41:23] [INFO] Checking activity reminders 
[2026-04-08 14:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:41:36] [INFO] Activity save request {"post_data":{"contact_id":"local_695cc3ba045d98.86248747","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال فعلا حقوق نگرفته \/ دوست داره تو کانال باشه \r\nبهش گفتم 6 ماهه  نقد \r\nگفتم قرض کن سرماه پرداخت کن \r\nاطلاع میده ","activity_duration":"7","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:41:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:41:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:41:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_695cc3ba045d98.86248747","note_was_empty":true}
[2026-04-08 14:41:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d637e8086453.28856032","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:41:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d637e8086453.28856032"}
[2026-04-08 14:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:41:36] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-04-08 14:41:36] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-04-08 14:41:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-04-08 14:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-08 14:41:49] [INFO] Checking activity reminders 
[2026-04-08 14:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:41:53] [INFO] Checking activity reminders 
[2026-04-08 14:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:42:19] [INFO] Checking activity reminders 
[2026-04-08 14:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:23] [INFO] Checking activity reminders 
[2026-04-08 14:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:42:33] [INFO] Activity save request {"post_data":{"contact_id":"21469","deal_id":"local_69d4da29ead6e8.92741993","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:42:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21469","note_was_empty":true}
[2026-04-08 14:42:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"21469","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:33] [INFO] Updating virtual stage {"contact_id":"21469","stage_name":"deal_registered","force":false}
[2026-04-08 14:42:33] [INFO] Virtual stage successfully saved {"contact_id":"21469","stage_name":"deal_registered"}
[2026-04-08 14:42:33] [INFO] Virtual stage updated after activity save {"contact_id":"21469"}
[2026-04-08 14:42:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da29ead6e8.92741993","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:42:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d63821c3c566.64302474","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d63821c3c566.64302474"}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:33] [INFO] Updating virtual stage {"contact_id":"21469","stage_name":"deal_registered","force":false}
[2026-04-08 14:42:33] [INFO] Virtual stage successfully saved {"contact_id":"21469","stage_name":"deal_registered"}
[2026-04-08 14:42:33] [INFO] Virtual stage updated after activity save {"contact_id":"21469"}
[2026-04-08 14:42:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21469","person_id":"17107"}
[2026-04-08 14:42:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:42:51] [INFO] Checking activity reminders 
[2026-04-08 14:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:42:54] [INFO] Checking activity reminders 
[2026-04-08 14:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:43:01] [INFO] Activity save request {"post_data":{"contact_id":"8791","deal_id":"local_699db57e657fe7.46325705","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:43:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8791","note_was_empty":true}
[2026-04-08 14:43:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"8791","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:01] [INFO] Updating virtual stage {"contact_id":"8791","stage_name":"deal_registered","force":false}
[2026-04-08 14:43:01] [INFO] Virtual stage successfully saved {"contact_id":"8791","stage_name":"deal_registered"}
[2026-04-08 14:43:01] [INFO] Virtual stage updated after activity save {"contact_id":"8791"}
[2026-04-08 14:43:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699db57e657fe7.46325705","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 14:43:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6383dea8db1.73752869","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6383dea8db1.73752869"}
[2026-04-08 14:43:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:01] [INFO] Updating virtual stage {"contact_id":"8791","stage_name":"deal_registered","force":false}
[2026-04-08 14:43:01] [INFO] Virtual stage successfully saved {"contact_id":"8791","stage_name":"deal_registered"}
[2026-04-08 14:43:01] [INFO] Virtual stage updated after activity save {"contact_id":"8791"}
[2026-04-08 14:43:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8791","person_id":"16863"}
[2026-04-08 14:43:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 14:43:22] [INFO] Checking activity reminders 
[2026-04-08 14:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:43:24] [INFO] Checking activity reminders 
[2026-04-08 14:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:43:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:43:52] [INFO] Checking activity reminders 
[2026-04-08 14:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:43:58] [INFO] Checking activity reminders 
[2026-04-08 14:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:44:22] [INFO] Checking activity reminders 
[2026-04-08 14:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:44:29] [INFO] Checking activity reminders 
[2026-04-08 14:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:44:40] [INFO] Checking activity reminders 
[2026-04-08 14:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:44:52] [INFO] Checking activity reminders 
[2026-04-08 14:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:44:59] [INFO] Checking activity reminders 
[2026-04-08 14:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:45:04] [INFO] Activity save request {"post_data":{"contact_id":"12452","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال 404 بود \/ پشتیبانی ماشین میخواست بخره قبل سال \/ تماس امروز هدف تمدید کانال عدم پاسخ ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:45:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:45:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:45:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:45:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:45:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"12452","note_was_empty":true}
[2026-04-08 14:45:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"12452","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 14:45:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d638b8f1d433.10413174","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:45:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:45:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d638b8f1d433.10413174"}
[2026-04-08 14:45:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:45:04] [INFO] Updating virtual stage {"contact_id":"12452","stage_name":"deal_registered","force":false}
[2026-04-08 14:45:04] [INFO] Virtual stage successfully saved {"contact_id":"12452","stage_name":"deal_registered"}
[2026-04-08 14:45:04] [INFO] Virtual stage updated after activity save {"contact_id":"12452"}
[2026-04-08 14:45:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12452","person_id":"20092"}
[2026-04-08 14:45:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:45:22] [INFO] Checking activity reminders 
[2026-04-08 14:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:45:31] [INFO] Checking activity reminders 
[2026-04-08 14:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:45:41] [INFO] Checking activity reminders 
[2026-04-08 14:45:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:45:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:45:52] [INFO] Checking activity reminders 
[2026-04-08 14:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:46:11] [INFO] Checking activity reminders 
[2026-04-08 14:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:46:22] [INFO] Checking activity reminders 
[2026-04-08 14:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:46:43] [INFO] Checking activity reminders 
[2026-04-08 14:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:46:52] [INFO] Checking activity reminders 
[2026-04-08 14:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:13] [INFO] Checking activity reminders 
[2026-04-08 14:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:22] [INFO] Checking activity reminders 
[2026-04-08 14:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:24] [INFO] Checking activity reminders 
[2026-04-08 14:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:52] [INFO] Checking activity reminders 
[2026-04-08 14:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:57] [INFO] Checking activity reminders 
[2026-04-08 14:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:47:59] [INFO] Activity save request {"post_data":{"contact_id":"15133","deal_id":"local_69d6234fbebd49.60488905","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نیم ساعت دیگه تماس","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:47:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:47:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:47:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15133","note_was_empty":true}
[2026-04-08 14:47:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"15133","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:47:59] [INFO] Updating virtual stage {"contact_id":"15133","stage_name":"deal_registered","force":false}
[2026-04-08 14:47:59] [INFO] Virtual stage successfully saved {"contact_id":"15133","stage_name":"deal_registered"}
[2026-04-08 14:47:59] [INFO] Virtual stage updated after activity save {"contact_id":"15133"}
[2026-04-08 14:47:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6234fbebd49.60488905","stage":"تماس پیگیری","status_change":null}
[2026-04-08 14:47:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d63967c30fd6.21698179","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:47:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69d63967c30fd6.21698179"}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:47:59] [INFO] Updating virtual stage {"contact_id":"15133","stage_name":"deal_registered","force":false}
[2026-04-08 14:47:59] [INFO] Virtual stage successfully saved {"contact_id":"15133","stage_name":"deal_registered"}
[2026-04-08 14:47:59] [INFO] Virtual stage updated after activity save {"contact_id":"15133"}
[2026-04-08 14:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15133","person_id":"802"}
[2026-04-08 14:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:48:22] [INFO] Checking activity reminders 
[2026-04-08 14:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:48:27] [INFO] Checking activity reminders 
[2026-04-08 14:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:48:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:48:53] [INFO] Checking activity reminders 
[2026-04-08 14:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:48:58] [INFO] Checking activity reminders 
[2026-04-08 14:48:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:48:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:49:09] [INFO] Activity save request {"post_data":{"contact_id":"21241","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دسترسی به دوره از سایت \r\nارجاع به بردبار","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:49:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:49:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:49:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21241","note_was_empty":true}
[2026-04-08 14:49:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"21241","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 14:49:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d639adc84d93.20908599","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:49:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69d639adc84d93.20908599"}
[2026-04-08 14:49:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:49:09] [INFO] Updating virtual stage {"contact_id":"21241","stage_name":"deal_registered","force":false}
[2026-04-08 14:49:09] [INFO] Virtual stage successfully saved {"contact_id":"21241","stage_name":"deal_registered"}
[2026-04-08 14:49:09] [INFO] Virtual stage updated after activity save {"contact_id":"21241"}
[2026-04-08 14:49:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21241","person_id":"5727"}
[2026-04-08 14:49:23] [INFO] Checking activity reminders 
[2026-04-08 14:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:49:53] [INFO] Checking activity reminders 
[2026-04-08 14:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:50:23] [INFO] Checking activity reminders 
[2026-04-08 14:50:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:50:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:50:39] [INFO] Activity save request {"post_data":{"contact_id":"15853","deal_id":"local_69d4bbfe378cf5.58553468","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:50:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15853","note_was_empty":true}
[2026-04-08 14:50:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"15853","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:39] [INFO] Updating virtual stage {"contact_id":"15853","stage_name":"deal_registered","force":false}
[2026-04-08 14:50:39] [INFO] Virtual stage successfully saved {"contact_id":"15853","stage_name":"deal_registered"}
[2026-04-08 14:50:39] [INFO] Virtual stage updated after activity save {"contact_id":"15853"}
[2026-04-08 14:50:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bbfe378cf5.58553468","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 14:50:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d63a07c8d993.76023575","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d63a07c8d993.76023575"}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:39] [INFO] Updating virtual stage {"contact_id":"15853","stage_name":"deal_registered","force":false}
[2026-04-08 14:50:39] [INFO] Virtual stage successfully saved {"contact_id":"15853","stage_name":"deal_registered"}
[2026-04-08 14:50:39] [INFO] Virtual stage updated after activity save {"contact_id":"15853"}
[2026-04-08 14:50:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15853","person_id":"4366"}
[2026-04-08 14:50:53] [INFO] Checking activity reminders 
[2026-04-08 14:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:51:23] [INFO] Checking activity reminders 
[2026-04-08 14:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:51:53] [INFO] Checking activity reminders 
[2026-04-08 14:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:52:23] [INFO] Checking activity reminders 
[2026-04-08 14:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:52:53] [INFO] Checking activity reminders 
[2026-04-08 14:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:53:24] [INFO] Checking activity reminders 
[2026-04-08 14:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:53:54] [INFO] Checking activity reminders 
[2026-04-08 14:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:55:30] [INFO] Checking activity reminders 
[2026-04-08 14:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:56:00] [INFO] Checking activity reminders 
[2026-04-08 14:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:56:11] [INFO] Activity save request {"post_data":{"contact_id":"local_699c947020ec48.45521689","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشتیبانی هوش کارشناسی هست سایت براش باز نمیهش بتونم لینک کانال ارسال کنم","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:56:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699c947020ec48.45521689","note_was_empty":true}
[2026-04-08 14:56:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d63b532553a5.25750098","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d63b532553a5.25750098"}
[2026-04-08 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:11] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-04-08 14:56:11] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-04-08 14:56:11] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-04-08 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:30] [INFO] Checking activity reminders 
[2026-04-08 14:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:56:33] [INFO] Checking activity reminders 
[2026-04-08 14:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:56:34] [INFO] Activity save request {"post_data":{"contact_id":"local_699c947020ec48.45521689","deal_id":"local_69b6b40f925515.29274086","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشتیبانی هوش کارشناسی هست سایت براش باز نمیهش بتونم لینک کانال ارسال کنم","activity_duration":"10","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"پشتیبانی","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 14:56:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_699c947020ec48.45521689","note_was_empty":true}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:34] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-04-08 14:56:34] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-04-08 14:56:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-04-08 14:56:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6b40f925515.29274086","stage":"پشتیبانی","status_change":null}
[2026-04-08 14:56:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d63b6a0a2895.83671036","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69d63b6a0a2895.83671036"}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:56:34] [INFO] Updating virtual stage {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered","force":false}
[2026-04-08 14:56:34] [INFO] Virtual stage successfully saved {"contact_id":"local_699c947020ec48.45521689","stage_name":"deal_registered"}
[2026-04-08 14:56:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_699c947020ec48.45521689"}
[2026-04-08 14:56:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-08 14:57:00] [INFO] Checking activity reminders 
[2026-04-08 14:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:57:04] [INFO] Checking activity reminders 
[2026-04-08 14:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:57:34] [INFO] Checking activity reminders 
[2026-04-08 14:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:57:36] [INFO] Checking activity reminders 
[2026-04-08 14:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 14:57:46] [INFO] Checking activity reminders 
[2026-04-08 14:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:57:52] [INFO] Checking activity reminders 
[2026-04-08 14:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:58:06] [INFO] Checking activity reminders 
[2026-04-08 14:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:58:23] [INFO] Checking activity reminders 
[2026-04-08 14:58:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:58:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:58:36] [INFO] Checking activity reminders 
[2026-04-08 14:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:58:36] [INFO] Checking activity reminders 
[2026-04-08 14:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:59:06] [INFO] Checking activity reminders 
[2026-04-08 14:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:59:06] [INFO] Checking activity reminders 
[2026-04-08 14:59:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:59:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:59:36] [INFO] Checking activity reminders 
[2026-04-08 14:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 14:59:36] [INFO] Checking activity reminders 
[2026-04-08 14:59:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 14:59:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:00:06] [INFO] Checking activity reminders 
[2026-04-08 15:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:00:06] [INFO] Checking activity reminders 
[2026-04-08 15:00:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:00:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:00:37] [INFO] Checking activity reminders 
[2026-04-08 15:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:00:40] [INFO] Checking activity reminders 
[2026-04-08 15:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:01:07] [INFO] Checking activity reminders 
[2026-04-08 15:01:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:01:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:01:10] [INFO] Checking activity reminders 
[2026-04-08 15:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:01:37] [INFO] Checking activity reminders 
[2026-04-08 15:01:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:01:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:01:40] [INFO] Checking activity reminders 
[2026-04-08 15:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:07] [INFO] Checking activity reminders 
[2026-04-08 15:02:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:15] [INFO] Checking activity reminders 
[2026-04-08 15:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:15] [INFO] Checking activity reminders 
[2026-04-08 15:02:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:25] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:02:25] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 15:02:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:02:37] [INFO] Checking activity reminders 
[2026-04-08 15:02:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:38] [INFO] Checking activity reminders 
[2026-04-08 15:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:46] [INFO] Checking activity reminders 
[2026-04-08 15:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:02:50] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:02:50] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 15:02:50] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 15:02:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:02:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 15:02:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 15:02:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 15:03:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 15:03:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 15:03:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 15:03:07] [INFO] Checking activity reminders 
[2026-04-08 15:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:03:16] [INFO] Checking activity reminders 
[2026-04-08 15:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:03:37] [INFO] Checking activity reminders 
[2026-04-08 15:03:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:03:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:03:47] [INFO] Checking activity reminders 
[2026-04-08 15:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:04:07] [INFO] Checking activity reminders 
[2026-04-08 15:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:04:17] [INFO] Checking activity reminders 
[2026-04-08 15:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:04:37] [INFO] Checking activity reminders 
[2026-04-08 15:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:04:48] [INFO] Checking activity reminders 
[2026-04-08 15:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:05:07] [INFO] Checking activity reminders 
[2026-04-08 15:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:05:18] [INFO] Checking activity reminders 
[2026-04-08 15:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:05:37] [INFO] Checking activity reminders 
[2026-04-08 15:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:05:48] [INFO] Checking activity reminders 
[2026-04-08 15:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:06:07] [INFO] Checking activity reminders 
[2026-04-08 15:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:06:19] [INFO] Checking activity reminders 
[2026-04-08 15:06:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:06:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:06:38] [INFO] Checking activity reminders 
[2026-04-08 15:06:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:06:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:06:49] [INFO] Checking activity reminders 
[2026-04-08 15:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:07:08] [INFO] Checking activity reminders 
[2026-04-08 15:07:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:07:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:07:19] [INFO] Checking activity reminders 
[2026-04-08 15:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:07:38] [INFO] Checking activity reminders 
[2026-04-08 15:07:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:07:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:07:49] [INFO] Checking activity reminders 
[2026-04-08 15:07:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:07:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:08:08] [INFO] Checking activity reminders 
[2026-04-08 15:08:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:08:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:08:19] [INFO] Checking activity reminders 
[2026-04-08 15:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:08:38] [INFO] Checking activity reminders 
[2026-04-08 15:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:08:49] [INFO] Checking activity reminders 
[2026-04-08 15:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:09:08] [INFO] Checking activity reminders 
[2026-04-08 15:09:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:09:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:09:19] [INFO] Checking activity reminders 
[2026-04-08 15:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:09:38] [INFO] Checking activity reminders 
[2026-04-08 15:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:09:51] [INFO] Checking activity reminders 
[2026-04-08 15:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:10:08] [INFO] Checking activity reminders 
[2026-04-08 15:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:10:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:10:14","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 15:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:10:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20476","is_new_deal":false}
[2026-04-08 15:10:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 15:10:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:10:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:10:14] [INFO] getContactPrimaryPhone called {"contact_id":"20476"}
[2026-04-08 15:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:10:14] [INFO] getContactPrimaryPhone result {"contact_id":"20476","person_found":true,"primary_phone":"9197915427"}
[2026-04-08 15:10:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197915427"}
[2026-04-08 15:10:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197915427","contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 15:10:14"}
[2026-04-08 15:10:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","existing_deal_found":true,"existing_contact_id":"20476","existing_title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 15:10:14"}
[2026-04-08 15:10:14] [INFO] DealController.save validated payments {"deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 15:10:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20476","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:10:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623fe842fc4.39325062","contact_didar_id":"20476","title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9197915427","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد شهرزاد","existing_deal":"YES","existing_deal_id":"local_69d623fe842fc4.39325062","existing_deal_status":"Pending","server_time":"2026-04-08 15:10:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 15:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:10:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 15:10:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:10:21] [INFO] Checking activity reminders 
[2026-04-08 15:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:10:38] [INFO] Checking activity reminders 
[2026-04-08 15:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:10:49] [INFO] Checking activity reminders 
[2026-04-08 15:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:10:51] [INFO] Checking activity reminders 
[2026-04-08 15:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:11:09] [INFO] Checking activity reminders 
[2026-04-08 15:11:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:11:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:11:16] [INFO] Checking activity reminders 
[2026-04-08 15:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:11:21] [INFO] Checking activity reminders 
[2026-04-08 15:11:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:11:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:11:39] [INFO] Checking activity reminders 
[2026-04-08 15:11:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:11:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:11:52] [INFO] Checking activity reminders 
[2026-04-08 15:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:12:09] [INFO] Checking activity reminders 
[2026-04-08 15:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:12:16] [INFO] Checking activity reminders 
[2026-04-08 15:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:12:24] [INFO] Checking activity reminders 
[2026-04-08 15:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:12:39] [INFO] Checking activity reminders 
[2026-04-08 15:12:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:12:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:12:55] [INFO] Checking activity reminders 
[2026-04-08 15:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:09] [INFO] Checking activity reminders 
[2026-04-08 15:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:25] [INFO] Checking activity reminders 
[2026-04-08 15:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:39] [INFO] Checking activity reminders 
[2026-04-08 15:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:55] [INFO] Checking activity reminders 
[2026-04-08 15:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:56] [INFO] Checking activity reminders 
[2026-04-08 15:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:13:59] [INFO] Checking activity reminders 
[2026-04-08 15:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:09] [INFO] Checking activity reminders 
[2026-04-08 15:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:25] [INFO] Checking activity reminders 
[2026-04-08 15:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:28] [INFO] Checking activity reminders 
[2026-04-08 15:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:14:39] [INFO] Checking activity reminders 
[2026-04-08 15:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:55] [INFO] Checking activity reminders 
[2026-04-08 15:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:14:58] [INFO] Checking activity reminders 
[2026-04-08 15:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:15:00] [INFO] Lead update received {"contact_id":"12467","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:15:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"12467"}
[2026-04-08 15:15:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:15:09] [INFO] Checking activity reminders 
[2026-04-08 15:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:15:19] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:15:20] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 15:15:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:15:25] [INFO] Checking activity reminders 
[2026-04-08 15:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:15:39] [INFO] Checking activity reminders 
[2026-04-08 15:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:15:50] [INFO] Checking activity reminders 
[2026-04-08 15:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:15:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:16:09] [INFO] Checking activity reminders 
[2026-04-08 15:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:16:20] [INFO] Checking activity reminders 
[2026-04-08 15:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:16:20] [INFO] Checking activity reminders 
[2026-04-08 15:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:16:50] [INFO] Checking activity reminders 
[2026-04-08 15:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:16:50] [INFO] Checking activity reminders 
[2026-04-08 15:16:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:16:58] [INFO] Checking activity reminders 
[2026-04-08 15:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:21] [INFO] Checking activity reminders 
[2026-04-08 15:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:21] [INFO] Checking activity reminders 
[2026-04-08 15:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:28] [INFO] Checking activity reminders 
[2026-04-08 15:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:51] [INFO] Checking activity reminders 
[2026-04-08 15:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:51] [INFO] Checking activity reminders 
[2026-04-08 15:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:17:58] [INFO] Checking activity reminders 
[2026-04-08 15:17:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:17:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:18:21] [INFO] Checking activity reminders 
[2026-04-08 15:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:18:21] [INFO] Checking activity reminders 
[2026-04-08 15:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:18:28] [INFO] Checking activity reminders 
[2026-04-08 15:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:18:51] [INFO] Checking activity reminders 
[2026-04-08 15:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:18:51] [INFO] Checking activity reminders 
[2026-04-08 15:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:00] [INFO] Checking activity reminders 
[2026-04-08 15:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:21] [INFO] Checking activity reminders 
[2026-04-08 15:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:21] [INFO] Checking activity reminders 
[2026-04-08 15:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:30] [INFO] Checking activity reminders 
[2026-04-08 15:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:51] [INFO] Checking activity reminders 
[2026-04-08 15:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:19:51] [INFO] Checking activity reminders 
[2026-04-08 15:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:04] [INFO] Checking activity reminders 
[2026-04-08 15:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:21] [INFO] Checking activity reminders 
[2026-04-08 15:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:21] [INFO] Checking activity reminders 
[2026-04-08 15:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:36] [INFO] Checking activity reminders 
[2026-04-08 15:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:51] [INFO] Checking activity reminders 
[2026-04-08 15:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:20:51] [INFO] Checking activity reminders 
[2026-04-08 15:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:21:21","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:21:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","is_new_deal":false}
[2026-04-08 15:21:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:21:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:21:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:21:21] [INFO] getContactPrimaryPhone called {"contact_id":"12467"}
[2026-04-08 15:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:21:21] [INFO] getContactPrimaryPhone result {"contact_id":"12467","person_found":true,"primary_phone":"9123058510"}
[2026-04-08 15:21:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123058510"}
[2026-04-08 15:21:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123058510","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:21:21"}
[2026-04-08 15:21:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","existing_deal_found":true,"existing_contact_id":"12467","existing_title":"معامله دوم 9123058510 | کانال VIP با پشتیبانی شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:21:21"}
[2026-04-08 15:21:21] [INFO] DealController.save validated payments {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 15:21:21] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12467","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:21:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cccd09f38858.40869710","contact_didar_id":"12467","title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9123058510","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای مرعشی","existing_deal":"YES","existing_deal_id":"local_69cccd09f38858.40869710","existing_deal_status":"Pending","server_time":"2026-04-08 15:21:21","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:21:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 15:21:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:21:21] [INFO] Checking activity reminders 
[2026-04-08 15:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:21:22] [INFO] Checking activity reminders 
[2026-04-08 15:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:30] [INFO] Checking activity reminders 
[2026-04-08 15:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:33] [INFO] Checking activity reminders 
[2026-04-08 15:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:51] [INFO] Checking activity reminders 
[2026-04-08 15:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:21:53] [INFO] Checking activity reminders 
[2026-04-08 15:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:04] [INFO] Checking activity reminders 
[2026-04-08 15:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:22:21] [INFO] Checking activity reminders 
[2026-04-08 15:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:23] [INFO] Checking activity reminders 
[2026-04-08 15:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:25] [INFO] Activity save request {"post_data":{"contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خانه خریده \/ سرمایه اش خیلی کم شده \r\n500 میلون چک داده \r\nپرزنت 6 ماهه و یکساله \r\nچک و نقد \r\nاطلاع میده ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 15:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 15:22:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 15:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20476","note_was_empty":true}
[2026-04-08 15:22:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"20476","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 15:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:25] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-08 15:22:25] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-08 15:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-08 15:22:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d623fe842fc4.39325062","stage":"تماس پیگیری","status_change":null}
[2026-04-08 15:22:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d64179e8f6d9.69671822","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 15:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69d64179e8f6d9.69671822"}
[2026-04-08 15:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:25] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-08 15:22:25] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-08 15:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-08 15:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 15:22:34] [INFO] Checking activity reminders 
[2026-04-08 15:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:22:51] [INFO] Checking activity reminders 
[2026-04-08 15:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:22:58] [INFO] Checking activity reminders 
[2026-04-08 15:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:07] [INFO] Checking activity reminders 
[2026-04-08 15:23:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:17] [INFO] Checking activity reminders 
[2026-04-08 15:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:21] [INFO] Checking activity reminders 
[2026-04-08 15:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:37] [INFO] Checking activity reminders 
[2026-04-08 15:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:39] [INFO] Checking activity reminders 
[2026-04-08 15:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:44] [INFO] Checking activity reminders 
[2026-04-08 15:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:51] [INFO] Checking activity reminders 
[2026-04-08 15:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:52] [INFO] Checking activity reminders 
[2026-04-08 15:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:23:58] [INFO] Checking activity reminders 
[2026-04-08 15:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:04] [INFO] Checking activity reminders 
[2026-04-08 15:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6796","deal_id":"local_69d6239163a1d8.62657493","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:24:05","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:24:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6796","is_new_deal":false}
[2026-04-08 15:24:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 15:24:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:24:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:24:05] [INFO] getContactPrimaryPhone called {"contact_id":"6796"}
[2026-04-08 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:24:05] [INFO] getContactPrimaryPhone result {"contact_id":"6796","person_found":true,"primary_phone":"9197705480"}
[2026-04-08 15:24:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197705480"}
[2026-04-08 15:24:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197705480","contact_id":"6796","deal_id":"local_69d6239163a1d8.62657493","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 15:24:05"}
[2026-04-08 15:24:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6239163a1d8.62657493","contact_id":"6796","existing_deal_found":true,"existing_contact_id":"6796","existing_title":"معامله سوم 9197705480 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 15:24:05"}
[2026-04-08 15:24:05] [INFO] DealController.save validated payments {"deal_id":"local_69d6239163a1d8.62657493","contact_id":"6796","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 15:24:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"6796","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:24:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6239163a1d8.62657493","contact_didar_id":"6796","title":"معامله سوم 9197705480 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9197705480","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صفایی","existing_deal":"YES","existing_deal_id":"local_69d6239163a1d8.62657493","existing_deal_status":"Pending","server_time":"2026-04-08 15:24:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 15:24:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:24:06] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6239163a1d8.62657493","contact_id":"6796","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9197705480 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 15:24:06","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:24:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:24:09] [INFO] Checking activity reminders 
[2026-04-08 15:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:22] [INFO] Checking activity reminders 
[2026-04-08 15:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:24:22","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:24:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","is_new_deal":false}
[2026-04-08 15:24:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:24:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:24:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:24:22] [INFO] getContactPrimaryPhone called {"contact_id":"12467"}
[2026-04-08 15:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:24:22] [INFO] getContactPrimaryPhone result {"contact_id":"12467","person_found":true,"primary_phone":"9123058510"}
[2026-04-08 15:24:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123058510"}
[2026-04-08 15:24:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123058510","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:24:22"}
[2026-04-08 15:24:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","existing_deal_found":true,"existing_contact_id":"12467","existing_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:24:22"}
[2026-04-08 15:24:22] [INFO] DealController.save validated payments {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 15:24:22] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12467","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:24:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cccd09f38858.40869710","contact_didar_id":"12467","title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9123058510","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":13500000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای مرعشی","existing_deal":"YES","existing_deal_id":"local_69cccd09f38858.40869710","existing_deal_status":"Pending","server_time":"2026-04-08 15:24:22","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:24:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":13500000,"server_time":"2026-04-08 15:24:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:24:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:24:34] [INFO] Checking activity reminders 
[2026-04-08 15:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:39] [INFO] Checking activity reminders 
[2026-04-08 15:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:24:52] [INFO] Checking activity reminders 
[2026-04-08 15:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:04] [INFO] Checking activity reminders 
[2026-04-08 15:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:10] [INFO] Checking activity reminders 
[2026-04-08 15:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:10] [INFO] Activity save request {"post_data":{"contact_id":"6796","deal_id":"local_69d6239163a1d8.62657493","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 15:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 15:25:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 15:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6796","note_was_empty":true}
[2026-04-08 15:25:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"6796","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 15:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:10] [INFO] Updating virtual stage {"contact_id":"6796","stage_name":"deal_registered","force":false}
[2026-04-08 15:25:10] [INFO] Virtual stage successfully saved {"contact_id":"6796","stage_name":"deal_registered"}
[2026-04-08 15:25:10] [INFO] Virtual stage updated after activity save {"contact_id":"6796"}
[2026-04-08 15:25:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6239163a1d8.62657493","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 15:25:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6421ec846e2.59827310","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 15:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6421ec846e2.59827310"}
[2026-04-08 15:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:10] [INFO] Updating virtual stage {"contact_id":"6796","stage_name":"deal_registered","force":false}
[2026-04-08 15:25:10] [INFO] Virtual stage successfully saved {"contact_id":"6796","stage_name":"deal_registered"}
[2026-04-08 15:25:10] [INFO] Virtual stage updated after activity save {"contact_id":"6796"}
[2026-04-08 15:25:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6796","person_id":"244"}
[2026-04-08 15:25:22] [INFO] Checking activity reminders 
[2026-04-08 15:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:34] [INFO] Checking activity reminders 
[2026-04-08 15:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:41] [INFO] Checking activity reminders 
[2026-04-08 15:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:25:52] [INFO] Checking activity reminders 
[2026-04-08 15:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:04] [INFO] Checking activity reminders 
[2026-04-08 15:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 15:26:11] [INFO] Checking activity reminders 
[2026-04-08 15:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:22] [INFO] Checking activity reminders 
[2026-04-08 15:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:31] [INFO] Checking activity reminders 
[2026-04-08 15:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:41] [INFO] Checking activity reminders 
[2026-04-08 15:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:43] [INFO] Checking activity reminders 
[2026-04-08 15:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:52] [INFO] Checking activity reminders 
[2026-04-08 15:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:26:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:26:58","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:26:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:26:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","is_new_deal":false}
[2026-04-08 15:26:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:26:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:26:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:26:58] [INFO] getContactPrimaryPhone called {"contact_id":"12467"}
[2026-04-08 15:26:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:26:58] [INFO] getContactPrimaryPhone result {"contact_id":"12467","person_found":true,"primary_phone":"9123058510"}
[2026-04-08 15:26:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123058510"}
[2026-04-08 15:26:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123058510","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:26:58"}
[2026-04-08 15:26:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","existing_deal_found":true,"existing_contact_id":"12467","existing_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:26:58"}
[2026-04-08 15:26:58] [INFO] DealController.save validated payments {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 15:26:58] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12467","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:26:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cccd09f38858.40869710","contact_didar_id":"12467","title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9123058510","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای مرعشی","existing_deal":"YES","existing_deal_id":"local_69cccd09f38858.40869710","existing_deal_status":"Pending","server_time":"2026-04-08 15:26:58","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:26:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:26:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-08 15:26:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:26:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:27:11] [INFO] Checking activity reminders 
[2026-04-08 15:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:27:13] [INFO] Checking activity reminders 
[2026-04-08 15:27:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:27:22] [INFO] Checking activity reminders 
[2026-04-08 15:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:27:42] [INFO] Checking activity reminders 
[2026-04-08 15:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:27:43] [INFO] Checking activity reminders 
[2026-04-08 15:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:27:52] [INFO] Checking activity reminders 
[2026-04-08 15:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:12] [INFO] Checking activity reminders 
[2026-04-08 15:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:13] [INFO] Checking activity reminders 
[2026-04-08 15:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:22] [INFO] Checking activity reminders 
[2026-04-08 15:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:28:29","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12467","is_new_deal":false}
[2026-04-08 15:28:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:28:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:28:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 15:28:29] [INFO] getContactPrimaryPhone called {"contact_id":"12467"}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:29] [INFO] getContactPrimaryPhone result {"contact_id":"12467","person_found":true,"primary_phone":"9123058510"}
[2026-04-08 15:28:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123058510"}
[2026-04-08 15:28:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123058510","contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:28:29"}
[2026-04-08 15:28:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","existing_deal_found":true,"existing_contact_id":"12467","existing_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:28:29"}
[2026-04-08 15:28:29] [INFO] DealController.save validated payments {"deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-08 15:28:29] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12467","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:28:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69cccd09f38858.40869710","contact_didar_id":"12467","title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9123058510","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای مرعشی","existing_deal":"YES","existing_deal_id":"local_69cccd09f38858.40869710","existing_deal_status":"Pending","server_time":"2026-04-08 15:28:29","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:29] [INFO] Deal success processed {"contact_id":"12467","person_name":"اقای مرعشی","products_count":1}
[2026-04-08 15:28:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69cccd09f38858.40869710","contact_id":"12467","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9123058510 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-08 15:28:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:29] [INFO] Updating virtual stage {"contact_id":"12467","stage_name":"with_purchase","force":true}
[2026-04-08 15:28:29] [INFO] Virtual stage successfully saved {"contact_id":"12467","stage_name":"with_purchase"}
[2026-04-08 15:28:29] [INFO] Moved contact out of kariz after successful deal {"contact_id":"12467","deal_id":"local_69cccd09f38858.40869710","target_stage":"with_purchase"}
[2026-04-08 15:28:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12467","person_id":"7016"}
[2026-04-08 15:28:42] [INFO] Checking activity reminders 
[2026-04-08 15:28:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:43] [INFO] Checking activity reminders 
[2026-04-08 15:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:28:52] [INFO] Checking activity reminders 
[2026-04-08 15:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:12] [INFO] Checking activity reminders 
[2026-04-08 15:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:22] [INFO] Checking activity reminders 
[2026-04-08 15:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:22] [INFO] Checking activity reminders 
[2026-04-08 15:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:28] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:29:28] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 15:29:28] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 15:29:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:29:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 15:29:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 15:29:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-08 15:29:43] [INFO] Checking activity reminders 
[2026-04-08 15:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:44] [INFO] Checking activity reminders 
[2026-04-08 15:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:29:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:29:52] [INFO] Checking activity reminders 
[2026-04-08 15:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:13] [INFO] Checking activity reminders 
[2026-04-08 15:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:15] [INFO] Checking activity reminders 
[2026-04-08 15:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:18] [INFO] Lead update received {"contact_id":"15063","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15063"}
[2026-04-08 15:30:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:23] [INFO] Checking activity reminders 
[2026-04-08 15:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:44] [INFO] Checking activity reminders 
[2026-04-08 15:30:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:45] [INFO] Checking activity reminders 
[2026-04-08 15:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:30:47] [INFO] generateDealTitle result {"contact_id":"15063","person_name":"اقای شهابی","mobile":"9155979503","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155979503"}
[2026-04-08 15:30:53] [INFO] Checking activity reminders 
[2026-04-08 15:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15063","deal_id":"","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:31:12","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:31:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15063","is_new_deal":true}
[2026-04-08 15:31:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 15:31:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:31:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 15:31:12] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:31:12] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 15:31:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 15:31:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 15:31:12"}
[2026-04-08 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:31:12] [INFO] generateDealTitle result {"contact_id":"15063","person_name":"اقای شهابی","mobile":"9155979503","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155979503"}
[2026-04-08 15:31:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15063","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 15:31:12] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 15:31:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 15:31:12","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:31:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 15:31:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9155979503 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 15:31:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:31:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:31:14] [INFO] Checking activity reminders 
[2026-04-08 15:31:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:23] [INFO] Checking activity reminders 
[2026-04-08 15:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:35] [INFO] Checking activity reminders 
[2026-04-08 15:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:44] [INFO] Checking activity reminders 
[2026-04-08 15:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:49] [INFO] Checking activity reminders 
[2026-04-08 15:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:53] [INFO] Checking activity reminders 
[2026-04-08 15:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:31:59] [INFO] Checking activity reminders 
[2026-04-08 15:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:15] [INFO] Checking activity reminders 
[2026-04-08 15:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:23] [INFO] Checking activity reminders 
[2026-04-08 15:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:29] [INFO] Checking activity reminders 
[2026-04-08 15:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:31] [DEBUG] findByPhone: Found person {"phones":["9125759224"],"found_id":"21402","found_didar_id":"local_695122e6c05af9.97801547","found_name":"تست تست"}
[2026-04-08 15:32:31] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9125759224","found_didar_id":"local_695122e6c05af9.97801547","found_local_id":"21402","found_name":"تست تست"}
[2026-04-08 15:32:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695122e6c05af9.97801547","person_id":"21402"}
[2026-04-08 15:32:31] [INFO] Pre-flight duplicate check {"has_person":true,"matches_count":1,"phones_checked":["9125759224","09125759224"]}
[2026-04-08 15:32:31] [INFO] Duplicate phone number found - BLOCKING contact creation {"has_person":true,"matches_count":1,"phones_checked":["9125759224","09125759224"],"action":"BLOCKING_NEW_CONTACT_CREATION"}
[2026-04-08 15:32:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695122e6c05af9.97801547","person_id":"21402"}
[2026-04-08 15:32:31] [WARNING] Contact creation blocked due to duplicate phone {"blocked_phone":"9125759224","existing_contact_id":"local_695122e6c05af9.97801547","existing_owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","existing_owner_name":"لید استخر","all_matched_phones":["9125759224"],"user_attempting_creation":"local_3e2fc1c5b672c4f3","reason":"PREVENTING_DATA_FRAGMENTATION","phones_checked":["9125759224","09125759224"]}
[2026-04-08 15:32:31] [INFO] Duplicate lead response prepared using local ID {"local_id":"21402","didar_id":"local_695122e6c05af9.97801547"}
[2026-04-08 15:32:45] [INFO] Checking activity reminders 
[2026-04-08 15:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:53] [INFO] Checking activity reminders 
[2026-04-08 15:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:32:59] [INFO] Checking activity reminders 
[2026-04-08 15:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:33:15] [INFO] Checking activity reminders 
[2026-04-08 15:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:33:23] [INFO] Checking activity reminders 
[2026-04-08 15:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:33:27] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9874655225","09874655225"]}
[2026-04-08 15:33:27] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9874655225","09874655225"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-08 15:33:27] [INFO] Didar write disabled; creating local lead only {"owner_id":"local_3e2fc1c5b672c4f3","mobile":"9874655225","full_name":"لید جدید"}
[2026-04-08 15:33:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:33:27] [INFO] Notification created {"notification_id":"633","user_id":"local_3e2fc1c5b672c4f3","type":"lead_assigned","show_popup":true}
[2026-04-08 15:33:29] [INFO] Checking activity reminders 
[2026-04-08 15:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:33:35] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:33:35] [INFO] Master password used for login {"user_id":"1714","identifier":"شایسته 2","role":"agent"}
[2026-04-08 15:33:35] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":true}
[2026-04-08 15:33:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:33:45] [INFO] Checking activity reminders 
[2026-04-08 15:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:33:54] [INFO] Checking activity reminders 
[2026-04-08 15:33:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:33:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:34:15] [INFO] Checking activity reminders 
[2026-04-08 15:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:34:24] [INFO] Checking activity reminders 
[2026-04-08 15:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:34:45] [INFO] Checking activity reminders 
[2026-04-08 15:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:34:54] [INFO] Checking activity reminders 
[2026-04-08 15:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:35:16] [INFO] Checking activity reminders 
[2026-04-08 15:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:35:24] [INFO] Checking activity reminders 
[2026-04-08 15:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:35:46] [INFO] Checking activity reminders 
[2026-04-08 15:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:35:54] [INFO] Checking activity reminders 
[2026-04-08 15:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:35:58] [INFO] Checking activity reminders 
[2026-04-08 15:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:36:16] [INFO] Checking activity reminders 
[2026-04-08 15:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:36:24] [INFO] Checking activity reminders 
[2026-04-08 15:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:36:28] [INFO] Checking activity reminders 
[2026-04-08 15:36:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:36:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:36:46] [INFO] Checking activity reminders 
[2026-04-08 15:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:36:54] [INFO] Checking activity reminders 
[2026-04-08 15:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:00] [INFO] Checking activity reminders 
[2026-04-08 15:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:16] [INFO] Checking activity reminders 
[2026-04-08 15:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:24] [INFO] Checking activity reminders 
[2026-04-08 15:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:30] [INFO] Checking activity reminders 
[2026-04-08 15:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:46] [INFO] Checking activity reminders 
[2026-04-08 15:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:37:54] [INFO] Checking activity reminders 
[2026-04-08 15:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:00] [INFO] Checking activity reminders 
[2026-04-08 15:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:38:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:38:17] [INFO] Checking activity reminders 
[2026-04-08 15:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:24] [INFO] Checking activity reminders 
[2026-04-08 15:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:30] [INFO] Checking activity reminders 
[2026-04-08 15:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:47] [INFO] Checking activity reminders 
[2026-04-08 15:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:38:54] [INFO] Checking activity reminders 
[2026-04-08 15:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:00] [INFO] Checking activity reminders 
[2026-04-08 15:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:17] [INFO] Checking activity reminders 
[2026-04-08 15:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:24] [INFO] Checking activity reminders 
[2026-04-08 15:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:33] [INFO] Checking activity reminders 
[2026-04-08 15:39:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:42] [INFO] Lead update received {"contact_id":"local_69d6440f239825.90924964","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:39:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d6440f239825.90924964"}
[2026-04-08 15:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:39:47] [INFO] Checking activity reminders 
[2026-04-08 15:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:39:54] [INFO] Checking activity reminders 
[2026-04-08 15:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:03] [INFO] Checking activity reminders 
[2026-04-08 15:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:17] [INFO] Checking activity reminders 
[2026-04-08 15:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:25] [INFO] Checking activity reminders 
[2026-04-08 15:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:33] [INFO] Checking activity reminders 
[2026-04-08 15:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:47] [INFO] Checking activity reminders 
[2026-04-08 15:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:40:55] [INFO] Checking activity reminders 
[2026-04-08 15:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:03] [INFO] Checking activity reminders 
[2026-04-08 15:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:17] [INFO] Checking activity reminders 
[2026-04-08 15:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:25] [INFO] Checking activity reminders 
[2026-04-08 15:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:33] [INFO] Checking activity reminders 
[2026-04-08 15:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:47] [INFO] Checking activity reminders 
[2026-04-08 15:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:41:55] [INFO] Checking activity reminders 
[2026-04-08 15:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:03] [INFO] Checking activity reminders 
[2026-04-08 15:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69d6440f239825.90924964","deal_id":"local_69d6440f2bca4","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سرکارم گذاشت","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 15:42:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"local_69d6440f239825.90924964","note_was_empty":true}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:07] [INFO] Updating virtual stage {"contact_id":"local_69d6440f239825.90924964","stage_name":"new","force":false}
[2026-04-08 15:42:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d6440f239825.90924964","stage_name":"new"}
[2026-04-08 15:42:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d6440f239825.90924964"}
[2026-04-08 15:42:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6440f2bca4","stage":"تماس پیگیری","status_change":null}
[2026-04-08 15:42:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d646176092b1.01349973","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d646176092b1.01349973"}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:07] [INFO] Updating virtual stage {"contact_id":"local_69d6440f239825.90924964","stage_name":"deal_registered","force":false}
[2026-04-08 15:42:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d6440f239825.90924964","stage_name":"deal_registered"}
[2026-04-08 15:42:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d6440f239825.90924964"}
[2026-04-08 15:42:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:42:17] [INFO] Checking activity reminders 
[2026-04-08 15:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:25] [INFO] Checking activity reminders 
[2026-04-08 15:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:34] [INFO] Checking activity reminders 
[2026-04-08 15:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:47] [INFO] Checking activity reminders 
[2026-04-08 15:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:42:55] [INFO] Checking activity reminders 
[2026-04-08 15:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_69d6440f239825.90924964","deal_id":"local_69d6440f2bca4","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:43:00","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:43:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_69d6440f239825.90924964","is_new_deal":false}
[2026-04-08 15:43:00] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-08 15:43:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-08 15:43:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-08 15:43:00] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d6440f239825.90924964"}
[2026-04-08 15:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:43:00] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d6440f239825.90924964","person_found":true,"primary_phone":"9874655225"}
[2026-04-08 15:43:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9874655225"}
[2026-04-08 15:43:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9874655225","contact_id":"local_69d6440f239825.90924964","deal_id":"local_69d6440f2bca4","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:43:00"}
[2026-04-08 15:43:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6440f2bca4","contact_id":"local_69d6440f239825.90924964","existing_deal_found":true,"existing_contact_id":"local_69d6440f239825.90924964","existing_title":"معامله اول 9874655225","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:43:00"}
[2026-04-08 15:43:00] [INFO] DealController.save validated payments {"deal_id":"local_69d6440f2bca4","contact_id":"local_69d6440f239825.90924964","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 15:43:00] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"local_69d6440f239825.90924964","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:43:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6440f2bca4","contact_didar_id":"local_69d6440f239825.90924964","title":"معامله اول 9874655225 | هوش خودرو","base_title_used":"معامله اول 9874655225","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7900000,"payment_amount":0,"payments_present":false,"requested_services":["هوش خودرو"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"محمد محمدی","existing_deal":"YES","existing_deal_id":"local_69d6440f2bca4","existing_deal_status":"Pending","server_time":"2026-04-08 15:43:00","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:43:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6440f2bca4","contact_id":"local_69d6440f239825.90924964","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله اول 9874655225 | هوش خودرو","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7900000,"payment_amount":0,"server_time":"2026-04-08 15:43:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:43:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:43:04] [INFO] Checking activity reminders 
[2026-04-08 15:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:17] [INFO] Checking activity reminders 
[2026-04-08 15:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:25] [INFO] Checking activity reminders 
[2026-04-08 15:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:34] [INFO] Checking activity reminders 
[2026-04-08 15:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:48] [INFO] Checking activity reminders 
[2026-04-08 15:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:43:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 15:43:55] [INFO] Checking activity reminders 
[2026-04-08 15:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:04] [INFO] Checking activity reminders 
[2026-04-08 15:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:18] [INFO] Checking activity reminders 
[2026-04-08 15:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:25] [INFO] Checking activity reminders 
[2026-04-08 15:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:34] [INFO] Checking activity reminders 
[2026-04-08 15:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:48] [INFO] Checking activity reminders 
[2026-04-08 15:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:44:55] [INFO] Checking activity reminders 
[2026-04-08 15:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:45:04] [INFO] Checking activity reminders 
[2026-04-08 15:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:18] [INFO] Checking activity reminders 
[2026-04-08 15:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:25] [INFO] Checking activity reminders 
[2026-04-08 15:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:34] [INFO] Checking activity reminders 
[2026-04-08 15:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:48] [INFO] Checking activity reminders 
[2026-04-08 15:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:45:55] [INFO] Checking activity reminders 
[2026-04-08 15:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:04] [INFO] Checking activity reminders 
[2026-04-08 15:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15063","deal_id":"local_69d64388392898.28840248","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 15:46:17","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 15:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:46:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15063","is_new_deal":false}
[2026-04-08 15:46:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 15:46:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 15:46:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 15:46:17] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 15:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:46:17] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 15:46:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 15:46:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_69d64388392898.28840248","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:46:17"}
[2026-04-08 15:46:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"15063","existing_title":"معامله دوم 9155979503 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 15:46:17"}
[2026-04-08 15:46:17] [INFO] DealController.save validated payments {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 15:46:17] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 15:46:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64388392898.28840248","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"YES","existing_deal_id":"local_69d64388392898.28840248","existing_deal_status":"Pending","server_time":"2026-04-08 15:46:17","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 15:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:46:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64388392898.28840248","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-08 15:46:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 15:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 15:46:18] [INFO] Checking activity reminders 
[2026-04-08 15:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:26] [INFO] Checking activity reminders 
[2026-04-08 15:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:35] [INFO] Checking activity reminders 
[2026-04-08 15:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:48] [INFO] Checking activity reminders 
[2026-04-08 15:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:46:56] [INFO] Checking activity reminders 
[2026-04-08 15:46:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:46:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:18] [INFO] Checking activity reminders 
[2026-04-08 15:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:26] [INFO] Checking activity reminders 
[2026-04-08 15:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:38] [INFO] Checking activity reminders 
[2026-04-08 15:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:45] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:47:45] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 15:47:45] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 15:47:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:47:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 15:47:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 15:47:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 15:47:48] [INFO] Checking activity reminders 
[2026-04-08 15:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:56] [INFO] Checking activity reminders 
[2026-04-08 15:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 15:48:16] [INFO] Checking activity reminders 
[2026-04-08 15:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:48:19] [INFO] Checking activity reminders 
[2026-04-08 15:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:48:26] [INFO] Checking activity reminders 
[2026-04-08 15:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:48:32] [INFO] Lead update received {"contact_id":"7910","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 15:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 15:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 15:48:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7910"}
[2026-04-08 15:48:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 15:48:46] [INFO] Checking activity reminders 
[2026-04-08 15:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:48:49] [INFO] Checking activity reminders 
[2026-04-08 15:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:48:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 15:48:56] [INFO] Checking activity reminders 
[2026-04-08 15:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:49:00] [INFO] Lead update received {"contact_id":"7976","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 15:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 15:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 15:49:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7976"}
[2026-04-08 15:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 15:49:14] [INFO] Checking activity reminders 
[2026-04-08 15:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 15:49:19] [INFO] Checking activity reminders 
[2026-04-08 15:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:49:26] [INFO] Checking activity reminders 
[2026-04-08 15:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:49:34] [INFO] Lead update received {"contact_id":"5962","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 15:49:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 15:49:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 15:49:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 15:49:34] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5962"}
[2026-04-08 15:49:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 15:49:45] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 15:49:45] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 15:49:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 15:49:49] [INFO] Checking activity reminders 
[2026-04-08 15:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:49:56] [INFO] Checking activity reminders 
[2026-04-08 15:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:16] [INFO] Checking activity reminders 
[2026-04-08 15:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:19] [INFO] Checking activity reminders 
[2026-04-08 15:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:26] [INFO] Checking activity reminders 
[2026-04-08 15:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:46] [INFO] Checking activity reminders 
[2026-04-08 15:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:49] [INFO] Checking activity reminders 
[2026-04-08 15:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:50:56] [INFO] Checking activity reminders 
[2026-04-08 15:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:17] [INFO] Checking activity reminders 
[2026-04-08 15:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:19] [INFO] Checking activity reminders 
[2026-04-08 15:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:27] [INFO] Checking activity reminders 
[2026-04-08 15:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:47] [INFO] Checking activity reminders 
[2026-04-08 15:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:49] [INFO] Checking activity reminders 
[2026-04-08 15:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:51:57] [INFO] Checking activity reminders 
[2026-04-08 15:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:52:17] [INFO] Checking activity reminders 
[2026-04-08 15:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:52:19] [INFO] Checking activity reminders 
[2026-04-08 15:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:52:27] [INFO] Checking activity reminders 
[2026-04-08 15:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:52:47] [INFO] Checking activity reminders 
[2026-04-08 15:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:52:49] [INFO] Checking activity reminders 
[2026-04-08 15:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:53:17] [INFO] Checking activity reminders 
[2026-04-08 15:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:53:53] [INFO] Checking activity reminders 
[2026-04-08 15:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:54:23] [INFO] Checking activity reminders 
[2026-04-08 15:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:54:44] [INFO] Activity save request {"post_data":{"contact_id":"20975","deal_id":"local_695cc6296137d7.60716197","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"6ماهه کانال تا عصر میگه \/ ساخت ملک تا مرداد تمومه ازاد میشه \/ \r\nدوستش اقا یمحمدی رو معرفی کرد شرکت فولاد داره پرزنت کانال بعد پروژه داشته باشم","activity_duration":"20","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 15:54:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20975","note_was_empty":true}
[2026-04-08 15:54:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"20975","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:44] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-04-08 15:54:44] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-04-08 15:54:44] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-04-08 15:54:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cc6296137d7.60716197","stage":"تماس پیگیری","status_change":null}
[2026-04-08 15:54:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6490c061d68.90151194","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6490c061d68.90151194"}
[2026-04-08 15:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:44] [INFO] Updating virtual stage {"contact_id":"20975","stage_name":"deal_registered","force":false}
[2026-04-08 15:54:44] [INFO] Virtual stage successfully saved {"contact_id":"20975","stage_name":"deal_registered"}
[2026-04-08 15:54:44] [INFO] Virtual stage updated after activity save {"contact_id":"20975"}
[2026-04-08 15:54:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20975","person_id":"19657"}
[2026-04-08 15:54:53] [INFO] Checking activity reminders 
[2026-04-08 15:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:55:24] [INFO] Checking activity reminders 
[2026-04-08 15:55:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:55:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:55:54] [INFO] Checking activity reminders 
[2026-04-08 15:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:56:24] [INFO] Checking activity reminders 
[2026-04-08 15:56:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:56:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:56:54] [INFO] Checking activity reminders 
[2026-04-08 15:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:57:24] [INFO] Checking activity reminders 
[2026-04-08 15:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:57:54] [INFO] Checking activity reminders 
[2026-04-08 15:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:58:24] [INFO] Checking activity reminders 
[2026-04-08 15:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:58:54] [INFO] Checking activity reminders 
[2026-04-08 15:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:59:24] [INFO] Checking activity reminders 
[2026-04-08 15:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:59:49] [INFO] Checking activity reminders 
[2026-04-08 15:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 15:59:55] [INFO] Checking activity reminders 
[2026-04-08 15:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 15:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:00:19] [INFO] Checking activity reminders 
[2026-04-08 16:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:00:25] [INFO] Checking activity reminders 
[2026-04-08 16:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:00:51] [INFO] Checking activity reminders 
[2026-04-08 16:00:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:00:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:00:55] [INFO] Checking activity reminders 
[2026-04-08 16:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:01:21] [INFO] Checking activity reminders 
[2026-04-08 16:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:01:25] [INFO] Checking activity reminders 
[2026-04-08 16:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:01:51] [INFO] Checking activity reminders 
[2026-04-08 16:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:01:55] [INFO] Checking activity reminders 
[2026-04-08 16:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:21] [INFO] Checking activity reminders 
[2026-04-08 16:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:21] [INFO] Checking activity reminders 
[2026-04-08 16:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:25] [INFO] Checking activity reminders 
[2026-04-08 16:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:51] [INFO] Checking activity reminders 
[2026-04-08 16:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:51] [INFO] Checking activity reminders 
[2026-04-08 16:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:02:55] [INFO] Checking activity reminders 
[2026-04-08 16:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3353","deal_id":"local_69d61f4c7124f7.42259015","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:03:11","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 16:03:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:03:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3353","is_new_deal":false}
[2026-04-08 16:03:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 16:03:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:03:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:03:11] [INFO] getContactPrimaryPhone called {"contact_id":"3353"}
[2026-04-08 16:03:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:03:11] [INFO] getContactPrimaryPhone result {"contact_id":"3353","person_found":true,"primary_phone":"9178992900"}
[2026-04-08 16:03:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9178992900"}
[2026-04-08 16:03:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9178992900","contact_id":"3353","deal_id":"local_69d61f4c7124f7.42259015","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:03:11"}
[2026-04-08 16:03:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61f4c7124f7.42259015","contact_id":"3353","existing_deal_found":true,"existing_contact_id":"3353","existing_title":"معامله دوم 9178992900 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:03:11"}
[2026-04-08 16:03:11] [INFO] DealController.save validated payments {"deal_id":"local_69d61f4c7124f7.42259015","contact_id":"3353","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 16:03:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3353","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:03:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61f4c7124f7.42259015","contact_didar_id":"3353","title":"معامله دوم 9178992900 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9178992900","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پیمان ناصری","existing_deal":"YES","existing_deal_id":"local_69d61f4c7124f7.42259015","existing_deal_status":"Pending","server_time":"2026-04-08 16:03:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 16:03:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:03:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61f4c7124f7.42259015","contact_id":"3353","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9178992900 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 16:03:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:03:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:03:21] [INFO] Checking activity reminders 
[2026-04-08 16:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:22] [INFO] Checking activity reminders 
[2026-04-08 16:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:25] [INFO] Checking activity reminders 
[2026-04-08 16:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 16:03:51] [INFO] Checking activity reminders 
[2026-04-08 16:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:53] [INFO] Checking activity reminders 
[2026-04-08 16:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:03:55] [INFO] Checking activity reminders 
[2026-04-08 16:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:04:22] [INFO] Checking activity reminders 
[2026-04-08 16:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:04:25] [INFO] Checking activity reminders 
[2026-04-08 16:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:04:52] [INFO] Checking activity reminders 
[2026-04-08 16:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:04:55] [INFO] Checking activity reminders 
[2026-04-08 16:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:04:56] [INFO] Checking activity reminders 
[2026-04-08 16:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:22] [INFO] Checking activity reminders 
[2026-04-08 16:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:25] [INFO] Checking activity reminders 
[2026-04-08 16:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:26] [INFO] Checking activity reminders 
[2026-04-08 16:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:35] [INFO] Activity save request {"post_data":{"contact_id":"3353","deal_id":"local_69d61f4c7124f7.42259015","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"5-6 میلیارد در ملک و زمین و خودرو معامله گری \r\nصندوق در امد ثابت \r\nپرزنت 405 خیلی بیخیاله \r\nمشاوره در جهت شرایط بحران \/ نوسان گیری و تبدیل سرمایه \/ نقدینگی \r\nشنبه چک داره وصول بشه واریز کنه \r\n","activity_duration":"12","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:05:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3353","note_was_empty":true}
[2026-04-08 16:05:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"3353","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:35] [INFO] Updating virtual stage {"contact_id":"3353","stage_name":"deal_registered","force":false}
[2026-04-08 16:05:35] [INFO] Virtual stage successfully saved {"contact_id":"3353","stage_name":"deal_registered"}
[2026-04-08 16:05:35] [INFO] Virtual stage updated after activity save {"contact_id":"3353"}
[2026-04-08 16:05:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61f4c7124f7.42259015","stage":"تماس پیگیری","status_change":null}
[2026-04-08 16:05:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d64b9741ffc6.92142895","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69d64b9741ffc6.92142895"}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:35] [INFO] Updating virtual stage {"contact_id":"3353","stage_name":"deal_registered","force":false}
[2026-04-08 16:05:35] [INFO] Virtual stage successfully saved {"contact_id":"3353","stage_name":"deal_registered"}
[2026-04-08 16:05:35] [INFO] Virtual stage updated after activity save {"contact_id":"3353"}
[2026-04-08 16:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-08 16:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:05:45] [INFO] Checking activity reminders 
[2026-04-08 16:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:48] [INFO] Checking activity reminders 
[2026-04-08 16:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:50] [INFO] Checking activity reminders 
[2026-04-08 16:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7976","deal_id":"local_69ca950f4add10.59902873","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:05:51","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 16:05:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"7976","is_new_deal":false}
[2026-04-08 16:05:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 16:05:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 16:05:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 16:05:51] [INFO] getContactPrimaryPhone called {"contact_id":"7976"}
[2026-04-08 16:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 16:05:51] [INFO] getContactPrimaryPhone result {"contact_id":"7976","person_found":true,"primary_phone":"9141638538"}
[2026-04-08 16:05:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141638538"}
[2026-04-08 16:05:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141638538","contact_id":"7976","deal_id":"local_69ca950f4add10.59902873","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:05:51"}
[2026-04-08 16:05:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca950f4add10.59902873","contact_id":"7976","existing_deal_found":true,"existing_contact_id":"7976","existing_title":"معامله دوم 9141638538 | کانال VIP با پشتیبانی شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:05:51"}
[2026-04-08 16:05:51] [INFO] DealController.save validated payments {"deal_id":"local_69ca950f4add10.59902873","contact_id":"7976","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 16:05:51] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7976","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:05:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca950f4add10.59902873","contact_didar_id":"7976","title":"معامله دوم 9141638538 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9141638538","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":20000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اعتمادی اعتمادی","existing_deal":"YES","existing_deal_id":"local_69ca950f4add10.59902873","existing_deal_status":"Pending","server_time":"2026-04-08 16:05:51","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 16:05:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca950f4add10.59902873","contact_id":"7976","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9141638538 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":20000000,"server_time":"2026-04-08 16:05:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7976","person_id":"17744"}
[2026-04-08 16:05:55] [INFO] Checking activity reminders 
[2026-04-08 16:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:05:56] [INFO] Checking activity reminders 
[2026-04-08 16:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:06:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:06:20] [INFO] Checking activity reminders 
[2026-04-08 16:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:06:25] [INFO] Checking activity reminders 
[2026-04-08 16:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:06:26] [INFO] Checking activity reminders 
[2026-04-08 16:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:06:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15063","deal_id":"local_69d64388392898.28840248","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:06:30","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:06:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15063","is_new_deal":false}
[2026-04-08 16:06:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 16:06:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 16:06:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 16:06:30] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 16:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:06:30] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 16:06:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 16:06:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_69d64388392898.28840248","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:06:30"}
[2026-04-08 16:06:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"15063","existing_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:06:30"}
[2026-04-08 16:06:30] [INFO] DealController.save validated payments {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 16:06:30] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:06:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64388392898.28840248","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"YES","existing_deal_id":"local_69d64388392898.28840248","existing_deal_status":"Pending","server_time":"2026-04-08 16:06:30","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:06:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64388392898.28840248","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-08 16:06:30","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:06:56] [INFO] Checking activity reminders 
[2026-04-08 16:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:06:56] [INFO] Checking activity reminders 
[2026-04-08 16:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:09] [INFO] Checking activity reminders 
[2026-04-08 16:07:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15063","deal_id":"local_6950f897990d45.08412936","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:07:15","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:07:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15063","is_new_deal":false}
[2026-04-08 16:07:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:07:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:07:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:07:15] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 16:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 16:07:15] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 16:07:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 16:07:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_6950f897990d45.08412936","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:07:15"}
[2026-04-08 16:07:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950f897990d45.08412936","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"5962","existing_title":"معامله اول 9151502270 | معامله اول 9151502270","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:07:15"}
[2026-04-08 16:07:15] [WARNING] Deal save blocked: deal_id does not belong to contact {"deal_id":"local_6950f897990d45.08412936","incoming_contact_id":"15063","existing_contact_id":"5962","incoming_title":"کانال VIP بدون پشتیبان شش ماهه","requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:07:15"}
[2026-04-08 16:07:20] [INFO] Checking activity reminders 
[2026-04-08 16:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:22] [INFO] Checking activity reminders 
[2026-04-08 16:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:26] [INFO] Checking activity reminders 
[2026-04-08 16:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:26] [INFO] Checking activity reminders 
[2026-04-08 16:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:31] [INFO] Checking activity reminders 
[2026-04-08 16:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:07:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 16:07:56] [INFO] Checking activity reminders 
[2026-04-08 16:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:08:01] [INFO] Checking activity reminders 
[2026-04-08 16:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:08:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5962","deal_id":"local_6950f897990d45.08412936","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:08:07","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:08:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5962","is_new_deal":false}
[2026-04-08 16:08:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:08:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:08:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:08:07] [INFO] getContactPrimaryPhone called {"contact_id":"5962"}
[2026-04-08 16:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:08:07] [INFO] getContactPrimaryPhone result {"contact_id":"5962","person_found":true,"primary_phone":"9151502270"}
[2026-04-08 16:08:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151502270"}
[2026-04-08 16:08:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151502270","contact_id":"5962","deal_id":"local_6950f897990d45.08412936","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:08:07"}
[2026-04-08 16:08:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950f897990d45.08412936","contact_id":"5962","existing_deal_found":true,"existing_contact_id":"5962","existing_title":"معامله اول 9151502270 | معامله اول 9151502270","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:08:07"}
[2026-04-08 16:08:07] [INFO] DealController.save validated payments {"deal_id":"local_6950f897990d45.08412936","contact_id":"5962","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 16:08:07] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"5962","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:08:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950f897990d45.08412936","contact_didar_id":"5962","title":"معامله اول 9151502270 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9151502270","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"دهنوی دهنوی","existing_deal":"YES","existing_deal_id":"local_6950f897990d45.08412936","existing_deal_status":"Pending","server_time":"2026-04-08 16:08:07","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:08:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:08:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950f897990d45.08412936","contact_id":"5962","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله اول 9151502270 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 16:08:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:08:12] [INFO] Checking activity reminders 
[2026-04-08 16:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:08:31] [INFO] Checking activity reminders 
[2026-04-08 16:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:08:31] [INFO] Checking activity reminders 
[2026-04-08 16:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:08:42] [INFO] Checking activity reminders 
[2026-04-08 16:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:09:01] [INFO] Checking activity reminders 
[2026-04-08 16:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:09:01] [INFO] Checking activity reminders 
[2026-04-08 16:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:09:12] [INFO] Checking activity reminders 
[2026-04-08 16:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:09:31] [INFO] Checking activity reminders 
[2026-04-08 16:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:10:01] [INFO] Checking activity reminders 
[2026-04-08 16:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:10:31] [INFO] Checking activity reminders 
[2026-04-08 16:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:10:50] [INFO] Checking activity reminders 
[2026-04-08 16:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:11:01] [INFO] Checking activity reminders 
[2026-04-08 16:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:11:20] [INFO] Checking activity reminders 
[2026-04-08 16:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:11:31] [INFO] Checking activity reminders 
[2026-04-08 16:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:11:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5962","deal_id":"local_6950f897990d45.08412936","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:11:35","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:11:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"5962","is_new_deal":false}
[2026-04-08 16:11:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:11:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:11:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:11:35] [INFO] getContactPrimaryPhone called {"contact_id":"5962"}
[2026-04-08 16:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:11:35] [INFO] getContactPrimaryPhone result {"contact_id":"5962","person_found":true,"primary_phone":"9151502270"}
[2026-04-08 16:11:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151502270"}
[2026-04-08 16:11:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151502270","contact_id":"5962","deal_id":"local_6950f897990d45.08412936","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:11:35"}
[2026-04-08 16:11:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950f897990d45.08412936","contact_id":"5962","existing_deal_found":true,"existing_contact_id":"5962","existing_title":"معامله اول 9151502270 | کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:11:35"}
[2026-04-08 16:11:35] [INFO] DealController.save validated payments {"deal_id":"local_6950f897990d45.08412936","contact_id":"5962","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 16:11:35] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"5962","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:11:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950f897990d45.08412936","contact_didar_id":"5962","title":"معامله اول 9151502270 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9151502270","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"دهنوی دهنوی","existing_deal":"YES","existing_deal_id":"local_6950f897990d45.08412936","existing_deal_status":"Pending","server_time":"2026-04-08 16:11:35","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5962","person_id":"17596"}
[2026-04-08 16:11:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950f897990d45.08412936","contact_id":"5962","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله اول 9151502270 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-08 16:11:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:11:50] [INFO] Checking activity reminders 
[2026-04-08 16:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:11:57] [INFO] Checking activity reminders 
[2026-04-08 16:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:01] [INFO] Checking activity reminders 
[2026-04-08 16:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:14] [INFO] Checking activity reminders 
[2026-04-08 16:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:12:27] [INFO] Checking activity reminders 
[2026-04-08 16:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:31] [INFO] Checking activity reminders 
[2026-04-08 16:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:12:44] [INFO] Checking activity reminders 
[2026-04-08 16:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:12:58] [INFO] Checking activity reminders 
[2026-04-08 16:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:01] [INFO] Checking activity reminders 
[2026-04-08 16:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:07] [INFO] Checking activity reminders 
[2026-04-08 16:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:14] [INFO] Checking activity reminders 
[2026-04-08 16:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:13:17] [INFO] generateDealTitle result {"contact_id":"7910","person_name":"اقای فرزاد نیا","mobile":"9122376799","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122376799"}
[2026-04-08 16:13:32] [INFO] Checking activity reminders 
[2026-04-08 16:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:37] [INFO] Checking activity reminders 
[2026-04-08 16:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:13:44] [INFO] Checking activity reminders 
[2026-04-08 16:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:14:02] [INFO] Checking activity reminders 
[2026-04-08 16:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:14:07] [INFO] Checking activity reminders 
[2026-04-08 16:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:14:14] [INFO] Checking activity reminders 
[2026-04-08 16:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:14:32] [INFO] Checking activity reminders 
[2026-04-08 16:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:14:37] [INFO] Checking activity reminders 
[2026-04-08 16:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:14:44] [INFO] Checking activity reminders 
[2026-04-08 16:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:15:02] [INFO] Checking activity reminders 
[2026-04-08 16:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:15:07] [INFO] Checking activity reminders 
[2026-04-08 16:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:15:14] [INFO] Checking activity reminders 
[2026-04-08 16:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:15:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"مشاوره","contact_id":"7910","deal_id":"","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:15:21","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:15:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مشاوره","contact_id":"7910","is_new_deal":true}
[2026-04-08 16:15:21] [INFO] extractPhoneFromDealTitle called {"input_title":"مشاوره"}
[2026-04-08 16:15:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"مشاوره"}
[2026-04-08 16:15:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مشاوره"}
[2026-04-08 16:15:21] [INFO] getContactPrimaryPhone called {"contact_id":"7910"}
[2026-04-08 16:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:15:21] [INFO] getContactPrimaryPhone result {"contact_id":"7910","person_found":true,"primary_phone":"9122376799"}
[2026-04-08 16:15:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122376799"}
[2026-04-08 16:15:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122376799","contact_id":"7910","deal_id":"","is_new_deal":true,"incoming_title":"مشاوره","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:15:21"}
[2026-04-08 16:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:15:21] [INFO] generateDealTitle result {"contact_id":"7910","person_name":"اقای فرزاد نیا","mobile":"9122376799","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9122376799"}
[2026-04-08 16:15:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7910","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-08 16:15:21] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7910","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:15:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7910","title":"معامله سوم 9122376799 | مشاوره","base_title_used":"معامله سوم 9122376799","services_text":"مشاوره","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":25000000,"payment_amount":0,"payments_present":false,"requested_services":["مشاوره"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای فرزاد نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 16:15:21","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:15:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 16:15:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7910","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله سوم 9122376799 | مشاوره","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":25000000,"payment_amount":0,"server_time":"2026-04-08 16:15:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:15:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:15:32] [INFO] Checking activity reminders 
[2026-04-08 16:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:15:37] [INFO] Checking activity reminders 
[2026-04-08 16:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:02] [INFO] Checking activity reminders 
[2026-04-08 16:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:07] [INFO] Checking activity reminders 
[2026-04-08 16:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:24] [INFO] Checking activity reminders 
[2026-04-08 16:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:32] [INFO] Checking activity reminders 
[2026-04-08 16:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:37] [INFO] Checking activity reminders 
[2026-04-08 16:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:16:54] [INFO] Checking activity reminders 
[2026-04-08 16:16:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:16:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:02] [INFO] Checking activity reminders 
[2026-04-08 16:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:07] [INFO] Checking activity reminders 
[2026-04-08 16:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:25] [INFO] Checking activity reminders 
[2026-04-08 16:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:32] [INFO] Checking activity reminders 
[2026-04-08 16:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:37] [INFO] Checking activity reminders 
[2026-04-08 16:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:47] [INFO] Checking activity reminders 
[2026-04-08 16:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:17:54] [INFO] Activity save request {"post_data":{"contact_id":"21238","deal_id":"local_69d4bba1a060d3.47755745","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا پولی نداره 6ماهه گفتم پول اومد اطلاع \r\nارسال پیامک","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:17:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21238","note_was_empty":true}
[2026-04-08 16:17:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"21238","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:54] [INFO] Updating virtual stage {"contact_id":"21238","stage_name":"deal_registered","force":false}
[2026-04-08 16:17:54] [INFO] Virtual stage successfully saved {"contact_id":"21238","stage_name":"deal_registered"}
[2026-04-08 16:17:54] [INFO] Virtual stage updated after activity save {"contact_id":"21238"}
[2026-04-08 16:17:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bba1a060d3.47755745","stage":"تماس پیگیری","status_change":null}
[2026-04-08 16:17:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d64e7ad1eab8.39533359","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69d64e7ad1eab8.39533359"}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:54] [INFO] Updating virtual stage {"contact_id":"21238","stage_name":"deal_registered","force":false}
[2026-04-08 16:17:54] [INFO] Virtual stage successfully saved {"contact_id":"21238","stage_name":"deal_registered"}
[2026-04-08 16:17:54] [INFO] Virtual stage updated after activity save {"contact_id":"21238"}
[2026-04-08 16:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21238","person_id":"4475"}
[2026-04-08 16:17:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"مشاوره","contact_id":"7910","deal_id":"local_69d64de19866a6.12340319","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:17:57","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:17:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:17:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مشاوره","contact_id":"7910","is_new_deal":false}
[2026-04-08 16:17:57] [INFO] extractPhoneFromDealTitle called {"input_title":"مشاوره"}
[2026-04-08 16:17:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"مشاوره"}
[2026-04-08 16:17:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مشاوره"}
[2026-04-08 16:17:57] [INFO] getContactPrimaryPhone called {"contact_id":"7910"}
[2026-04-08 16:17:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:17:57] [INFO] getContactPrimaryPhone result {"contact_id":"7910","person_found":true,"primary_phone":"9122376799"}
[2026-04-08 16:17:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122376799"}
[2026-04-08 16:17:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122376799","contact_id":"7910","deal_id":"local_69d64de19866a6.12340319","is_new_deal":false,"incoming_title":"مشاوره","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:17:57"}
[2026-04-08 16:17:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64de19866a6.12340319","contact_id":"7910","existing_deal_found":true,"existing_contact_id":"7910","existing_title":"معامله سوم 9122376799 | مشاوره","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:17:57"}
[2026-04-08 16:18:02] [INFO] Checking activity reminders 
[2026-04-08 16:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:18:07] [INFO] Checking activity reminders 
[2026-04-08 16:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:18:09] [INFO] Checking activity reminders 
[2026-04-08 16:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:18:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"مشاوره","contact_id":"7910","deal_id":"local_69d64de19866a6.12340319","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:18:15","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:18:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مشاوره","contact_id":"7910","is_new_deal":false}
[2026-04-08 16:18:15] [INFO] extractPhoneFromDealTitle called {"input_title":"مشاوره"}
[2026-04-08 16:18:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"مشاوره"}
[2026-04-08 16:18:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مشاوره"}
[2026-04-08 16:18:15] [INFO] getContactPrimaryPhone called {"contact_id":"7910"}
[2026-04-08 16:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:18:15] [INFO] getContactPrimaryPhone result {"contact_id":"7910","person_found":true,"primary_phone":"9122376799"}
[2026-04-08 16:18:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122376799"}
[2026-04-08 16:18:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122376799","contact_id":"7910","deal_id":"local_69d64de19866a6.12340319","is_new_deal":false,"incoming_title":"مشاوره","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:18:15"}
[2026-04-08 16:18:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64de19866a6.12340319","contact_id":"7910","existing_deal_found":true,"existing_contact_id":"7910","existing_title":"معامله سوم 9122376799 | مشاوره","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 16:18:15"}
[2026-04-08 16:18:15] [INFO] DealController.save validated payments {"deal_id":"local_69d64de19866a6.12340319","contact_id":"7910","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 16:18:15] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7910","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:18:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64de19866a6.12340319","contact_didar_id":"7910","title":"معامله سوم 9122376799 | مشاوره","base_title_used":"معامله سوم 9122376799","services_text":"مشاوره","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":25000000,"payment_amount":25000000,"payments_present":true,"requested_services":["مشاوره"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای فرزاد نیا","existing_deal":"YES","existing_deal_id":"local_69d64de19866a6.12340319","existing_deal_status":"Pending","server_time":"2026-04-08 16:18:15","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 16:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:18:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64de19866a6.12340319","contact_id":"7910","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله سوم 9122376799 | مشاوره","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":25000000,"payment_amount":25000000,"server_time":"2026-04-08 16:18:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:18:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:18:32] [INFO] Checking activity reminders 
[2026-04-08 16:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:18:38] [INFO] Checking activity reminders 
[2026-04-08 16:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:18:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:18:39] [INFO] Checking activity reminders 
[2026-04-08 16:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:03] [INFO] Checking activity reminders 
[2026-04-08 16:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:08] [INFO] Checking activity reminders 
[2026-04-08 16:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:09] [INFO] Checking activity reminders 
[2026-04-08 16:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:20] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 16:19:20] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 16:19:20] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 16:19:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 16:19:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 16:19:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 16:19:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 16:19:33] [INFO] Checking activity reminders 
[2026-04-08 16:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:38] [INFO] Checking activity reminders 
[2026-04-08 16:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 16:19:51] [INFO] Checking activity reminders 
[2026-04-08 16:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 16:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d6440f239825.90924964","person_id":"22034"}
[2026-04-08 16:20:03] [INFO] Checking activity reminders 
[2026-04-08 16:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:20:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:20:08] [INFO] Checking activity reminders 
[2026-04-08 16:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:20:21] [INFO] Checking activity reminders 
[2026-04-08 16:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:20:33] [INFO] Checking activity reminders 
[2026-04-08 16:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:20:38] [INFO] Checking activity reminders 
[2026-04-08 16:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:20:51] [INFO] Checking activity reminders 
[2026-04-08 16:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:03] [INFO] Checking activity reminders 
[2026-04-08 16:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:08] [INFO] Checking activity reminders 
[2026-04-08 16:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7910","deal_id":"local_6950f6aecb7c24.95743672","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:21:17","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 16:21:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:21:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7910","is_new_deal":false}
[2026-04-08 16:21:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 16:21:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:21:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:21:17] [INFO] getContactPrimaryPhone called {"contact_id":"7910"}
[2026-04-08 16:21:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:21:17] [INFO] getContactPrimaryPhone result {"contact_id":"7910","person_found":true,"primary_phone":"9122376799"}
[2026-04-08 16:21:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122376799"}
[2026-04-08 16:21:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122376799","contact_id":"7910","deal_id":"local_6950f6aecb7c24.95743672","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 16:21:17"}
[2026-04-08 16:21:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950f6aecb7c24.95743672","contact_id":"7910","existing_deal_found":true,"existing_contact_id":"7910","existing_title":"معامله اول 9122376799 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 16:21:17"}
[2026-04-08 16:21:17] [INFO] DealController.save validated payments {"deal_id":"local_6950f6aecb7c24.95743672","contact_id":"7910","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 16:21:17] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7910","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 16:21:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950f6aecb7c24.95743672","contact_didar_id":"7910","title":"معامله اول 9122376799 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9122376799","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای فرزاد نیا","existing_deal":"YES","existing_deal_id":"local_6950f6aecb7c24.95743672","existing_deal_status":"Pending","server_time":"2026-04-08 16:21:17","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 16:21:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:21:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950f6aecb7c24.95743672","contact_id":"7910","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله اول 9122376799 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-08 16:21:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:21:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-08 16:21:21] [INFO] Checking activity reminders 
[2026-04-08 16:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:33] [INFO] Checking activity reminders 
[2026-04-08 16:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:38] [INFO] Checking activity reminders 
[2026-04-08 16:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:21:52] [INFO] Checking activity reminders 
[2026-04-08 16:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:22:03] [INFO] Checking activity reminders 
[2026-04-08 16:22:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:22:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:22:22] [INFO] Checking activity reminders 
[2026-04-08 16:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:22:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:22:26","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 16:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:22:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","is_new_deal":false}
[2026-04-08 16:22:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:22:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:22:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:22:26] [INFO] getContactPrimaryPhone called {"contact_id":"14954"}
[2026-04-08 16:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:22:26] [INFO] getContactPrimaryPhone result {"contact_id":"14954","person_found":true,"primary_phone":"9184915906"}
[2026-04-08 16:22:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184915906"}
[2026-04-08 16:22:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184915906","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:22:26"}
[2026-04-08 16:22:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","existing_deal_found":true,"existing_contact_id":"14954","existing_title":"معامله دوم 9184915906 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:22:26"}
[2026-04-08 16:22:26] [INFO] DealController.save validated payments {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-08 16:22:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14954","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:22:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6208c590c62.46842710","contact_didar_id":"14954","title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9184915906","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی جولاهی","existing_deal":"YES","existing_deal_id":"local_69d6208c590c62.46842710","existing_deal_status":"Pending","server_time":"2026-04-08 16:22:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 16:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:22:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 16:22:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:22:33] [INFO] Checking activity reminders 
[2026-04-08 16:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:22:36] [INFO] Checking activity reminders 
[2026-04-08 16:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:22:56] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 16:22:56] [WARNING] Login attempt failed - wrong password {"user_id":"1714","identifier":"شایسته 2"}
[2026-04-08 16:23:00] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 16:23:00] [WARNING] Login attempt failed - wrong password {"user_id":"1714","identifier":"شایسته 2"}
[2026-04-08 16:23:03] [INFO] Checking activity reminders 
[2026-04-08 16:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:23:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 16:23:05] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 16:23:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 16:23:06] [INFO] Checking activity reminders 
[2026-04-08 16:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:23:33] [INFO] Checking activity reminders 
[2026-04-08 16:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:23:36] [INFO] Checking activity reminders 
[2026-04-08 16:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:23:40] [INFO] Checking activity reminders 
[2026-04-08 16:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:03] [INFO] Checking activity reminders 
[2026-04-08 16:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:06] [INFO] Checking activity reminders 
[2026-04-08 16:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:10] [INFO] Checking activity reminders 
[2026-04-08 16:24:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:34] [INFO] Checking activity reminders 
[2026-04-08 16:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:36] [INFO] Checking activity reminders 
[2026-04-08 16:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:40] [INFO] Checking activity reminders 
[2026-04-08 16:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:40] [INFO] Activity save request {"post_data":{"contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کارمند \r\nدرامد و سرمایه اش محدود \r\nبرای عضویت در کانال یکساله نمیتونه ولی دوست داره باشه \r\n6 ماهه پرزنت شد \/ قدیمیه و نیازی به سوال و پشتیبانی نداره \r\n7 بیعانه واریز \/حقوق اخر ماه میگیره تسویه و وارد کانال میشه \r\nبهش گفتم سریع تر تسویه کن و وارد کانال شو \r\nارسال لینک پرداخت ","activity_duration":"12","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:24:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14954","note_was_empty":true}
[2026-04-08 16:24:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"14954","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:40] [INFO] Updating virtual stage {"contact_id":"14954","stage_name":"deal_registered","force":false}
[2026-04-08 16:24:40] [INFO] Virtual stage successfully saved {"contact_id":"14954","stage_name":"deal_registered"}
[2026-04-08 16:24:40] [INFO] Virtual stage updated after activity save {"contact_id":"14954"}
[2026-04-08 16:24:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6208c590c62.46842710","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 16:24:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65010b82681.87076299","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65010b82681.87076299"}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:40] [INFO] Updating virtual stage {"contact_id":"14954","stage_name":"deal_registered","force":false}
[2026-04-08 16:24:40] [INFO] Virtual stage successfully saved {"contact_id":"14954","stage_name":"deal_registered"}
[2026-04-08 16:24:40] [INFO] Virtual stage updated after activity save {"contact_id":"14954"}
[2026-04-08 16:24:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:24:44] [INFO] Checking activity reminders 
[2026-04-08 16:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:53] [INFO] Activity save request {"post_data":{"contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری هدف تمدید کانال","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:24:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2744","note_was_empty":true}
[2026-04-08 16:24:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"2744","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:53] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 16:24:53] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 16:24:53] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 16:24:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bac8ebeca7.58841075","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 16:24:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6501d187188.94154956","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6501d187188.94154956"}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:53] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 16:24:53] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 16:24:53] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 16:24:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:24:55] [INFO] Checking activity reminders 
[2026-04-08 16:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:24:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:25:06] [INFO] Checking activity reminders 
[2026-04-08 16:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:25:10] [INFO] Checking activity reminders 
[2026-04-08 16:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:25:26] [INFO] Checking activity reminders 
[2026-04-08 16:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:25:36] [INFO] Checking activity reminders 
[2026-04-08 16:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:25:40] [INFO] Checking activity reminders 
[2026-04-08 16:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:25:56] [INFO] Checking activity reminders 
[2026-04-08 16:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:06] [INFO] Checking activity reminders 
[2026-04-08 16:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:10] [INFO] Checking activity reminders 
[2026-04-08 16:26:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:17] [INFO] Checking activity reminders 
[2026-04-08 16:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:36] [INFO] Checking activity reminders 
[2026-04-08 16:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:40] [INFO] Checking activity reminders 
[2026-04-08 16:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:26:47] [INFO] Checking activity reminders 
[2026-04-08 16:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:06] [INFO] Checking activity reminders 
[2026-04-08 16:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:10] [INFO] Checking activity reminders 
[2026-04-08 16:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:17] [INFO] Checking activity reminders 
[2026-04-08 16:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:27:32] [INFO] Activity save request {"post_data":{"contact_id":"11858","deal_id":"local_69d4ba77b26323.96425165","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ هدف تمددی کانال ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:27:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:27:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:27:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11858","note_was_empty":true}
[2026-04-08 16:27:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"11858","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 16:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:33] [INFO] Updating virtual stage {"contact_id":"11858","stage_name":"deal_registered","force":false}
[2026-04-08 16:27:33] [INFO] Virtual stage successfully saved {"contact_id":"11858","stage_name":"deal_registered"}
[2026-04-08 16:27:33] [INFO] Virtual stage updated after activity save {"contact_id":"11858"}
[2026-04-08 16:27:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4ba77b26323.96425165","stage":"تماس پیگیری","status_change":null}
[2026-04-08 16:27:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d650bd00fb26.98418489","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d650bd00fb26.98418489"}
[2026-04-08 16:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:33] [INFO] Updating virtual stage {"contact_id":"11858","stage_name":"deal_registered","force":false}
[2026-04-08 16:27:33] [INFO] Virtual stage successfully saved {"contact_id":"11858","stage_name":"deal_registered"}
[2026-04-08 16:27:33] [INFO] Virtual stage updated after activity save {"contact_id":"11858"}
[2026-04-08 16:27:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 16:27:36] [INFO] Checking activity reminders 
[2026-04-08 16:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:40] [INFO] Checking activity reminders 
[2026-04-08 16:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:47] [INFO] Checking activity reminders 
[2026-04-08 16:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:28:06] [INFO] Checking activity reminders 
[2026-04-08 16:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:28:10] [INFO] Checking activity reminders 
[2026-04-08 16:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:28:17] [INFO] Checking activity reminders 
[2026-04-08 16:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:28:36] [INFO] Checking activity reminders 
[2026-04-08 16:28:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:28:40] [INFO] Checking activity reminders 
[2026-04-08 16:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:28:47] [INFO] Checking activity reminders 
[2026-04-08 16:28:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:28:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:06] [INFO] Checking activity reminders 
[2026-04-08 16:29:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:11] [INFO] Checking activity reminders 
[2026-04-08 16:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:17] [INFO] Checking activity reminders 
[2026-04-08 16:29:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:36] [INFO] Checking activity reminders 
[2026-04-08 16:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:41] [INFO] Checking activity reminders 
[2026-04-08 16:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:29:47] [INFO] Checking activity reminders 
[2026-04-08 16:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4597","deal_id":"local_69d621ffec9776.51324760","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:30:03","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 16:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4597","is_new_deal":false}
[2026-04-08 16:30:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 16:30:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:30:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 16:30:03] [INFO] getContactPrimaryPhone called {"contact_id":"4597"}
[2026-04-08 16:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:03] [INFO] getContactPrimaryPhone result {"contact_id":"4597","person_found":true,"primary_phone":"9189119365"}
[2026-04-08 16:30:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9189119365"}
[2026-04-08 16:30:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9189119365","contact_id":"4597","deal_id":"local_69d621ffec9776.51324760","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:30:03"}
[2026-04-08 16:30:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d621ffec9776.51324760","contact_id":"4597","existing_deal_found":true,"existing_contact_id":"4597","existing_title":"معامله دوم 9189119365 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:30:03"}
[2026-04-08 16:30:03] [INFO] DealController.save validated payments {"deal_id":"local_69d621ffec9776.51324760","contact_id":"4597","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 16:30:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4597","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:30:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d621ffec9776.51324760","contact_didar_id":"4597","title":"معامله دوم 9189119365 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9189119365","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سماواتی","existing_deal":"YES","existing_deal_id":"local_69d621ffec9776.51324760","existing_deal_status":"Pending","server_time":"2026-04-08 16:30:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 16:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d621ffec9776.51324760","contact_id":"4597","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9189119365 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 16:30:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:30:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:06] [INFO] Checking activity reminders 
[2026-04-08 16:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:11] [INFO] Checking activity reminders 
[2026-04-08 16:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:18] [INFO] Checking activity reminders 
[2026-04-08 16:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:31] [INFO] Activity save request {"post_data":{"contact_id":"4597","deal_id":"local_69d621ffec9776.51324760","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک \/ پیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:30:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4597","note_was_empty":true}
[2026-04-08 16:30:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"4597","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:31] [INFO] Updating virtual stage {"contact_id":"4597","stage_name":"deal_registered","force":false}
[2026-04-08 16:30:31] [INFO] Virtual stage successfully saved {"contact_id":"4597","stage_name":"deal_registered"}
[2026-04-08 16:30:31] [INFO] Virtual stage updated after activity save {"contact_id":"4597"}
[2026-04-08 16:30:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d621ffec9776.51324760","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 16:30:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6516f4a4433.02577686","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6516f4a4433.02577686"}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:31] [INFO] Updating virtual stage {"contact_id":"4597","stage_name":"deal_registered","force":false}
[2026-04-08 16:30:31] [INFO] Virtual stage successfully saved {"contact_id":"4597","stage_name":"deal_registered"}
[2026-04-08 16:30:31] [INFO] Virtual stage updated after activity save {"contact_id":"4597"}
[2026-04-08 16:30:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4597","person_id":"4514"}
[2026-04-08 16:30:37] [INFO] Checking activity reminders 
[2026-04-08 16:30:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:41] [INFO] Checking activity reminders 
[2026-04-08 16:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:30:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 16:30:48] [INFO] Checking activity reminders 
[2026-04-08 16:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:07] [INFO] Checking activity reminders 
[2026-04-08 16:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:11] [INFO] Checking activity reminders 
[2026-04-08 16:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:18] [INFO] Checking activity reminders 
[2026-04-08 16:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:37] [INFO] Checking activity reminders 
[2026-04-08 16:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:41] [INFO] Checking activity reminders 
[2026-04-08 16:31:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:31:48] [INFO] Checking activity reminders 
[2026-04-08 16:31:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:31:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:07] [INFO] Checking activity reminders 
[2026-04-08 16:32:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:11] [INFO] Checking activity reminders 
[2026-04-08 16:32:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:18] [INFO] Checking activity reminders 
[2026-04-08 16:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:37] [INFO] Checking activity reminders 
[2026-04-08 16:32:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:41] [INFO] Checking activity reminders 
[2026-04-08 16:32:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:32:48] [INFO] Checking activity reminders 
[2026-04-08 16:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:07] [INFO] Checking activity reminders 
[2026-04-08 16:33:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:11] [INFO] Checking activity reminders 
[2026-04-08 16:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:18] [INFO] Checking activity reminders 
[2026-04-08 16:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:37] [INFO] Checking activity reminders 
[2026-04-08 16:33:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:41] [INFO] Checking activity reminders 
[2026-04-08 16:33:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:33:48] [INFO] Checking activity reminders 
[2026-04-08 16:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:34:07] [INFO] Checking activity reminders 
[2026-04-08 16:34:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:34:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:34:11] [INFO] Checking activity reminders 
[2026-04-08 16:34:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:34:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:34:18] [INFO] Checking activity reminders 
[2026-04-08 16:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:34:41] [INFO] Checking activity reminders 
[2026-04-08 16:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:34:49] [INFO] Checking activity reminders 
[2026-04-08 16:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:35:01] [INFO] Activity save request {"post_data":{"contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"6ماهه واریز کنه امروز 15ت تسویه یک هفته دیگه \/ میگه شرایط بازار جوریه نمیتونم یهو 79بدم \r\nماشین داره و دلار\/ کاسب ماشین هست\r\nگفتم تا 5 اطلاع میدم میتونی باشی یا نه","activity_duration":"20","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:35:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2744","note_was_empty":true}
[2026-04-08 16:35:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"2744","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 16:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:01] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 16:35:01] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 16:35:01] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 16:35:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bac8ebeca7.58841075","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 16:35:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6527da8f6a2.29660851","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6527da8f6a2.29660851"}
[2026-04-08 16:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:01] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 16:35:01] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 16:35:01] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 16:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 16:35:11] [INFO] Checking activity reminders 
[2026-04-08 16:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:35:19] [INFO] Checking activity reminders 
[2026-04-08 16:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:35:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:35:49] [INFO] Checking activity reminders 
[2026-04-08 16:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:35:55] [INFO] Checking activity reminders 
[2026-04-08 16:35:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:35:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:36:19] [INFO] Checking activity reminders 
[2026-04-08 16:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:36:25] [INFO] Checking activity reminders 
[2026-04-08 16:36:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:36:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:36:49] [INFO] Checking activity reminders 
[2026-04-08 16:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:37:19] [INFO] Checking activity reminders 
[2026-04-08 16:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:37:50] [INFO] Checking activity reminders 
[2026-04-08 16:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:38:20] [INFO] Checking activity reminders 
[2026-04-08 16:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:38:25] [INFO] Checking activity reminders 
[2026-04-08 16:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:38:50] [INFO] Checking activity reminders 
[2026-04-08 16:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:38:55] [INFO] Checking activity reminders 
[2026-04-08 16:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:39:08] [INFO] Lead update received {"contact_id":"16453","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 16:39:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16453"}
[2026-04-08 16:39:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:20] [INFO] Checking activity reminders 
[2026-04-08 16:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:39:25] [INFO] Checking activity reminders 
[2026-04-08 16:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:39:39] [INFO] Activity save request {"post_data":{"contact_id":"16453","deal_id":"local_69d4b9337d8ac0.39248063","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مراسم بود صدا نمیومد ارسال پیامک چه زمانی صحبت بشه؟","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 16:39:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16453","note_was_empty":true}
[2026-04-08 16:39:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"16453","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:39] [INFO] Updating virtual stage {"contact_id":"16453","stage_name":"deal_registered","force":false}
[2026-04-08 16:39:39] [INFO] Virtual stage successfully saved {"contact_id":"16453","stage_name":"deal_registered"}
[2026-04-08 16:39:39] [INFO] Virtual stage updated after activity save {"contact_id":"16453"}
[2026-04-08 16:39:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b9337d8ac0.39248063","stage":"تماس پیگیری","status_change":null}
[2026-04-08 16:39:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d653935f0e50.25469990","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69d653935f0e50.25469990"}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:39] [INFO] Updating virtual stage {"contact_id":"16453","stage_name":"deal_registered","force":false}
[2026-04-08 16:39:39] [INFO] Virtual stage successfully saved {"contact_id":"16453","stage_name":"deal_registered"}
[2026-04-08 16:39:39] [INFO] Virtual stage updated after activity save {"contact_id":"16453"}
[2026-04-08 16:39:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16453","person_id":"440"}
[2026-04-08 16:39:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 16:39:50] [INFO] Checking activity reminders 
[2026-04-08 16:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:39:55] [INFO] Checking activity reminders 
[2026-04-08 16:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:40:20] [INFO] Checking activity reminders 
[2026-04-08 16:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:40:27] [INFO] Checking activity reminders 
[2026-04-08 16:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:40:50] [INFO] Checking activity reminders 
[2026-04-08 16:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:40:57] [INFO] Checking activity reminders 
[2026-04-08 16:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:41:20] [INFO] Checking activity reminders 
[2026-04-08 16:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:41:27] [INFO] Checking activity reminders 
[2026-04-08 16:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:41:50] [INFO] Checking activity reminders 
[2026-04-08 16:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:41:57] [INFO] Checking activity reminders 
[2026-04-08 16:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:42:20] [INFO] Checking activity reminders 
[2026-04-08 16:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:42:27] [INFO] Checking activity reminders 
[2026-04-08 16:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:42:50] [INFO] Checking activity reminders 
[2026-04-08 16:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:42:57] [INFO] Checking activity reminders 
[2026-04-08 16:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:20] [INFO] Checking activity reminders 
[2026-04-08 16:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:27] [INFO] Checking activity reminders 
[2026-04-08 16:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:30] [INFO] Checking activity reminders 
[2026-04-08 16:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:39] [INFO] Checking activity reminders 
[2026-04-08 16:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:40] [INFO] Checking activity reminders 
[2026-04-08 16:43:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:42] [INFO] Checking activity reminders 
[2026-04-08 16:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:57] [INFO] Checking activity reminders 
[2026-04-08 16:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:43:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:43:58","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 16:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:43:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","is_new_deal":false}
[2026-04-08 16:43:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:43:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:43:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:43:58] [INFO] getContactPrimaryPhone called {"contact_id":"14954"}
[2026-04-08 16:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:43:58] [INFO] getContactPrimaryPhone result {"contact_id":"14954","person_found":true,"primary_phone":"9184915906"}
[2026-04-08 16:43:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184915906"}
[2026-04-08 16:43:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184915906","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:43:58"}
[2026-04-08 16:43:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","existing_deal_found":true,"existing_contact_id":"14954","existing_title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:43:58"}
[2026-04-08 16:43:58] [INFO] DealController.save validated payments {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 16:43:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14954","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:43:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6208c590c62.46842710","contact_didar_id":"14954","title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9184915906","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی جولاهی","existing_deal":"YES","existing_deal_id":"local_69d6208c590c62.46842710","existing_deal_status":"Pending","server_time":"2026-04-08 16:43:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 16:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:43:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-08 16:43:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:43:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:44:12] [INFO] Checking activity reminders 
[2026-04-08 16:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:44:28] [INFO] Checking activity reminders 
[2026-04-08 16:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:44:42] [INFO] Checking activity reminders 
[2026-04-08 16:44:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:44:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:44:58] [INFO] Checking activity reminders 
[2026-04-08 16:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:45:12] [INFO] Checking activity reminders 
[2026-04-08 16:45:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:45:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:45:28] [INFO] Checking activity reminders 
[2026-04-08 16:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:45:42] [INFO] Checking activity reminders 
[2026-04-08 16:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:45:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 16:45:48","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 16:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:45:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"14954","is_new_deal":false}
[2026-04-08 16:45:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:45:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:45:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-08 16:45:48] [INFO] getContactPrimaryPhone called {"contact_id":"14954"}
[2026-04-08 16:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:45:48] [INFO] getContactPrimaryPhone result {"contact_id":"14954","person_found":true,"primary_phone":"9184915906"}
[2026-04-08 16:45:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184915906"}
[2026-04-08 16:45:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184915906","contact_id":"14954","deal_id":"local_69d6208c590c62.46842710","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:45:48"}
[2026-04-08 16:45:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","existing_deal_found":true,"existing_contact_id":"14954","existing_title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 16:45:48"}
[2026-04-08 16:45:48] [INFO] DealController.save validated payments {"deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 16:45:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14954","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 16:45:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6208c590c62.46842710","contact_didar_id":"14954","title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9184915906","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":7000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی جولاهی","existing_deal":"YES","existing_deal_id":"local_69d6208c590c62.46842710","existing_deal_status":"Pending","server_time":"2026-04-08 16:45:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 16:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:45:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6208c590c62.46842710","contact_id":"14954","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9184915906 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":7000000,"server_time":"2026-04-08 16:45:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 16:45:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14954","person_id":"4199"}
[2026-04-08 16:45:58] [INFO] Checking activity reminders 
[2026-04-08 16:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:45:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 16:45:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 16:46:12] [INFO] Checking activity reminders 
[2026-04-08 16:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:46:28] [INFO] Checking activity reminders 
[2026-04-08 16:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:46:43] [INFO] Checking activity reminders 
[2026-04-08 16:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:46:58] [INFO] Checking activity reminders 
[2026-04-08 16:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:47:13] [INFO] Checking activity reminders 
[2026-04-08 16:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:47:28] [INFO] Checking activity reminders 
[2026-04-08 16:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:47:43] [INFO] Checking activity reminders 
[2026-04-08 16:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:47:58] [INFO] Checking activity reminders 
[2026-04-08 16:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:48:13] [INFO] Checking activity reminders 
[2026-04-08 16:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:48:28] [INFO] Checking activity reminders 
[2026-04-08 16:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:48:39] [INFO] Checking activity reminders 
[2026-04-08 16:48:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:48:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:48:58] [INFO] Checking activity reminders 
[2026-04-08 16:48:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:48:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:49:10] [INFO] Checking activity reminders 
[2026-04-08 16:49:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:49:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:49:29] [INFO] Checking activity reminders 
[2026-04-08 16:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:49:40] [INFO] Checking activity reminders 
[2026-04-08 16:49:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:49:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:49:59] [INFO] Checking activity reminders 
[2026-04-08 16:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:50:10] [INFO] Checking activity reminders 
[2026-04-08 16:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:50:29] [INFO] Checking activity reminders 
[2026-04-08 16:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:50:40] [INFO] Checking activity reminders 
[2026-04-08 16:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:50:59] [INFO] Checking activity reminders 
[2026-04-08 16:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:51:10] [INFO] Checking activity reminders 
[2026-04-08 16:51:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:51:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:51:29] [INFO] Checking activity reminders 
[2026-04-08 16:51:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:51:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:51:40] [INFO] Checking activity reminders 
[2026-04-08 16:51:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:51:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:51:59] [INFO] Checking activity reminders 
[2026-04-08 16:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:52:10] [INFO] Checking activity reminders 
[2026-04-08 16:52:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:52:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:52:29] [INFO] Checking activity reminders 
[2026-04-08 16:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:52:40] [INFO] Checking activity reminders 
[2026-04-08 16:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:52:59] [INFO] Checking activity reminders 
[2026-04-08 16:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:53:10] [INFO] Checking activity reminders 
[2026-04-08 16:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:53:29] [INFO] Checking activity reminders 
[2026-04-08 16:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:53:40] [INFO] Checking activity reminders 
[2026-04-08 16:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:53:59] [INFO] Checking activity reminders 
[2026-04-08 16:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:54:10] [INFO] Checking activity reminders 
[2026-04-08 16:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:54:29] [INFO] Checking activity reminders 
[2026-04-08 16:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:54:40] [INFO] Checking activity reminders 
[2026-04-08 16:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:54:59] [INFO] Checking activity reminders 
[2026-04-08 16:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:55:10] [INFO] Checking activity reminders 
[2026-04-08 16:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:55:29] [INFO] Checking activity reminders 
[2026-04-08 16:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:55:40] [INFO] Checking activity reminders 
[2026-04-08 16:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 16:56:00] [INFO] Checking activity reminders 
[2026-04-08 16:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:56:11] [INFO] Checking activity reminders 
[2026-04-08 16:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:56:12] [INFO] Checking activity reminders 
[2026-04-08 16:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:56:30] [INFO] Checking activity reminders 
[2026-04-08 16:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:56:41] [INFO] Checking activity reminders 
[2026-04-08 16:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:57:00] [INFO] Checking activity reminders 
[2026-04-08 16:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:57:11] [INFO] Checking activity reminders 
[2026-04-08 16:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:57:30] [INFO] Checking activity reminders 
[2026-04-08 16:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:57:41] [INFO] Checking activity reminders 
[2026-04-08 16:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:58:00] [INFO] Checking activity reminders 
[2026-04-08 16:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:58:11] [INFO] Checking activity reminders 
[2026-04-08 16:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:58:30] [INFO] Checking activity reminders 
[2026-04-08 16:58:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:58:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:58:41] [INFO] Checking activity reminders 
[2026-04-08 16:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:59:00] [INFO] Checking activity reminders 
[2026-04-08 16:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:59:11] [INFO] Checking activity reminders 
[2026-04-08 16:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:59:30] [INFO] Checking activity reminders 
[2026-04-08 16:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 16:59:41] [INFO] Checking activity reminders 
[2026-04-08 16:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 16:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:00:00] [INFO] Checking activity reminders 
[2026-04-08 17:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:00:11] [INFO] Checking activity reminders 
[2026-04-08 17:00:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:00:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:00:30] [INFO] Checking activity reminders 
[2026-04-08 17:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:00:41] [INFO] Checking activity reminders 
[2026-04-08 17:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:01:00] [INFO] Checking activity reminders 
[2026-04-08 17:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:01:11] [INFO] Checking activity reminders 
[2026-04-08 17:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:01:30] [INFO] Checking activity reminders 
[2026-04-08 17:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:01:41] [INFO] Checking activity reminders 
[2026-04-08 17:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:02:00] [INFO] Checking activity reminders 
[2026-04-08 17:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:02:12] [INFO] Checking activity reminders 
[2026-04-08 17:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:02:30] [INFO] Checking activity reminders 
[2026-04-08 17:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:02:42] [INFO] Checking activity reminders 
[2026-04-08 17:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:03:01] [INFO] Checking activity reminders 
[2026-04-08 17:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:03:12] [INFO] Checking activity reminders 
[2026-04-08 17:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:03:31] [INFO] Checking activity reminders 
[2026-04-08 17:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:03:42] [INFO] Checking activity reminders 
[2026-04-08 17:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:04:01] [INFO] Checking activity reminders 
[2026-04-08 17:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:04:12] [INFO] Checking activity reminders 
[2026-04-08 17:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:04:31] [INFO] Checking activity reminders 
[2026-04-08 17:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:04:42] [INFO] Checking activity reminders 
[2026-04-08 17:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:04:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:05:01] [INFO] Checking activity reminders 
[2026-04-08 17:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:05:12] [INFO] Checking activity reminders 
[2026-04-08 17:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:05:22] [INFO] Checking activity reminders 
[2026-04-08 17:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:05:42] [INFO] Checking activity reminders 
[2026-04-08 17:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:05:51] [INFO] Lead update received {"contact_id":"16306","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:05:51] [DEBUG] findByPhone: Found person {"phones":["9367698395"],"found_id":"10283","found_didar_id":"13597","found_name":"خادمی"}
[2026-04-08 17:05:51] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9367698395","found_didar_id":"13597","found_local_id":"10283","found_name":"خادمی"}
[2026-04-08 17:05:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 17:05:51] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9367698395","found_id":"10283","found_didar_id":"13597","exclude_id":2158,"exclude_didar_id":"16306"}
[2026-04-08 17:05:51] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  خادمی (مسئول: لید استخر) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-08 17:05:52] [INFO] Checking activity reminders 
[2026-04-08 17:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:06:13] [INFO] Checking activity reminders 
[2026-04-08 17:06:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:06:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:06:18] [INFO] Lead update received {"contact_id":"16306","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:06:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16306"}
[2026-04-08 17:06:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:06:43] [INFO] Checking activity reminders 
[2026-04-08 17:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:07:13] [INFO] Checking activity reminders 
[2026-04-08 17:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:07:18] [INFO] Checking activity reminders 
[2026-04-08 17:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:07:43] [INFO] Checking activity reminders 
[2026-04-08 17:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:07:48] [INFO] Checking activity reminders 
[2026-04-08 17:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:07:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:07:52","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 17:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:07:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21052","is_new_deal":false}
[2026-04-08 17:07:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:07:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:07:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:07:52] [INFO] getContactPrimaryPhone called {"contact_id":"21052"}
[2026-04-08 17:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:07:52] [INFO] getContactPrimaryPhone result {"contact_id":"21052","person_found":true,"primary_phone":"9190825214"}
[2026-04-08 17:07:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190825214"}
[2026-04-08 17:07:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190825214","contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:07:52"}
[2026-04-08 17:07:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","existing_deal_found":true,"existing_contact_id":"21052","existing_title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:07:52"}
[2026-04-08 17:07:52] [INFO] DealController.save validated payments {"deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:07:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21052","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:07:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d62228a7e8d1.74633056","contact_didar_id":"21052","title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9190825214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم پذیرفته","existing_deal":"YES","existing_deal_id":"local_69d62228a7e8d1.74633056","existing_deal_status":"Pending","server_time":"2026-04-08 17:07:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 17:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:07:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 17:07:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:07:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:08:13] [INFO] Checking activity reminders 
[2026-04-08 17:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:08:18] [INFO] Checking activity reminders 
[2026-04-08 17:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:08:43] [INFO] Checking activity reminders 
[2026-04-08 17:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:08:49] [INFO] Checking activity reminders 
[2026-04-08 17:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:09:13] [INFO] Checking activity reminders 
[2026-04-08 17:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:09:16] [INFO] Activity save request {"post_data":{"contact_id":"16306","deal_id":"local_69d4b66401ed68.74648706","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ناراضی از رفتار شکیبا 15 فرودین امسال \/ بردبار ش شکیبا رو داده \r\nمتقاعد کردم راضی به 6ماهه پرداخت گنه ارسال ش کارت فردا تا 11 بزنه \r\nاز زمان مرزداران با ما همراهه","activity_duration":"30","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:09:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16306","note_was_empty":true}
[2026-04-08 17:09:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"16306","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:16] [INFO] Updating virtual stage {"contact_id":"16306","stage_name":"deal_registered","force":false}
[2026-04-08 17:09:16] [INFO] Virtual stage successfully saved {"contact_id":"16306","stage_name":"deal_registered"}
[2026-04-08 17:09:16] [INFO] Virtual stage updated after activity save {"contact_id":"16306"}
[2026-04-08 17:09:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b66401ed68.74648706","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 17:09:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65a84d225a3.39609472","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65a84d225a3.39609472"}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:16] [INFO] Updating virtual stage {"contact_id":"16306","stage_name":"deal_registered","force":false}
[2026-04-08 17:09:16] [INFO] Virtual stage successfully saved {"contact_id":"16306","stage_name":"deal_registered"}
[2026-04-08 17:09:16] [INFO] Virtual stage updated after activity save {"contact_id":"16306"}
[2026-04-08 17:09:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 17:09:19] [INFO] Checking activity reminders 
[2026-04-08 17:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:09:43] [INFO] Checking activity reminders 
[2026-04-08 17:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:09:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:09:49] [INFO] Checking activity reminders 
[2026-04-08 17:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:10:14] [INFO] Checking activity reminders 
[2026-04-08 17:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:10:19] [INFO] Checking activity reminders 
[2026-04-08 17:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:10:44] [INFO] Checking activity reminders 
[2026-04-08 17:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:10:49] [INFO] Checking activity reminders 
[2026-04-08 17:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:14] [INFO] Checking activity reminders 
[2026-04-08 17:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:19] [INFO] Checking activity reminders 
[2026-04-08 17:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:33] [INFO] Activity save request {"post_data":{"contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سرمایه ملک و باغ در کردستان خریده \/ میخواد ویلا بسازه \r\nدرگیر نقدینگی برای بیزینس خودش نیست \r\nپرزنت 405 \r\nبا استاد مشورت گرفته \r\n6 ماهه 39 \r\nیکساله نقد و چک \r\nپیام در بله \r\nاطلاع میده ","activity_duration":"7","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:11:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21052","note_was_empty":true}
[2026-04-08 17:11:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"21052","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 17:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:33] [INFO] Updating virtual stage {"contact_id":"21052","stage_name":"deal_registered","force":false}
[2026-04-08 17:11:33] [INFO] Virtual stage successfully saved {"contact_id":"21052","stage_name":"deal_registered"}
[2026-04-08 17:11:33] [INFO] Virtual stage updated after activity save {"contact_id":"21052"}
[2026-04-08 17:11:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d62228a7e8d1.74633056","stage":"تماس پیگیری","status_change":null}
[2026-04-08 17:11:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65b0dd682f9.95136105","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65b0dd682f9.95136105"}
[2026-04-08 17:11:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:33] [INFO] Updating virtual stage {"contact_id":"21052","stage_name":"deal_registered","force":false}
[2026-04-08 17:11:33] [INFO] Virtual stage successfully saved {"contact_id":"21052","stage_name":"deal_registered"}
[2026-04-08 17:11:33] [INFO] Virtual stage updated after activity save {"contact_id":"21052"}
[2026-04-08 17:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-08 17:11:44] [INFO] Checking activity reminders 
[2026-04-08 17:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:11:49] [INFO] Checking activity reminders 
[2026-04-08 17:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:57] [INFO] Checking activity reminders 
[2026-04-08 17:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:11:59] [INFO] Checking activity reminders 
[2026-04-08 17:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:12:19] [INFO] Checking activity reminders 
[2026-04-08 17:12:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:12:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:12:29] [INFO] Checking activity reminders 
[2026-04-08 17:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:12:49] [INFO] Checking activity reminders 
[2026-04-08 17:12:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:12:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:12:50] [INFO] Activity save request {"post_data":{"contact_id":"11858","deal_id":"local_69d4ba77b26323.96425165","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"درگیر محصول هست کاشت و کل سرمایه اونجا گذاشته به ناچار نقدینگی نمونه براش 6ماه دوم میاد \/ شهریور برداشت داره پول میاد دستش","activity_duration":"20","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:12:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11858","note_was_empty":true}
[2026-04-08 17:12:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"11858","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:50] [INFO] Updating virtual stage {"contact_id":"11858","stage_name":"deal_registered","force":false}
[2026-04-08 17:12:50] [INFO] Virtual stage successfully saved {"contact_id":"11858","stage_name":"deal_registered"}
[2026-04-08 17:12:50] [INFO] Virtual stage updated after activity save {"contact_id":"11858"}
[2026-04-08 17:12:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4ba77b26323.96425165","stage":"تماس پیگیری","status_change":null}
[2026-04-08 17:12:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65b5ac50958.28585504","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65b5ac50958.28585504"}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:50] [INFO] Updating virtual stage {"contact_id":"11858","stage_name":"deal_registered","force":false}
[2026-04-08 17:12:50] [INFO] Virtual stage successfully saved {"contact_id":"11858","stage_name":"deal_registered"}
[2026-04-08 17:12:50] [INFO] Virtual stage updated after activity save {"contact_id":"11858"}
[2026-04-08 17:12:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11858","person_id":"1214"}
[2026-04-08 17:12:59] [INFO] Checking activity reminders 
[2026-04-08 17:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:13:29] [INFO] Checking activity reminders 
[2026-04-08 17:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:13:59] [INFO] Checking activity reminders 
[2026-04-08 17:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:14:29] [INFO] Checking activity reminders 
[2026-04-08 17:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:14:59] [INFO] Checking activity reminders 
[2026-04-08 17:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:15:29] [INFO] Checking activity reminders 
[2026-04-08 17:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:15:59] [INFO] Checking activity reminders 
[2026-04-08 17:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:16:29] [INFO] Checking activity reminders 
[2026-04-08 17:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:16:59] [INFO] Checking activity reminders 
[2026-04-08 17:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:17:30] [INFO] Checking activity reminders 
[2026-04-08 17:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:17:47] [INFO] Checking activity reminders 
[2026-04-08 17:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-08 17:18:00] [INFO] Checking activity reminders 
[2026-04-08 17:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:18:17] [INFO] Checking activity reminders 
[2026-04-08 17:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:18:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:18:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:18:30] [INFO] Checking activity reminders 
[2026-04-08 17:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:18:47] [INFO] Checking activity reminders 
[2026-04-08 17:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:18:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:18:50","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 17:18:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:18:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15162","is_new_deal":false}
[2026-04-08 17:18:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:18:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:18:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:18:50] [INFO] getContactPrimaryPhone called {"contact_id":"15162"}
[2026-04-08 17:18:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:18:50] [INFO] getContactPrimaryPhone result {"contact_id":"15162","person_found":true,"primary_phone":"9173842950"}
[2026-04-08 17:18:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173842950"}
[2026-04-08 17:18:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173842950","contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:18:50"}
[2026-04-08 17:18:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","existing_deal_found":true,"existing_contact_id":"15162","existing_title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:18:50"}
[2026-04-08 17:18:50] [INFO] DealController.save validated payments {"deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:18:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15162","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:18:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d60579c1e878.40370022","contact_didar_id":"15162","title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9173842950","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی رنجبر","existing_deal":"YES","existing_deal_id":"local_69d60579c1e878.40370022","existing_deal_status":"Pending","server_time":"2026-04-08 17:18:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 17:18:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:18:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d60579c1e878.40370022","contact_id":"15162","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173842950 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 17:18:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:18:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:19:00] [INFO] Checking activity reminders 
[2026-04-08 17:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:19:17] [INFO] Checking activity reminders 
[2026-04-08 17:19:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:19:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:19:30] [INFO] Checking activity reminders 
[2026-04-08 17:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:19:47] [INFO] Checking activity reminders 
[2026-04-08 17:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:20:00] [INFO] Checking activity reminders 
[2026-04-08 17:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:20:21] [INFO] Checking activity reminders 
[2026-04-08 17:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:20:30] [INFO] Checking activity reminders 
[2026-04-08 17:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:20:40] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4bc63630031.16399410","deal_id":"local_69d4bc6363f79","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:20:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d4bc63630031.16399410","note_was_empty":true}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:40] [INFO] Updating virtual stage {"contact_id":"local_69d4bc63630031.16399410","stage_name":"new","force":false}
[2026-04-08 17:20:40] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4bc63630031.16399410","stage_name":"new"}
[2026-04-08 17:20:40] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4bc63630031.16399410"}
[2026-04-08 17:20:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bc6363f79","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 17:20:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65d30873399.84829877","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65d30873399.84829877"}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:40] [INFO] Updating virtual stage {"contact_id":"local_69d4bc63630031.16399410","stage_name":"deal_registered","force":false}
[2026-04-08 17:20:40] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4bc63630031.16399410","stage_name":"deal_registered"}
[2026-04-08 17:20:40] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4bc63630031.16399410"}
[2026-04-08 17:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-08 17:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:20:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:20:46] [INFO] Activity save request {"post_data":{"contact_id":"15162","deal_id":"local_69d60579c1e878.40370022","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"جاده بود \r\nکل سرمایه در سال 404 در کانال با مشاوره استاد ملک خریده مصرفی \r\nسرمایه برای نوسان و سیگنال بازار نداره \r\nمشورت با خانمش ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:20:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15162","note_was_empty":true}
[2026-04-08 17:20:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"15162","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:46] [INFO] Updating virtual stage {"contact_id":"15162","stage_name":"deal_registered","force":false}
[2026-04-08 17:20:46] [INFO] Virtual stage successfully saved {"contact_id":"15162","stage_name":"deal_registered"}
[2026-04-08 17:20:46] [INFO] Virtual stage updated after activity save {"contact_id":"15162"}
[2026-04-08 17:20:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d60579c1e878.40370022","stage":"تماس پیگیری","status_change":null}
[2026-04-08 17:20:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d65d365cc962.84237667","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d65d365cc962.84237667"}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:46] [INFO] Updating virtual stage {"contact_id":"15162","stage_name":"deal_registered","force":false}
[2026-04-08 17:20:46] [INFO] Virtual stage successfully saved {"contact_id":"15162","stage_name":"deal_registered"}
[2026-04-08 17:20:46] [INFO] Virtual stage updated after activity save {"contact_id":"15162"}
[2026-04-08 17:20:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15162","person_id":"34"}
[2026-04-08 17:20:51] [INFO] Checking activity reminders 
[2026-04-08 17:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:21:00] [INFO] Checking activity reminders 
[2026-04-08 17:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:21:24] [INFO] Checking activity reminders 
[2026-04-08 17:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:21:30] [INFO] Checking activity reminders 
[2026-04-08 17:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:21:54] [INFO] Checking activity reminders 
[2026-04-08 17:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:22:00] [INFO] Checking activity reminders 
[2026-04-08 17:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:22:24] [INFO] Checking activity reminders 
[2026-04-08 17:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:22:30] [INFO] Checking activity reminders 
[2026-04-08 17:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:22:54] [INFO] Checking activity reminders 
[2026-04-08 17:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:23:00] [INFO] Checking activity reminders 
[2026-04-08 17:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:23:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:23:24] [INFO] Checking activity reminders 
[2026-04-08 17:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:23:31] [INFO] Checking activity reminders 
[2026-04-08 17:23:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:23:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:23:59] [INFO] Checking activity reminders 
[2026-04-08 17:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:24:01] [INFO] Checking activity reminders 
[2026-04-08 17:24:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:24:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:24:29] [INFO] Checking activity reminders 
[2026-04-08 17:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:24:31] [INFO] Checking activity reminders 
[2026-04-08 17:24:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:24:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:24:59] [INFO] Checking activity reminders 
[2026-04-08 17:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:25:01] [INFO] Checking activity reminders 
[2026-04-08 17:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:25:11] [INFO] Checking activity reminders 
[2026-04-08 17:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:25:29] [INFO] Checking activity reminders 
[2026-04-08 17:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:25:36] [INFO] Lead update received {"contact_id":"local_69d61edc531e17.81711181","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:25:36] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d61edc531e17.81711181"}
[2026-04-08 17:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:25:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:25:41] [INFO] Checking activity reminders 
[2026-04-08 17:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:25:59] [INFO] Checking activity reminders 
[2026-04-08 17:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:26:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:26:11] [INFO] Checking activity reminders 
[2026-04-08 17:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:29] [INFO] Checking activity reminders 
[2026-04-08 17:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:42] [INFO] Checking activity reminders 
[2026-04-08 17:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:54] [INFO] Checking activity reminders 
[2026-04-08 17:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:57] [INFO] Checking activity reminders 
[2026-04-08 17:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:26:58] [INFO] Checking activity reminders 
[2026-04-08 17:26:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:26:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"get_leads"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"get_products"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"check_reminders"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:27:03] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:04] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:04] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"get_leads"}
[2026-04-08 17:27:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:05] [INFO] Checking activity reminders 
[2026-04-08 17:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:27:05] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:07] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:11] [WARNING] Auth check failed - not authenticated {"session_id":"jmggve1d2ge8mqps40vllcieda","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:27:11] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 17:27:11] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 17:27:12] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 17:27:12] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 17:27:12] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 17:27:12] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 17:27:28] [INFO] Checking activity reminders 
[2026-04-08 17:27:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:27:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:27:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:27:35] [INFO] Checking activity reminders 
[2026-04-08 17:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:27:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10606","deal_id":"local_69552fab045021.87776078","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:27:42","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 17:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:27:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10606","is_new_deal":false}
[2026-04-08 17:27:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:27:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:27:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:27:42] [INFO] getContactPrimaryPhone called {"contact_id":"10606"}
[2026-04-08 17:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:27:42] [INFO] getContactPrimaryPhone result {"contact_id":"10606","person_found":true,"primary_phone":"9143410634"}
[2026-04-08 17:27:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143410634"}
[2026-04-08 17:27:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143410634","contact_id":"10606","deal_id":"local_69552fab045021.87776078","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 17:27:42"}
[2026-04-08 17:27:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","existing_deal_found":true,"existing_contact_id":"10606","existing_title":"معامله دوم 9143410634 | کانال VIP","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","server_time":"2026-04-08 17:27:42"}
[2026-04-08 17:27:42] [INFO] DealController.save validated payments {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 17:27:42] [INFO] DealController.save validating permissions {"current_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10606","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 17:27:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69552fab045021.87776078","contact_didar_id":"10606","title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143410634","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":35000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"منصوری","existing_deal":"YES","existing_deal_id":"local_69552fab045021.87776078","existing_deal_status":"Pending","server_time":"2026-04-08 17:27:42","session_data":{"didar_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","name":" محمدحسین حنفی","user_id":"19"}}
[2026-04-08 17:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:27:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69552fab045021.87776078","contact_id":"10606","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","user_name":" محمدحسین حنفی","deal_title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":35000000,"server_time":"2026-04-08 17:27:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:27:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:27:42] [INFO] Checking activity reminders 
[2026-04-08 17:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:27:58] [INFO] Checking activity reminders 
[2026-04-08 17:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:28:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 17:28:18] [INFO] Checking activity reminders 
[2026-04-08 17:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:28:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:29] [INFO] Checking activity reminders 
[2026-04-08 17:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:28:32] [INFO] Checking activity reminders 
[2026-04-08 17:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:28:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10606","deal_id":"local_69552fab045021.87776078","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:28:38","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 17:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10606","is_new_deal":false}
[2026-04-08 17:28:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:28:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:28:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:28:38] [INFO] getContactPrimaryPhone called {"contact_id":"10606"}
[2026-04-08 17:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:38] [INFO] getContactPrimaryPhone result {"contact_id":"10606","person_found":true,"primary_phone":"9143410634"}
[2026-04-08 17:28:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143410634"}
[2026-04-08 17:28:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143410634","contact_id":"10606","deal_id":"local_69552fab045021.87776078","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 17:28:38"}
[2026-04-08 17:28:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","existing_deal_found":true,"existing_contact_id":"10606","existing_title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 17:28:38"}
[2026-04-08 17:28:38] [INFO] DealController.save validated payments {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 17:28:38] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10606","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:28:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69552fab045021.87776078","contact_didar_id":"10606","title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143410634","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":35000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"منصوری","existing_deal":"YES","existing_deal_id":"local_69552fab045021.87776078","existing_deal_status":"Pending","server_time":"2026-04-08 17:28:38","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 17:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69552fab045021.87776078","contact_id":"10606","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":35000000,"server_time":"2026-04-08 17:28:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:28:48] [INFO] Checking activity reminders 
[2026-04-08 17:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:28:59] [INFO] Checking activity reminders 
[2026-04-08 17:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:02] [INFO] Checking activity reminders 
[2026-04-08 17:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:19] [INFO] Checking activity reminders 
[2026-04-08 17:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:29] [INFO] Checking activity reminders 
[2026-04-08 17:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:32] [INFO] Checking activity reminders 
[2026-04-08 17:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:49] [INFO] Checking activity reminders 
[2026-04-08 17:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:29:59] [INFO] Checking activity reminders 
[2026-04-08 17:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:02] [INFO] Checking activity reminders 
[2026-04-08 17:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:19] [INFO] Checking activity reminders 
[2026-04-08 17:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:29] [INFO] Checking activity reminders 
[2026-04-08 17:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:32] [INFO] Checking activity reminders 
[2026-04-08 17:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:50] [INFO] Checking activity reminders 
[2026-04-08 17:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:30:59] [INFO] Checking activity reminders 
[2026-04-08 17:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:02] [INFO] Checking activity reminders 
[2026-04-08 17:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"10606","deal_id":"local_69552fab045021.87776078","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:31:03","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 17:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:31:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"10606","is_new_deal":false}
[2026-04-08 17:31:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:31:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:31:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:31:03] [INFO] getContactPrimaryPhone called {"contact_id":"10606"}
[2026-04-08 17:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:31:03] [INFO] getContactPrimaryPhone result {"contact_id":"10606","person_found":true,"primary_phone":"9143410634"}
[2026-04-08 17:31:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143410634"}
[2026-04-08 17:31:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143410634","contact_id":"10606","deal_id":"local_69552fab045021.87776078","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 17:31:03"}
[2026-04-08 17:31:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","existing_deal_found":true,"existing_contact_id":"10606","existing_title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 17:31:03"}
[2026-04-08 17:31:03] [INFO] DealController.save validated payments {"deal_id":"local_69552fab045021.87776078","contact_id":"10606","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 17:31:03] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"10606","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:31:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69552fab045021.87776078","contact_didar_id":"10606","title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143410634","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":55000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"منصوری","existing_deal":"YES","existing_deal_id":"local_69552fab045021.87776078","existing_deal_status":"Pending","server_time":"2026-04-08 17:31:03","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 17:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:31:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69552fab045021.87776078","contact_id":"10606","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9143410634 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":55000000,"server_time":"2026-04-08 17:31:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-08 17:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:31:20] [INFO] Checking activity reminders 
[2026-04-08 17:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:29] [INFO] Checking activity reminders 
[2026-04-08 17:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:32] [INFO] Checking activity reminders 
[2026-04-08 17:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:50] [INFO] Checking activity reminders 
[2026-04-08 17:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:31:59] [INFO] Checking activity reminders 
[2026-04-08 17:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:02] [INFO] Checking activity reminders 
[2026-04-08 17:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:20] [INFO] Checking activity reminders 
[2026-04-08 17:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:29] [INFO] Checking activity reminders 
[2026-04-08 17:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:32] [INFO] Checking activity reminders 
[2026-04-08 17:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:50] [INFO] Checking activity reminders 
[2026-04-08 17:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:32:59] [INFO] Checking activity reminders 
[2026-04-08 17:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:33:03] [INFO] Checking activity reminders 
[2026-04-08 17:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:33:04] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4baee18f5c8.58385030","deal_id":"local_69d4baee1a9c4","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مجموعه ما رو نمیشناخت ش نذاشته ","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:33:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d4baee18f5c8.58385030","note_was_empty":true}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Updating virtual stage {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"new","force":false}
[2026-04-08 17:33:04] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"new"}
[2026-04-08 17:33:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4baee18f5c8.58385030"}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4baee1a9c4","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-08 17:33:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d660189285a5.14162515","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d660189285a5.14162515"}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:04] [INFO] Updating virtual stage {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"deal_registered","force":false}
[2026-04-08 17:33:04] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"deal_registered"}
[2026-04-08 17:33:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4baee18f5c8.58385030"}
[2026-04-08 17:33:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:33:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:33:21] [INFO] Checking activity reminders 
[2026-04-08 17:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:33:29] [INFO] Checking activity reminders 
[2026-04-08 17:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:33:33] [INFO] Checking activity reminders 
[2026-04-08 17:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:33:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14046","deal_id":"local_69d620e4911173.51473507","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:33:50","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 17:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:33:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14046","is_new_deal":false}
[2026-04-08 17:33:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:33:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:33:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:33:50] [INFO] getContactPrimaryPhone called {"contact_id":"14046"}
[2026-04-08 17:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:33:50] [INFO] getContactPrimaryPhone result {"contact_id":"14046","person_found":true,"primary_phone":"9186996629"}
[2026-04-08 17:33:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9186996629"}
[2026-04-08 17:33:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9186996629","contact_id":"14046","deal_id":"local_69d620e4911173.51473507","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:33:50"}
[2026-04-08 17:33:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d620e4911173.51473507","contact_id":"14046","existing_deal_found":true,"existing_contact_id":"14046","existing_title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:33:50"}
[2026-04-08 17:33:50] [INFO] DealController.save validated payments {"deal_id":"local_69d620e4911173.51473507","contact_id":"14046","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:33:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14046","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:33:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d620e4911173.51473507","contact_didar_id":"14046","title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9186996629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سید رضا موسوی","existing_deal":"YES","existing_deal_id":"local_69d620e4911173.51473507","existing_deal_status":"Pending","server_time":"2026-04-08 17:33:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 17:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:33:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d620e4911173.51473507","contact_id":"14046","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 17:33:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:33:51] [INFO] Checking activity reminders 
[2026-04-08 17:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:00] [INFO] Checking activity reminders 
[2026-04-08 17:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:03] [INFO] Checking activity reminders 
[2026-04-08 17:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:17] [INFO] Activity save request {"post_data":{"contact_id":"14046","deal_id":"local_69d620e4911173.51473507","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nخودش تماس میگیره ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:34:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14046","note_was_empty":true}
[2026-04-08 17:34:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"14046","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:17] [INFO] Updating virtual stage {"contact_id":"14046","stage_name":"deal_registered","force":false}
[2026-04-08 17:34:17] [INFO] Virtual stage successfully saved {"contact_id":"14046","stage_name":"deal_registered"}
[2026-04-08 17:34:17] [INFO] Virtual stage updated after activity save {"contact_id":"14046"}
[2026-04-08 17:34:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d620e4911173.51473507","stage":"تماس پیگیری","status_change":null}
[2026-04-08 17:34:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6606141f081.45585162","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6606141f081.45585162"}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:17] [INFO] Updating virtual stage {"contact_id":"14046","stage_name":"deal_registered","force":false}
[2026-04-08 17:34:17] [INFO] Virtual stage successfully saved {"contact_id":"14046","stage_name":"deal_registered"}
[2026-04-08 17:34:17] [INFO] Virtual stage updated after activity save {"contact_id":"14046"}
[2026-04-08 17:34:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:34:21] [INFO] Checking activity reminders 
[2026-04-08 17:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:30] [INFO] Checking activity reminders 
[2026-04-08 17:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:33] [INFO] Checking activity reminders 
[2026-04-08 17:34:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:34:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:34:51] [INFO] Checking activity reminders 
[2026-04-08 17:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:00] [INFO] Checking activity reminders 
[2026-04-08 17:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:03] [INFO] Checking activity reminders 
[2026-04-08 17:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:21] [INFO] Checking activity reminders 
[2026-04-08 17:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:30] [INFO] Checking activity reminders 
[2026-04-08 17:35:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:33] [INFO] Checking activity reminders 
[2026-04-08 17:35:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:35:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:35:51] [INFO] Checking activity reminders 
[2026-04-08 17:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:00] [INFO] Checking activity reminders 
[2026-04-08 17:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:03] [INFO] Checking activity reminders 
[2026-04-08 17:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:21] [INFO] Checking activity reminders 
[2026-04-08 17:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:30] [INFO] Checking activity reminders 
[2026-04-08 17:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:33] [INFO] Checking activity reminders 
[2026-04-08 17:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:36:52] [INFO] Checking activity reminders 
[2026-04-08 17:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:00] [INFO] Checking activity reminders 
[2026-04-08 17:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:03] [INFO] Checking activity reminders 
[2026-04-08 17:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:22] [INFO] Checking activity reminders 
[2026-04-08 17:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:30] [INFO] Checking activity reminders 
[2026-04-08 17:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:33] [INFO] Checking activity reminders 
[2026-04-08 17:37:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:37:44] [INFO] Activity save request {"post_data":{"contact_id":"local_69d61edc531e17.81711181","deal_id":"local_69d61edc8417b","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بر نداشت","activity_duration":"1","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:37:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d61edc531e17.81711181","note_was_empty":true}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:44] [INFO] Updating virtual stage {"contact_id":"local_69d61edc531e17.81711181","stage_name":"new","force":false}
[2026-04-08 17:37:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69d61edc531e17.81711181","stage_name":"new"}
[2026-04-08 17:37:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d61edc531e17.81711181"}
[2026-04-08 17:37:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61edc8417b","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 17:37:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d661303a4811.09801362","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d661303a4811.09801362"}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:44] [INFO] Updating virtual stage {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered","force":false}
[2026-04-08 17:37:44] [INFO] Virtual stage successfully saved {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered"}
[2026-04-08 17:37:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d61edc531e17.81711181"}
[2026-04-08 17:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-08 17:37:52] [INFO] Checking activity reminders 
[2026-04-08 17:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:00] [INFO] Checking activity reminders 
[2026-04-08 17:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:03] [INFO] Checking activity reminders 
[2026-04-08 17:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:22] [INFO] Checking activity reminders 
[2026-04-08 17:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:30] [INFO] Checking activity reminders 
[2026-04-08 17:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:33] [INFO] Checking activity reminders 
[2026-04-08 17:38:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:52] [INFO] Checking activity reminders 
[2026-04-08 17:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:38:55] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:38:55] [WARNING] Login attempt failed - wrong password {"user_id":"1714","identifier":"شایسته 2"}
[2026-04-08 17:39:00] [INFO] Checking activity reminders 
[2026-04-08 17:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:01] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 17:39:01] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 17:39:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 17:39:03] [INFO] Checking activity reminders 
[2026-04-08 17:39:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:39:22] [INFO] Checking activity reminders 
[2026-04-08 17:39:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:30] [INFO] Checking activity reminders 
[2026-04-08 17:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:32] [INFO] Checking activity reminders 
[2026-04-08 17:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:34] [INFO] Checking activity reminders 
[2026-04-08 17:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:39:52] [INFO] Checking activity reminders 
[2026-04-08 17:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:01] [INFO] Checking activity reminders 
[2026-04-08 17:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:02] [INFO] Checking activity reminders 
[2026-04-08 17:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:04] [INFO] Checking activity reminders 
[2026-04-08 17:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:22] [INFO] Checking activity reminders 
[2026-04-08 17:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:31] [INFO] Checking activity reminders 
[2026-04-08 17:40:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:32] [INFO] Checking activity reminders 
[2026-04-08 17:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:34] [INFO] Checking activity reminders 
[2026-04-08 17:40:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:40:52] [INFO] Checking activity reminders 
[2026-04-08 17:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:01] [INFO] Checking activity reminders 
[2026-04-08 17:41:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:02] [INFO] Checking activity reminders 
[2026-04-08 17:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:04] [INFO] Checking activity reminders 
[2026-04-08 17:41:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:22] [INFO] Checking activity reminders 
[2026-04-08 17:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:31] [INFO] Checking activity reminders 
[2026-04-08 17:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:32] [INFO] Checking activity reminders 
[2026-04-08 17:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:34] [INFO] Checking activity reminders 
[2026-04-08 17:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:41:52] [INFO] Checking activity reminders 
[2026-04-08 17:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:01] [INFO] Checking activity reminders 
[2026-04-08 17:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:02] [INFO] Checking activity reminders 
[2026-04-08 17:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:04] [INFO] Checking activity reminders 
[2026-04-08 17:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:22] [INFO] Checking activity reminders 
[2026-04-08 17:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15063","deal_id":"local_69d64388392898.28840248","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:42:31","session_id":"8nmq1g63ehp649415k040b8ju8"}
[2026-04-08 17:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:42:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15063","is_new_deal":false}
[2026-04-08 17:42:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:42:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:42:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:42:31] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 17:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:42:31] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 17:42:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 17:42:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_69d64388392898.28840248","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 17:42:31"}
[2026-04-08 17:42:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"15063","existing_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 17:42:31"}
[2026-04-08 17:42:31] [INFO] DealController.save validated payments {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:42:31] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:42:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64388392898.28840248","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"YES","existing_deal_id":"local_69d64388392898.28840248","existing_deal_status":"Pending","server_time":"2026-04-08 17:42:31","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 17:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:42:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64388392898.28840248","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-08 17:42:31","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:42:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:42:31] [INFO] Checking activity reminders 
[2026-04-08 17:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:32] [INFO] Checking activity reminders 
[2026-04-08 17:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:34] [INFO] Checking activity reminders 
[2026-04-08 17:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:42:52] [INFO] Checking activity reminders 
[2026-04-08 17:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:01] [INFO] Checking activity reminders 
[2026-04-08 17:43:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:02] [INFO] Checking activity reminders 
[2026-04-08 17:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:04] [INFO] Checking activity reminders 
[2026-04-08 17:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:23] [INFO] Checking activity reminders 
[2026-04-08 17:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:31] [INFO] Checking activity reminders 
[2026-04-08 17:43:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:32] [INFO] Checking activity reminders 
[2026-04-08 17:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:43:34] [INFO] Checking activity reminders 
[2026-04-08 17:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:01] [INFO] Checking activity reminders 
[2026-04-08 17:44:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:02] [INFO] Checking activity reminders 
[2026-04-08 17:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:04] [INFO] Checking activity reminders 
[2026-04-08 17:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:31] [INFO] Checking activity reminders 
[2026-04-08 17:44:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:32] [INFO] Checking activity reminders 
[2026-04-08 17:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:44:34] [INFO] Checking activity reminders 
[2026-04-08 17:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:01] [INFO] Checking activity reminders 
[2026-04-08 17:45:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:02] [INFO] Checking activity reminders 
[2026-04-08 17:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:04] [INFO] Checking activity reminders 
[2026-04-08 17:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:31] [INFO] Checking activity reminders 
[2026-04-08 17:45:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:33] [INFO] Checking activity reminders 
[2026-04-08 17:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:45:34] [INFO] Checking activity reminders 
[2026-04-08 17:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:01] [INFO] Checking activity reminders 
[2026-04-08 17:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:03] [INFO] Checking activity reminders 
[2026-04-08 17:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:04] [INFO] Checking activity reminders 
[2026-04-08 17:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:46:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15063","deal_id":"local_69d64388392898.28840248","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:46:16","session_id":"8nmq1g63ehp649415k040b8ju8"}
[2026-04-08 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:46:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15063","is_new_deal":false}
[2026-04-08 17:46:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:46:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:46:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 17:46:16] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-08 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:46:16] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-08 17:46:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-08 17:46:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_69d64388392898.28840248","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 17:46:16"}
[2026-04-08 17:46:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"15063","existing_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-08 17:46:16"}
[2026-04-08 17:46:16] [INFO] DealController.save validated payments {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:46:16] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:46:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64388392898.28840248","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"YES","existing_deal_id":"local_69d64388392898.28840248","existing_deal_status":"Pending","server_time":"2026-04-08 17:46:16","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-08 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:46:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64388392898.28840248","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-08 17:46:16","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:46:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:46:31] [INFO] Checking activity reminders 
[2026-04-08 17:46:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:33] [INFO] Checking activity reminders 
[2026-04-08 17:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:46:34] [INFO] Checking activity reminders 
[2026-04-08 17:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:01] [INFO] Checking activity reminders 
[2026-04-08 17:47:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:03] [INFO] Checking activity reminders 
[2026-04-08 17:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:05] [INFO] Checking activity reminders 
[2026-04-08 17:47:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:05] [INFO] Activity save request {"post_data":{"contact_id":"15063","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه امسال قصد ندارم بیام تو کانال ","activity_duration":"4","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:47:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-08 17:47:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:47:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"15063","note_was_empty":true}
[2026-04-08 17:47:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"15063","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-08 17:47:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d663611a7b95.28220495","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:47:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69d663611a7b95.28220495"}
[2026-04-08 17:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:47:05] [INFO] Updating virtual stage {"contact_id":"15063","stage_name":"deal_registered","force":false}
[2026-04-08 17:47:05] [INFO] Virtual stage successfully saved {"contact_id":"15063","stage_name":"deal_registered"}
[2026-04-08 17:47:05] [INFO] Virtual stage updated after activity save {"contact_id":"15063"}
[2026-04-08 17:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 17:47:32] [INFO] Checking activity reminders 
[2026-04-08 17:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:33] [INFO] Checking activity reminders 
[2026-04-08 17:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:35] [INFO] Checking activity reminders 
[2026-04-08 17:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:47:38] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4baee18f5c8.58385030","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"مجدد خودش تماس گرفت گفت با خط 9214725725 کانال 3ماه اخر بوده طلا و نقره صندوق انجام داده تو ضرر هست میگه سود بده بعد میام \r\nشغل تجهیزات پزشکی \/ 6ماهه گفتم گفت فعلا نه","activity_duration":"20","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:47:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:47:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:47:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:47:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:47:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d4baee18f5c8.58385030","note_was_empty":true}
[2026-04-08 17:47:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d663821f6d53.51376765","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:47:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:47:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69d663821f6d53.51376765"}
[2026-04-08 17:47:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:47:38] [INFO] Updating virtual stage {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"deal_registered","force":false}
[2026-04-08 17:47:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4baee18f5c8.58385030","stage_name":"deal_registered"}
[2026-04-08 17:47:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4baee18f5c8.58385030"}
[2026-04-08 17:47:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:47:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:48:02] [INFO] Checking activity reminders 
[2026-04-08 17:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:48:05] [INFO] Checking activity reminders 
[2026-04-08 17:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:48:11] [INFO] Lead update received {"contact_id":"local_69d4baee18f5c8.58385030","has_previous_purchase":"1","previous_purchase_number":"9214725725","activity_has_purchase":"not_set","activity_previous_number":"9214725725"}
[2026-04-08 17:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:48:11] [INFO] CRM Transfer Check - Transfer required {"has_previous_purchase":"1","previous_purchase_number":"9214725725","contact_id":"local_69d4baee18f5c8.58385030"}
[2026-04-08 17:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:48:11] [WARNING] No CRM specialist found; referral record not created {"contact_id":"local_69d4baee18f5c8.58385030"}
[2026-04-08 17:48:11] [INFO] Previous purchase detected - owner moved to Amir and referral created {"contact_id":"local_69d4baee18f5c8.58385030","old_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","new_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","crm_specialist_id":null,"previous_purchase_number":"9214725725"}
[2026-04-08 17:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 17:48:32] [INFO] Checking activity reminders 
[2026-04-08 17:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:49:02] [INFO] Checking activity reminders 
[2026-04-08 17:49:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:49:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:49:20] [INFO] Checking activity reminders 
[2026-04-08 17:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:49:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:49:32] [INFO] Checking activity reminders 
[2026-04-08 17:49:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:49:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:49:50] [INFO] Checking activity reminders 
[2026-04-08 17:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:50:02] [INFO] Checking activity reminders 
[2026-04-08 17:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:50:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4b8afd61369.15817585","deal_id":"local_69d4b8afdbb5b","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در شبکه نیست ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:50:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d4b8afd61369.15817585","note_was_empty":true}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:07] [INFO] Updating virtual stage {"contact_id":"local_69d4b8afd61369.15817585","stage_name":"new","force":false}
[2026-04-08 17:50:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b8afd61369.15817585","stage_name":"new"}
[2026-04-08 17:50:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b8afd61369.15817585"}
[2026-04-08 17:50:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b8afdbb5b","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 17:50:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d66417d2aae2.22729722","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69d66417d2aae2.22729722"}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:07] [INFO] Updating virtual stage {"contact_id":"local_69d4b8afd61369.15817585","stage_name":"deal_registered","force":false}
[2026-04-08 17:50:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b8afd61369.15817585","stage_name":"deal_registered"}
[2026-04-08 17:50:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b8afd61369.15817585"}
[2026-04-08 17:50:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b8afd61369.15817585","person_id":"22007"}
[2026-04-08 17:50:20] [INFO] Checking activity reminders 
[2026-04-08 17:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:50:32] [INFO] Checking activity reminders 
[2026-04-08 17:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:50:50] [INFO] Checking activity reminders 
[2026-04-08 17:50:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:50:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:51:02] [INFO] Checking activity reminders 
[2026-04-08 17:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:51:20] [INFO] Checking activity reminders 
[2026-04-08 17:51:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:51:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:51:32] [INFO] Checking activity reminders 
[2026-04-08 17:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:51:52] [INFO] Checking activity reminders 
[2026-04-08 17:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:51:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:52:02] [INFO] Checking activity reminders 
[2026-04-08 17:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:52:22] [INFO] Checking activity reminders 
[2026-04-08 17:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:52:33] [INFO] Checking activity reminders 
[2026-04-08 17:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:52:52] [INFO] Checking activity reminders 
[2026-04-08 17:52:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:52:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:53:03] [INFO] Checking activity reminders 
[2026-04-08 17:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:53:22] [INFO] Checking activity reminders 
[2026-04-08 17:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:53:33] [INFO] Checking activity reminders 
[2026-04-08 17:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:53:45] [INFO] Lead update received {"contact_id":"local_69d4b5440c9de2.23953312","has_previous_purchase":"1","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:53:45] [DEBUG] findByPhone: Found person {"phones":["9398591768"],"found_id":"2371","found_didar_id":"3068","found_name":"پویا حیدری"}
[2026-04-08 17:53:45] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9398591768","found_didar_id":"3068","found_local_id":"2371","found_name":"پویا حیدری"}
[2026-04-08 17:53:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 17:53:45] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9398591768","found_id":"2371","found_didar_id":"3068","exclude_id":22004,"exclude_didar_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:53:45] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای پویا حیدری (مسئول: خانم شایسته) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-08 17:53:52] [INFO] Checking activity reminders 
[2026-04-08 17:53:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:53:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:03] [INFO] Checking activity reminders 
[2026-04-08 17:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:33] [INFO] Checking activity reminders 
[2026-04-08 17:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:43] [INFO] Checking activity reminders 
[2026-04-08 17:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:45] [INFO] Checking activity reminders 
[2026-04-08 17:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:51] [INFO] Checking activity reminders 
[2026-04-08 17:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:54:57] [INFO] Checking activity reminders 
[2026-04-08 17:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:07] [INFO] Checking activity reminders 
[2026-04-08 17:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:07] [INFO] Checking activity reminders 
[2026-04-08 17:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:15] [INFO] Lead update received {"contact_id":"local_69d4b5440c9de2.23953312","has_previous_purchase":"1","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:55:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:15] [DEBUG] findByPhone: Found person {"phones":["9398591768"],"found_id":"2371","found_didar_id":"3068","found_name":"پویا حیدری"}
[2026-04-08 17:55:15] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9398591768","found_didar_id":"3068","found_local_id":"2371","found_name":"پویا حیدری"}
[2026-04-08 17:55:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 17:55:15] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9398591768","found_id":"2371","found_didar_id":"3068","exclude_id":22004,"exclude_didar_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:55:15] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای پویا حیدری (مسئول: خانم شایسته) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-08 17:55:22] [INFO] Lead update received {"contact_id":"local_69d4b5440c9de2.23953312","has_previous_purchase":"1","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:22] [INFO] CRM Transfer Check - Transfer required {"has_previous_purchase":"1","previous_purchase_number":"","contact_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:22] [WARNING] No CRM specialist found; referral record not created {"contact_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:55:22] [INFO] Previous purchase detected - owner moved to Amir and referral created {"contact_id":"local_69d4b5440c9de2.23953312","old_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","new_owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","crm_specialist_id":null,"previous_purchase_number":""}
[2026-04-08 17:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:55:37] [INFO] Checking activity reminders 
[2026-04-08 17:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:37] [INFO] Checking activity reminders 
[2026-04-08 17:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:48] [INFO] Checking activity reminders 
[2026-04-08 17:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:53] [INFO] Checking activity reminders 
[2026-04-08 17:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:57] [INFO] Checking activity reminders 
[2026-04-08 17:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:55:59] [INFO] Checking activity reminders 
[2026-04-08 17:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:56:08] [INFO] Checking activity reminders 
[2026-04-08 17:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14046","deal_id":"local_69d620e4911173.51473507","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 17:56:14","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 17:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:56:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14046","is_new_deal":false}
[2026-04-08 17:56:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 17:56:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:56:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 17:56:14] [INFO] getContactPrimaryPhone called {"contact_id":"14046"}
[2026-04-08 17:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:56:14] [INFO] getContactPrimaryPhone result {"contact_id":"14046","person_found":true,"primary_phone":"9186996629"}
[2026-04-08 17:56:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9186996629"}
[2026-04-08 17:56:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9186996629","contact_id":"14046","deal_id":"local_69d620e4911173.51473507","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:56:14"}
[2026-04-08 17:56:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d620e4911173.51473507","contact_id":"14046","existing_deal_found":true,"existing_contact_id":"14046","existing_title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 17:56:14"}
[2026-04-08 17:56:14] [INFO] DealController.save validated payments {"deal_id":"local_69d620e4911173.51473507","contact_id":"14046","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 17:56:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14046","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 17:56:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d620e4911173.51473507","contact_didar_id":"14046","title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9186996629","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سید رضا موسوی","existing_deal":"YES","existing_deal_id":"local_69d620e4911173.51473507","existing_deal_status":"Pending","server_time":"2026-04-08 17:56:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 17:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:56:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d620e4911173.51473507","contact_id":"14046","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9186996629 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 17:56:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 17:56:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14046","person_id":"4015"}
[2026-04-08 17:56:19] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4b5440c9de2.23953312","deal_id":"local_69d4b5440d51d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عضو کانال با خط 917 هست قبل سال گرفته\r\nارجاع به اقای سهرابی 9177343424\/ 9398591768 ","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:56:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"امیر سهرابی","contact_id":"local_69d4b5440c9de2.23953312","note_was_empty":true}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:19] [INFO] Updating virtual stage {"contact_id":"local_69d4b5440c9de2.23953312","stage_name":"with_purchase","force":false}
[2026-04-08 17:56:19] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b5440c9de2.23953312","stage_name":"with_purchase"}
[2026-04-08 17:56:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:56:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b5440d51d","stage":"برگزاری دوره","status_change":null}
[2026-04-08 17:56:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6658b521064.53697897","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:19] [INFO] Notification created {"notification_id":"634","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","type":"activity_new","show_popup":true}
[2026-04-08 17:56:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6658b521064.53697897"}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:19] [INFO] Updating virtual stage {"contact_id":"local_69d4b5440c9de2.23953312","stage_name":"deal_registered","force":false}
[2026-04-08 17:56:19] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b5440c9de2.23953312","stage_name":"deal_registered"}
[2026-04-08 17:56:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b5440c9de2.23953312"}
[2026-04-08 17:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5440c9de2.23953312","person_id":"22004"}
[2026-04-08 17:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:56:29] [INFO] Checking activity reminders 
[2026-04-08 17:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:38] [INFO] Checking activity reminders 
[2026-04-08 17:56:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 17:56:49] [INFO] Checking activity reminders 
[2026-04-08 17:56:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:50] [INFO] Checking activity reminders 
[2026-04-08 17:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:52] [INFO] Checking activity reminders 
[2026-04-08 17:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 17:57:08] [INFO] Checking activity reminders 
[2026-04-08 17:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:57:22] [INFO] Checking activity reminders 
[2026-04-08 17:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:57:38] [INFO] Checking activity reminders 
[2026-04-08 17:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:57:52] [INFO] Checking activity reminders 
[2026-04-08 17:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:58:08] [INFO] Checking activity reminders 
[2026-04-08 17:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:58:22] [INFO] Checking activity reminders 
[2026-04-08 17:58:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:58:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:58:23] [INFO] Lead update received {"contact_id":"local_69d4b5232a2d13.85694640","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 17:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d4b5232a2d13.85694640"}
[2026-04-08 17:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:38] [INFO] Checking activity reminders 
[2026-04-08 17:58:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:58:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:58:46] [INFO] Activity save request {"post_data":{"contact_id":"local_69d4b5232a2d13.85694640","deal_id":"local_69d4b5233cc2c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عضو کانال بوده \/ جاده بود فردا 10:30 تماس ","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 17:58:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d4b5232a2d13.85694640","note_was_empty":true}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:46] [INFO] Updating virtual stage {"contact_id":"local_69d4b5232a2d13.85694640","stage_name":"new","force":false}
[2026-04-08 17:58:46] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b5232a2d13.85694640","stage_name":"new"}
[2026-04-08 17:58:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b5232a2d13.85694640"}
[2026-04-08 17:58:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b5233cc2c","stage":"تماس پیگیری","status_change":null}
[2026-04-08 17:58:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6661e28a7e5.12784046","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6661e28a7e5.12784046"}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:46] [INFO] Updating virtual stage {"contact_id":"local_69d4b5232a2d13.85694640","stage_name":"deal_registered","force":false}
[2026-04-08 17:58:46] [INFO] Virtual stage successfully saved {"contact_id":"local_69d4b5232a2d13.85694640","stage_name":"deal_registered"}
[2026-04-08 17:58:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d4b5232a2d13.85694640"}
[2026-04-08 17:58:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4b5232a2d13.85694640","person_id":"22003"}
[2026-04-08 17:58:52] [INFO] Checking activity reminders 
[2026-04-08 17:58:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:58:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:59:09] [INFO] Checking activity reminders 
[2026-04-08 17:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:59:22] [INFO] Checking activity reminders 
[2026-04-08 17:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:59:42] [INFO] Checking activity reminders 
[2026-04-08 17:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 17:59:52] [INFO] Checking activity reminders 
[2026-04-08 17:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 17:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:00:17] [INFO] Checking activity reminders 
[2026-04-08 18:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:00:23] [INFO] Checking activity reminders 
[2026-04-08 18:00:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:00:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:00:53] [INFO] Checking activity reminders 
[2026-04-08 18:00:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:00:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:01:13] [INFO] Checking activity reminders 
[2026-04-08 18:01:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:01:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:01:23] [INFO] Checking activity reminders 
[2026-04-08 18:01:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:01:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:01:43] [INFO] Checking activity reminders 
[2026-04-08 18:01:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:01:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:01:53] [INFO] Checking activity reminders 
[2026-04-08 18:01:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:01:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:02:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:02:13] [INFO] Checking activity reminders 
[2026-04-08 18:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:02:23] [INFO] Checking activity reminders 
[2026-04-08 18:02:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:02:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:02:43] [INFO] Checking activity reminders 
[2026-04-08 18:02:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:02:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:02:53] [INFO] Checking activity reminders 
[2026-04-08 18:02:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:02:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:03:14] [INFO] Checking activity reminders 
[2026-04-08 18:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:03:23] [INFO] Checking activity reminders 
[2026-04-08 18:03:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:03:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:03:44] [INFO] Checking activity reminders 
[2026-04-08 18:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:03:53] [INFO] Checking activity reminders 
[2026-04-08 18:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:04:14] [INFO] Checking activity reminders 
[2026-04-08 18:04:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:04:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:04:23] [INFO] Checking activity reminders 
[2026-04-08 18:04:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:04:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:04:44] [INFO] Checking activity reminders 
[2026-04-08 18:04:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:04:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:04:53] [INFO] Checking activity reminders 
[2026-04-08 18:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:04:59] [INFO] Checking activity reminders 
[2026-04-08 18:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:01] [INFO] Checking activity reminders 
[2026-04-08 18:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:05] [INFO] Checking activity reminders 
[2026-04-08 18:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:07] [INFO] Checking activity reminders 
[2026-04-08 18:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:14] [INFO] Checking activity reminders 
[2026-04-08 18:05:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:37] [INFO] Checking activity reminders 
[2026-04-08 18:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:05:44] [INFO] Checking activity reminders 
[2026-04-08 18:05:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:05:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:07] [INFO] Checking activity reminders 
[2026-04-08 18:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:14] [INFO] Checking activity reminders 
[2026-04-08 18:06:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:37] [INFO] Checking activity reminders 
[2026-04-08 18:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:39] [INFO] Checking activity reminders 
[2026-04-08 18:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:42] [INFO] Checking activity reminders 
[2026-04-08 18:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:44] [INFO] Checking activity reminders 
[2026-04-08 18:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:44] [INFO] Checking activity reminders 
[2026-04-08 18:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:06:49] [INFO] Checking activity reminders 
[2026-04-08 18:06:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:06:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:07:14] [INFO] Checking activity reminders 
[2026-04-08 18:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:07:19] [INFO] Checking activity reminders 
[2026-04-08 18:07:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:07:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:07:44] [INFO] Checking activity reminders 
[2026-04-08 18:07:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:07:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:07:49] [INFO] Checking activity reminders 
[2026-04-08 18:07:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:07:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:08:14] [INFO] Checking activity reminders 
[2026-04-08 18:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:08:19] [INFO] Checking activity reminders 
[2026-04-08 18:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:08:44] [INFO] Checking activity reminders 
[2026-04-08 18:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:08:49] [INFO] Checking activity reminders 
[2026-04-08 18:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:09:14] [INFO] Checking activity reminders 
[2026-04-08 18:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:09:19] [INFO] Checking activity reminders 
[2026-04-08 18:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:09:45] [INFO] Checking activity reminders 
[2026-04-08 18:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:09:49] [INFO] Checking activity reminders 
[2026-04-08 18:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:15] [INFO] Checking activity reminders 
[2026-04-08 18:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:20] [INFO] Checking activity reminders 
[2026-04-08 18:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:25] [INFO] Checking activity reminders 
[2026-04-08 18:10:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:27] [INFO] Checking activity reminders 
[2026-04-08 18:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:28] [INFO] Checking activity reminders 
[2026-04-08 18:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:45] [INFO] Checking activity reminders 
[2026-04-08 18:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:10:58] [INFO] Checking activity reminders 
[2026-04-08 18:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:11:15] [INFO] Checking activity reminders 
[2026-04-08 18:11:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:11:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:11:28] [INFO] Checking activity reminders 
[2026-04-08 18:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:11:45] [INFO] Checking activity reminders 
[2026-04-08 18:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:11:58] [INFO] Checking activity reminders 
[2026-04-08 18:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:12:15] [INFO] Checking activity reminders 
[2026-04-08 18:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:12:28] [INFO] Checking activity reminders 
[2026-04-08 18:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:12:45] [INFO] Checking activity reminders 
[2026-04-08 18:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:12:59] [INFO] Checking activity reminders 
[2026-04-08 18:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:13:15] [INFO] Checking activity reminders 
[2026-04-08 18:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:13:29] [INFO] Checking activity reminders 
[2026-04-08 18:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:13:45] [INFO] Checking activity reminders 
[2026-04-08 18:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:13:59] [INFO] Checking activity reminders 
[2026-04-08 18:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:14:15] [INFO] Checking activity reminders 
[2026-04-08 18:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:14:29] [INFO] Checking activity reminders 
[2026-04-08 18:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:14:45] [INFO] Checking activity reminders 
[2026-04-08 18:14:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:14:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:14:59] [INFO] Checking activity reminders 
[2026-04-08 18:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:15:15] [INFO] Checking activity reminders 
[2026-04-08 18:15:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:15:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:15:29] [INFO] Checking activity reminders 
[2026-04-08 18:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:15:45] [INFO] Checking activity reminders 
[2026-04-08 18:15:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:15:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:15:59] [INFO] Checking activity reminders 
[2026-04-08 18:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:16:15] [INFO] Checking activity reminders 
[2026-04-08 18:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:16:29] [INFO] Checking activity reminders 
[2026-04-08 18:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:16:46] [INFO] Checking activity reminders 
[2026-04-08 18:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:16:59] [INFO] Checking activity reminders 
[2026-04-08 18:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:02] [INFO] Checking activity reminders 
[2026-04-08 18:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:07] [INFO] Checking activity reminders 
[2026-04-08 18:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:16] [INFO] Checking activity reminders 
[2026-04-08 18:17:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:29] [INFO] Checking activity reminders 
[2026-04-08 18:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:46] [INFO] Checking activity reminders 
[2026-04-08 18:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:17:59] [INFO] Checking activity reminders 
[2026-04-08 18:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:18:16] [INFO] Checking activity reminders 
[2026-04-08 18:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:18:30] [INFO] Checking activity reminders 
[2026-04-08 18:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:18:46] [INFO] Checking activity reminders 
[2026-04-08 18:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:19:00] [INFO] Checking activity reminders 
[2026-04-08 18:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:19:16] [INFO] Checking activity reminders 
[2026-04-08 18:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:19:30] [INFO] Checking activity reminders 
[2026-04-08 18:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:19:46] [INFO] Checking activity reminders 
[2026-04-08 18:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:20:00] [INFO] Checking activity reminders 
[2026-04-08 18:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:20:30] [INFO] Checking activity reminders 
[2026-04-08 18:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:20:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:20:40","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:20:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9893","is_new_deal":false}
[2026-04-08 18:20:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 18:20:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:20:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:20:40] [INFO] getContactPrimaryPhone called {"contact_id":"9893"}
[2026-04-08 18:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:20:40] [INFO] getContactPrimaryPhone result {"contact_id":"9893","person_found":true,"primary_phone":"9176949407"}
[2026-04-08 18:20:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9176949407"}
[2026-04-08 18:20:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9176949407","contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:20:40"}
[2026-04-08 18:20:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","existing_deal_found":true,"existing_contact_id":"9893","existing_title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:20:40"}
[2026-04-08 18:20:40] [INFO] DealController.save validated payments {"deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 18:20:40] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9893","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:20:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61eff4c42f8.64487449","contact_didar_id":"9893","title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9176949407","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم دیوه","existing_deal":"YES","existing_deal_id":"local_69d61eff4c42f8.64487449","existing_deal_status":"Pending","server_time":"2026-04-08 18:20:40","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:20:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 18:20:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:21:00] [INFO] Checking activity reminders 
[2026-04-08 18:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:21:19] [INFO] Checking activity reminders 
[2026-04-08 18:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:21:30] [INFO] Checking activity reminders 
[2026-04-08 18:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:21:49] [INFO] Checking activity reminders 
[2026-04-08 18:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:22:00] [INFO] Checking activity reminders 
[2026-04-08 18:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:22:10] [INFO] Activity save request {"post_data":{"contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در طلای فیزیکی به دید بلند مدت سرمایه گذاری \r\n404 از کانال راضی بوده ولی سرمایه نداره برای عضویت \r\nارسال لینک 404 در بله \r\nپرزنت 6 ماهه \r\nاطلاع میده ","activity_duration":"8","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 18:22:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9893","note_was_empty":true}
[2026-04-08 18:22:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"9893","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:10] [INFO] Updating virtual stage {"contact_id":"9893","stage_name":"deal_registered","force":false}
[2026-04-08 18:22:10] [INFO] Virtual stage successfully saved {"contact_id":"9893","stage_name":"deal_registered"}
[2026-04-08 18:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"9893"}
[2026-04-08 18:22:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61eff4c42f8.64487449","stage":"تماس پیگیری","status_change":null}
[2026-04-08 18:22:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d66b9a19c974.88539009","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d66b9a19c974.88539009"}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:10] [INFO] Updating virtual stage {"contact_id":"9893","stage_name":"deal_registered","force":false}
[2026-04-08 18:22:10] [INFO] Virtual stage successfully saved {"contact_id":"9893","stage_name":"deal_registered"}
[2026-04-08 18:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"9893"}
[2026-04-08 18:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-08 18:22:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:19] [INFO] Checking activity reminders 
[2026-04-08 18:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:22:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:22:26","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21642","is_new_deal":false}
[2026-04-08 18:22:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 18:22:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:22:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:22:26] [INFO] getContactPrimaryPhone called {"contact_id":"21642"}
[2026-04-08 18:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:26] [INFO] getContactPrimaryPhone result {"contact_id":"21642","person_found":true,"primary_phone":"9191831099"}
[2026-04-08 18:22:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191831099"}
[2026-04-08 18:22:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191831099","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:22:26"}
[2026-04-08 18:22:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","existing_deal_found":true,"existing_contact_id":"21642","existing_title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:22:26"}
[2026-04-08 18:22:26] [INFO] DealController.save validated payments {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-08 18:22:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21642","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:22:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623294d6e61.38953492","contact_didar_id":"21642","title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9191831099","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرام محمدی","existing_deal":"YES","existing_deal_id":"local_69d623294d6e61.38953492","existing_deal_status":"Pending","server_time":"2026-04-08 18:22:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 18:22:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:22:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:30] [INFO] Checking activity reminders 
[2026-04-08 18:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:22:53] [INFO] Activity save request {"post_data":{"contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \/ جواب داد جایی هستم تماس میگیرم ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 18:22:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21642","note_was_empty":true}
[2026-04-08 18:22:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"21642","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:53] [INFO] Updating virtual stage {"contact_id":"21642","stage_name":"deal_registered","force":false}
[2026-04-08 18:22:53] [INFO] Virtual stage successfully saved {"contact_id":"21642","stage_name":"deal_registered"}
[2026-04-08 18:22:53] [INFO] Virtual stage updated after activity save {"contact_id":"21642"}
[2026-04-08 18:22:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d623294d6e61.38953492","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-08 18:22:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d66bc5cf8187.24359043","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69d66bc5cf8187.24359043"}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:22:53] [INFO] Updating virtual stage {"contact_id":"21642","stage_name":"deal_registered","force":false}
[2026-04-08 18:22:53] [INFO] Virtual stage successfully saved {"contact_id":"21642","stage_name":"deal_registered"}
[2026-04-08 18:22:53] [INFO] Virtual stage updated after activity save {"contact_id":"21642"}
[2026-04-08 18:22:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-08 18:23:00] [INFO] Checking activity reminders 
[2026-04-08 18:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:23:30] [INFO] Checking activity reminders 
[2026-04-08 18:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:24:00] [INFO] Checking activity reminders 
[2026-04-08 18:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:24:23] [INFO] Checking activity reminders 
[2026-04-08 18:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:24:36] [INFO] Checking activity reminders 
[2026-04-08 18:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:24:38] [INFO] Checking activity reminders 
[2026-04-08 18:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:24:40] [INFO] Checking activity reminders 
[2026-04-08 18:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:25:00] [INFO] Checking activity reminders 
[2026-04-08 18:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:25:01] [INFO] Checking activity reminders 
[2026-04-08 18:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:25:03] [INFO] Checking activity reminders 
[2026-04-08 18:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:25:33] [INFO] Checking activity reminders 
[2026-04-08 18:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:26:03] [INFO] Checking activity reminders 
[2026-04-08 18:26:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:26:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:26:34] [INFO] Checking activity reminders 
[2026-04-08 18:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:27:04] [INFO] Checking activity reminders 
[2026-04-08 18:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:27:34] [INFO] Checking activity reminders 
[2026-04-08 18:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:28:04] [INFO] Checking activity reminders 
[2026-04-08 18:28:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:28:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:28:34] [INFO] Checking activity reminders 
[2026-04-08 18:28:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:28:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:29:04] [INFO] Checking activity reminders 
[2026-04-08 18:29:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:29:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:29:34] [INFO] Checking activity reminders 
[2026-04-08 18:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:30:04] [INFO] Checking activity reminders 
[2026-04-08 18:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:30:34] [INFO] Checking activity reminders 
[2026-04-08 18:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:31:04] [INFO] Checking activity reminders 
[2026-04-08 18:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:31:35] [INFO] Checking activity reminders 
[2026-04-08 18:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:32:05] [INFO] Checking activity reminders 
[2026-04-08 18:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:32:35] [INFO] Checking activity reminders 
[2026-04-08 18:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:33:05] [INFO] Checking activity reminders 
[2026-04-08 18:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:33:35] [INFO] Checking activity reminders 
[2026-04-08 18:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:34:05] [INFO] Checking activity reminders 
[2026-04-08 18:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:34:35] [INFO] Checking activity reminders 
[2026-04-08 18:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:35:05] [INFO] Checking activity reminders 
[2026-04-08 18:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:35:23] [INFO] Checking activity reminders 
[2026-04-08 18:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:35:53] [INFO] Checking activity reminders 
[2026-04-08 18:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:36:23] [INFO] Checking activity reminders 
[2026-04-08 18:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:36:31] [INFO] Checking activity reminders 
[2026-04-08 18:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:36:32] [INFO] Checking activity reminders 
[2026-04-08 18:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:36:53] [INFO] Checking activity reminders 
[2026-04-08 18:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:37:02] [INFO] Checking activity reminders 
[2026-04-08 18:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:37:06] [INFO] Activity save request {"post_data":{"contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"11700میزنه نقد الباقی چک 45 روزه ارسال چک فردا ","activity_duration":"25","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 18:37:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2744","note_was_empty":true}
[2026-04-08 18:37:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"2744","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:06] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 18:37:06] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 18:37:06] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 18:37:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bac8ebeca7.58841075","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-08 18:37:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d66f1a87df03.06528535","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69d66f1a87df03.06528535"}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:06] [INFO] Updating virtual stage {"contact_id":"2744","stage_name":"deal_registered","force":false}
[2026-04-08 18:37:06] [INFO] Virtual stage successfully saved {"contact_id":"2744","stage_name":"deal_registered"}
[2026-04-08 18:37:06] [INFO] Virtual stage updated after activity save {"contact_id":"2744"}
[2026-04-08 18:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:37:23] [INFO] Checking activity reminders 
[2026-04-08 18:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:37:32] [INFO] Checking activity reminders 
[2026-04-08 18:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:37:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:37:53] [INFO] Checking activity reminders 
[2026-04-08 18:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:38:02] [INFO] Checking activity reminders 
[2026-04-08 18:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:38:23] [INFO] Checking activity reminders 
[2026-04-08 18:38:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:38:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:38:32] [INFO] Checking activity reminders 
[2026-04-08 18:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:38:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"20648","deal_id":"local_69d63669ee3ed6.98206010","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:38:52","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"20648","is_new_deal":false}
[2026-04-08 18:38:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-08 18:38:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 18:38:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-08 18:38:52] [INFO] getContactPrimaryPhone called {"contact_id":"20648"}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:52] [INFO] getContactPrimaryPhone result {"contact_id":"20648","person_found":true,"primary_phone":"9123452349"}
[2026-04-08 18:38:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123452349"}
[2026-04-08 18:38:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123452349","contact_id":"20648","deal_id":"local_69d63669ee3ed6.98206010","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:38:52"}
[2026-04-08 18:38:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d63669ee3ed6.98206010","contact_id":"20648","existing_deal_found":true,"existing_contact_id":"20648","existing_title":"معامله دوم 9123452349 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:38:52"}
[2026-04-08 18:38:52] [INFO] DealController.save validated payments {"deal_id":"local_69d63669ee3ed6.98206010","contact_id":"20648","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-08 18:38:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20648","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:38:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d63669ee3ed6.98206010","contact_didar_id":"20648","title":"معامله دوم 9123452349 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9123452349","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد اسدی","existing_deal":"YES","existing_deal_id":"local_69d63669ee3ed6.98206010","existing_deal_status":"Pending","server_time":"2026-04-08 18:38:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:52] [INFO] Deal success processed {"contact_id":"20648","person_name":"محمد اسدی","products_count":1}
[2026-04-08 18:38:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d63669ee3ed6.98206010","contact_id":"20648","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9123452349 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-08 18:38:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:52] [INFO] Updating virtual stage {"contact_id":"20648","stage_name":"with_purchase","force":true}
[2026-04-08 18:38:52] [INFO] Virtual stage successfully saved {"contact_id":"20648","stage_name":"with_purchase"}
[2026-04-08 18:38:52] [INFO] Moved contact out of kariz after successful deal {"contact_id":"20648","deal_id":"local_69d63669ee3ed6.98206010","target_stage":"with_purchase"}
[2026-04-08 18:38:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20648","person_id":"19221"}
[2026-04-08 18:38:53] [INFO] Checking activity reminders 
[2026-04-08 18:38:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:38:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:02] [INFO] Checking activity reminders 
[2026-04-08 18:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:20] [INFO] Checking activity reminders 
[2026-04-08 18:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:28] [INFO] Checking activity reminders 
[2026-04-08 18:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:39:28","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 18:39:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:39:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2744","is_new_deal":false}
[2026-04-08 18:39:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:39:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:39:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:39:28] [INFO] getContactPrimaryPhone called {"contact_id":"2744"}
[2026-04-08 18:39:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:39:28] [INFO] getContactPrimaryPhone result {"contact_id":"2744","person_found":true,"primary_phone":"9193101285"}
[2026-04-08 18:39:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193101285"}
[2026-04-08 18:39:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193101285","contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 18:39:28"}
[2026-04-08 18:39:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","existing_deal_found":true,"existing_contact_id":"2744","existing_title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 18:39:28"}
[2026-04-08 18:39:28] [INFO] DealController.save validated payments {"deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-08 18:39:28] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2744","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:39:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4bac8ebeca7.58841075","contact_didar_id":"2744","title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9193101285","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":12000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رضا کمال فر","existing_deal":"YES","existing_deal_id":"local_69d4bac8ebeca7.58841075","existing_deal_status":"Pending","server_time":"2026-04-08 18:39:28","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 18:39:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:39:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":12000000,"server_time":"2026-04-08 18:39:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:39:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:39:31] [INFO] Checking activity reminders 
[2026-04-08 18:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:32] [INFO] Checking activity reminders 
[2026-04-08 18:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:39:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 18:40:03] [INFO] Checking activity reminders 
[2026-04-08 18:40:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:10] [INFO] Checking activity reminders 
[2026-04-08 18:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:16] [INFO] Checking activity reminders 
[2026-04-08 18:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:19] [INFO] Checking activity reminders 
[2026-04-08 18:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:21] [INFO] Checking activity reminders 
[2026-04-08 18:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-08 18:40:33] [INFO] Checking activity reminders 
[2026-04-08 18:40:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:40:37","session_id":"r98m2ub14oumakeuadcrqqiltk"}
[2026-04-08 18:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:40:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2744","is_new_deal":false}
[2026-04-08 18:40:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:40:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:40:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-08 18:40:37] [INFO] getContactPrimaryPhone called {"contact_id":"2744"}
[2026-04-08 18:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:40:37] [INFO] getContactPrimaryPhone result {"contact_id":"2744","person_found":true,"primary_phone":"9193101285"}
[2026-04-08 18:40:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193101285"}
[2026-04-08 18:40:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193101285","contact_id":"2744","deal_id":"local_69d4bac8ebeca7.58841075","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 18:40:37"}
[2026-04-08 18:40:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","existing_deal_found":true,"existing_contact_id":"2744","existing_title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-08 18:40:37"}
[2026-04-08 18:40:37] [INFO] DealController.save validated payments {"deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-08 18:40:37] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2744","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:40:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4bac8ebeca7.58841075","contact_didar_id":"2744","title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9193101285","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رضا کمال فر","existing_deal":"YES","existing_deal_id":"local_69d4bac8ebeca7.58841075","existing_deal_status":"Pending","server_time":"2026-04-08 18:40:37","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-08 18:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:40:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4bac8ebeca7.58841075","contact_id":"2744","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9193101285 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-08 18:40:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:40:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-08 18:40:51] [INFO] Checking activity reminders 
[2026-04-08 18:40:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:40:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:40:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:41:21] [INFO] Checking activity reminders 
[2026-04-08 18:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:41:52] [INFO] Checking activity reminders 
[2026-04-08 18:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:42:22] [INFO] Checking activity reminders 
[2026-04-08 18:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"check_reminders"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"get_products"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"get_deals"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"get_deals"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:47] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:52] [INFO] Checking activity reminders 
[2026-04-08 18:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:42:58] [WARNING] Auth check failed - not authenticated {"session_id":"8nmq1g63ehp649415k040b8ju8","session_keys":[],"action":"log_client_event"}
[2026-04-08 18:42:58] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-08 18:42:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 18:43:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 18:43:22] [INFO] Checking activity reminders 
[2026-04-08 18:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:43:29] [INFO] Checking activity reminders 
[2026-04-08 18:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:43:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1817","deal_id":"local_69d620b6a95bd5.72561239","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:43:49","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:43:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1817","is_new_deal":false}
[2026-04-08 18:43:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 18:43:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:43:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:43:49] [INFO] getContactPrimaryPhone called {"contact_id":"1817"}
[2026-04-08 18:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:43:49] [INFO] getContactPrimaryPhone result {"contact_id":"1817","person_found":true,"primary_phone":"9185838623"}
[2026-04-08 18:43:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9185838623"}
[2026-04-08 18:43:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9185838623","contact_id":"1817","deal_id":"local_69d620b6a95bd5.72561239","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:43:49"}
[2026-04-08 18:43:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d620b6a95bd5.72561239","contact_id":"1817","existing_deal_found":true,"existing_contact_id":"1817","existing_title":"معامله سوم 9185838623 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:43:49"}
[2026-04-08 18:43:49] [INFO] DealController.save validated payments {"deal_id":"local_69d620b6a95bd5.72561239","contact_id":"1817","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-08 18:43:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1817","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:43:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d620b6a95bd5.72561239","contact_didar_id":"1817","title":"معامله سوم 9185838623 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9185838623","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان محمدی","existing_deal":"YES","existing_deal_id":"local_69d620b6a95bd5.72561239","existing_deal_status":"Pending","server_time":"2026-04-08 18:43:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:43:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d620b6a95bd5.72561239","contact_id":"1817","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9185838623 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 18:43:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:43:52] [INFO] Checking activity reminders 
[2026-04-08 18:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:43:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 18:44:04] [INFO] Checking activity reminders 
[2026-04-08 18:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-08 18:44:27] [INFO] Checking activity reminders 
[2026-04-08 18:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:44:34] [INFO] Checking activity reminders 
[2026-04-08 18:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:44:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:44:57] [INFO] Checking activity reminders 
[2026-04-08 18:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:45:20] [INFO] Checking activity reminders 
[2026-04-08 18:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:45:27] [INFO] Checking activity reminders 
[2026-04-08 18:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:45:51] [INFO] Checking activity reminders 
[2026-04-08 18:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:45:57] [INFO] Checking activity reminders 
[2026-04-08 18:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:46:21] [INFO] Checking activity reminders 
[2026-04-08 18:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:46:27] [INFO] Checking activity reminders 
[2026-04-08 18:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:46:51] [INFO] Checking activity reminders 
[2026-04-08 18:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:46:57] [INFO] Checking activity reminders 
[2026-04-08 18:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:47:21] [INFO] Checking activity reminders 
[2026-04-08 18:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:47:27] [INFO] Checking activity reminders 
[2026-04-08 18:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:47:51] [INFO] Checking activity reminders 
[2026-04-08 18:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:47:57] [INFO] Checking activity reminders 
[2026-04-08 18:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:48:21] [INFO] Checking activity reminders 
[2026-04-08 18:48:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:48:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:48:27] [INFO] Checking activity reminders 
[2026-04-08 18:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:48:51] [INFO] Checking activity reminders 
[2026-04-08 18:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:48:57] [INFO] Checking activity reminders 
[2026-04-08 18:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:49:21] [INFO] Checking activity reminders 
[2026-04-08 18:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:49:27] [INFO] Checking activity reminders 
[2026-04-08 18:49:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:49:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:49:51] [INFO] Checking activity reminders 
[2026-04-08 18:49:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:49:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:49:58] [INFO] Checking activity reminders 
[2026-04-08 18:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:50:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 18:50:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16318","deal_id":"local_69d602c6484f17.64654312","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:50:18","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:50:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16318","is_new_deal":false}
[2026-04-08 18:50:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 18:50:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:50:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:50:18] [INFO] getContactPrimaryPhone called {"contact_id":"16318"}
[2026-04-08 18:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:50:18] [INFO] getContactPrimaryPhone result {"contact_id":"16318","person_found":true,"primary_phone":"9166432935"}
[2026-04-08 18:50:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9166432935"}
[2026-04-08 18:50:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9166432935","contact_id":"16318","deal_id":"local_69d602c6484f17.64654312","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:50:18"}
[2026-04-08 18:50:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d602c6484f17.64654312","contact_id":"16318","existing_deal_found":true,"existing_contact_id":"16318","existing_title":"معامله دوم 9166432935 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:50:18"}
[2026-04-08 18:50:18] [INFO] DealController.save validated payments {"deal_id":"local_69d602c6484f17.64654312","contact_id":"16318","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 18:50:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16318","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:50:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d602c6484f17.64654312","contact_didar_id":"16318","title":"معامله دوم 9166432935 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9166432935","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین محسن پوریانی","existing_deal":"YES","existing_deal_id":"local_69d602c6484f17.64654312","existing_deal_status":"Pending","server_time":"2026-04-08 18:50:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:50:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d602c6484f17.64654312","contact_id":"16318","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9166432935 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 18:50:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:50:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 18:50:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-08 18:50:20] [INFO] generateDealTitle result {"contact_id":"15063","person_name":"اقای شهابی","mobile":"9155979503","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9155979503"}
[2026-04-08 18:50:21] [INFO] Checking activity reminders 
[2026-04-08 18:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:50:28] [INFO] Checking activity reminders 
[2026-04-08 18:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:50:58] [INFO] Checking activity reminders 
[2026-04-08 18:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:51:28] [INFO] Checking activity reminders 
[2026-04-08 18:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:51:33] [INFO] Activity save request {"post_data":{"contact_id":"16318","deal_id":"local_69d602c6484f17.64654312","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در کانال 404 استاد فقط سیگنال طلا میداد و من چون کارم ملک و زمین و باغ هست خیلی نمیتونستم استفاده کنم \r\nدر حال حاظر سرمایه در ملک هست \/ قصد فروش ندارم \r\nدر صورت تمایل تماس میگیرم ","activity_duration":"6","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 18:51:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16318","note_was_empty":true}
[2026-04-08 18:51:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"16318","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:33] [INFO] Updating virtual stage {"contact_id":"16318","stage_name":"deal_registered","force":false}
[2026-04-08 18:51:33] [INFO] Virtual stage successfully saved {"contact_id":"16318","stage_name":"deal_registered"}
[2026-04-08 18:51:33] [INFO] Virtual stage updated after activity save {"contact_id":"16318"}
[2026-04-08 18:51:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d602c6484f17.64654312","stage":"تماس پیگیری","status_change":null}
[2026-04-08 18:51:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d6727deb82d8.57836453","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d6727deb82d8.57836453"}
[2026-04-08 18:51:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:33] [INFO] Updating virtual stage {"contact_id":"16318","stage_name":"deal_registered","force":false}
[2026-04-08 18:51:33] [INFO] Virtual stage successfully saved {"contact_id":"16318","stage_name":"deal_registered"}
[2026-04-08 18:51:33] [INFO] Virtual stage updated after activity save {"contact_id":"16318"}
[2026-04-08 18:51:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16318","person_id":"2892"}
[2026-04-08 18:51:48] [INFO] Checking activity reminders 
[2026-04-08 18:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:51:50] [INFO] Checking activity reminders 
[2026-04-08 18:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:51:53] [INFO] Checking activity reminders 
[2026-04-08 18:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:52:24] [INFO] Checking activity reminders 
[2026-04-08 18:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:52:28] [INFO] Checking activity reminders 
[2026-04-08 18:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:52:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 18:52:54] [INFO] Checking activity reminders 
[2026-04-08 18:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:53:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 18:53:03","session_id":"1d2ufcu43kbt5vm4u9qkbqgn1p"}
[2026-04-08 18:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20744","is_new_deal":false}
[2026-04-08 18:53:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 18:53:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:53:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 18:53:03] [INFO] getContactPrimaryPhone called {"contact_id":"20744"}
[2026-04-08 18:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:03] [INFO] getContactPrimaryPhone result {"contact_id":"20744","person_found":true,"primary_phone":"9166643093"}
[2026-04-08 18:53:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9166643093"}
[2026-04-08 18:53:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9166643093","contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:53:03"}
[2026-04-08 18:53:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","existing_deal_found":true,"existing_contact_id":"20744","existing_title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-08 18:53:03"}
[2026-04-08 18:53:03] [INFO] DealController.save validated payments {"deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-08 18:53:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20744","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-08 18:53:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d602f7b47959.98792636","contact_didar_id":"20744","title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9166643093","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیلی","existing_deal":"YES","existing_deal_id":"local_69d602f7b47959.98792636","existing_deal_status":"Pending","server_time":"2026-04-08 18:53:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-08 18:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d602f7b47959.98792636","contact_id":"20744","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9166643093 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 18:53:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 18:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Activity save request {"post_data":{"contact_id":"20744","deal_id":"local_69d602f7b47959.98792636","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تماس مجدد بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-08 18:53:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20744","note_was_empty":true}
[2026-04-08 18:53:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"20744","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Updating virtual stage {"contact_id":"20744","stage_name":"deal_registered","force":false}
[2026-04-08 18:53:18] [INFO] Virtual stage successfully saved {"contact_id":"20744","stage_name":"deal_registered"}
[2026-04-08 18:53:18] [INFO] Virtual stage updated after activity save {"contact_id":"20744"}
[2026-04-08 18:53:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d602f7b47959.98792636","stage":"تماس پیگیری","status_change":null}
[2026-04-08 18:53:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d672e60b9a28.73293721","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d672e60b9a28.73293721"}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:53:18] [INFO] Updating virtual stage {"contact_id":"20744","stage_name":"deal_registered","force":false}
[2026-04-08 18:53:18] [INFO] Virtual stage successfully saved {"contact_id":"20744","stage_name":"deal_registered"}
[2026-04-08 18:53:18] [INFO] Virtual stage updated after activity save {"contact_id":"20744"}
[2026-04-08 18:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20744","person_id":"2855"}
[2026-04-08 18:55:16] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-08 18:55:16] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-08 18:55:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 18:55:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 18:55:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 18:55:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 18:55:47] [INFO] Checking activity reminders 
[2026-04-08 18:55:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:55:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:56:17] [INFO] Checking activity reminders 
[2026-04-08 18:56:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:56:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:56:47] [INFO] Checking activity reminders 
[2026-04-08 18:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:56:49] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9122410930","09122410930"]}
[2026-04-08 18:56:49] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9122410930","09122410930"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-08 18:56:49] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9122410930","full_name":"لید جدید"}
[2026-04-08 18:56:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-08 18:56:49] [INFO] Notification created {"notification_id":"635","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-08 18:57:45] [INFO] Checking activity reminders 
[2026-04-08 18:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:57:57] [INFO] Checking activity reminders 
[2026-04-08 18:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:58:00] [INFO] Lead update received {"contact_id":"16306","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 18:58:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:58:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:58:00] [DEBUG] findByPhone: Found person {"phones":["9367698395"],"found_id":"10283","found_didar_id":"13597","found_name":"خادمی"}
[2026-04-08 18:58:00] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9367698395","found_didar_id":"13597","found_local_id":"10283","found_name":"خادمی"}
[2026-04-08 18:58:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 18:58:00] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9367698395","found_id":"10283","found_didar_id":"13597","exclude_id":2158,"exclude_didar_id":"16306"}
[2026-04-08 18:58:00] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  خادمی (مسئول: لید استخر) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-08 18:58:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 18:58:28] [INFO] Checking activity reminders 
[2026-04-08 18:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:58:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21512","person_id":"13597"}
[2026-04-08 18:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 18:58:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 18:58:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13597","person_id":"10283"}
[2026-04-08 18:59:03] [INFO] Checking activity reminders 
[2026-04-08 18:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:59:18] [INFO] Checking activity reminders 
[2026-04-08 18:59:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:59:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:59:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:59:30] [INFO] Checking activity reminders 
[2026-04-08 18:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 18:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 18:59:33] [INFO] Lead update received {"contact_id":"16306","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 18:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 18:59:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"16306"}
[2026-04-08 18:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-08 19:02:42] [INFO] Checking activity reminders 
[2026-04-08 19:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:02:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 19:02:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 19:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 19:03:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4baee18f5c8.58385030","person_id":"22011"}
[2026-04-08 19:03:18] [INFO] Checking activity reminders 
[2026-04-08 19:03:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:03:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:03:50] [INFO] Checking activity reminders 
[2026-04-08 19:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:04:16] [INFO] Checking activity reminders 
[2026-04-08 19:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:04:46] [INFO] Checking activity reminders 
[2026-04-08 19:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:05:36] [INFO] Checking activity reminders 
[2026-04-08 19:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:05:48] [INFO] Checking activity reminders 
[2026-04-08 19:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:05:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:06:16] [INFO] Checking activity reminders 
[2026-04-08 19:06:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:06:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:06:24] [INFO] Lead update received {"contact_id":"3068","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 19:06:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:06:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:06:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:06:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"3068"}
[2026-04-08 19:06:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:09:16] [INFO] Checking activity reminders 
[2026-04-08 19:09:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:09:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-08 19:11:34] [INFO] Checking activity reminders 
[2026-04-08 19:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 19:12:25] [INFO] Checking activity reminders 
[2026-04-08 19:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:12:37] [INFO] Lead update received {"contact_id":"4786","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 19:12:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 19:12:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 19:12:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 19:12:37] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4786"}
[2026-04-08 19:12:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 19:13:36] [INFO] Checking activity reminders 
[2026-04-08 19:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:13:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-08 19:13:56] [INFO] Checking activity reminders 
[2026-04-08 19:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:14:16] [INFO] Lead update received {"contact_id":"647","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 19:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-08 19:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-08 19:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-08 19:14:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"647"}
[2026-04-08 19:14:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-08 19:15:07] [INFO] Checking activity reminders 
[2026-04-08 19:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:15:38] [INFO] Checking activity reminders 
[2026-04-08 19:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:15:41] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9900332887","09900332887"]}
[2026-04-08 19:15:41] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9900332887","09900332887"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-08 19:15:41] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9900332887","full_name":"لید جدید"}
[2026-04-08 19:15:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-08 19:15:41] [INFO] Notification created {"notification_id":"636","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-08 19:16:24] [INFO] Checking activity reminders 
[2026-04-08 19:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:16:54] [INFO] Checking activity reminders 
[2026-04-08 19:16:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:16:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:17:28] [INFO] Checking activity reminders 
[2026-04-08 19:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:17:34] [INFO] Checking activity reminders 
[2026-04-08 19:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:17:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-08 19:18:17] [INFO] Checking activity reminders 
[2026-04-08 19:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:18:24] [INFO] Checking activity reminders 
[2026-04-08 19:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:18:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 19:18:54] [INFO] Checking activity reminders 
[2026-04-08 19:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:19:03] [INFO] Checking activity reminders 
[2026-04-08 19:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:19:33] [INFO] Checking activity reminders 
[2026-04-08 19:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:20:05] [INFO] Checking activity reminders 
[2026-04-08 19:20:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:20:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:20:35] [INFO] Checking activity reminders 
[2026-04-08 19:20:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:20:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:20:53] [INFO] Checking activity reminders 
[2026-04-08 19:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:21:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-08 19:21:23] [INFO] Checking activity reminders 
[2026-04-08 19:21:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:21:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:21:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-08 19:21:53] [INFO] Checking activity reminders 
[2026-04-08 19:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:22:29] [INFO] Checking activity reminders 
[2026-04-08 19:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:22:51] [INFO] Checking activity reminders 
[2026-04-08 19:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:23:37] [WARNING] Auth check failed - not authenticated {"session_id":"m3r4k5bf3vsbakdbti5rob1u7e","session_keys":[],"action":"log_client_event"}
[2026-04-08 19:23:37] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"admin"}
[2026-04-08 19:23:37] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":true}
[2026-04-08 19:23:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 19:23:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:23:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:23:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:23:39] [INFO] Checking activity reminders 
[2026-04-08 19:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:23:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:23:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:23:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:23:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 19:23:54] [WARNING] Auth check failed - not authenticated {"session_id":"m3r4k5bf3vsbakdbti5rob1u7e","session_keys":[],"action":"log_client_event"}
[2026-04-08 19:23:54] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-08 19:23:54] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-08 19:23:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 19:23:54] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:23:54] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:23:54] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:23:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:23:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:23:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:24:09] [INFO] Checking activity reminders 
[2026-04-08 19:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:24:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:24:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:24:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:24:24] [INFO] Checking activity reminders 
[2026-04-08 19:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:24:55] [INFO] Checking activity reminders 
[2026-04-08 19:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:25:14] [INFO] Checking activity reminders 
[2026-04-08 19:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:25:25] [INFO] Checking activity reminders 
[2026-04-08 19:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:25:32] [INFO] Lead update received {"contact_id":"10252","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 19:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 19:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 19:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 19:25:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"10252"}
[2026-04-08 19:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 19:25:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:25:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:25:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:25:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:25:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:25:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:25:55] [INFO] Checking activity reminders 
[2026-04-08 19:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:26:33] [INFO] Checking activity reminders 
[2026-04-08 19:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:26:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:26:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:26:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:26:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:26:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:26:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:27:03] [INFO] Checking activity reminders 
[2026-04-08 19:27:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:27:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:27:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 19:27:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 19:27:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 19:27:33] [INFO] Checking activity reminders 
[2026-04-08 19:27:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:27:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:28:30] [INFO] Checking activity reminders 
[2026-04-08 19:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:51:33] [INFO] Checking activity reminders 
[2026-04-08 19:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:52:04] [INFO] Checking activity reminders 
[2026-04-08 19:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:53:56] [INFO] Checking activity reminders 
[2026-04-08 19:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:54:26] [INFO] Checking activity reminders 
[2026-04-08 19:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:54:57] [INFO] Checking activity reminders 
[2026-04-08 19:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:55:27] [INFO] Checking activity reminders 
[2026-04-08 19:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:56:03] [INFO] Checking activity reminders 
[2026-04-08 19:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:56:34] [INFO] Checking activity reminders 
[2026-04-08 19:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:57:04] [INFO] Checking activity reminders 
[2026-04-08 19:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:57:34] [INFO] Checking activity reminders 
[2026-04-08 19:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:58:05] [INFO] Checking activity reminders 
[2026-04-08 19:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 19:59:48] [INFO] Checking activity reminders 
[2026-04-08 19:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 19:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:03:07] [INFO] Checking activity reminders 
[2026-04-08 20:03:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:03:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:17:26] [INFO] Checking activity reminders 
[2026-04-08 20:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:17:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 20:17:56] [INFO] Checking activity reminders 
[2026-04-08 20:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:18:10] [INFO] Checking activity reminders 
[2026-04-08 20:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:18:20] [INFO] Checking activity reminders 
[2026-04-08 20:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:18:59] [INFO] Checking activity reminders 
[2026-04-08 20:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:19:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:10] [INFO] generateDealTitle result {"contact_id":"7337","person_name":"امیر کریمی مقدم","mobile":"9228286195","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9228286195"}
[2026-04-08 20:19:25] [INFO] Lead update received {"contact_id":"7337","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:19:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7337"}
[2026-04-08 20:19:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:29] [INFO] generateDealTitle result {"contact_id":"7337","person_name":"امیر کریمی مقدم","mobile":"9228286195","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9228286195"}
[2026-04-08 20:19:29] [INFO] Checking activity reminders 
[2026-04-08 20:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:19:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7337","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:19:44","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7337","is_new_deal":true}
[2026-04-08 20:19:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:19:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:19:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:19:44] [INFO] getContactPrimaryPhone called {"contact_id":"7337"}
[2026-04-08 20:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:44] [INFO] getContactPrimaryPhone result {"contact_id":"7337","person_found":true,"primary_phone":"9228286195"}
[2026-04-08 20:19:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9228286195"}
[2026-04-08 20:19:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9228286195","contact_id":"7337","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:19:44"}
[2026-04-08 20:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:44] [INFO] generateDealTitle result {"contact_id":"7337","person_name":"امیر کریمی مقدم","mobile":"9228286195","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9228286195"}
[2026-04-08 20:19:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7337","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:19:44] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7337","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:19:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7337","title":"معامله دوم 9228286195 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9228286195","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"امیر کریمی مقدم","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:19:44","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:19:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7337","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9228286195 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:19:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-08 20:19:55] [INFO] Checking activity reminders 
[2026-04-08 20:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:19:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:14] [INFO] Lead update received {"contact_id":"7663","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7663"}
[2026-04-08 20:20:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:18] [INFO] generateDealTitle result {"contact_id":"7663","person_name":"اقای کورانی","mobile":"9155577529","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155577529"}
[2026-04-08 20:20:26] [INFO] Checking activity reminders 
[2026-04-08 20:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:20:33] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7663","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:20:33","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7663","is_new_deal":true}
[2026-04-08 20:20:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:20:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:20:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:20:33] [INFO] getContactPrimaryPhone called {"contact_id":"7663"}
[2026-04-08 20:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:33] [INFO] getContactPrimaryPhone result {"contact_id":"7663","person_found":true,"primary_phone":"9155577529"}
[2026-04-08 20:20:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155577529"}
[2026-04-08 20:20:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155577529","contact_id":"7663","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:20:33"}
[2026-04-08 20:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:33] [INFO] generateDealTitle result {"contact_id":"7663","person_name":"اقای کورانی","mobile":"9155577529","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155577529"}
[2026-04-08 20:20:33] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7663","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:20:33] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7663","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:20:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7663","title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155577529","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای کورانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:20:33","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:33] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:20:33] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7663","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:20:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:20:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-08 20:20:46] [INFO] Checking activity reminders 
[2026-04-08 20:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-04-08 20:20:58] [INFO] Checking activity reminders 
[2026-04-08 20:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:21:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:20] [INFO] Lead update received {"contact_id":"7587","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7587"}
[2026-04-08 20:21:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:26] [INFO] generateDealTitle result {"contact_id":"7587","person_name":"صدقی صدقی","mobile":"9153350592","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153350592"}
[2026-04-08 20:21:28] [INFO] Checking activity reminders 
[2026-04-08 20:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:21:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7587","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:21:44","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7587","is_new_deal":true}
[2026-04-08 20:21:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:21:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:21:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:21:44] [INFO] getContactPrimaryPhone called {"contact_id":"7587"}
[2026-04-08 20:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:44] [INFO] getContactPrimaryPhone result {"contact_id":"7587","person_found":true,"primary_phone":"9153350592"}
[2026-04-08 20:21:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153350592"}
[2026-04-08 20:21:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153350592","contact_id":"7587","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:21:44"}
[2026-04-08 20:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:44] [INFO] generateDealTitle result {"contact_id":"7587","person_name":"صدقی صدقی","mobile":"9153350592","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153350592"}
[2026-04-08 20:21:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7587","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:21:44] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7587","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:21:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7587","title":"معامله دوم 9153350592 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153350592","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"صدقی صدقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:21:44","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:21:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7587","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9153350592 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:21:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:21:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-08 20:21:57] [INFO] Checking activity reminders 
[2026-04-08 20:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:22:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:22:09] [INFO] Checking activity reminders 
[2026-04-08 20:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:22:39] [INFO] Checking activity reminders 
[2026-04-08 20:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:22:59] [INFO] Lead update received {"contact_id":"2956","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:22:59] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2956"}
[2026-04-08 20:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:23:09] [INFO] Checking activity reminders 
[2026-04-08 20:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:23:39] [INFO] Checking activity reminders 
[2026-04-08 20:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:24:09] [INFO] Checking activity reminders 
[2026-04-08 20:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:24:40] [INFO] Checking activity reminders 
[2026-04-08 20:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:24:47] [INFO] Checking activity reminders 
[2026-04-08 20:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:24:57] [INFO] Checking activity reminders 
[2026-04-08 20:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:25:02] [INFO] Checking activity reminders 
[2026-04-08 20:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:25:15] [INFO] Checking activity reminders 
[2026-04-08 20:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:25:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:26:18] [INFO] Checking activity reminders 
[2026-04-08 20:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:26:57] [INFO] Checking activity reminders 
[2026-04-08 20:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:27:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:27:13] [INFO] Lead update received {"contact_id":"2956","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:27:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2956"}
[2026-04-08 20:27:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 20:27:25] [INFO] Checking activity reminders 
[2026-04-08 20:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:27:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:38] [INFO] Lead update received {"contact_id":"12385","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:38] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"12385"}
[2026-04-08 20:27:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:27:41] [INFO] generateDealTitle result {"contact_id":"12385","person_name":"خانم راستگو","mobile":"9153273834","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153273834"}
[2026-04-08 20:27:55] [INFO] Checking activity reminders 
[2026-04-08 20:27:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:27:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:28:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12385","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:28:01","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:28:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12385","is_new_deal":true}
[2026-04-08 20:28:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:28:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:28:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:28:01] [INFO] getContactPrimaryPhone called {"contact_id":"12385"}
[2026-04-08 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:28:01] [INFO] getContactPrimaryPhone result {"contact_id":"12385","person_found":true,"primary_phone":"9153273834"}
[2026-04-08 20:28:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153273834"}
[2026-04-08 20:28:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153273834","contact_id":"12385","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:28:01"}
[2026-04-08 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:28:01] [INFO] generateDealTitle result {"contact_id":"12385","person_name":"خانم راستگو","mobile":"9153273834","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153273834"}
[2026-04-08 20:28:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12385","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:28:01] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12385","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:28:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12385","title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153273834","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"خانم راستگو","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:28:01","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:28:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:28:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12385","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:28:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-08 20:28:06] [INFO] Checking activity reminders 
[2026-04-08 20:28:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:28:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:28:22] [INFO] Checking activity reminders 
[2026-04-08 20:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:28:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:38] [INFO] Lead update received {"contact_id":"1151","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:38] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1151"}
[2026-04-08 20:28:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:28:43] [INFO] generateDealTitle result {"contact_id":"1151","person_name":"یونس قاسم نیا","mobile":"9153120223","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9153120223"}
[2026-04-08 20:28:52] [INFO] Checking activity reminders 
[2026-04-08 20:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:29:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1151","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:29:01","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:29:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1151","is_new_deal":true}
[2026-04-08 20:29:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:01] [INFO] getContactPrimaryPhone called {"contact_id":"1151"}
[2026-04-08 20:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:29:01] [INFO] getContactPrimaryPhone result {"contact_id":"1151","person_found":true,"primary_phone":"9153120223"}
[2026-04-08 20:29:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153120223"}
[2026-04-08 20:29:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153120223","contact_id":"1151","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:29:01"}
[2026-04-08 20:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:29:01] [INFO] generateDealTitle result {"contact_id":"1151","person_name":"یونس قاسم نیا","mobile":"9153120223","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9153120223"}
[2026-04-08 20:29:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1151","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:29:01] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"1151","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:29:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1151","title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9153120223","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"یونس قاسم نیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:29:01","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:29:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:29:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1151","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:29:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-08 20:29:14] [INFO] Checking activity reminders 
[2026-04-08 20:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:29:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:28] [INFO] Lead update received {"contact_id":"11918","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:29:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11918"}
[2026-04-08 20:29:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:32] [INFO] generateDealTitle result {"contact_id":"11918","person_name":"اقای نوروزی","mobile":"9152874020","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152874020"}
[2026-04-08 20:29:44] [INFO] Checking activity reminders 
[2026-04-08 20:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:29:47] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11918","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:29:47","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11918","is_new_deal":true}
[2026-04-08 20:29:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:29:47] [INFO] getContactPrimaryPhone called {"contact_id":"11918"}
[2026-04-08 20:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:47] [INFO] getContactPrimaryPhone result {"contact_id":"11918","person_found":true,"primary_phone":"9152874020"}
[2026-04-08 20:29:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152874020"}
[2026-04-08 20:29:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152874020","contact_id":"11918","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:29:47"}
[2026-04-08 20:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:47] [INFO] generateDealTitle result {"contact_id":"11918","person_name":"اقای نوروزی","mobile":"9152874020","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9152874020"}
[2026-04-08 20:29:47] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11918","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:29:47] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"11918","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:29:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11918","title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152874020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای نوروزی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:29:47","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:47] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:29:47] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11918","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:29:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:29:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-08 20:29:59] [INFO] Checking activity reminders 
[2026-04-08 20:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:30:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:13] [INFO] Lead update received {"contact_id":"17472","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17472"}
[2026-04-08 20:30:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:15] [INFO] generateDealTitle result {"contact_id":"17472","person_name":"رضایی نوعی","mobile":"9151698544","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151698544"}
[2026-04-08 20:30:29] [INFO] Checking activity reminders 
[2026-04-08 20:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:30:29] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17472","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:30:29","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17472","is_new_deal":true}
[2026-04-08 20:30:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:30:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:30:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:30:29] [INFO] getContactPrimaryPhone called {"contact_id":"17472"}
[2026-04-08 20:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:29] [INFO] getContactPrimaryPhone result {"contact_id":"17472","person_found":true,"primary_phone":"9151698544"}
[2026-04-08 20:30:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151698544"}
[2026-04-08 20:30:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151698544","contact_id":"17472","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:30:29"}
[2026-04-08 20:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:29] [INFO] generateDealTitle result {"contact_id":"17472","person_name":"رضایی نوعی","mobile":"9151698544","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9151698544"}
[2026-04-08 20:30:29] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17472","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:30:29] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"17472","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:30:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17472","title":"معامله دوم 9151698544 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151698544","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"رضایی نوعی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:30:29","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:30:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:29] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:30:29] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17472","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9151698544 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:30:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:30:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-08 20:30:46] [INFO] Checking activity reminders 
[2026-04-08 20:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:30:56] [INFO] Checking activity reminders 
[2026-04-08 20:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:31:04] [INFO] Checking activity reminders 
[2026-04-08 20:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:31:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:16] [INFO] Lead update received {"contact_id":"20908","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20908"}
[2026-04-08 20:31:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:23] [INFO] generateDealTitle result {"contact_id":"20908","person_name":"خانم درویش","mobile":"9031321284","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031321284"}
[2026-04-08 20:31:34] [INFO] Checking activity reminders 
[2026-04-08 20:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:31:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20908","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:31:38","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20908","is_new_deal":true}
[2026-04-08 20:31:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:31:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:31:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:31:38] [INFO] getContactPrimaryPhone called {"contact_id":"20908"}
[2026-04-08 20:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:38] [INFO] getContactPrimaryPhone result {"contact_id":"20908","person_found":true,"primary_phone":"9031321284"}
[2026-04-08 20:31:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9031321284"}
[2026-04-08 20:31:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9031321284","contact_id":"20908","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:31:38"}
[2026-04-08 20:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:38] [INFO] generateDealTitle result {"contact_id":"20908","person_name":"خانم درویش","mobile":"9031321284","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9031321284"}
[2026-04-08 20:31:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20908","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:31:38] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"20908","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:31:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20908","title":"معامله دوم 9031321284 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9031321284","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"خانم درویش","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:31:38","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:31:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:31:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20908","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9031321284 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:31:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:31:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-08 20:31:53] [INFO] Checking activity reminders 
[2026-04-08 20:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:32:04] [INFO] Checking activity reminders 
[2026-04-08 20:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:34:56] [INFO] Checking activity reminders 
[2026-04-08 20:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:35:16] [INFO] Checking activity reminders 
[2026-04-08 20:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:35:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-08 20:35:48] [INFO] Checking activity reminders 
[2026-04-08 20:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:35:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:00] [INFO] Lead update received {"contact_id":"8372","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"8372"}
[2026-04-08 20:36:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:03] [INFO] generateDealTitle result {"contact_id":"8372","person_name":"قاسمی قاسمی","mobile":"9390705497","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9390705497"}
[2026-04-08 20:36:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8372","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:36:18","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8372","is_new_deal":true}
[2026-04-08 20:36:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:36:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:36:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:36:18] [INFO] getContactPrimaryPhone called {"contact_id":"8372"}
[2026-04-08 20:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:18] [INFO] getContactPrimaryPhone result {"contact_id":"8372","person_found":true,"primary_phone":"9390705497"}
[2026-04-08 20:36:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9390705497"}
[2026-04-08 20:36:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9390705497","contact_id":"8372","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:36:18"}
[2026-04-08 20:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:18] [INFO] generateDealTitle result {"contact_id":"8372","person_name":"قاسمی قاسمی","mobile":"9390705497","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9390705497"}
[2026-04-08 20:36:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8372","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:36:18] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8372","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:36:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8372","title":"معامله دوم 9390705497 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9390705497","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"قاسمی قاسمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:36:18","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:36:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8372","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9390705497 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:36:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-08 20:36:18] [INFO] Checking activity reminders 
[2026-04-08 20:36:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:36:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:36:37] [INFO] Checking activity reminders 
[2026-04-08 20:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:52] [INFO] Lead update received {"contact_id":"21137","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21137"}
[2026-04-08 20:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:36:55] [INFO] generateDealTitle result {"contact_id":"21137","person_name":"محمدرضا اخوی میلان","mobile":"9144324074","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144324074"}
[2026-04-08 20:37:07] [INFO] Checking activity reminders 
[2026-04-08 20:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:37:12] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21137","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:37:12","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:37:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:37:12] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21137","is_new_deal":true}
[2026-04-08 20:37:12] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:37:12] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:37:12] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:37:12] [INFO] getContactPrimaryPhone called {"contact_id":"21137"}
[2026-04-08 20:37:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:37:12] [INFO] getContactPrimaryPhone result {"contact_id":"21137","person_found":true,"primary_phone":"9144324074"}
[2026-04-08 20:37:12] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144324074"}
[2026-04-08 20:37:12] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144324074","contact_id":"21137","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:37:12"}
[2026-04-08 20:37:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:37:12] [INFO] generateDealTitle result {"contact_id":"21137","person_name":"محمدرضا اخوی میلان","mobile":"9144324074","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9144324074"}
[2026-04-08 20:37:12] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21137","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:37:12] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21137","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:37:12] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21137","title":"معامله دوم 9144324074 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144324074","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدرضا اخوی میلان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:37:12","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:37:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:37:12] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:37:12] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21137","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9144324074 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:37:12","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:37:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-08 20:37:24] [INFO] Checking activity reminders 
[2026-04-08 20:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:37:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:42] [INFO] Lead update received {"contact_id":"9100","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:37:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9100"}
[2026-04-08 20:37:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:37:46] [INFO] generateDealTitle result {"contact_id":"9100","person_name":"عبدالرحمن اصغری","mobile":"9143067535","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143067535"}
[2026-04-08 20:37:54] [INFO] Checking activity reminders 
[2026-04-08 20:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:38:02] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9100","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:38:02","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:38:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9100","is_new_deal":true}
[2026-04-08 20:38:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:38:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:38:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:38:02] [INFO] getContactPrimaryPhone called {"contact_id":"9100"}
[2026-04-08 20:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:38:02] [INFO] getContactPrimaryPhone result {"contact_id":"9100","person_found":true,"primary_phone":"9143067535"}
[2026-04-08 20:38:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143067535"}
[2026-04-08 20:38:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143067535","contact_id":"9100","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:38:02"}
[2026-04-08 20:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:38:02] [INFO] generateDealTitle result {"contact_id":"9100","person_name":"عبدالرحمن اصغری","mobile":"9143067535","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9143067535"}
[2026-04-08 20:38:02] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9100","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:38:02] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"9100","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:38:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9100","title":"معامله دوم 9143067535 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9143067535","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"عبدالرحمن اصغری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:38:02","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:38:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:38:02] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:38:02] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9100","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9143067535 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:38:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:38:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-08 20:38:11] [INFO] Checking activity reminders 
[2026-04-08 20:38:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:38:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:39:04] [INFO] Checking activity reminders 
[2026-04-08 20:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:39:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-08 20:39:34] [INFO] Checking activity reminders 
[2026-04-08 20:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:40:11] [INFO] Checking activity reminders 
[2026-04-08 20:40:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:40:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:25] [INFO] Lead update received {"contact_id":"2228","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2228"}
[2026-04-08 20:40:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:33] [INFO] Lead update received {"contact_id":"2228","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2228"}
[2026-04-08 20:40:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:40] [INFO] generateDealTitle result {"contact_id":"2228","person_name":"مرادی مرادی","mobile":"9139813373","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9139813373"}
[2026-04-08 20:40:41] [INFO] Checking activity reminders 
[2026-04-08 20:40:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:40:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:40:56] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2228","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:40:56","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2228","is_new_deal":true}
[2026-04-08 20:40:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:40:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:40:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:40:56] [INFO] getContactPrimaryPhone called {"contact_id":"2228"}
[2026-04-08 20:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:56] [INFO] getContactPrimaryPhone result {"contact_id":"2228","person_found":true,"primary_phone":"9139813373"}
[2026-04-08 20:40:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139813373"}
[2026-04-08 20:40:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139813373","contact_id":"2228","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:40:56"}
[2026-04-08 20:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:56] [INFO] generateDealTitle result {"contact_id":"2228","person_name":"مرادی مرادی","mobile":"9139813373","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9139813373"}
[2026-04-08 20:40:56] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2228","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:40:56] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2228","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:40:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2228","title":"معامله دوم 9139813373 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9139813373","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مرادی مرادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:40:56","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:40:56] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:40:56] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2228","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9139813373 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:40:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:40:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-08 20:41:07] [INFO] Checking activity reminders 
[2026-04-08 20:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:41:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-08 20:41:31] [INFO] Checking activity reminders 
[2026-04-08 20:41:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:41:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:41:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:45] [INFO] Lead update received {"contact_id":"2181","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:45] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2181"}
[2026-04-08 20:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:41:50] [INFO] generateDealTitle result {"contact_id":"2181","person_name":"میثم فقهی","mobile":"9138377176","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138377176"}
[2026-04-08 20:42:01] [INFO] Checking activity reminders 
[2026-04-08 20:42:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:42:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:42:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2181","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:42:10","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:42:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2181","is_new_deal":true}
[2026-04-08 20:42:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:42:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:42:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:42:10] [INFO] getContactPrimaryPhone called {"contact_id":"2181"}
[2026-04-08 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:42:10] [INFO] getContactPrimaryPhone result {"contact_id":"2181","person_found":true,"primary_phone":"9138377176"}
[2026-04-08 20:42:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138377176"}
[2026-04-08 20:42:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138377176","contact_id":"2181","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:42:10"}
[2026-04-08 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:42:10] [INFO] generateDealTitle result {"contact_id":"2181","person_name":"میثم فقهی","mobile":"9138377176","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138377176"}
[2026-04-08 20:42:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2181","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:42:10] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"2181","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:42:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2181","title":"معامله دوم 9138377176 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138377176","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"میثم فقهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:42:10","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:42:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:42:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2181","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9138377176 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:42:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:42:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-08 20:42:21] [INFO] Checking activity reminders 
[2026-04-08 20:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:42:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:51] [INFO] Checking activity reminders 
[2026-04-08 20:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:42:51] [INFO] Lead update received {"contact_id":"6215","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:42:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:51] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6215"}
[2026-04-08 20:42:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:42:55] [INFO] generateDealTitle result {"contact_id":"6215","person_name":"ضیایی ضیایی","mobile":"9138222252","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138222252"}
[2026-04-08 20:43:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"6215","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:43:11","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:43:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"6215","is_new_deal":true}
[2026-04-08 20:43:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:11] [INFO] getContactPrimaryPhone called {"contact_id":"6215"}
[2026-04-08 20:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:43:11] [INFO] getContactPrimaryPhone result {"contact_id":"6215","person_found":true,"primary_phone":"9138222252"}
[2026-04-08 20:43:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138222252"}
[2026-04-08 20:43:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138222252","contact_id":"6215","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:43:11"}
[2026-04-08 20:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:43:11] [INFO] generateDealTitle result {"contact_id":"6215","person_name":"ضیایی ضیایی","mobile":"9138222252","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9138222252"}
[2026-04-08 20:43:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"6215","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:43:11] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"6215","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:43:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"6215","title":"معامله دوم 9138222252 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9138222252","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ضیایی ضیایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:43:11","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:43:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:43:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"6215","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9138222252 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:43:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-08 20:43:25] [INFO] Checking activity reminders 
[2026-04-08 20:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:43:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:34] [INFO] Lead update received {"contact_id":"8760","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:34] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"8760"}
[2026-04-08 20:43:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:38] [INFO] generateDealTitle result {"contact_id":"8760","person_name":"مهدی پور","mobile":"9135214779","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135214779"}
[2026-04-08 20:43:54] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8760","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:43:54","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:43:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8760","is_new_deal":true}
[2026-04-08 20:43:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:43:54] [INFO] getContactPrimaryPhone called {"contact_id":"8760"}
[2026-04-08 20:43:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:54] [INFO] getContactPrimaryPhone result {"contact_id":"8760","person_found":true,"primary_phone":"9135214779"}
[2026-04-08 20:43:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135214779"}
[2026-04-08 20:43:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135214779","contact_id":"8760","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:43:54"}
[2026-04-08 20:43:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:54] [INFO] generateDealTitle result {"contact_id":"8760","person_name":"مهدی پور","mobile":"9135214779","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9135214779"}
[2026-04-08 20:43:54] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8760","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:43:54] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"8760","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:43:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8760","title":"معامله دوم 9135214779 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9135214779","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:43:54","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:43:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:54] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:43:54] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8760","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9135214779 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:43:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:43:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-08 20:43:55] [INFO] Checking activity reminders 
[2026-04-08 20:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:44:04] [INFO] Checking activity reminders 
[2026-04-08 20:44:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:44:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:44:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:16] [INFO] Lead update received {"contact_id":"701","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"701"}
[2026-04-08 20:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:19] [INFO] generateDealTitle result {"contact_id":"701","person_name":"شایان بخشنده","mobile":"9134401300","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9134401300"}
[2026-04-08 20:44:34] [INFO] Checking activity reminders 
[2026-04-08 20:44:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:44:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:44:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"701","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:44:37","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:44:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"701","is_new_deal":true}
[2026-04-08 20:44:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:44:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:44:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:44:37] [INFO] getContactPrimaryPhone called {"contact_id":"701"}
[2026-04-08 20:44:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:37] [INFO] getContactPrimaryPhone result {"contact_id":"701","person_found":true,"primary_phone":"9134401300"}
[2026-04-08 20:44:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9134401300"}
[2026-04-08 20:44:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9134401300","contact_id":"701","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:44:37"}
[2026-04-08 20:44:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:37] [INFO] generateDealTitle result {"contact_id":"701","person_name":"شایان بخشنده","mobile":"9134401300","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9134401300"}
[2026-04-08 20:44:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"701","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:44:37] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"701","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:44:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"701","title":"معامله دوم 9134401300 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9134401300","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شایان بخشنده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:44:37","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:44:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:44:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"701","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9134401300 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:44:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:44:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-08 20:44:46] [INFO] Checking activity reminders 
[2026-04-08 20:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:44:58] [INFO] Checking activity reminders 
[2026-04-08 20:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:45:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10252","person_id":"14006"}
[2026-04-08 20:45:17] [INFO] Checking activity reminders 
[2026-04-08 20:45:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:45:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:45:26] [INFO] Checking activity reminders 
[2026-04-08 20:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:41] [INFO] Lead update received {"contact_id":"15908","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:45:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:41] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15908"}
[2026-04-08 20:45:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:45:44] [INFO] generateDealTitle result {"contact_id":"15908","person_name":"مهدی صدرا رحامی","mobile":"9132661528","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132661528"}
[2026-04-08 20:45:56] [INFO] Checking activity reminders 
[2026-04-08 20:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:46:00] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15908","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:46:00","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:46:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15908","is_new_deal":true}
[2026-04-08 20:46:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:00] [INFO] getContactPrimaryPhone called {"contact_id":"15908"}
[2026-04-08 20:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:46:00] [INFO] getContactPrimaryPhone result {"contact_id":"15908","person_found":true,"primary_phone":"9132661528"}
[2026-04-08 20:46:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132661528"}
[2026-04-08 20:46:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132661528","contact_id":"15908","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:46:00"}
[2026-04-08 20:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:46:00] [INFO] generateDealTitle result {"contact_id":"15908","person_name":"مهدی صدرا رحامی","mobile":"9132661528","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132661528"}
[2026-04-08 20:46:00] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15908","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:46:00] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15908","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:46:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15908","title":"معامله دوم 9132661528 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132661528","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی صدرا رحامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:46:00","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:46:00] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:46:00] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15908","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9132661528 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:46:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:46:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-08 20:46:18] [INFO] Checking activity reminders 
[2026-04-08 20:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:33] [INFO] Lead update received {"contact_id":"13157","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:33] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13157"}
[2026-04-08 20:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:37] [INFO] generateDealTitle result {"contact_id":"13157","person_name":"اقای شریفی","mobile":"9132486479","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132486479"}
[2026-04-08 20:46:48] [INFO] Checking activity reminders 
[2026-04-08 20:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:46:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13157","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:46:58","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13157","is_new_deal":true}
[2026-04-08 20:46:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:46:58] [INFO] getContactPrimaryPhone called {"contact_id":"13157"}
[2026-04-08 20:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:58] [INFO] getContactPrimaryPhone result {"contact_id":"13157","person_found":true,"primary_phone":"9132486479"}
[2026-04-08 20:46:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132486479"}
[2026-04-08 20:46:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132486479","contact_id":"13157","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:46:58"}
[2026-04-08 20:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:58] [INFO] generateDealTitle result {"contact_id":"13157","person_name":"اقای شریفی","mobile":"9132486479","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132486479"}
[2026-04-08 20:46:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13157","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:46:58] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"13157","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:46:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13157","title":"معامله دوم 9132486479 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132486479","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای شریفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:46:58","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:46:58] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:46:58] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13157","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9132486479 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:46:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-08 20:47:29] [INFO] Checking activity reminders 
[2026-04-08 20:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:47:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:42] [INFO] Lead update received {"contact_id":"21123","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:47:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21123"}
[2026-04-08 20:47:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:47:46] [INFO] generateDealTitle result {"contact_id":"21123","person_name":"اقای سوهان کار","mobile":"9132018900","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132018900"}
[2026-04-08 20:47:59] [INFO] Checking activity reminders 
[2026-04-08 20:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:48:07] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21123","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:48:07","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:48:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:48:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21123","is_new_deal":true}
[2026-04-08 20:48:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:48:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:48:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:48:07] [INFO] getContactPrimaryPhone called {"contact_id":"21123"}
[2026-04-08 20:48:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:48:07] [INFO] getContactPrimaryPhone result {"contact_id":"21123","person_found":true,"primary_phone":"9132018900"}
[2026-04-08 20:48:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132018900"}
[2026-04-08 20:48:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132018900","contact_id":"21123","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:48:07"}
[2026-04-08 20:48:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:48:07] [INFO] generateDealTitle result {"contact_id":"21123","person_name":"اقای سوهان کار","mobile":"9132018900","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9132018900"}
[2026-04-08 20:48:07] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21123","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:48:07] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21123","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:48:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21123","title":"معامله دوم 9132018900 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132018900","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای سوهان کار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:48:07","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:48:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:48:07] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:48:07] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21123","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9132018900 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:48:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:48:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-08 20:48:27] [INFO] Checking activity reminders 
[2026-04-08 20:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:48:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7691","person_id":"18341"}
[2026-04-08 20:48:48] [INFO] Checking activity reminders 
[2026-04-08 20:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:48:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21218","person_id":"20023"}
[2026-04-08 20:49:05] [INFO] Checking activity reminders 
[2026-04-08 20:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:49:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:22] [INFO] Lead update received {"contact_id":"5966","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:22] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5966"}
[2026-04-08 20:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:35] [INFO] Checking activity reminders 
[2026-04-08 20:49:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:49:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:49:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:39] [INFO] generateDealTitle result {"contact_id":"5966","person_name":"نوروزی نوروزی","mobile":"9128944611","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128944611"}
[2026-04-08 20:49:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5966","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:49:57","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5966","is_new_deal":true}
[2026-04-08 20:49:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:49:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:49:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:49:57] [INFO] getContactPrimaryPhone called {"contact_id":"5966"}
[2026-04-08 20:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:57] [INFO] getContactPrimaryPhone result {"contact_id":"5966","person_found":true,"primary_phone":"9128944611"}
[2026-04-08 20:49:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128944611"}
[2026-04-08 20:49:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128944611","contact_id":"5966","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:49:57"}
[2026-04-08 20:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:57] [INFO] generateDealTitle result {"contact_id":"5966","person_name":"نوروزی نوروزی","mobile":"9128944611","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128944611"}
[2026-04-08 20:49:57] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5966","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:49:57] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"5966","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:49:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5966","title":"معامله دوم 9128944611 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128944611","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"نوروزی نوروزی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:49:57","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:49:57] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:49:57] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5966","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9128944611 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:49:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-08 20:50:14] [INFO] Checking activity reminders 
[2026-04-08 20:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:50:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:24] [INFO] Lead update received {"contact_id":"20967","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 20:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20967"}
[2026-04-08 20:50:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:28] [INFO] generateDealTitle result {"contact_id":"20967","person_name":"اقای سلیمانی مهر","mobile":"9128615582","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128615582"}
[2026-04-08 20:50:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20967","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:50:43","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20967","is_new_deal":true}
[2026-04-08 20:50:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:50:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:50:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:50:43] [INFO] getContactPrimaryPhone called {"contact_id":"20967"}
[2026-04-08 20:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:43] [INFO] getContactPrimaryPhone result {"contact_id":"20967","person_found":true,"primary_phone":"9128615582"}
[2026-04-08 20:50:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128615582"}
[2026-04-08 20:50:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128615582","contact_id":"20967","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:50:43"}
[2026-04-08 20:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:43] [INFO] generateDealTitle result {"contact_id":"20967","person_name":"اقای سلیمانی مهر","mobile":"9128615582","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9128615582"}
[2026-04-08 20:50:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20967","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:50:43] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20967","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:50:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20967","title":"معامله دوم 9128615582 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9128615582","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای سلیمانی مهر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:50:43","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:50:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20967","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9128615582 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:50:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:50:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-08 20:50:44] [INFO] Checking activity reminders 
[2026-04-08 20:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:50:54] [INFO] Checking activity reminders 
[2026-04-08 20:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10894","person_id":"20755"}
[2026-04-08 20:51:24] [INFO] Checking activity reminders 
[2026-04-08 20:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:51:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-08 20:51:49] [INFO] Checking activity reminders 
[2026-04-08 20:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:52:19] [INFO] Checking activity reminders 
[2026-04-08 20:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:53:27] [INFO] Checking activity reminders 
[2026-04-08 20:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:53:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-08 20:53:44] [INFO] Checking activity reminders 
[2026-04-08 20:53:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:53:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:53:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-08 20:53:59] [INFO] Checking activity reminders 
[2026-04-08 20:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:54:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-08 20:54:14] [INFO] Checking activity reminders 
[2026-04-08 20:54:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:54:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:54:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:21] [INFO] generateDealTitle result {"contact_id":"9513","person_name":"رضا سیفی","mobile":"9198039150","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9198039150"}
[2026-04-08 20:54:36] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9513","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:54:36","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9513","is_new_deal":true}
[2026-04-08 20:54:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:54:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:54:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:54:36] [INFO] getContactPrimaryPhone called {"contact_id":"9513"}
[2026-04-08 20:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:36] [INFO] getContactPrimaryPhone result {"contact_id":"9513","person_found":true,"primary_phone":"9198039150"}
[2026-04-08 20:54:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198039150"}
[2026-04-08 20:54:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198039150","contact_id":"9513","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:54:36"}
[2026-04-08 20:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:37] [INFO] generateDealTitle result {"contact_id":"9513","person_name":"رضا سیفی","mobile":"9198039150","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9198039150"}
[2026-04-08 20:54:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"9513","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:54:37] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9513","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:54:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"9513","title":"معامله چهارم 9198039150 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9198039150","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا سیفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:54:37","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:54:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"9513","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9198039150 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:54:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:54:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-08 20:54:53] [INFO] Checking activity reminders 
[2026-04-08 20:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:54:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:00] [INFO] generateDealTitle result {"contact_id":"8402","person_name":"سیدحسین محمدی","mobile":"9198308144","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9198308144"}
[2026-04-08 20:55:14] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8402","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:55:14","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8402","is_new_deal":true}
[2026-04-08 20:55:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:14] [INFO] getContactPrimaryPhone called {"contact_id":"8402"}
[2026-04-08 20:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:14] [INFO] getContactPrimaryPhone result {"contact_id":"8402","person_found":true,"primary_phone":"9198308144"}
[2026-04-08 20:55:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198308144"}
[2026-04-08 20:55:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198308144","contact_id":"8402","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:55:14"}
[2026-04-08 20:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:14] [INFO] generateDealTitle result {"contact_id":"8402","person_name":"سیدحسین محمدی","mobile":"9198308144","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9198308144"}
[2026-04-08 20:55:14] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8402","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:55:14] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8402","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:55:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8402","title":"معامله پنجم 9198308144 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9198308144","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سیدحسین محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:55:14","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:14] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:55:14] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8402","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله پنجم 9198308144 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:55:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-08 20:55:25] [INFO] Checking activity reminders 
[2026-04-08 20:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:31] [INFO] generateDealTitle result {"contact_id":"8114","person_name":"مرادی","mobile":"9199204947","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9199204947"}
[2026-04-08 20:55:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8114","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:55:44","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8114","is_new_deal":true}
[2026-04-08 20:55:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:55:44] [INFO] getContactPrimaryPhone called {"contact_id":"8114"}
[2026-04-08 20:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:44] [INFO] getContactPrimaryPhone result {"contact_id":"8114","person_found":true,"primary_phone":"9199204947"}
[2026-04-08 20:55:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9199204947"}
[2026-04-08 20:55:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9199204947","contact_id":"8114","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:55:44"}
[2026-04-08 20:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:44] [INFO] generateDealTitle result {"contact_id":"8114","person_name":"مرادی","mobile":"9199204947","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9199204947"}
[2026-04-08 20:55:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8114","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:55:44] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8114","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:55:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8114","title":"معامله چهارم 9199204947 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9199204947","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مرادی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:55:44","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:55:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:55:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8114","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9199204947 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:55:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:55:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-08 20:55:53] [INFO] Checking activity reminders 
[2026-04-08 20:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:55:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:55:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:55:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:55:58] [INFO] generateDealTitle result {"contact_id":"975","person_name":"سروش فروهر","mobile":"9139293182","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9139293182"}
[2026-04-08 20:56:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"975","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:56:13","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:56:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"975","is_new_deal":true}
[2026-04-08 20:56:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:13] [INFO] getContactPrimaryPhone called {"contact_id":"975"}
[2026-04-08 20:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:56:13] [INFO] getContactPrimaryPhone result {"contact_id":"975","person_found":true,"primary_phone":"9139293182"}
[2026-04-08 20:56:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139293182"}
[2026-04-08 20:56:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139293182","contact_id":"975","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:56:13"}
[2026-04-08 20:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:56:13] [INFO] generateDealTitle result {"contact_id":"975","person_name":"سروش فروهر","mobile":"9139293182","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9139293182"}
[2026-04-08 20:56:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"975","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:56:13] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"975","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:56:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"975","title":"معامله سوم 9139293182 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9139293182","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سروش فروهر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:56:13","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:56:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:56:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"975","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9139293182 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:56:13","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:56:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-08 20:56:21] [INFO] Checking activity reminders 
[2026-04-08 20:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:56:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:26] [INFO] generateDealTitle result {"contact_id":"1499","person_name":"حسین شاهی","mobile":"9210328323","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9210328323"}
[2026-04-08 20:56:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1499","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:56:42","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1499","is_new_deal":true}
[2026-04-08 20:56:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:56:42] [INFO] getContactPrimaryPhone called {"contact_id":"1499"}
[2026-04-08 20:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:42] [INFO] getContactPrimaryPhone result {"contact_id":"1499","person_found":true,"primary_phone":"9210328323"}
[2026-04-08 20:56:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9210328323"}
[2026-04-08 20:56:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9210328323","contact_id":"1499","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:56:42"}
[2026-04-08 20:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:42] [INFO] generateDealTitle result {"contact_id":"1499","person_name":"حسین شاهی","mobile":"9210328323","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9210328323"}
[2026-04-08 20:56:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1499","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:56:42] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1499","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:56:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1499","title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9210328323","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین شاهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:56:42","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:56:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1499","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:56:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:56:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-08 20:56:50] [INFO] Checking activity reminders 
[2026-04-08 20:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:56:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5265","person_id":"2279"}
[2026-04-08 20:57:05] [INFO] Checking activity reminders 
[2026-04-08 20:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:57:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:11] [INFO] generateDealTitle result {"contact_id":"2128","person_name":"افروزی","mobile":"9223847214","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9223847214"}
[2026-04-08 20:57:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2128","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:57:26","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2128","is_new_deal":true}
[2026-04-08 20:57:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:57:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:57:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:57:26] [INFO] getContactPrimaryPhone called {"contact_id":"2128"}
[2026-04-08 20:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:26] [INFO] getContactPrimaryPhone result {"contact_id":"2128","person_found":true,"primary_phone":"9223847214"}
[2026-04-08 20:57:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9223847214"}
[2026-04-08 20:57:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9223847214","contact_id":"2128","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:57:26"}
[2026-04-08 20:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:26] [INFO] generateDealTitle result {"contact_id":"2128","person_name":"افروزی","mobile":"9223847214","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9223847214"}
[2026-04-08 20:57:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2128","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:57:26] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2128","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:57:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2128","title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9223847214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"افروزی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:57:26","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:57:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:57:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2128","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:57:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:57:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-08 20:57:38] [INFO] Checking activity reminders 
[2026-04-08 20:57:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:57:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:57:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-08 20:57:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-08 20:57:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-08 20:57:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-08 20:57:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-08 20:57:57] [INFO] Checking activity reminders 
[2026-04-08 20:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:58:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:03] [INFO] generateDealTitle result {"contact_id":"16840","person_name":"محمدرضا حسن زاده دهشیبی","mobile":"9309955262","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9309955262"}
[2026-04-08 20:58:18] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16840","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:58:18","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16840","is_new_deal":true}
[2026-04-08 20:58:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:18] [INFO] getContactPrimaryPhone called {"contact_id":"16840"}
[2026-04-08 20:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:18] [INFO] getContactPrimaryPhone result {"contact_id":"16840","person_found":true,"primary_phone":"9309955262"}
[2026-04-08 20:58:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9309955262"}
[2026-04-08 20:58:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9309955262","contact_id":"16840","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:58:18"}
[2026-04-08 20:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:18] [INFO] generateDealTitle result {"contact_id":"16840","person_name":"محمدرضا حسن زاده دهشیبی","mobile":"9309955262","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9309955262"}
[2026-04-08 20:58:18] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16840","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:58:18] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16840","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:58:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16840","title":"معامله دوم 9309955262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9309955262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدرضا حسن زاده دهشیبی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:58:18","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:18] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:58:18] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16840","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9309955262 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:58:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-08 20:58:36] [INFO] Checking activity reminders 
[2026-04-08 20:58:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:58:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:58:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:41] [INFO] generateDealTitle result {"contact_id":"854","person_name":"بهزاد پیرپنبه","mobile":"9330204339","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9330204339"}
[2026-04-08 20:58:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:43] [INFO] generateDealTitle result {"contact_id":"854","person_name":"بهزاد پیرپنبه","mobile":"9330204339","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9330204339"}
[2026-04-08 20:58:57] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"854","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:58:57","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:58:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"854","is_new_deal":true}
[2026-04-08 20:58:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:58:57] [INFO] getContactPrimaryPhone called {"contact_id":"854"}
[2026-04-08 20:58:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:57] [INFO] getContactPrimaryPhone result {"contact_id":"854","person_found":true,"primary_phone":"9330204339"}
[2026-04-08 20:58:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330204339"}
[2026-04-08 20:58:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330204339","contact_id":"854","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:58:57"}
[2026-04-08 20:58:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:57] [INFO] generateDealTitle result {"contact_id":"854","person_name":"بهزاد پیرپنبه","mobile":"9330204339","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9330204339"}
[2026-04-08 20:58:57] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"854","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:58:57] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"854","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:58:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"854","title":"معامله سوم 9330204339 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9330204339","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهزاد پیرپنبه","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:58:57","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:58:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:58:57] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:58:57] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"854","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9330204339 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:58:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:58:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-08 20:59:11] [INFO] Checking activity reminders 
[2026-04-08 20:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:59:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:15] [INFO] generateDealTitle result {"contact_id":"21034","person_name":"پوریا لطفی","mobile":"9330471275","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9330471275"}
[2026-04-08 20:59:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21034","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 20:59:31","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 20:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21034","is_new_deal":true}
[2026-04-08 20:59:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 20:59:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:59:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 20:59:31] [INFO] getContactPrimaryPhone called {"contact_id":"21034"}
[2026-04-08 20:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:31] [INFO] getContactPrimaryPhone result {"contact_id":"21034","person_found":true,"primary_phone":"9330471275"}
[2026-04-08 20:59:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330471275"}
[2026-04-08 20:59:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330471275","contact_id":"21034","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 20:59:31"}
[2026-04-08 20:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:31] [INFO] generateDealTitle result {"contact_id":"21034","person_name":"پوریا لطفی","mobile":"9330471275","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9330471275"}
[2026-04-08 20:59:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21034","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 20:59:31] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21034","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 20:59:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21034","title":"معامله دوم 9330471275 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9330471275","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پوریا لطفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 20:59:31","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 20:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 20:59:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21034","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9330471275 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 20:59:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 20:59:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-08 20:59:44] [INFO] Checking activity reminders 
[2026-04-08 20:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 20:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 20:59:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 20:59:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 20:59:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 20:59:49] [INFO] generateDealTitle result {"contact_id":"7666","person_name":"امیر نصیری","mobile":"9330667795","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9330667795"}
[2026-04-08 21:00:05] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7666","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:00:05","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 21:00:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7666","is_new_deal":true}
[2026-04-08 21:00:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:05] [INFO] getContactPrimaryPhone called {"contact_id":"7666"}
[2026-04-08 21:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 21:00:05] [INFO] getContactPrimaryPhone result {"contact_id":"7666","person_found":true,"primary_phone":"9330667795"}
[2026-04-08 21:00:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330667795"}
[2026-04-08 21:00:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330667795","contact_id":"7666","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:00:05"}
[2026-04-08 21:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 21:00:05] [INFO] generateDealTitle result {"contact_id":"7666","person_name":"امیر نصیری","mobile":"9330667795","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9330667795"}
[2026-04-08 21:00:05] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7666","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:00:05] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7666","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:00:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7666","title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9330667795","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر نصیری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:00:05","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 21:00:05] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:00:05] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7666","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:00:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:00:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-08 21:00:20] [INFO] Checking activity reminders 
[2026-04-08 21:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:25] [INFO] generateDealTitle result {"contact_id":"869","person_name":"امید رحیمی","mobile":"9334633943","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9334633943"}
[2026-04-08 21:00:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"869","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:00:41","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"869","is_new_deal":true}
[2026-04-08 21:00:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:00:41] [INFO] getContactPrimaryPhone called {"contact_id":"869"}
[2026-04-08 21:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:41] [INFO] getContactPrimaryPhone result {"contact_id":"869","person_found":true,"primary_phone":"9334633943"}
[2026-04-08 21:00:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9334633943"}
[2026-04-08 21:00:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9334633943","contact_id":"869","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:00:41"}
[2026-04-08 21:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:41] [INFO] generateDealTitle result {"contact_id":"869","person_name":"امید رحیمی","mobile":"9334633943","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9334633943"}
[2026-04-08 21:00:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"869","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:00:41] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"869","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:00:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"869","title":"معامله سوم 9334633943 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9334633943","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید رحیمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:00:41","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:00:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:00:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"869","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9334633943 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:00:41","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:00:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-08 21:01:00] [INFO] Checking activity reminders 
[2026-04-08 21:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:01:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:06] [INFO] generateDealTitle result {"contact_id":"1013","person_name":"ساتکی","mobile":"9337446707","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9337446707"}
[2026-04-08 21:01:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1013","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:01:20","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1013","is_new_deal":true}
[2026-04-08 21:01:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:01:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:01:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:01:20] [INFO] getContactPrimaryPhone called {"contact_id":"1013"}
[2026-04-08 21:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:20] [INFO] getContactPrimaryPhone result {"contact_id":"1013","person_found":true,"primary_phone":"9337446707"}
[2026-04-08 21:01:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9337446707"}
[2026-04-08 21:01:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9337446707","contact_id":"1013","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:01:20"}
[2026-04-08 21:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:20] [INFO] generateDealTitle result {"contact_id":"1013","person_name":"ساتکی","mobile":"9337446707","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9337446707"}
[2026-04-08 21:01:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1013","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:01:20] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1013","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:01:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1013","title":"معامله دوم 9337446707 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9337446707","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ساتکی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:01:20","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:01:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1013","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9337446707 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:01:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-08 21:01:38] [INFO] Checking activity reminders 
[2026-04-08 21:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:01:49] [INFO] Checking activity reminders 
[2026-04-08 21:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:01:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:01:53] [INFO] generateDealTitle result {"contact_id":"353","person_name":"حسنی","mobile":"9354272731","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9354272731"}
[2026-04-08 21:02:10] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"353","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:02:10","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:02:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"353","is_new_deal":true}
[2026-04-08 21:02:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:10] [INFO] getContactPrimaryPhone called {"contact_id":"353"}
[2026-04-08 21:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:02:10] [INFO] getContactPrimaryPhone result {"contact_id":"353","person_found":true,"primary_phone":"9354272731"}
[2026-04-08 21:02:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9354272731"}
[2026-04-08 21:02:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9354272731","contact_id":"353","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:02:10"}
[2026-04-08 21:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:02:10] [INFO] generateDealTitle result {"contact_id":"353","person_name":"حسنی","mobile":"9354272731","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9354272731"}
[2026-04-08 21:02:10] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"353","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:02:10] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"353","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:02:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"353","title":"معامله دوم 9354272731 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9354272731","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"حسنی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:02:10","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:02:10] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:02:10] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"353","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9354272731 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:02:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"353","person_id":"8790"}
[2026-04-08 21:02:22] [INFO] Checking activity reminders 
[2026-04-08 21:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:02:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:27] [INFO] generateDealTitle result {"contact_id":"20974","person_name":"ترابی","mobile":"9357810632","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357810632"}
[2026-04-08 21:02:41] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20974","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:02:41","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20974","is_new_deal":true}
[2026-04-08 21:02:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:02:41] [INFO] getContactPrimaryPhone called {"contact_id":"20974"}
[2026-04-08 21:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:41] [INFO] getContactPrimaryPhone result {"contact_id":"20974","person_found":true,"primary_phone":"9357810632"}
[2026-04-08 21:02:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9357810632"}
[2026-04-08 21:02:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9357810632","contact_id":"20974","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:02:41"}
[2026-04-08 21:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:41] [INFO] generateDealTitle result {"contact_id":"20974","person_name":"ترابی","mobile":"9357810632","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9357810632"}
[2026-04-08 21:02:41] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20974","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:02:41] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20974","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:02:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20974","title":"معامله دوم 9357810632 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9357810632","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ترابی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:02:41","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:41] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:02:41] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20974","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9357810632 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:02:41","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-08 21:02:55] [INFO] Checking activity reminders 
[2026-04-08 21:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:02:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2212","person_id":"14007"}
[2026-04-08 21:03:13] [INFO] Checking activity reminders 
[2026-04-08 21:03:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:03:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:03:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:19] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_164","person_name":"محمد یوسفی","mobile":"9359171138","existing_deals":0,"ordinal":"اول","title":"معامله اول 9359171138"}
[2026-04-08 21:03:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_164","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:03:35","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_164","is_new_deal":true}
[2026-04-08 21:03:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:03:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:03:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:03:35] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_164"}
[2026-04-08 21:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:35] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_164","person_found":true,"primary_phone":"9359171138"}
[2026-04-08 21:03:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359171138"}
[2026-04-08 21:03:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359171138","contact_id":"local_1403_09_26_164","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:03:35"}
[2026-04-08 21:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:35] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_164","person_name":"محمد یوسفی","mobile":"9359171138","existing_deals":0,"ordinal":"اول","title":"معامله اول 9359171138"}
[2026-04-08 21:03:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_164","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:03:35] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_164","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:03:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_164","title":"معامله اول 9359171138 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9359171138","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد یوسفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:03:35","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:03:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:03:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:03:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-08 21:03:51] [INFO] Checking activity reminders 
[2026-04-08 21:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:03:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5529","person_id":"7866"}
[2026-04-08 21:04:05] [INFO] Checking activity reminders 
[2026-04-08 21:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:04:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-08 21:04:21] [INFO] Checking activity reminders 
[2026-04-08 21:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:04:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:27] [INFO] generateDealTitle result {"contact_id":"8941","person_name":"شوندی","mobile":"9361470519","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9361470519"}
[2026-04-08 21:04:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8941","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:04:43","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8941","is_new_deal":true}
[2026-04-08 21:04:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:04:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:04:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:04:43] [INFO] getContactPrimaryPhone called {"contact_id":"8941"}
[2026-04-08 21:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:43] [INFO] getContactPrimaryPhone result {"contact_id":"8941","person_found":true,"primary_phone":"9361470519"}
[2026-04-08 21:04:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9361470519"}
[2026-04-08 21:04:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9361470519","contact_id":"8941","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:04:43"}
[2026-04-08 21:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:43] [INFO] generateDealTitle result {"contact_id":"8941","person_name":"شوندی","mobile":"9361470519","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9361470519"}
[2026-04-08 21:04:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8941","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:04:43] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8941","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:04:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8941","title":"معامله دوم 9361470519 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9361470519","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شوندی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:04:43","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:04:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8941","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9361470519 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:04:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:04:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-08 21:04:57] [INFO] Checking activity reminders 
[2026-04-08 21:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:04:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:02] [INFO] generateDealTitle result {"contact_id":"14050","person_name":"دارابی","mobile":"9362755495","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9362755495"}
[2026-04-08 21:05:20] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14050","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:05:20","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:05:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14050","is_new_deal":true}
[2026-04-08 21:05:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:20] [INFO] getContactPrimaryPhone called {"contact_id":"14050"}
[2026-04-08 21:05:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:20] [INFO] getContactPrimaryPhone result {"contact_id":"14050","person_found":true,"primary_phone":"9362755495"}
[2026-04-08 21:05:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9362755495"}
[2026-04-08 21:05:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9362755495","contact_id":"14050","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:05:20"}
[2026-04-08 21:05:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:20] [INFO] generateDealTitle result {"contact_id":"14050","person_name":"دارابی","mobile":"9362755495","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9362755495"}
[2026-04-08 21:05:20] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14050","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:05:20] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14050","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:05:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14050","title":"معامله سوم 9362755495 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9362755495","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"دارابی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:05:20","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:05:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:20] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:05:20] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14050","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9362755495 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:05:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:05:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-08 21:05:33] [INFO] Checking activity reminders 
[2026-04-08 21:05:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:05:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:37] [INFO] generateDealTitle result {"contact_id":"1388","person_name":"هادی مهدویان مهر","mobile":"9155585826","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9155585826"}
[2026-04-08 21:05:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1388","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:05:53","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1388","is_new_deal":true}
[2026-04-08 21:05:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:05:53] [INFO] getContactPrimaryPhone called {"contact_id":"1388"}
[2026-04-08 21:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:53] [INFO] getContactPrimaryPhone result {"contact_id":"1388","person_found":true,"primary_phone":"9155585826"}
[2026-04-08 21:05:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155585826"}
[2026-04-08 21:05:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155585826","contact_id":"1388","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:05:53"}
[2026-04-08 21:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:53] [INFO] generateDealTitle result {"contact_id":"1388","person_name":"هادی مهدویان مهر","mobile":"9155585826","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9155585826"}
[2026-04-08 21:05:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1388","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:05:53] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1388","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:05:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1388","title":"معامله سوم 9155585826 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9155585826","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی مهدویان مهر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:05:53","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:05:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:05:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:05:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1388","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9155585826 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:05:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-08 21:06:07] [INFO] Checking activity reminders 
[2026-04-08 21:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:06:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-08 21:06:24] [INFO] Checking activity reminders 
[2026-04-08 21:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:06:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:30] [INFO] generateDealTitle result {"contact_id":"21300","person_name":"سجاد  وجدانی","mobile":"9366714636","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9366714636"}
[2026-04-08 21:06:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21300","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:06:49","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:06:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21300","is_new_deal":true}
[2026-04-08 21:06:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:06:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:06:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:06:49] [INFO] getContactPrimaryPhone called {"contact_id":"21300"}
[2026-04-08 21:06:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:49] [INFO] getContactPrimaryPhone result {"contact_id":"21300","person_found":true,"primary_phone":"9366714636"}
[2026-04-08 21:06:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9366714636"}
[2026-04-08 21:06:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9366714636","contact_id":"21300","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:06:49"}
[2026-04-08 21:06:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:49] [INFO] generateDealTitle result {"contact_id":"21300","person_name":"سجاد  وجدانی","mobile":"9366714636","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9366714636"}
[2026-04-08 21:06:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21300","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:06:49] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21300","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:06:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21300","title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9366714636","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سجاد  وجدانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:06:49","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:06:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:06:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:06:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21300","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:06:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:06:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-08 21:07:03] [INFO] Checking activity reminders 
[2026-04-08 21:07:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:07:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:07:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:08] [INFO] generateDealTitle result {"contact_id":"7791","person_name":"مهرداد محمودی","mobile":"9367753601","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367753601"}
[2026-04-08 21:07:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7791","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:07:22","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7791","is_new_deal":true}
[2026-04-08 21:07:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:07:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:07:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:07:22] [INFO] getContactPrimaryPhone called {"contact_id":"7791"}
[2026-04-08 21:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:22] [INFO] getContactPrimaryPhone result {"contact_id":"7791","person_found":true,"primary_phone":"9367753601"}
[2026-04-08 21:07:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9367753601"}
[2026-04-08 21:07:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9367753601","contact_id":"7791","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:07:22"}
[2026-04-08 21:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:22] [INFO] generateDealTitle result {"contact_id":"7791","person_name":"مهرداد محمودی","mobile":"9367753601","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9367753601"}
[2026-04-08 21:07:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7791","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:07:22] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7791","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:07:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7791","title":"معامله سوم 9367753601 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9367753601","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهرداد محمودی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:07:22","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:07:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7791","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9367753601 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:07:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:07:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-08 21:07:35] [INFO] Checking activity reminders 
[2026-04-08 21:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:07:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:07:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:07:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:07:39] [INFO] generateDealTitle result {"contact_id":"12377","person_name":"صادقی","mobile":"9369923911","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9369923911"}
[2026-04-08 21:08:01] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12377","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:08:01","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:08:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12377","is_new_deal":true}
[2026-04-08 21:08:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:01] [INFO] getContactPrimaryPhone called {"contact_id":"12377"}
[2026-04-08 21:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:08:01] [INFO] getContactPrimaryPhone result {"contact_id":"12377","person_found":true,"primary_phone":"9369923911"}
[2026-04-08 21:08:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9369923911"}
[2026-04-08 21:08:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9369923911","contact_id":"12377","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:08:01"}
[2026-04-08 21:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:08:01] [INFO] generateDealTitle result {"contact_id":"12377","person_name":"صادقی","mobile":"9369923911","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9369923911"}
[2026-04-08 21:08:01] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12377","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:08:01] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12377","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:08:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12377","title":"معامله دوم 9369923911 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9369923911","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صادقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:08:01","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:08:01] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:08:01] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12377","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9369923911 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:08:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:08:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-08 21:08:09] [INFO] Checking activity reminders 
[2026-04-08 21:08:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:08:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:08:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:14] [INFO] generateDealTitle result {"contact_id":"8074","person_name":"جواد اسماعیلی","mobile":"9370627473","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9370627473"}
[2026-04-08 21:08:30] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8074","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:08:30","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:08:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8074","is_new_deal":true}
[2026-04-08 21:08:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:08:31] [INFO] getContactPrimaryPhone called {"contact_id":"8074"}
[2026-04-08 21:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:31] [INFO] getContactPrimaryPhone result {"contact_id":"8074","person_found":true,"primary_phone":"9370627473"}
[2026-04-08 21:08:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9370627473"}
[2026-04-08 21:08:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9370627473","contact_id":"8074","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:08:31"}
[2026-04-08 21:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:31] [INFO] generateDealTitle result {"contact_id":"8074","person_name":"جواد اسماعیلی","mobile":"9370627473","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9370627473"}
[2026-04-08 21:08:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8074","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:08:31] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8074","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:08:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8074","title":"معامله دوم 9370627473 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9370627473","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد اسماعیلی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:08:31","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:08:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8074","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9370627473 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:08:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:08:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-08 21:08:43] [INFO] Checking activity reminders 
[2026-04-08 21:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:08:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16","person_id":"9364"}
[2026-04-08 21:09:00] [INFO] Checking activity reminders 
[2026-04-08 21:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:09:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:06] [INFO] generateDealTitle result {"contact_id":"16029","person_name":"ایمان میر طبار","mobile":"9374518635","existing_deals":0,"ordinal":"اول","title":"معامله اول 9374518635"}
[2026-04-08 21:09:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16029","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:09:21","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16029","is_new_deal":true}
[2026-04-08 21:09:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:21] [INFO] getContactPrimaryPhone called {"contact_id":"16029"}
[2026-04-08 21:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:21] [INFO] getContactPrimaryPhone result {"contact_id":"16029","person_found":true,"primary_phone":"9374518635"}
[2026-04-08 21:09:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9374518635"}
[2026-04-08 21:09:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9374518635","contact_id":"16029","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:09:21"}
[2026-04-08 21:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:21] [INFO] generateDealTitle result {"contact_id":"16029","person_name":"ایمان میر طبار","mobile":"9374518635","existing_deals":0,"ordinal":"اول","title":"معامله اول 9374518635"}
[2026-04-08 21:09:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"16029","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:09:21] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16029","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:09:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"16029","title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9374518635","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ایمان میر طبار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:09:21","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:09:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"16029","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:09:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-08 21:09:34] [INFO] Checking activity reminders 
[2026-04-08 21:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:09:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:43] [INFO] generateDealTitle result {"contact_id":"5976","person_name":"امیرجان","mobile":"9375780283","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9375780283"}
[2026-04-08 21:09:58] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5976","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:09:58","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:09:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5976","is_new_deal":true}
[2026-04-08 21:09:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:09:58] [INFO] getContactPrimaryPhone called {"contact_id":"5976"}
[2026-04-08 21:09:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:58] [INFO] getContactPrimaryPhone result {"contact_id":"5976","person_found":true,"primary_phone":"9375780283"}
[2026-04-08 21:09:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9375780283"}
[2026-04-08 21:09:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9375780283","contact_id":"5976","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:09:58"}
[2026-04-08 21:09:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:58] [INFO] generateDealTitle result {"contact_id":"5976","person_name":"امیرجان","mobile":"9375780283","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9375780283"}
[2026-04-08 21:09:58] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"5976","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:09:58] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5976","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:09:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"5976","title":"معامله دوم 9375780283 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9375780283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیرجان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:09:58","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:09:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:09:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:09:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"5976","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9375780283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:09:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:09:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-08 21:10:12] [INFO] Checking activity reminders 
[2026-04-08 21:10:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:10:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:10:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:28] [INFO] generateDealTitle result {"contact_id":"7819","person_name":"محمد محسنی","mobile":"9378148942","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9378148942"}
[2026-04-08 21:10:42] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7819","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:10:42","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:10:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7819","is_new_deal":true}
[2026-04-08 21:10:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:10:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:10:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:10:42] [INFO] getContactPrimaryPhone called {"contact_id":"7819"}
[2026-04-08 21:10:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:42] [INFO] getContactPrimaryPhone result {"contact_id":"7819","person_found":true,"primary_phone":"9378148942"}
[2026-04-08 21:10:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9378148942"}
[2026-04-08 21:10:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9378148942","contact_id":"7819","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:10:42"}
[2026-04-08 21:10:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:42] [INFO] generateDealTitle result {"contact_id":"7819","person_name":"محمد محسنی","mobile":"9378148942","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9378148942"}
[2026-04-08 21:10:42] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"7819","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:10:42] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7819","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:10:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"7819","title":"معامله چهارم 9378148942 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9378148942","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد محسنی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:10:42","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:10:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:42] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:10:42] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"7819","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9378148942 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:10:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:10:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-08 21:10:43] [INFO] Checking activity reminders 
[2026-04-08 21:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:10:54] [INFO] Checking activity reminders 
[2026-04-08 21:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:10:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:10:58] [INFO] generateDealTitle result {"contact_id":"20800","person_name":"مصطفی احمدی","mobile":"9378742585","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9378742585"}
[2026-04-08 21:11:16] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20800","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:11:16","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:11:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20800","is_new_deal":true}
[2026-04-08 21:11:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:11:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:11:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:11:17] [INFO] getContactPrimaryPhone called {"contact_id":"20800"}
[2026-04-08 21:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:11:17] [INFO] getContactPrimaryPhone result {"contact_id":"20800","person_found":true,"primary_phone":"9378742585"}
[2026-04-08 21:11:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9378742585"}
[2026-04-08 21:11:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9378742585","contact_id":"20800","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:11:17"}
[2026-04-08 21:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:11:17] [INFO] generateDealTitle result {"contact_id":"20800","person_name":"مصطفی احمدی","mobile":"9378742585","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9378742585"}
[2026-04-08 21:11:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20800","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:11:17] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20800","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:11:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20800","title":"معامله دوم 9378742585 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9378742585","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی احمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:11:17","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:11:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:11:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20800","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9378742585 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:11:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-08 21:11:25] [INFO] Checking activity reminders 
[2026-04-08 21:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:11:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16694","person_id":"9576"}
[2026-04-08 21:11:42] [INFO] Checking activity reminders 
[2026-04-08 21:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:11:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-04-08 21:11:58] [INFO] Checking activity reminders 
[2026-04-08 21:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:12:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12198","person_id":"6504"}
[2026-04-08 21:12:13] [INFO] Checking activity reminders 
[2026-04-08 21:12:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:12:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:12:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-08 21:12:32] [INFO] Checking activity reminders 
[2026-04-08 21:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15885","person_id":"6588"}
[2026-04-08 21:12:57] [INFO] Checking activity reminders 
[2026-04-08 21:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:13:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-04-08 21:13:09] [INFO] Checking activity reminders 
[2026-04-08 21:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:13:19] [INFO] Checking activity reminders 
[2026-04-08 21:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:13:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2002","person_id":"7337"}
[2026-04-08 21:13:35] [INFO] Checking activity reminders 
[2026-04-08 21:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:13:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-08 21:13:48] [INFO] Checking activity reminders 
[2026-04-08 21:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:13:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-08 21:14:02] [INFO] Checking activity reminders 
[2026-04-08 21:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"655","person_id":"7701"}
[2026-04-08 21:14:18] [INFO] Checking activity reminders 
[2026-04-08 21:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:14:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13350","person_id":"7076"}
[2026-04-08 21:14:40] [INFO] Checking activity reminders 
[2026-04-08 21:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:15:03] [INFO] Checking activity reminders 
[2026-04-08 21:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:15:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-08 21:15:22] [INFO] Checking activity reminders 
[2026-04-08 21:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2861","person_id":"5304"}
[2026-04-08 21:15:58] [INFO] Checking activity reminders 
[2026-04-08 21:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:16:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:14] [INFO] Lead update received {"contact_id":"8996","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"8996"}
[2026-04-08 21:16:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:19] [INFO] generateDealTitle result {"contact_id":"8996","person_name":"پروین مجد","mobile":"9163000819","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9163000819"}
[2026-04-08 21:16:28] [INFO] Checking activity reminders 
[2026-04-08 21:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:16:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8996","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:16:34","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8996","is_new_deal":true}
[2026-04-08 21:16:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:16:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:16:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:16:34] [INFO] getContactPrimaryPhone called {"contact_id":"8996"}
[2026-04-08 21:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:34] [INFO] getContactPrimaryPhone result {"contact_id":"8996","person_found":true,"primary_phone":"9163000819"}
[2026-04-08 21:16:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163000819"}
[2026-04-08 21:16:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163000819","contact_id":"8996","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:16:34"}
[2026-04-08 21:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:34] [INFO] generateDealTitle result {"contact_id":"8996","person_name":"پروین مجد","mobile":"9163000819","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9163000819"}
[2026-04-08 21:16:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"8996","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:16:34] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8996","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:16:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"8996","title":"معامله سوم 9163000819 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9163000819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پروین مجد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:16:34","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:16:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:16:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"8996","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9163000819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:16:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:16:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-08 21:16:49] [INFO] Checking activity reminders 
[2026-04-08 21:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:16:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12379","person_id":"3896"}
[2026-04-08 21:17:03] [INFO] Checking activity reminders 
[2026-04-08 21:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:17] [INFO] Lead update received {"contact_id":"4964","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:17] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4964"}
[2026-04-08 21:17:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:22] [INFO] generateDealTitle result {"contact_id":"4964","person_name":"علیرضاخسروی علیرضاخسروی","mobile":"9157262580","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9157262580"}
[2026-04-08 21:17:34] [INFO] Checking activity reminders 
[2026-04-08 21:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:17:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4964","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:17:37","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:17:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4964","is_new_deal":true}
[2026-04-08 21:17:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:17:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:17:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:17:37] [INFO] getContactPrimaryPhone called {"contact_id":"4964"}
[2026-04-08 21:17:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:37] [INFO] getContactPrimaryPhone result {"contact_id":"4964","person_found":true,"primary_phone":"9157262580"}
[2026-04-08 21:17:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9157262580"}
[2026-04-08 21:17:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9157262580","contact_id":"4964","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:17:37"}
[2026-04-08 21:17:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:37] [INFO] generateDealTitle result {"contact_id":"4964","person_name":"علیرضاخسروی علیرضاخسروی","mobile":"9157262580","existing_deals":4,"ordinal":"پنجم","title":"معامله پنجم 9157262580"}
[2026-04-08 21:17:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4964","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:17:37] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4964","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:17:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4964","title":"معامله پنجم 9157262580 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9157262580","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضاخسروی علیرضاخسروی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:17:37","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:17:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:17:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4964","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله پنجم 9157262580 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:17:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:17:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-08 21:17:52] [INFO] Checking activity reminders 
[2026-04-08 21:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:17:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21152","person_id":"3607"}
[2026-04-08 21:18:06] [INFO] Checking activity reminders 
[2026-04-08 21:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:18:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:20] [INFO] Lead update received {"contact_id":"15018","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15018"}
[2026-04-08 21:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:23] [INFO] generateDealTitle result {"contact_id":"15018","person_name":"علی غلامی","mobile":"9355598877","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9355598877"}
[2026-04-08 21:18:37] [INFO] Checking activity reminders 
[2026-04-08 21:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:18:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15018","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:18:37","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15018","is_new_deal":true}
[2026-04-08 21:18:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:18:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:18:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:18:37] [INFO] getContactPrimaryPhone called {"contact_id":"15018"}
[2026-04-08 21:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:37] [INFO] getContactPrimaryPhone result {"contact_id":"15018","person_found":true,"primary_phone":"9355598877"}
[2026-04-08 21:18:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9355598877"}
[2026-04-08 21:18:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9355598877","contact_id":"15018","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:18:37"}
[2026-04-08 21:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:37] [INFO] generateDealTitle result {"contact_id":"15018","person_name":"علی غلامی","mobile":"9355598877","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9355598877"}
[2026-04-08 21:18:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15018","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:18:37] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15018","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:18:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15018","title":"معامله دوم 9355598877 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9355598877","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی غلامی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:18:37","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:18:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15018","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9355598877 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:18:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:18:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-08 21:18:56] [INFO] Checking activity reminders 
[2026-04-08 21:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:18:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:15] [INFO] Lead update received {"contact_id":"793","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:19:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:15] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"793"}
[2026-04-08 21:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:19] [INFO] generateDealTitle result {"contact_id":"793","person_name":"جواد رضایی","mobile":"9155000190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155000190"}
[2026-04-08 21:19:26] [INFO] Checking activity reminders 
[2026-04-08 21:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:19:34] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"793","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:19:34","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"793","is_new_deal":true}
[2026-04-08 21:19:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:19:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:19:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:19:34] [INFO] getContactPrimaryPhone called {"contact_id":"793"}
[2026-04-08 21:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:34] [INFO] getContactPrimaryPhone result {"contact_id":"793","person_found":true,"primary_phone":"9155000190"}
[2026-04-08 21:19:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155000190"}
[2026-04-08 21:19:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155000190","contact_id":"793","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:19:34"}
[2026-04-08 21:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:34] [INFO] generateDealTitle result {"contact_id":"793","person_name":"جواد رضایی","mobile":"9155000190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9155000190"}
[2026-04-08 21:19:34] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"793","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:19:34] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"793","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:19:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"793","title":"معامله دوم 9155000190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155000190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد رضایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:19:34","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:34] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:19:34] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"793","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9155000190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:19:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:19:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-08 21:19:51] [INFO] Checking activity reminders 
[2026-04-08 21:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:19:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:02] [INFO] Lead update received {"contact_id":"2078","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:20:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:02] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2078"}
[2026-04-08 21:20:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:05] [INFO] generateDealTitle result {"contact_id":"2078","person_name":"میرزایی میرزایی","mobile":"9153853890","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153853890"}
[2026-04-08 21:20:21] [INFO] Checking activity reminders 
[2026-04-08 21:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:20:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2078","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:20:25","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2078","is_new_deal":true}
[2026-04-08 21:20:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:20:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:20:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:20:25] [INFO] getContactPrimaryPhone called {"contact_id":"2078"}
[2026-04-08 21:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:25] [INFO] getContactPrimaryPhone result {"contact_id":"2078","person_found":true,"primary_phone":"9153853890"}
[2026-04-08 21:20:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153853890"}
[2026-04-08 21:20:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153853890","contact_id":"2078","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:20:25"}
[2026-04-08 21:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:25] [INFO] generateDealTitle result {"contact_id":"2078","person_name":"میرزایی میرزایی","mobile":"9153853890","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153853890"}
[2026-04-08 21:20:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2078","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:20:25] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2078","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:20:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2078","title":"معامله دوم 9153853890 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153853890","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میرزایی میرزایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:20:25","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:20:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2078","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9153853890 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:20:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-08 21:20:46] [INFO] Checking activity reminders 
[2026-04-08 21:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:20:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:20:58] [INFO] Lead update received {"contact_id":"578","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:20:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:20:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:20:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:20:58] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"578"}
[2026-04-08 21:20:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:02] [INFO] generateDealTitle result {"contact_id":"578","person_name":"حمیدرضا عطار","mobile":"9125213284","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125213284"}
[2026-04-08 21:21:16] [INFO] Checking activity reminders 
[2026-04-08 21:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:21:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"578","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:21:21","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"578","is_new_deal":true}
[2026-04-08 21:21:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:21:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:21:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:21:21] [INFO] getContactPrimaryPhone called {"contact_id":"578"}
[2026-04-08 21:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:21] [INFO] getContactPrimaryPhone result {"contact_id":"578","person_found":true,"primary_phone":"9125213284"}
[2026-04-08 21:21:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125213284"}
[2026-04-08 21:21:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125213284","contact_id":"578","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:21:21"}
[2026-04-08 21:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:21] [INFO] generateDealTitle result {"contact_id":"578","person_name":"حمیدرضا عطار","mobile":"9125213284","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125213284"}
[2026-04-08 21:21:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"578","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:21:21] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"578","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:21:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"578","title":"معامله دوم 9125213284 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9125213284","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمیدرضا عطار","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:21:21","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:21:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"578","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9125213284 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:21:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-08 21:21:35] [INFO] Checking activity reminders 
[2026-04-08 21:21:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:21:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:21:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:50] [INFO] Lead update received {"contact_id":"12738","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:50] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"12738"}
[2026-04-08 21:21:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:21:54] [INFO] generateDealTitle result {"contact_id":"12738","person_name":"حمیدیان حمیدیان","mobile":"9124938901","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124938901"}
[2026-04-08 21:22:05] [INFO] Checking activity reminders 
[2026-04-08 21:22:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:22:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:22:09] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12738","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:22:09","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:22:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:22:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12738","is_new_deal":true}
[2026-04-08 21:22:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:09] [INFO] getContactPrimaryPhone called {"contact_id":"12738"}
[2026-04-08 21:22:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:22:09] [INFO] getContactPrimaryPhone result {"contact_id":"12738","person_found":true,"primary_phone":"9124938901"}
[2026-04-08 21:22:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124938901"}
[2026-04-08 21:22:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124938901","contact_id":"12738","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:22:09"}
[2026-04-08 21:22:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:22:09] [INFO] generateDealTitle result {"contact_id":"12738","person_name":"حمیدیان حمیدیان","mobile":"9124938901","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124938901"}
[2026-04-08 21:22:09] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12738","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:22:09] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12738","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:22:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12738","title":"معامله دوم 9124938901 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124938901","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمیدیان حمیدیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:22:09","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:22:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:22:09] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:22:09] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12738","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9124938901 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:22:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-08 21:22:30] [INFO] Checking activity reminders 
[2026-04-08 21:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:22:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:42] [INFO] Lead update received {"contact_id":"19838","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"19838"}
[2026-04-08 21:22:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:45] [INFO] generateDealTitle result {"contact_id":"19838","person_name":"محمدحسین جلیلیان","mobile":"9124083274","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124083274"}
[2026-04-08 21:22:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"19838","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:22:59","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"19838","is_new_deal":true}
[2026-04-08 21:22:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:22:59] [INFO] getContactPrimaryPhone called {"contact_id":"19838"}
[2026-04-08 21:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:59] [INFO] getContactPrimaryPhone result {"contact_id":"19838","person_found":true,"primary_phone":"9124083274"}
[2026-04-08 21:22:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124083274"}
[2026-04-08 21:22:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124083274","contact_id":"19838","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:22:59"}
[2026-04-08 21:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:59] [INFO] generateDealTitle result {"contact_id":"19838","person_name":"محمدحسین جلیلیان","mobile":"9124083274","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124083274"}
[2026-04-08 21:22:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"19838","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:22:59] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"19838","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:22:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"19838","title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124083274","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین جلیلیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:22:59","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:22:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:22:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"19838","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:22:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-08 21:23:00] [INFO] Checking activity reminders 
[2026-04-08 21:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:25] [INFO] Lead update received {"contact_id":"20999","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20999"}
[2026-04-08 21:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:29] [INFO] generateDealTitle result {"contact_id":"20999","person_name":"آقای نظری","mobile":"9123334579","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123334579"}
[2026-04-08 21:23:42] [INFO] Checking activity reminders 
[2026-04-08 21:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:23:45] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20999","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:23:45","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20999","is_new_deal":true}
[2026-04-08 21:23:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:23:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:23:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:23:45] [INFO] getContactPrimaryPhone called {"contact_id":"20999"}
[2026-04-08 21:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:45] [INFO] getContactPrimaryPhone result {"contact_id":"20999","person_found":true,"primary_phone":"9123334579"}
[2026-04-08 21:23:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123334579"}
[2026-04-08 21:23:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123334579","contact_id":"20999","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:23:45"}
[2026-04-08 21:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:45] [INFO] generateDealTitle result {"contact_id":"20999","person_name":"آقای نظری","mobile":"9123334579","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123334579"}
[2026-04-08 21:23:45] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20999","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:23:45] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20999","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:23:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20999","title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123334579","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای نظری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:23:45","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:23:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:23:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20999","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:23:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-08 21:24:00] [INFO] Checking activity reminders 
[2026-04-08 21:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:24:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:14] [INFO] Lead update received {"contact_id":"269","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:24:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:14] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"269"}
[2026-04-08 21:24:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:17] [INFO] generateDealTitle result {"contact_id":"269","person_name":"علیزاده علیزاده","mobile":"9123175448","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123175448"}
[2026-04-08 21:24:30] [INFO] Checking activity reminders 
[2026-04-08 21:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:24:38] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"269","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:24:38","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:24:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"269","is_new_deal":true}
[2026-04-08 21:24:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:24:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:24:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:24:38] [INFO] getContactPrimaryPhone called {"contact_id":"269"}
[2026-04-08 21:24:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:38] [INFO] getContactPrimaryPhone result {"contact_id":"269","person_found":true,"primary_phone":"9123175448"}
[2026-04-08 21:24:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123175448"}
[2026-04-08 21:24:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123175448","contact_id":"269","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:24:38"}
[2026-04-08 21:24:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:38] [INFO] generateDealTitle result {"contact_id":"269","person_name":"علیزاده علیزاده","mobile":"9123175448","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9123175448"}
[2026-04-08 21:24:38] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"269","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:24:38] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"269","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:24:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"269","title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123175448","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیزاده علیزاده","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:24:38","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:24:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:38] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:24:38] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"269","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:24:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:24:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-08 21:24:52] [INFO] Checking activity reminders 
[2026-04-08 21:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:24:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13102","person_id":"1048"}
[2026-04-08 21:25:31] [INFO] Checking activity reminders 
[2026-04-08 21:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:25:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"468","person_id":"14306"}
[2026-04-08 21:27:43] [INFO] Checking activity reminders 
[2026-04-08 21:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:27:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:27:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:27:55] [INFO] generateDealTitle result {"contact_id":"2247","person_name":"داوود زلفی","mobile":"9373329069","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9373329069"}
[2026-04-08 21:28:09] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2247","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:28:09","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:28:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2247","is_new_deal":true}
[2026-04-08 21:28:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:09] [INFO] getContactPrimaryPhone called {"contact_id":"2247"}
[2026-04-08 21:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:28:09] [INFO] getContactPrimaryPhone result {"contact_id":"2247","person_found":true,"primary_phone":"9373329069"}
[2026-04-08 21:28:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9373329069"}
[2026-04-08 21:28:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9373329069","contact_id":"2247","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:28:09"}
[2026-04-08 21:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:28:09] [INFO] generateDealTitle result {"contact_id":"2247","person_name":"داوود زلفی","mobile":"9373329069","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9373329069"}
[2026-04-08 21:28:09] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"2247","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:28:09] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2247","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:28:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"2247","title":"معامله سوم 9373329069 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9373329069","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"داوود زلفی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:28:09","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:28:09] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:28:09] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"2247","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9373329069 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:28:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:28:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-08 21:28:15] [INFO] Checking activity reminders 
[2026-04-08 21:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:28:30] [INFO] Checking activity reminders 
[2026-04-08 21:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:28:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:41] [INFO] Lead update received {"contact_id":"local_1403_09_26_88","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:41] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_1403_09_26_88"}
[2026-04-08 21:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:45] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_88","person_name":"آقای فردوسی","mobile":"9356055193","existing_deals":0,"ordinal":"اول","title":"معامله اول 9356055193"}
[2026-04-08 21:28:59] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_88","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:28:59","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_88","is_new_deal":true}
[2026-04-08 21:28:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:28:59] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_88"}
[2026-04-08 21:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:59] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_88","person_found":true,"primary_phone":"9356055193"}
[2026-04-08 21:28:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9356055193"}
[2026-04-08 21:28:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9356055193","contact_id":"local_1403_09_26_88","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:28:59"}
[2026-04-08 21:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:59] [INFO] generateDealTitle result {"contact_id":"local_1403_09_26_88","person_name":"آقای فردوسی","mobile":"9356055193","existing_deals":0,"ordinal":"اول","title":"معامله اول 9356055193"}
[2026-04-08 21:28:59] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_1403_09_26_88","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:28:59] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_1403_09_26_88","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:28:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_1403_09_26_88","title":"معامله اول 9356055193 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9356055193","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آقای فردوسی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:28:59","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:28:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:28:59] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:28:59] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_1403_09_26_88","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9356055193 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:28:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:29:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-08 21:29:16] [INFO] Checking activity reminders 
[2026-04-08 21:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:29:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:30] [INFO] Lead update received {"contact_id":"19022","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:30] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"19022"}
[2026-04-08 21:29:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:32] [INFO] generateDealTitle result {"contact_id":"19022","person_name":"ناظم ناظم","mobile":"9158337585","existing_deals":0,"ordinal":"اول","title":"معامله اول 9158337585"}
[2026-04-08 21:29:46] [INFO] Checking activity reminders 
[2026-04-08 21:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:29:48] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"19022","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:29:48","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:29:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"19022","is_new_deal":true}
[2026-04-08 21:29:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:29:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:29:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:29:48] [INFO] getContactPrimaryPhone called {"contact_id":"19022"}
[2026-04-08 21:29:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:48] [INFO] getContactPrimaryPhone result {"contact_id":"19022","person_found":true,"primary_phone":"9158337585"}
[2026-04-08 21:29:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9158337585"}
[2026-04-08 21:29:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9158337585","contact_id":"19022","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:29:48"}
[2026-04-08 21:29:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:48] [INFO] generateDealTitle result {"contact_id":"19022","person_name":"ناظم ناظم","mobile":"9158337585","existing_deals":0,"ordinal":"اول","title":"معامله اول 9158337585"}
[2026-04-08 21:29:48] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"19022","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:29:48] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"19022","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:29:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"19022","title":"معامله اول 9158337585 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9158337585","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"ناظم ناظم","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:29:48","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:29:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:29:48] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:29:48] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"19022","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9158337585 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:29:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:29:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-08 21:30:04] [INFO] Checking activity reminders 
[2026-04-08 21:30:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:30:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:30:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:19] [INFO] Lead update received {"contact_id":"20297","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:19] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20297"}
[2026-04-08 21:30:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:22] [INFO] generateDealTitle result {"contact_id":"20297","person_name":"کرمی کرمی","mobile":"9336778773","existing_deals":0,"ordinal":"اول","title":"معامله اول 9336778773"}
[2026-04-08 21:30:34] [INFO] Checking activity reminders 
[2026-04-08 21:30:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:30:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:30:37] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20297","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:30:37","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20297","is_new_deal":true}
[2026-04-08 21:30:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:30:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:30:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:30:37] [INFO] getContactPrimaryPhone called {"contact_id":"20297"}
[2026-04-08 21:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:37] [INFO] getContactPrimaryPhone result {"contact_id":"20297","person_found":true,"primary_phone":"9336778773"}
[2026-04-08 21:30:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336778773"}
[2026-04-08 21:30:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336778773","contact_id":"20297","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:30:37"}
[2026-04-08 21:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:37] [INFO] generateDealTitle result {"contact_id":"20297","person_name":"کرمی کرمی","mobile":"9336778773","existing_deals":0,"ordinal":"اول","title":"معامله اول 9336778773"}
[2026-04-08 21:30:37] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20297","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:30:37] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20297","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:30:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20297","title":"معامله اول 9336778773 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9336778773","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"کرمی کرمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:30:37","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:30:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:37] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:30:37] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20297","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9336778773 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:30:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:30:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-08 21:30:52] [INFO] Checking activity reminders 
[2026-04-08 21:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:30:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-08 21:31:18] [INFO] Checking activity reminders 
[2026-04-08 21:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:31:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-08 21:31:40] [INFO] Checking activity reminders 
[2026-04-08 21:31:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:31:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:31:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12689","person_id":"4596"}
[2026-04-08 21:32:07] [INFO] Checking activity reminders 
[2026-04-08 21:32:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:32:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:18] [INFO] Lead update received {"contact_id":"649","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:32:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"649"}
[2026-04-08 21:32:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:21] [INFO] generateDealTitle result {"contact_id":"649","person_name":"بهزاد تصدیقی","mobile":"9177527443","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9177527443"}
[2026-04-08 21:32:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"649","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:32:35","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"649","is_new_deal":true}
[2026-04-08 21:32:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:32:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:32:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:32:35] [INFO] getContactPrimaryPhone called {"contact_id":"649"}
[2026-04-08 21:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:35] [INFO] getContactPrimaryPhone result {"contact_id":"649","person_found":true,"primary_phone":"9177527443"}
[2026-04-08 21:32:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177527443"}
[2026-04-08 21:32:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177527443","contact_id":"649","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:32:35"}
[2026-04-08 21:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:35] [INFO] generateDealTitle result {"contact_id":"649","person_name":"بهزاد تصدیقی","mobile":"9177527443","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9177527443"}
[2026-04-08 21:32:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"649","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:32:35] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"649","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:32:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"649","title":"معامله سوم 9177527443 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9177527443","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"بهزاد تصدیقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:32:35","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:32:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"649","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9177527443 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:32:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:32:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-08 21:32:53] [INFO] Checking activity reminders 
[2026-04-08 21:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15050","person_id":"3608"}
[2026-04-08 21:33:11] [INFO] Checking activity reminders 
[2026-04-08 21:33:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:33:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:33:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-04-08 21:33:29] [INFO] Checking activity reminders 
[2026-04-08 21:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:33:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-08 21:33:50] [INFO] Checking activity reminders 
[2026-04-08 21:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:33:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:03] [INFO] Lead update received {"contact_id":"17940","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:03] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17940"}
[2026-04-08 21:34:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:06] [INFO] generateDealTitle result {"contact_id":"17940","person_name":"عباس نژاد","mobile":"9149513478","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9149513478"}
[2026-04-08 21:34:21] [INFO] Checking activity reminders 
[2026-04-08 21:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:34:24] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17940","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:34:24","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17940","is_new_deal":true}
[2026-04-08 21:34:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:34:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:34:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:34:24] [INFO] getContactPrimaryPhone called {"contact_id":"17940"}
[2026-04-08 21:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:24] [INFO] getContactPrimaryPhone result {"contact_id":"17940","person_found":true,"primary_phone":"9149513478"}
[2026-04-08 21:34:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9149513478"}
[2026-04-08 21:34:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9149513478","contact_id":"17940","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:34:24"}
[2026-04-08 21:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:24] [INFO] generateDealTitle result {"contact_id":"17940","person_name":"عباس نژاد","mobile":"9149513478","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9149513478"}
[2026-04-08 21:34:24] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17940","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:34:24] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"17940","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:34:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17940","title":"معامله دوم 9149513478 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9149513478","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"عباس نژاد","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:34:24","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:24] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:34:24] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17940","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9149513478 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:34:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:34:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-08 21:34:48] [INFO] Checking activity reminders 
[2026-04-08 21:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-08 21:35:17] [INFO] Checking activity reminders 
[2026-04-08 21:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:35:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:29] [INFO] Lead update received {"contact_id":"4271","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-08 21:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:30] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4271"}
[2026-04-08 21:35:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:32] [INFO] generateDealTitle result {"contact_id":"4271","person_name":"افخمی افخمی","mobile":"9133666756","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133666756"}
[2026-04-08 21:35:47] [INFO] Checking activity reminders 
[2026-04-08 21:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:35:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4271","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-08 21:35:49","session_id":"jmggve1d2ge8mqps40vllcieda"}
[2026-04-08 21:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4271","is_new_deal":true}
[2026-04-08 21:35:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-08 21:35:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:35:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-08 21:35:49] [INFO] getContactPrimaryPhone called {"contact_id":"4271"}
[2026-04-08 21:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:49] [INFO] getContactPrimaryPhone result {"contact_id":"4271","person_found":true,"primary_phone":"9133666756"}
[2026-04-08 21:35:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133666756"}
[2026-04-08 21:35:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133666756","contact_id":"4271","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-08 21:35:49"}
[2026-04-08 21:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:49] [INFO] generateDealTitle result {"contact_id":"4271","person_name":"افخمی افخمی","mobile":"9133666756","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9133666756"}
[2026-04-08 21:35:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"4271","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-08 21:35:49] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"4271","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-08 21:35:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"4271","title":"معامله دوم 9133666756 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9133666756","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"افخمی افخمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-08 21:35:49","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-08 21:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:35:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-08 21:35:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"4271","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9133666756 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-08 21:35:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-08 21:35:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-08 21:36:17] [INFO] Checking activity reminders 
[2026-04-08 21:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-08 21:37:00] [INFO] Checking activity reminders 
[2026-04-08 21:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-08 21:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 09:57:53] [WARNING] Auth check failed - not authenticated {"session_id":"34g3ipaa7hlqkbb5tu7i7t0b30","session_keys":[],"action":"log_client_event"}
[2026-04-09 09:57:54] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-09 10:18:15] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 10:18:15] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-09 10:18:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 10:18:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:18:46] [INFO] Checking activity reminders 
[2026-04-09 10:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:19:16] [INFO] Checking activity reminders 
[2026-04-09 10:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:19:46] [INFO] Checking activity reminders 
[2026-04-09 10:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:20:16] [INFO] Checking activity reminders 
[2026-04-09 10:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:20:46] [INFO] Checking activity reminders 
[2026-04-09 10:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:21:16] [INFO] Checking activity reminders 
[2026-04-09 10:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:21:46] [INFO] Checking activity reminders 
[2026-04-09 10:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:22:10] [INFO] Activity save request {"post_data":{"contact_id":"20071","deal_id":"local_69d4bf11ceb6e7.54321223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ بود ارسال پیامک\/ \r\nامروز مجدد تماس گفت دسترسی ندارم عضو بودم گفتم چک کن اگر ثبت نام کرده بودی بگم پشتیبان دسترسی بده اگر نه ثبت نام انجام بدیم جاموندی تا الانم","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 10:22:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20071","note_was_empty":true}
[2026-04-09 10:22:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"20071","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:10] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-09 10:22:10] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-09 10:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-09 10:22:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bf11ceb6e7.54321223","stage":"تماس پیگیری","status_change":null}
[2026-04-09 10:22:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d74c9aae7c66.53991863","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69d74c9aae7c66.53991863"}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:10] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-09 10:22:10] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-09 10:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-09 10:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:17] [INFO] Checking activity reminders 
[2026-04-09 10:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:22:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:22:47] [INFO] Checking activity reminders 
[2026-04-09 10:22:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:22:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:23:19] [INFO] Checking activity reminders 
[2026-04-09 10:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:23:49] [INFO] Checking activity reminders 
[2026-04-09 10:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:24:19] [INFO] Checking activity reminders 
[2026-04-09 10:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:24:49] [INFO] Checking activity reminders 
[2026-04-09 10:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:25:19] [INFO] Checking activity reminders 
[2026-04-09 10:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:25:49] [INFO] Checking activity reminders 
[2026-04-09 10:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:26:19] [INFO] Checking activity reminders 
[2026-04-09 10:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:26:49] [INFO] Checking activity reminders 
[2026-04-09 10:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:27:19] [INFO] Checking activity reminders 
[2026-04-09 10:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:27:50] [INFO] Checking activity reminders 
[2026-04-09 10:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:28:20] [INFO] Checking activity reminders 
[2026-04-09 10:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:28:50] [INFO] Checking activity reminders 
[2026-04-09 10:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:29:20] [INFO] Checking activity reminders 
[2026-04-09 10:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:29:50] [INFO] Checking activity reminders 
[2026-04-09 10:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:30:20] [INFO] Checking activity reminders 
[2026-04-09 10:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:30:50] [INFO] Checking activity reminders 
[2026-04-09 10:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:31:20] [INFO] Checking activity reminders 
[2026-04-09 10:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:31:50] [INFO] Checking activity reminders 
[2026-04-09 10:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:32:20] [INFO] Checking activity reminders 
[2026-04-09 10:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:32:50] [INFO] Checking activity reminders 
[2026-04-09 10:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:33:21] [INFO] Checking activity reminders 
[2026-04-09 10:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:33:51] [INFO] Checking activity reminders 
[2026-04-09 10:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:34:21] [INFO] Checking activity reminders 
[2026-04-09 10:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:34:51] [INFO] Checking activity reminders 
[2026-04-09 10:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:35:21] [INFO] Checking activity reminders 
[2026-04-09 10:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:35:51] [INFO] Checking activity reminders 
[2026-04-09 10:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:36:21] [INFO] Checking activity reminders 
[2026-04-09 10:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:41:45] [INFO] Checking activity reminders 
[2026-04-09 10:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:42:15] [INFO] Checking activity reminders 
[2026-04-09 10:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:42:18] [INFO] Activity save request {"post_data":{"contact_id":"20071","deal_id":"local_69d4bf11ceb6e7.54321223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"با اقای رمضانی صحبت ارسال ش کارت واریز الان 79ت ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 10:42:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20071","note_was_empty":true}
[2026-04-09 10:42:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"20071","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:18] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-09 10:42:18] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-09 10:42:18] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-09 10:42:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bf11ceb6e7.54321223","stage":"تماس پیگیری","status_change":null}
[2026-04-09 10:42:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d751525ee3b6.31945365","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d751525ee3b6.31945365"}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:18] [INFO] Updating virtual stage {"contact_id":"20071","stage_name":"deal_registered","force":false}
[2026-04-09 10:42:18] [INFO] Virtual stage successfully saved {"contact_id":"20071","stage_name":"deal_registered"}
[2026-04-09 10:42:18] [INFO] Virtual stage updated after activity save {"contact_id":"20071"}
[2026-04-09 10:42:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20071","person_id":"3685"}
[2026-04-09 10:42:45] [INFO] Checking activity reminders 
[2026-04-09 10:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:43:16] [INFO] Checking activity reminders 
[2026-04-09 10:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:43:46] [INFO] Checking activity reminders 
[2026-04-09 10:43:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:43:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:44:16] [INFO] Checking activity reminders 
[2026-04-09 10:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:44:46] [INFO] Checking activity reminders 
[2026-04-09 10:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:45:16] [INFO] Checking activity reminders 
[2026-04-09 10:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:45:46] [INFO] Checking activity reminders 
[2026-04-09 10:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:46:16] [INFO] Checking activity reminders 
[2026-04-09 10:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:46:46] [INFO] Checking activity reminders 
[2026-04-09 10:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:47:16] [INFO] Checking activity reminders 
[2026-04-09 10:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:47:46] [INFO] Checking activity reminders 
[2026-04-09 10:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:48:17] [INFO] Checking activity reminders 
[2026-04-09 10:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:48:47] [INFO] Checking activity reminders 
[2026-04-09 10:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:49:22] [INFO] Checking activity reminders 
[2026-04-09 10:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:49:52] [INFO] Checking activity reminders 
[2026-04-09 10:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:50:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:53:42] [INFO] Checking activity reminders 
[2026-04-09 10:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:21] [INFO] Checking activity reminders 
[2026-04-09 10:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:54:44] [INFO] Activity save request {"post_data":{"contact_id":"16306","deal_id":"local_69d4b66401ed68.74648706","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"امروز مجدد با اقای خادمی صحبت کردم چون گفته بودن شماره کارت ارسال کنید اطلاع میدم پیگیری انجام شد گفتن به علت دلگیری که از مجموعه با نیرو خانوم شکیبا دارن نمیخوان فعلا عضویت داشته باشن \/ این امر استارتش از خانوم بردبار خوده که بدون هماهنگی و بدون اینکه سوال کنن مشتری به اسم چه شخصی هست صورت گرفته و مجموعه مشتری رو از دست داد متاستفانه \/ به عنوان مشاور تمام تلاشم رو برای جلب رضایت انجام دادم در نهایت تشکر کردن و گفان شاید در اینده با خود شما ارتباط بگیرم","activity_duration":"25","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 10:54:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"16306","note_was_empty":true}
[2026-04-09 10:54:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"16306","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:44] [INFO] Updating virtual stage {"contact_id":"16306","stage_name":"deal_registered","force":false}
[2026-04-09 10:54:44] [INFO] Virtual stage successfully saved {"contact_id":"16306","stage_name":"deal_registered"}
[2026-04-09 10:54:44] [INFO] Virtual stage updated after activity save {"contact_id":"16306"}
[2026-04-09 10:54:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4b66401ed68.74648706","stage":"تماس پیگیری","status_change":null}
[2026-04-09 10:54:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7543c1f7a84.83135956","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7543c1f7a84.83135956"}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:44] [INFO] Updating virtual stage {"contact_id":"16306","stage_name":"deal_registered","force":false}
[2026-04-09 10:54:44] [INFO] Virtual stage successfully saved {"contact_id":"16306","stage_name":"deal_registered"}
[2026-04-09 10:54:44] [INFO] Virtual stage updated after activity save {"contact_id":"16306"}
[2026-04-09 10:54:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16306","person_id":"2158"}
[2026-04-09 10:54:51] [INFO] Checking activity reminders 
[2026-04-09 10:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:55:21] [INFO] Checking activity reminders 
[2026-04-09 10:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:55:52] [INFO] Checking activity reminders 
[2026-04-09 10:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:56:22] [INFO] Checking activity reminders 
[2026-04-09 10:56:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:56:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:56:52] [INFO] Checking activity reminders 
[2026-04-09 10:56:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:56:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:57:22] [INFO] Checking activity reminders 
[2026-04-09 10:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:57:53] [INFO] Checking activity reminders 
[2026-04-09 10:57:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:57:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:58:23] [INFO] Checking activity reminders 
[2026-04-09 10:58:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:58:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:58:53] [INFO] Checking activity reminders 
[2026-04-09 10:58:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:58:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:59:23] [INFO] Checking activity reminders 
[2026-04-09 10:59:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:59:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 10:59:53] [INFO] Checking activity reminders 
[2026-04-09 10:59:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 10:59:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:02:29] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-09 11:02:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:02:35] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-09 11:02:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:02:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:03:50] [INFO] Checking activity reminders 
[2026-04-09 11:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:03:57] [INFO] Checking activity reminders 
[2026-04-09 11:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:04:20] [INFO] Checking activity reminders 
[2026-04-09 11:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:04:27] [INFO] Checking activity reminders 
[2026-04-09 11:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:04:50] [INFO] Checking activity reminders 
[2026-04-09 11:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:04:57] [INFO] Checking activity reminders 
[2026-04-09 11:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:05:21] [INFO] Checking activity reminders 
[2026-04-09 11:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:05:27] [INFO] Checking activity reminders 
[2026-04-09 11:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:05:51] [INFO] Checking activity reminders 
[2026-04-09 11:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:05:57] [INFO] Checking activity reminders 
[2026-04-09 11:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:06:21] [INFO] Checking activity reminders 
[2026-04-09 11:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:06:27] [INFO] Checking activity reminders 
[2026-04-09 11:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:06:52] [INFO] Checking activity reminders 
[2026-04-09 11:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:06:57] [INFO] Checking activity reminders 
[2026-04-09 11:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:07:23] [INFO] Checking activity reminders 
[2026-04-09 11:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:07:27] [INFO] Checking activity reminders 
[2026-04-09 11:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:07:56] [INFO] Checking activity reminders 
[2026-04-09 11:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:07:57] [INFO] Checking activity reminders 
[2026-04-09 11:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:08:26] [INFO] Checking activity reminders 
[2026-04-09 11:08:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:08:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:08:27] [INFO] Checking activity reminders 
[2026-04-09 11:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:08:58] [INFO] Checking activity reminders 
[2026-04-09 11:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:08:58] [INFO] Checking activity reminders 
[2026-04-09 11:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:09:28] [INFO] Checking activity reminders 
[2026-04-09 11:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:09:28] [INFO] Checking activity reminders 
[2026-04-09 11:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:09:58] [INFO] Checking activity reminders 
[2026-04-09 11:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:09:58] [INFO] Checking activity reminders 
[2026-04-09 11:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:10:28] [INFO] Checking activity reminders 
[2026-04-09 11:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:10:28] [INFO] Checking activity reminders 
[2026-04-09 11:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:10:38] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-09 11:10:38] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-09 11:10:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:10:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 11:10:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 11:10:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 11:10:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 11:10:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":13,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1713","didar_user_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 11:10:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":13,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1713","owner_id":"local_6756d20f06477a1a","display_name":"test test","email":"test@test.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 11:10:58] [INFO] Checking activity reminders 
[2026-04-09 11:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:10:59] [INFO] Checking activity reminders 
[2026-04-09 11:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:12] [INFO] Checking activity reminders 
[2026-04-09 11:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:28] [INFO] Checking activity reminders 
[2026-04-09 11:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:29] [INFO] Checking activity reminders 
[2026-04-09 11:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:42] [INFO] Checking activity reminders 
[2026-04-09 11:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:43] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9149115020","09149115020"]}
[2026-04-09 11:11:43] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9149115020","09149115020"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-09 11:11:43] [INFO] Didar write disabled; creating local lead only {"owner_id":"local_3e2fc1c5b672c4f3","mobile":"9149115020","full_name":"لید جدید"}
[2026-04-09 11:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 11:11:43] [INFO] Notification created {"notification_id":"637","user_id":"local_3e2fc1c5b672c4f3","type":"lead_assigned","show_popup":true}
[2026-04-09 11:11:58] [INFO] Checking activity reminders 
[2026-04-09 11:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:11:59] [INFO] Checking activity reminders 
[2026-04-09 11:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:12] [INFO] Checking activity reminders 
[2026-04-09 11:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:28] [INFO] Checking activity reminders 
[2026-04-09 11:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:29] [INFO] Checking activity reminders 
[2026-04-09 11:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:47] [INFO] Checking activity reminders 
[2026-04-09 11:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:58] [INFO] Checking activity reminders 
[2026-04-09 11:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:12:59] [INFO] Checking activity reminders 
[2026-04-09 11:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:13:28] [INFO] Checking activity reminders 
[2026-04-09 11:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:13:29] [INFO] Checking activity reminders 
[2026-04-09 11:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:13:44] [INFO] Checking activity reminders 
[2026-04-09 11:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:13:58] [INFO] Checking activity reminders 
[2026-04-09 11:13:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:13:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:13:59] [INFO] Checking activity reminders 
[2026-04-09 11:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:14:28] [INFO] Checking activity reminders 
[2026-04-09 11:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:14:29] [INFO] Checking activity reminders 
[2026-04-09 11:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:14:29] [INFO] Checking activity reminders 
[2026-04-09 11:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:14:53] [INFO] Checking activity reminders 
[2026-04-09 11:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:14:59] [INFO] Checking activity reminders 
[2026-04-09 11:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:00] [INFO] Checking activity reminders 
[2026-04-09 11:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:23] [INFO] Checking activity reminders 
[2026-04-09 11:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:29] [INFO] Checking activity reminders 
[2026-04-09 11:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:30] [INFO] Checking activity reminders 
[2026-04-09 11:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:53] [INFO] Checking activity reminders 
[2026-04-09 11:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:15:59] [INFO] Checking activity reminders 
[2026-04-09 11:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:00] [INFO] Checking activity reminders 
[2026-04-09 11:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:23] [INFO] Checking activity reminders 
[2026-04-09 11:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:29] [INFO] Checking activity reminders 
[2026-04-09 11:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:30] [INFO] Checking activity reminders 
[2026-04-09 11:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:53] [INFO] Checking activity reminders 
[2026-04-09 11:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:16:59] [INFO] Checking activity reminders 
[2026-04-09 11:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:17:00] [INFO] Checking activity reminders 
[2026-04-09 11:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:17:29] [INFO] Checking activity reminders 
[2026-04-09 11:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:17:30] [INFO] Checking activity reminders 
[2026-04-09 11:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:17:59] [INFO] Checking activity reminders 
[2026-04-09 11:17:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:17:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:18:00] [INFO] Checking activity reminders 
[2026-04-09 11:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:18:29] [INFO] Checking activity reminders 
[2026-04-09 11:18:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:18:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:18:31] [INFO] Checking activity reminders 
[2026-04-09 11:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:18:59] [INFO] Checking activity reminders 
[2026-04-09 11:18:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:18:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:19:01] [INFO] Checking activity reminders 
[2026-04-09 11:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:19:30] [INFO] Checking activity reminders 
[2026-04-09 11:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:19:31] [INFO] Checking activity reminders 
[2026-04-09 11:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:20:00] [INFO] Checking activity reminders 
[2026-04-09 11:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:20:01] [INFO] Checking activity reminders 
[2026-04-09 11:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:20:30] [INFO] Checking activity reminders 
[2026-04-09 11:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:20:31] [INFO] Checking activity reminders 
[2026-04-09 11:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:21:00] [INFO] Checking activity reminders 
[2026-04-09 11:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:21:03] [INFO] Checking activity reminders 
[2026-04-09 11:21:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:21:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:21:30] [INFO] Checking activity reminders 
[2026-04-09 11:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:21:33] [INFO] Checking activity reminders 
[2026-04-09 11:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:22:00] [INFO] Checking activity reminders 
[2026-04-09 11:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:22:03] [INFO] Checking activity reminders 
[2026-04-09 11:22:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:22:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:22:30] [INFO] Checking activity reminders 
[2026-04-09 11:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:22:33] [INFO] Checking activity reminders 
[2026-04-09 11:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:23:00] [INFO] Checking activity reminders 
[2026-04-09 11:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:23:05] [INFO] Checking activity reminders 
[2026-04-09 11:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:23:30] [INFO] Checking activity reminders 
[2026-04-09 11:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:23:36] [INFO] Checking activity reminders 
[2026-04-09 11:23:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:23:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:24:00] [INFO] Checking activity reminders 
[2026-04-09 11:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:24:06] [INFO] Checking activity reminders 
[2026-04-09 11:24:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:24:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:24:30] [INFO] Checking activity reminders 
[2026-04-09 11:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:24:36] [INFO] Checking activity reminders 
[2026-04-09 11:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:25:01] [INFO] Checking activity reminders 
[2026-04-09 11:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:25:06] [INFO] Checking activity reminders 
[2026-04-09 11:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:25:31] [INFO] Checking activity reminders 
[2026-04-09 11:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:25:37] [INFO] Checking activity reminders 
[2026-04-09 11:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:26:01] [INFO] Checking activity reminders 
[2026-04-09 11:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:26:07] [INFO] Checking activity reminders 
[2026-04-09 11:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:26:31] [INFO] Checking activity reminders 
[2026-04-09 11:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:26:37] [INFO] Checking activity reminders 
[2026-04-09 11:26:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:26:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:26:40] [WARNING] Auth check failed - not authenticated {"session_id":"mpi1ck2btl0f5994fi0nlpdsvv","session_keys":[],"action":"log_client_event"}
[2026-04-09 11:26:40] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-09 11:26:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:27:01] [INFO] Checking activity reminders 
[2026-04-09 11:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:27:07] [INFO] Checking activity reminders 
[2026-04-09 11:27:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:27:11] [INFO] Checking activity reminders 
[2026-04-09 11:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:27:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:27:31] [INFO] Checking activity reminders 
[2026-04-09 11:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:27:37] [INFO] Checking activity reminders 
[2026-04-09 11:27:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:27:41] [INFO] Checking activity reminders 
[2026-04-09 11:27:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:27:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:01] [INFO] Checking activity reminders 
[2026-04-09 11:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:08] [INFO] Checking activity reminders 
[2026-04-09 11:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:11] [INFO] Checking activity reminders 
[2026-04-09 11:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:31] [INFO] Checking activity reminders 
[2026-04-09 11:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:39] [INFO] Checking activity reminders 
[2026-04-09 11:28:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:28:41] [INFO] Checking activity reminders 
[2026-04-09 11:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:01] [INFO] Checking activity reminders 
[2026-04-09 11:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:11] [INFO] Checking activity reminders 
[2026-04-09 11:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:12] [INFO] Checking activity reminders 
[2026-04-09 11:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:31] [INFO] Checking activity reminders 
[2026-04-09 11:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:41] [INFO] Checking activity reminders 
[2026-04-09 11:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:29:42] [INFO] Checking activity reminders 
[2026-04-09 11:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:01] [INFO] Checking activity reminders 
[2026-04-09 11:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:11] [INFO] Checking activity reminders 
[2026-04-09 11:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:12] [INFO] Checking activity reminders 
[2026-04-09 11:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:31] [INFO] Checking activity reminders 
[2026-04-09 11:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:41] [INFO] Checking activity reminders 
[2026-04-09 11:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:30:42] [INFO] Checking activity reminders 
[2026-04-09 11:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:31:02] [INFO] Checking activity reminders 
[2026-04-09 11:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:31:12] [INFO] Checking activity reminders 
[2026-04-09 11:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:31:12] [INFO] Checking activity reminders 
[2026-04-09 11:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:31:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:31:32] [INFO] generateDealTitle result {"contact_id":"11918","person_name":"اقای نوروزی","mobile":"9152874020","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9152874020"}
[2026-04-09 11:31:42] [INFO] Checking activity reminders 
[2026-04-09 11:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:31:42] [INFO] Checking activity reminders 
[2026-04-09 11:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:32:12] [INFO] Checking activity reminders 
[2026-04-09 11:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:32:12] [INFO] Checking activity reminders 
[2026-04-09 11:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:32:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:32:27","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:32:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11918","is_new_deal":false}
[2026-04-09 11:32:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:32:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:32:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:32:27] [INFO] getContactPrimaryPhone called {"contact_id":"11918"}
[2026-04-09 11:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:32:27] [INFO] getContactPrimaryPhone result {"contact_id":"11918","person_found":true,"primary_phone":"9152874020"}
[2026-04-09 11:32:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152874020"}
[2026-04-09 11:32:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152874020","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:32:27"}
[2026-04-09 11:32:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","existing_deal_found":true,"existing_contact_id":"11918","existing_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:32:27"}
[2026-04-09 11:32:27] [INFO] DealController.save validated payments {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 11:32:27] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"11918","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:32:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689838b3dc6.34471510","contact_didar_id":"11918","title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152874020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای نوروزی","existing_deal":"YES","existing_deal_id":"local_69d689838b3dc6.34471510","existing_deal_status":"Pending","server_time":"2026-04-09 11:32:27","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:32:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:32:27","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:32:42] [INFO] Checking activity reminders 
[2026-04-09 11:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:32:42] [INFO] Checking activity reminders 
[2026-04-09 11:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:32:49] [INFO] Checking activity reminders 
[2026-04-09 11:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:33:12] [INFO] Checking activity reminders 
[2026-04-09 11:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:33:12] [INFO] Checking activity reminders 
[2026-04-09 11:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:33:42] [INFO] Checking activity reminders 
[2026-04-09 11:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:33:42] [INFO] Checking activity reminders 
[2026-04-09 11:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:33:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:33:45","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:33:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:33:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11918","is_new_deal":false}
[2026-04-09 11:33:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:33:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:33:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:33:45] [INFO] getContactPrimaryPhone called {"contact_id":"11918"}
[2026-04-09 11:33:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:33:45] [INFO] getContactPrimaryPhone result {"contact_id":"11918","person_found":true,"primary_phone":"9152874020"}
[2026-04-09 11:33:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152874020"}
[2026-04-09 11:33:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152874020","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:33:45"}
[2026-04-09 11:33:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","existing_deal_found":true,"existing_contact_id":"11918","existing_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:33:45"}
[2026-04-09 11:33:45] [INFO] DealController.save validated payments {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-09 11:33:45] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"11918","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:33:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689838b3dc6.34471510","contact_didar_id":"11918","title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152874020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای نوروزی","existing_deal":"YES","existing_deal_id":"local_69d689838b3dc6.34471510","existing_deal_status":"Pending","server_time":"2026-04-09 11:33:45","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:33:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:33:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:33:45","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:33:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:34:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:34:12] [INFO] Checking activity reminders 
[2026-04-09 11:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:34:12] [INFO] Checking activity reminders 
[2026-04-09 11:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:34:42] [INFO] Checking activity reminders 
[2026-04-09 11:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:34:42] [INFO] Checking activity reminders 
[2026-04-09 11:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:35:04] [INFO] Activity save request {"post_data":{"contact_id":"11918","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من اصلا شماره نزاشته بودم برای کانال 405 پرزنتش کردم گفت خیلی مبلغ کانال نسبت به قبل بالا رفته \r\n","activity_duration":"4","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 11:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 11:35:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 11:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"11918","note_was_empty":true}
[2026-04-09 11:35:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"11918","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 11:35:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d75db0b57089.22418767","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 11:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d75db0b57089.22418767"}
[2026-04-09 11:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:04] [INFO] Updating virtual stage {"contact_id":"11918","stage_name":"deal_registered","force":false}
[2026-04-09 11:35:04] [INFO] Virtual stage successfully saved {"contact_id":"11918","stage_name":"deal_registered"}
[2026-04-09 11:35:04] [INFO] Virtual stage updated after activity save {"contact_id":"11918"}
[2026-04-09 11:35:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 11:35:12] [INFO] Checking activity reminders 
[2026-04-09 11:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:35:13] [INFO] Checking activity reminders 
[2026-04-09 11:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:35:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 11:35:42] [INFO] Checking activity reminders 
[2026-04-09 11:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:35:43] [INFO] Checking activity reminders 
[2026-04-09 11:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:36:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:36:40] [INFO] Checking activity reminders 
[2026-04-09 11:36:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:36:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:37:10] [INFO] Checking activity reminders 
[2026-04-09 11:37:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:37:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:37:16] [INFO] Checking activity reminders 
[2026-04-09 11:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:37:40] [INFO] Checking activity reminders 
[2026-04-09 11:37:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:37:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:37:46] [INFO] Checking activity reminders 
[2026-04-09 11:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:37:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20908","deal_id":"local_69d689f2d181d7.43037878","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:37:55","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-09 11:37:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20908","is_new_deal":false}
[2026-04-09 11:37:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:37:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:37:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:37:55] [INFO] getContactPrimaryPhone called {"contact_id":"20908"}
[2026-04-09 11:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-09 11:37:55] [INFO] getContactPrimaryPhone result {"contact_id":"20908","person_found":true,"primary_phone":"9031321284"}
[2026-04-09 11:37:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9031321284"}
[2026-04-09 11:37:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9031321284","contact_id":"20908","deal_id":"local_69d689f2d181d7.43037878","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:37:55"}
[2026-04-09 11:37:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689f2d181d7.43037878","contact_id":"20908","existing_deal_found":true,"existing_contact_id":"20908","existing_title":"معامله دوم 9031321284 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:37:55"}
[2026-04-09 11:37:55] [INFO] DealController.save validated payments {"deal_id":"local_69d689f2d181d7.43037878","contact_id":"20908","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 11:37:55] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"20908","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:37:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689f2d181d7.43037878","contact_didar_id":"20908","title":"معامله دوم 9031321284 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9031321284","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"خانم درویش","existing_deal":"YES","existing_deal_id":"local_69d689f2d181d7.43037878","existing_deal_status":"Pending","server_time":"2026-04-09 11:37:55","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-09 11:37:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689f2d181d7.43037878","contact_id":"20908","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9031321284 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:37:55","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:38:10] [INFO] Checking activity reminders 
[2026-04-09 11:38:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:38:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:38:16] [INFO] Checking activity reminders 
[2026-04-09 11:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:38:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 11:38:40] [INFO] Checking activity reminders 
[2026-04-09 11:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:38:46] [INFO] Checking activity reminders 
[2026-04-09 11:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:39:10] [INFO] Checking activity reminders 
[2026-04-09 11:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:39:16] [INFO] Checking activity reminders 
[2026-04-09 11:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:39:40] [INFO] Checking activity reminders 
[2026-04-09 11:39:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:39:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:39:46] [INFO] Checking activity reminders 
[2026-04-09 11:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:40:10] [INFO] Checking activity reminders 
[2026-04-09 11:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:40:16] [INFO] Checking activity reminders 
[2026-04-09 11:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:40:40] [INFO] Checking activity reminders 
[2026-04-09 11:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:40:46] [INFO] Checking activity reminders 
[2026-04-09 11:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:41:11] [INFO] Checking activity reminders 
[2026-04-09 11:41:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:41:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:41:16] [INFO] Checking activity reminders 
[2026-04-09 11:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:41:41] [INFO] Checking activity reminders 
[2026-04-09 11:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:41:46] [INFO] Checking activity reminders 
[2026-04-09 11:41:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:41:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:42:11] [INFO] Checking activity reminders 
[2026-04-09 11:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:42:17] [INFO] Checking activity reminders 
[2026-04-09 11:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:42:41] [INFO] Checking activity reminders 
[2026-04-09 11:42:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:42:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:42:48] [INFO] Checking activity reminders 
[2026-04-09 11:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:42:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"17472","deal_id":"local_69d689adeb5969.98055440","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:42:58","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:42:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"17472","is_new_deal":false}
[2026-04-09 11:42:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:42:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:42:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:42:58] [INFO] getContactPrimaryPhone called {"contact_id":"17472"}
[2026-04-09 11:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:42:58] [INFO] getContactPrimaryPhone result {"contact_id":"17472","person_found":true,"primary_phone":"9151698544"}
[2026-04-09 11:42:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9151698544"}
[2026-04-09 11:42:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9151698544","contact_id":"17472","deal_id":"local_69d689adeb5969.98055440","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:42:58"}
[2026-04-09 11:42:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689adeb5969.98055440","contact_id":"17472","existing_deal_found":true,"existing_contact_id":"17472","existing_title":"معامله دوم 9151698544 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:42:58"}
[2026-04-09 11:42:58] [INFO] DealController.save validated payments {"deal_id":"local_69d689adeb5969.98055440","contact_id":"17472","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 11:42:58] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"17472","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:42:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689adeb5969.98055440","contact_didar_id":"17472","title":"معامله دوم 9151698544 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9151698544","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"رضایی نوعی","existing_deal":"YES","existing_deal_id":"local_69d689adeb5969.98055440","existing_deal_status":"Pending","server_time":"2026-04-09 11:42:58","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:42:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:42:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689adeb5969.98055440","contact_id":"17472","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9151698544 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:42:58","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:43:11] [INFO] Checking activity reminders 
[2026-04-09 11:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:43:19] [INFO] Checking activity reminders 
[2026-04-09 11:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:43:41] [INFO] Checking activity reminders 
[2026-04-09 11:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:43:49] [INFO] Checking activity reminders 
[2026-04-09 11:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:44:11] [INFO] Checking activity reminders 
[2026-04-09 11:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:44:19] [INFO] Checking activity reminders 
[2026-04-09 11:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:44:41] [INFO] Checking activity reminders 
[2026-04-09 11:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:44:50] [INFO] Checking activity reminders 
[2026-04-09 11:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:44:57] [INFO] Activity save request {"post_data":{"contact_id":"17472","deal_id":"local_69d689adeb5969.98055440","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خیلی تشکر کرد بابت پیگیری میگه من میخواستم بیشتر مبلغ کانال رو بدونم که بتونم نقدینگیم رو فراهم کنم فعلا خیلی مبلغش بالاست و من خب کسب و کارم خوابیده باید اجازه بدید یخورده اوضاع اروم بشه و من از جیب نخورم که بتونم بیام تو کانال ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:44:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 11:44:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:44:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"17472","note_was_empty":true}
[2026-04-09 11:44:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"17472","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:44:57] [INFO] Updating virtual stage {"contact_id":"17472","stage_name":"deal_registered","force":false}
[2026-04-09 11:44:57] [INFO] Virtual stage successfully saved {"contact_id":"17472","stage_name":"deal_registered"}
[2026-04-09 11:44:57] [INFO] Virtual stage updated after activity save {"contact_id":"17472"}
[2026-04-09 11:44:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689adeb5969.98055440","stage":"تماس پیگیری","status_change":null}
[2026-04-09 11:44:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d760010d4923.22817786","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:44:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69d760010d4923.22817786"}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:44:57] [INFO] Updating virtual stage {"contact_id":"17472","stage_name":"deal_registered","force":false}
[2026-04-09 11:44:57] [INFO] Virtual stage successfully saved {"contact_id":"17472","stage_name":"deal_registered"}
[2026-04-09 11:44:57] [INFO] Virtual stage updated after activity save {"contact_id":"17472"}
[2026-04-09 11:44:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 11:45:11] [INFO] Checking activity reminders 
[2026-04-09 11:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:45:21] [INFO] Checking activity reminders 
[2026-04-09 11:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:45:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 11:45:51] [INFO] Checking activity reminders 
[2026-04-09 11:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:45:53] [INFO] Checking activity reminders 
[2026-04-09 11:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:46:21] [INFO] Checking activity reminders 
[2026-04-09 11:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:46:23] [INFO] Checking activity reminders 
[2026-04-09 11:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:46:53] [INFO] Checking activity reminders 
[2026-04-09 11:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:46:54] [INFO] Checking activity reminders 
[2026-04-09 11:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:47:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12385","deal_id":"local_69d6891941fd89.75492893","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:47:05","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-09 11:47:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12385","is_new_deal":false}
[2026-04-09 11:47:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:47:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:47:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:47:05] [INFO] getContactPrimaryPhone called {"contact_id":"12385"}
[2026-04-09 11:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-09 11:47:05] [INFO] getContactPrimaryPhone result {"contact_id":"12385","person_found":true,"primary_phone":"9153273834"}
[2026-04-09 11:47:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153273834"}
[2026-04-09 11:47:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153273834","contact_id":"12385","deal_id":"local_69d6891941fd89.75492893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:47:05"}
[2026-04-09 11:47:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6891941fd89.75492893","contact_id":"12385","existing_deal_found":true,"existing_contact_id":"12385","existing_title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:47:05"}
[2026-04-09 11:47:05] [INFO] DealController.save validated payments {"deal_id":"local_69d6891941fd89.75492893","contact_id":"12385","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 11:47:05] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"12385","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:47:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6891941fd89.75492893","contact_didar_id":"12385","title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153273834","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"خانم راستگو","existing_deal":"YES","existing_deal_id":"local_69d6891941fd89.75492893","existing_deal_status":"Pending","server_time":"2026-04-09 11:47:05","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:47:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-09 11:47:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6891941fd89.75492893","contact_id":"12385","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:47:05","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:47:23] [INFO] Checking activity reminders 
[2026-04-09 11:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:47:24] [INFO] Checking activity reminders 
[2026-04-09 11:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:47:50] [INFO] Checking activity reminders 
[2026-04-09 11:47:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:47:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:47:53] [INFO] Checking activity reminders 
[2026-04-09 11:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:48:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1151","deal_id":"local_69d689552956a2.36646025","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:48:05","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-09 11:48:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1151","is_new_deal":false}
[2026-04-09 11:48:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:48:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:48:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:48:05] [INFO] getContactPrimaryPhone called {"contact_id":"1151"}
[2026-04-09 11:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-09 11:48:05] [INFO] getContactPrimaryPhone result {"contact_id":"1151","person_found":true,"primary_phone":"9153120223"}
[2026-04-09 11:48:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153120223"}
[2026-04-09 11:48:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153120223","contact_id":"1151","deal_id":"local_69d689552956a2.36646025","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:48:05"}
[2026-04-09 11:48:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689552956a2.36646025","contact_id":"1151","existing_deal_found":true,"existing_contact_id":"1151","existing_title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:48:05"}
[2026-04-09 11:48:05] [INFO] DealController.save validated payments {"deal_id":"local_69d689552956a2.36646025","contact_id":"1151","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 11:48:05] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"1151","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:48:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689552956a2.36646025","contact_didar_id":"1151","title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9153120223","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"یونس قاسم نیا","existing_deal":"YES","existing_deal_id":"local_69d689552956a2.36646025","existing_deal_status":"Pending","server_time":"2026-04-09 11:48:05","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:48:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-09 11:48:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689552956a2.36646025","contact_id":"1151","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:48:05","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:48:20] [INFO] Checking activity reminders 
[2026-04-09 11:48:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:48:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:48:23] [INFO] Checking activity reminders 
[2026-04-09 11:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:48:53] [INFO] Checking activity reminders 
[2026-04-09 11:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:48:54] [INFO] Checking activity reminders 
[2026-04-09 11:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:49:23] [INFO] Checking activity reminders 
[2026-04-09 11:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:49:27] [INFO] Checking activity reminders 
[2026-04-09 11:49:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:49:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:49:54] [INFO] Checking activity reminders 
[2026-04-09 11:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:49:57] [INFO] Checking activity reminders 
[2026-04-09 11:49:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:49:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:50:24] [INFO] Checking activity reminders 
[2026-04-09 11:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:50:27] [INFO] Checking activity reminders 
[2026-04-09 11:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:50:54] [INFO] Checking activity reminders 
[2026-04-09 11:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:50:57] [INFO] Checking activity reminders 
[2026-04-09 11:50:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:50:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:51:24] [INFO] Checking activity reminders 
[2026-04-09 11:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:51:27] [INFO] Checking activity reminders 
[2026-04-09 11:51:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:51:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:51:54] [INFO] Checking activity reminders 
[2026-04-09 11:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:51:57] [INFO] Checking activity reminders 
[2026-04-09 11:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:52:24] [INFO] Checking activity reminders 
[2026-04-09 11:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:52:28] [INFO] Checking activity reminders 
[2026-04-09 11:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:52:54] [INFO] Checking activity reminders 
[2026-04-09 11:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:53:00] [INFO] Checking activity reminders 
[2026-04-09 11:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:53:24] [INFO] Checking activity reminders 
[2026-04-09 11:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:53:30] [INFO] Checking activity reminders 
[2026-04-09 11:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:53:54] [INFO] Checking activity reminders 
[2026-04-09 11:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:54:00] [INFO] Checking activity reminders 
[2026-04-09 11:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:54:24] [INFO] Checking activity reminders 
[2026-04-09 11:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:54:30] [INFO] Checking activity reminders 
[2026-04-09 11:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:54:54] [INFO] Checking activity reminders 
[2026-04-09 11:54:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:54:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:00] [INFO] Checking activity reminders 
[2026-04-09 11:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:02] [INFO] Checking activity reminders 
[2026-04-09 11:55:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"7587","deal_id":"local_69d687a0c2f2c4.68501094","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:55:07","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 11:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-09 11:55:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"7587","is_new_deal":false}
[2026-04-09 11:55:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 11:55:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 11:55:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 11:55:07] [INFO] getContactPrimaryPhone called {"contact_id":"7587"}
[2026-04-09 11:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-09 11:55:07] [INFO] getContactPrimaryPhone result {"contact_id":"7587","person_found":true,"primary_phone":"9153350592"}
[2026-04-09 11:55:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153350592"}
[2026-04-09 11:55:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153350592","contact_id":"7587","deal_id":"local_69d687a0c2f2c4.68501094","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:55:07"}
[2026-04-09 11:55:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d687a0c2f2c4.68501094","contact_id":"7587","existing_deal_found":true,"existing_contact_id":"7587","existing_title":"معامله دوم 9153350592 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 11:55:07"}
[2026-04-09 11:55:07] [INFO] DealController.save validated payments {"deal_id":"local_69d687a0c2f2c4.68501094","contact_id":"7587","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 11:55:07] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7587","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:55:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d687a0c2f2c4.68501094","contact_didar_id":"7587","title":"معامله دوم 9153350592 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9153350592","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"صدقی صدقی","existing_deal":"YES","existing_deal_id":"local_69d687a0c2f2c4.68501094","existing_deal_status":"Pending","server_time":"2026-04-09 11:55:07","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 11:55:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-09 11:55:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d687a0c2f2c4.68501094","contact_id":"7587","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9153350592 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 11:55:07","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:55:24] [INFO] Checking activity reminders 
[2026-04-09 11:55:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:31] [INFO] Checking activity reminders 
[2026-04-09 11:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:32] [INFO] Checking activity reminders 
[2026-04-09 11:55:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:55:55] [INFO] Checking activity reminders 
[2026-04-09 11:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:02] [INFO] Checking activity reminders 
[2026-04-09 11:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:02] [INFO] Checking activity reminders 
[2026-04-09 11:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:25] [INFO] Checking activity reminders 
[2026-04-09 11:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:32] [INFO] Checking activity reminders 
[2026-04-09 11:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:39] [INFO] Checking activity reminders 
[2026-04-09 11:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:56:55] [INFO] Checking activity reminders 
[2026-04-09 11:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:03] [INFO] Checking activity reminders 
[2026-04-09 11:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:10] [INFO] Checking activity reminders 
[2026-04-09 11:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:25] [INFO] Checking activity reminders 
[2026-04-09 11:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:33] [INFO] Checking activity reminders 
[2026-04-09 11:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:47] [INFO] Checking activity reminders 
[2026-04-09 11:57:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:55] [INFO] Checking activity reminders 
[2026-04-09 11:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:57:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2247","deal_id":"local_69d6973144cfe0.96600410","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 11:57:56","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:57:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2247","is_new_deal":false}
[2026-04-09 11:57:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 11:57:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:57:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 11:57:56] [INFO] getContactPrimaryPhone called {"contact_id":"2247"}
[2026-04-09 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:57:56] [INFO] getContactPrimaryPhone result {"contact_id":"2247","person_found":true,"primary_phone":"9373329069"}
[2026-04-09 11:57:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9373329069"}
[2026-04-09 11:57:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9373329069","contact_id":"2247","deal_id":"local_69d6973144cfe0.96600410","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 11:57:56"}
[2026-04-09 11:57:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6973144cfe0.96600410","contact_id":"2247","existing_deal_found":true,"existing_contact_id":"2247","existing_title":"معامله سوم 9373329069 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 11:57:56"}
[2026-04-09 11:57:56] [INFO] DealController.save validated payments {"deal_id":"local_69d6973144cfe0.96600410","contact_id":"2247","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 11:57:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2247","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 11:57:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6973144cfe0.96600410","contact_didar_id":"2247","title":"معامله سوم 9373329069 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9373329069","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"داوود زلفی","existing_deal":"YES","existing_deal_id":"local_69d6973144cfe0.96600410","existing_deal_status":"Pending","server_time":"2026-04-09 11:57:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:57:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6973144cfe0.96600410","contact_id":"2247","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9373329069 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 11:57:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 11:57:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:03] [INFO] Checking activity reminders 
[2026-04-09 11:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:58:11] [INFO] Activity save request {"post_data":{"contact_id":"2247","deal_id":"local_69d6973144cfe0.96600410","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 11:58:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2247","note_was_empty":true}
[2026-04-09 11:58:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"2247","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:11] [INFO] Updating virtual stage {"contact_id":"2247","stage_name":"deal_registered","force":false}
[2026-04-09 11:58:11] [INFO] Virtual stage successfully saved {"contact_id":"2247","stage_name":"deal_registered"}
[2026-04-09 11:58:11] [INFO] Virtual stage updated after activity save {"contact_id":"2247"}
[2026-04-09 11:58:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6973144cfe0.96600410","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 11:58:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7631bab17d4.69635640","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7631bab17d4.69635640"}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:11] [INFO] Updating virtual stage {"contact_id":"2247","stage_name":"deal_registered","force":false}
[2026-04-09 11:58:11] [INFO] Virtual stage successfully saved {"contact_id":"2247","stage_name":"deal_registered"}
[2026-04-09 11:58:11] [INFO] Virtual stage updated after activity save {"contact_id":"2247"}
[2026-04-09 11:58:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-09 11:58:17] [INFO] Checking activity reminders 
[2026-04-09 11:58:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:58:25] [INFO] Checking activity reminders 
[2026-04-09 11:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:58:33] [INFO] Checking activity reminders 
[2026-04-09 11:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:58:47] [INFO] Checking activity reminders 
[2026-04-09 11:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:58:55] [INFO] Checking activity reminders 
[2026-04-09 11:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:03] [INFO] Checking activity reminders 
[2026-04-09 11:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 11:59:19] [INFO] Checking activity reminders 
[2026-04-09 11:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:25] [INFO] Checking activity reminders 
[2026-04-09 11:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:33] [INFO] Checking activity reminders 
[2026-04-09 11:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:49] [INFO] Checking activity reminders 
[2026-04-09 11:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 11:59:55] [INFO] Checking activity reminders 
[2026-04-09 11:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 11:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:03] [INFO] Checking activity reminders 
[2026-04-09 12:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:19] [INFO] Checking activity reminders 
[2026-04-09 12:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:25] [INFO] Checking activity reminders 
[2026-04-09 12:00:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:33] [INFO] Checking activity reminders 
[2026-04-09 12:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:49] [INFO] Checking activity reminders 
[2026-04-09 12:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:00:49] [INFO] Activity save request {"post_data":{"contact_id":"local_69d285ac078524.46998604","deal_id":"local_69d285ac161b5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا کنسله \/ خودش تماس میگیره ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:00:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d285ac078524.46998604","note_was_empty":true}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:49] [INFO] Updating virtual stage {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered","force":false}
[2026-04-09 12:00:49] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered"}
[2026-04-09 12:00:49] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285ac078524.46998604"}
[2026-04-09 12:00:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d285ac161b5","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:00:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d763b9db8334.22075487","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69d763b9db8334.22075487"}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:49] [INFO] Updating virtual stage {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered","force":false}
[2026-04-09 12:00:49] [INFO] Virtual stage successfully saved {"contact_id":"local_69d285ac078524.46998604","stage_name":"deal_registered"}
[2026-04-09 12:00:49] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d285ac078524.46998604"}
[2026-04-09 12:00:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 12:00:55] [INFO] Checking activity reminders 
[2026-04-09 12:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:03] [INFO] Checking activity reminders 
[2026-04-09 12:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:19] [INFO] Checking activity reminders 
[2026-04-09 12:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:25] [INFO] Checking activity reminders 
[2026-04-09 12:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:33] [INFO] Checking activity reminders 
[2026-04-09 12:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:01:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:01:42","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:01:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:01:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7663","is_new_deal":false}
[2026-04-09 12:01:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:01:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:01:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:01:42] [INFO] getContactPrimaryPhone called {"contact_id":"7663"}
[2026-04-09 12:01:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:01:42] [INFO] getContactPrimaryPhone result {"contact_id":"7663","person_found":true,"primary_phone":"9155577529"}
[2026-04-09 12:01:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155577529"}
[2026-04-09 12:01:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155577529","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:01:42"}
[2026-04-09 12:01:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","existing_deal_found":true,"existing_contact_id":"7663","existing_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:01:42"}
[2026-04-09 12:01:42] [INFO] DealController.save validated payments {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-09 12:01:42] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7663","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:01:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d687593920e8.88657220","contact_didar_id":"7663","title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155577529","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای کورانی","existing_deal":"YES","existing_deal_id":"local_69d687593920e8.88657220","existing_deal_status":"Pending","server_time":"2026-04-09 12:01:42","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:01:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:01:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d687593920e8.88657220","contact_id":"7663","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:01:42","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:01:49] [INFO] Checking activity reminders 
[2026-04-09 12:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:55] [INFO] Checking activity reminders 
[2026-04-09 12:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:01:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:02:03] [INFO] Checking activity reminders 
[2026-04-09 12:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:02:19] [INFO] Checking activity reminders 
[2026-04-09 12:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:02:27] [INFO] Checking activity reminders 
[2026-04-09 12:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:02:34] [INFO] Checking activity reminders 
[2026-04-09 12:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:02:49] [INFO] Checking activity reminders 
[2026-04-09 12:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:02:57] [INFO] Checking activity reminders 
[2026-04-09 12:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:03:04] [INFO] Checking activity reminders 
[2026-04-09 12:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:20] [INFO] Checking activity reminders 
[2026-04-09 12:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:27] [INFO] Checking activity reminders 
[2026-04-09 12:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:34] [INFO] Checking activity reminders 
[2026-04-09 12:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:50] [INFO] Checking activity reminders 
[2026-04-09 12:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:03:57] [INFO] Checking activity reminders 
[2026-04-09 12:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:04] [INFO] Checking activity reminders 
[2026-04-09 12:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:20] [INFO] Checking activity reminders 
[2026-04-09 12:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:27] [INFO] Checking activity reminders 
[2026-04-09 12:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:34] [INFO] Checking activity reminders 
[2026-04-09 12:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:35] [INFO] Activity save request {"post_data":{"contact_id":"14402","deal_id":"local_69ca8634dbb9a1.90826647","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در مورد ورود کانال با شریکش جلسه داره \r\nدر مورد نوسان بورس سرمایه اش کمه نمیتونه وارد بشه \r\nخودش تماس میگیره ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:04:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14402","note_was_empty":true}
[2026-04-09 12:04:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"14402","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:35] [INFO] Updating virtual stage {"contact_id":"14402","stage_name":"deal_registered","force":false}
[2026-04-09 12:04:35] [INFO] Virtual stage successfully saved {"contact_id":"14402","stage_name":"deal_registered"}
[2026-04-09 12:04:35] [INFO] Virtual stage updated after activity save {"contact_id":"14402"}
[2026-04-09 12:04:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca8634dbb9a1.90826647","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:04:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7649bc45dc5.31476650","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7649bc45dc5.31476650"}
[2026-04-09 12:04:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:35] [INFO] Updating virtual stage {"contact_id":"14402","stage_name":"deal_registered","force":false}
[2026-04-09 12:04:35] [INFO] Virtual stage successfully saved {"contact_id":"14402","stage_name":"deal_registered"}
[2026-04-09 12:04:35] [INFO] Virtual stage updated after activity save {"contact_id":"14402"}
[2026-04-09 12:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14402","person_id":"13804"}
[2026-04-09 12:04:51] [INFO] Checking activity reminders 
[2026-04-09 12:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:04:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:04:57] [INFO] Checking activity reminders 
[2026-04-09 12:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:04] [INFO] Checking activity reminders 
[2026-04-09 12:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:21] [INFO] Activity save request {"post_data":{"contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"به محض وصول چک امروز شبا و تسویه میکنه ","activity_duration":"2","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:05:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21119","note_was_empty":true}
[2026-04-09 12:05:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"21119","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:21] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-09 12:05:21] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-09 12:05:21] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-09 12:05:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d2242cc75260.76890464","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-09 12:05:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d764c99ea223.01743707","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69d764c99ea223.01743707"}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:21] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"deal_registered","force":false}
[2026-04-09 12:05:21] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"deal_registered"}
[2026-04-09 12:05:21] [INFO] Virtual stage updated after activity save {"contact_id":"21119"}
[2026-04-09 12:05:21] [INFO] Checking activity reminders 
[2026-04-09 12:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-09 12:05:27] [INFO] Checking activity reminders 
[2026-04-09 12:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:32] [INFO] Checking activity reminders 
[2026-04-09 12:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:34] [INFO] Checking activity reminders 
[2026-04-09 12:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:05:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"8941","deal_id":"local_69d691b3ab4a09.58993210","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:05:49","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:05:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"8941","is_new_deal":false}
[2026-04-09 12:05:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:05:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:05:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:05:49] [INFO] getContactPrimaryPhone called {"contact_id":"8941"}
[2026-04-09 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:05:49] [INFO] getContactPrimaryPhone result {"contact_id":"8941","person_found":true,"primary_phone":"9361470519"}
[2026-04-09 12:05:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9361470519"}
[2026-04-09 12:05:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9361470519","contact_id":"8941","deal_id":"local_69d691b3ab4a09.58993210","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:05:49"}
[2026-04-09 12:05:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d691b3ab4a09.58993210","contact_id":"8941","existing_deal_found":true,"existing_contact_id":"8941","existing_title":"معامله دوم 9361470519 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:05:49"}
[2026-04-09 12:05:49] [INFO] DealController.save validated payments {"deal_id":"local_69d691b3ab4a09.58993210","contact_id":"8941","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:05:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8941","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:05:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d691b3ab4a09.58993210","contact_didar_id":"8941","title":"معامله دوم 9361470519 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9361470519","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شوندی","existing_deal":"YES","existing_deal_id":"local_69d691b3ab4a09.58993210","existing_deal_status":"Pending","server_time":"2026-04-09 12:05:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:05:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d691b3ab4a09.58993210","contact_id":"8941","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9361470519 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 12:05:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:05:57] [INFO] Checking activity reminders 
[2026-04-09 12:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:04] [INFO] Checking activity reminders 
[2026-04-09 12:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:04] [INFO] Checking activity reminders 
[2026-04-09 12:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:27] [INFO] Checking activity reminders 
[2026-04-09 12:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:34] [INFO] Checking activity reminders 
[2026-04-09 12:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:44] [INFO] Checking activity reminders 
[2026-04-09 12:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:44] [INFO] Checking activity reminders 
[2026-04-09 12:06:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:06:46] [INFO] Activity save request {"post_data":{"contact_id":"8941","deal_id":"local_69d691b3ab4a09.58993210","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خیلی از کانال راضیه 404\r\nهمسرش بیکار شده \/ نمیتونه 1 ساله باشه \r\nبهش گفتم از نوسانات 405 استفاده کن \r\nپرزنت 6 ماهه 405 \r\nمشورت با همسرش ","activity_duration":"7","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:06:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8941","note_was_empty":true}
[2026-04-09 12:06:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"8941","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:46] [INFO] Updating virtual stage {"contact_id":"8941","stage_name":"deal_registered","force":false}
[2026-04-09 12:06:46] [INFO] Virtual stage successfully saved {"contact_id":"8941","stage_name":"deal_registered"}
[2026-04-09 12:06:46] [INFO] Virtual stage updated after activity save {"contact_id":"8941"}
[2026-04-09 12:06:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d691b3ab4a09.58993210","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:06:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7651e696dc9.86692879","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7651e696dc9.86692879"}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:46] [INFO] Updating virtual stage {"contact_id":"8941","stage_name":"deal_registered","force":false}
[2026-04-09 12:06:46] [INFO] Virtual stage successfully saved {"contact_id":"8941","stage_name":"deal_registered"}
[2026-04-09 12:06:46] [INFO] Virtual stage updated after activity save {"contact_id":"8941"}
[2026-04-09 12:06:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-09 12:06:57] [INFO] Checking activity reminders 
[2026-04-09 12:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:06] [INFO] Checking activity reminders 
[2026-04-09 12:07:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:07:14] [INFO] Checking activity reminders 
[2026-04-09 12:07:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:24] [INFO] Checking activity reminders 
[2026-04-09 12:07:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:27] [INFO] Checking activity reminders 
[2026-04-09 12:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:07:44] [INFO] Checking activity reminders 
[2026-04-09 12:07:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:54] [INFO] Checking activity reminders 
[2026-04-09 12:07:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:07:57] [INFO] Checking activity reminders 
[2026-04-09 12:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:14] [INFO] Checking activity reminders 
[2026-04-09 12:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:25] [INFO] Checking activity reminders 
[2026-04-09 12:08:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:27] [INFO] Checking activity reminders 
[2026-04-09 12:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:08:28","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","is_new_deal":false}
[2026-04-09 12:08:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:28] [INFO] getContactPrimaryPhone called {"contact_id":"15806"}
[2026-04-09 12:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:28] [INFO] getContactPrimaryPhone result {"contact_id":"15806","person_found":true,"primary_phone":"9173156400"}
[2026-04-09 12:08:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173156400"}
[2026-04-09 12:08:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173156400","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:08:28"}
[2026-04-09 12:08:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","existing_deal_found":true,"existing_contact_id":"15806","existing_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:08:28"}
[2026-04-09 12:08:28] [INFO] DealController.save validated payments {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 12:08:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15806","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:08:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d604dfacd7b5.93148246","contact_didar_id":"15806","title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9173156400","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید طالع زاده","existing_deal":"YES","existing_deal_id":"local_69d604dfacd7b5.93148246","existing_deal_status":"Pending","server_time":"2026-04-09 12:08:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-09 12:08:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:08:42","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15806","is_new_deal":false}
[2026-04-09 12:08:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:42] [INFO] getContactPrimaryPhone called {"contact_id":"15806"}
[2026-04-09 12:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [INFO] getContactPrimaryPhone result {"contact_id":"15806","person_found":true,"primary_phone":"9173156400"}
[2026-04-09 12:08:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173156400"}
[2026-04-09 12:08:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173156400","contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:08:42"}
[2026-04-09 12:08:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","existing_deal_found":true,"existing_contact_id":"15806","existing_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:08:42"}
[2026-04-09 12:08:42] [INFO] DealController.save validated payments {"deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 12:08:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15806","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:08:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d604dfacd7b5.93148246","contact_didar_id":"15806","title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9173156400","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید طالع زاده","existing_deal":"YES","existing_deal_id":"local_69d604dfacd7b5.93148246","existing_deal_status":"Pending","server_time":"2026-04-09 12:08:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [INFO] Deal success processed {"contact_id":"15806","person_name":"امید طالع زاده","products_count":1}
[2026-04-09 12:08:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d604dfacd7b5.93148246","contact_id":"15806","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9173156400 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-09 12:08:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:42] [INFO] Updating virtual stage {"contact_id":"15806","stage_name":"with_purchase","force":true}
[2026-04-09 12:08:42] [INFO] Virtual stage successfully saved {"contact_id":"15806","stage_name":"with_purchase"}
[2026-04-09 12:08:42] [INFO] Moved contact out of kariz after successful deal {"contact_id":"15806","deal_id":"local_69d604dfacd7b5.93148246","target_stage":"with_purchase"}
[2026-04-09 12:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:08:45] [INFO] Checking activity reminders 
[2026-04-09 12:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:08:55] [INFO] Checking activity reminders 
[2026-04-09 12:08:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:57] [INFO] Checking activity reminders 
[2026-04-09 12:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:08:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"7337","deal_id":"local_69d68728bc23c9.29333586","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:08:57","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:08:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"7337","is_new_deal":false}
[2026-04-09 12:08:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:08:57] [INFO] getContactPrimaryPhone called {"contact_id":"7337"}
[2026-04-09 12:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:08:57] [INFO] getContactPrimaryPhone result {"contact_id":"7337","person_found":true,"primary_phone":"9228286195"}
[2026-04-09 12:08:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9228286195"}
[2026-04-09 12:08:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9228286195","contact_id":"7337","deal_id":"local_69d68728bc23c9.29333586","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:08:57"}
[2026-04-09 12:08:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68728bc23c9.29333586","contact_id":"7337","existing_deal_found":true,"existing_contact_id":"7337","existing_title":"معامله دوم 9228286195 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:08:57"}
[2026-04-09 12:08:57] [INFO] DealController.save validated payments {"deal_id":"local_69d68728bc23c9.29333586","contact_id":"7337","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:08:57] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7337","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:08:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68728bc23c9.29333586","contact_didar_id":"7337","title":"معامله دوم 9228286195 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9228286195","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"امیر کریمی مقدم","existing_deal":"YES","existing_deal_id":"local_69d68728bc23c9.29333586","existing_deal_status":"Pending","server_time":"2026-04-09 12:08:57","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:08:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68728bc23c9.29333586","contact_id":"7337","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9228286195 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 12:08:58","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:09:15] [INFO] Checking activity reminders 
[2026-04-09 12:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:25] [INFO] Checking activity reminders 
[2026-04-09 12:09:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:28] [INFO] Checking activity reminders 
[2026-04-09 12:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:35] [INFO] Checking activity reminders 
[2026-04-09 12:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:42] [INFO] Checking activity reminders 
[2026-04-09 12:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:45] [INFO] Checking activity reminders 
[2026-04-09 12:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:09:58] [INFO] Checking activity reminders 
[2026-04-09 12:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:04] [INFO] Checking activity reminders 
[2026-04-09 12:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:09] [INFO] Checking activity reminders 
[2026-04-09 12:10:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:15] [INFO] Checking activity reminders 
[2026-04-09 12:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:15] [INFO] Checking activity reminders 
[2026-04-09 12:10:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 12:10:28] [INFO] Checking activity reminders 
[2026-04-09 12:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:36] [INFO] Checking activity reminders 
[2026-04-09 12:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:45] [INFO] Checking activity reminders 
[2026-04-09 12:10:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:10:58] [INFO] Checking activity reminders 
[2026-04-09 12:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:11:00] [INFO] Activity save request {"post_data":{"contact_id":"7337","deal_id":"local_69d68728bc23c9.29333586","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من اصلا شماره نزاشته بودم یادم نمیادو خب خیلی مبلغش بال بود برای همین شماره نمیزاشتم  \r\nکامل پرزنتش کردم برای کانال 405 بااینکه قصدی نداشت ولی گفت من نمیدونستم میتونم 6 ماهه هم عضو بشم گفت بهتون تا شنبه خبر میدم که میام یا نه","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 12:11:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"7337","note_was_empty":true}
[2026-04-09 12:11:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"7337","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:00] [INFO] Updating virtual stage {"contact_id":"7337","stage_name":"deal_registered","force":false}
[2026-04-09 12:11:00] [INFO] Virtual stage successfully saved {"contact_id":"7337","stage_name":"deal_registered"}
[2026-04-09 12:11:00] [INFO] Virtual stage updated after activity save {"contact_id":"7337"}
[2026-04-09 12:11:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68728bc23c9.29333586","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:11:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7661ce93e26.53564305","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7661ce93e26.53564305"}
[2026-04-09 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:00] [INFO] Updating virtual stage {"contact_id":"7337","stage_name":"deal_registered","force":false}
[2026-04-09 12:11:01] [INFO] Virtual stage successfully saved {"contact_id":"7337","stage_name":"deal_registered"}
[2026-04-09 12:11:01] [INFO] Virtual stage updated after activity save {"contact_id":"7337"}
[2026-04-09 12:11:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 12:11:06] [INFO] Checking activity reminders 
[2026-04-09 12:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:11:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:11:35] [INFO] Checking activity reminders 
[2026-04-09 12:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:11:36] [INFO] Checking activity reminders 
[2026-04-09 12:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:11:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:11:44","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:11:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:11:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7663","is_new_deal":false}
[2026-04-09 12:11:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:11:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:11:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:11:44] [INFO] getContactPrimaryPhone called {"contact_id":"7663"}
[2026-04-09 12:11:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:11:44] [INFO] getContactPrimaryPhone result {"contact_id":"7663","person_found":true,"primary_phone":"9155577529"}
[2026-04-09 12:11:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155577529"}
[2026-04-09 12:11:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155577529","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:11:44"}
[2026-04-09 12:11:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","existing_deal_found":true,"existing_contact_id":"7663","existing_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:11:44"}
[2026-04-09 12:11:44] [INFO] DealController.save validated payments {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-09 12:11:44] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7663","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:11:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d687593920e8.88657220","contact_didar_id":"7663","title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155577529","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای کورانی","existing_deal":"YES","existing_deal_id":"local_69d687593920e8.88657220","existing_deal_status":"Lost","server_time":"2026-04-09 12:11:44","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:11:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:11:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d687593920e8.88657220","contact_id":"7663","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:11:44","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:11:47] [INFO] Checking activity reminders 
[2026-04-09 12:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:05] [INFO] Checking activity reminders 
[2026-04-09 12:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:07] [INFO] Checking activity reminders 
[2026-04-09 12:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:18] [INFO] Checking activity reminders 
[2026-04-09 12:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:12:31","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:12:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7663","is_new_deal":false}
[2026-04-09 12:12:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:12:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:12:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:12:31] [INFO] getContactPrimaryPhone called {"contact_id":"7663"}
[2026-04-09 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:12:31] [INFO] getContactPrimaryPhone result {"contact_id":"7663","person_found":true,"primary_phone":"9155577529"}
[2026-04-09 12:12:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155577529"}
[2026-04-09 12:12:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155577529","contact_id":"7663","deal_id":"local_69d687593920e8.88657220","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:12:31"}
[2026-04-09 12:12:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","existing_deal_found":true,"existing_contact_id":"7663","existing_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:12:31"}
[2026-04-09 12:12:31] [INFO] DealController.save validated payments {"deal_id":"local_69d687593920e8.88657220","contact_id":"7663","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:12:31] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"7663","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:12:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d687593920e8.88657220","contact_didar_id":"7663","title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155577529","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای کورانی","existing_deal":"YES","existing_deal_id":"local_69d687593920e8.88657220","existing_deal_status":"Pending","server_time":"2026-04-09 12:12:31","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:12:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d687593920e8.88657220","contact_id":"7663","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155577529 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:12:31","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:12:35] [INFO] Checking activity reminders 
[2026-04-09 12:12:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:37] [INFO] Checking activity reminders 
[2026-04-09 12:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:12:48] [INFO] Checking activity reminders 
[2026-04-09 12:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:05] [INFO] Checking activity reminders 
[2026-04-09 12:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:07] [INFO] Checking activity reminders 
[2026-04-09 12:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:18] [INFO] Checking activity reminders 
[2026-04-09 12:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:26] [INFO] Activity save request {"post_data":{"contact_id":"7663","deal_id":"local_69d687593920e8.88657220","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من اصلا شماره نزاشته بودم اخه و خب اصلا قصد خرید و ارائه خدماتی از جانب مجموعه شما ندارم ","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 12:13:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"7663","note_was_empty":true}
[2026-04-09 12:13:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"7663","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Updating virtual stage {"contact_id":"7663","stage_name":"deal_registered","force":false}
[2026-04-09 12:13:26] [INFO] Virtual stage successfully saved {"contact_id":"7663","stage_name":"deal_registered"}
[2026-04-09 12:13:26] [INFO] Virtual stage updated after activity save {"contact_id":"7663"}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d687593920e8.88657220","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-09 12:13:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d766ae2f12d2.05833695","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d766ae2f12d2.05833695"}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:26] [INFO] Updating virtual stage {"contact_id":"7663","stage_name":"deal_registered","force":false}
[2026-04-09 12:13:26] [INFO] Virtual stage successfully saved {"contact_id":"7663","stage_name":"deal_registered"}
[2026-04-09 12:13:26] [INFO] Virtual stage updated after activity save {"contact_id":"7663"}
[2026-04-09 12:13:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5976","deal_id":"local_69d692eef2d4e0.85419950","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:13:31","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5976","is_new_deal":false}
[2026-04-09 12:13:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:31] [INFO] getContactPrimaryPhone called {"contact_id":"5976"}
[2026-04-09 12:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:31] [INFO] getContactPrimaryPhone result {"contact_id":"5976","person_found":true,"primary_phone":"9375780283"}
[2026-04-09 12:13:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9375780283"}
[2026-04-09 12:13:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9375780283","contact_id":"5976","deal_id":"local_69d692eef2d4e0.85419950","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:13:31"}
[2026-04-09 12:13:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d692eef2d4e0.85419950","contact_id":"5976","existing_deal_found":true,"existing_contact_id":"5976","existing_title":"معامله دوم 9375780283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:13:31"}
[2026-04-09 12:13:31] [INFO] DealController.save validated payments {"deal_id":"local_69d692eef2d4e0.85419950","contact_id":"5976","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 12:13:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5976","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:13:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d692eef2d4e0.85419950","contact_didar_id":"5976","title":"معامله دوم 9375780283 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9375780283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیرجان","existing_deal":"YES","existing_deal_id":"local_69d692eef2d4e0.85419950","existing_deal_status":"Pending","server_time":"2026-04-09 12:13:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d692eef2d4e0.85419950","contact_id":"5976","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9375780283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:13:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:35] [INFO] Checking activity reminders 
[2026-04-09 12:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:37] [INFO] Checking activity reminders 
[2026-04-09 12:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:43] [INFO] Activity save request {"post_data":{"contact_id":"5976","deal_id":"local_69d692eef2d4e0.85419950","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:13:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5976","note_was_empty":true}
[2026-04-09 12:13:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"5976","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:43] [INFO] Updating virtual stage {"contact_id":"5976","stage_name":"deal_registered","force":false}
[2026-04-09 12:13:43] [INFO] Virtual stage successfully saved {"contact_id":"5976","stage_name":"deal_registered"}
[2026-04-09 12:13:43] [INFO] Virtual stage updated after activity save {"contact_id":"5976"}
[2026-04-09 12:13:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d692eef2d4e0.85419950","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 12:13:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d766bfc57288.20746622","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69d766bfc57288.20746622"}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:43] [INFO] Updating virtual stage {"contact_id":"5976","stage_name":"deal_registered","force":false}
[2026-04-09 12:13:43] [INFO] Virtual stage successfully saved {"contact_id":"5976","stage_name":"deal_registered"}
[2026-04-09 12:13:43] [INFO] Virtual stage updated after activity save {"contact_id":"5976"}
[2026-04-09 12:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5976","person_id":"9184"}
[2026-04-09 12:13:48] [INFO] Checking activity reminders 
[2026-04-09 12:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:13:53] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7663","deal_id":"local_69d689838b3dc6.34471510","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:13:53","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:13:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7663","is_new_deal":false}
[2026-04-09 12:13:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:13:53] [INFO] getContactPrimaryPhone called {"contact_id":"7663"}
[2026-04-09 12:13:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7663","person_id":"3533"}
[2026-04-09 12:13:53] [INFO] getContactPrimaryPhone result {"contact_id":"7663","person_found":true,"primary_phone":"9155577529"}
[2026-04-09 12:13:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155577529"}
[2026-04-09 12:13:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155577529","contact_id":"7663","deal_id":"local_69d689838b3dc6.34471510","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:13:53"}
[2026-04-09 12:13:53] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"7663","existing_deal_found":true,"existing_contact_id":"11918","existing_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:13:53"}
[2026-04-09 12:13:53] [WARNING] Deal save blocked: deal_id does not belong to contact {"deal_id":"local_69d689838b3dc6.34471510","incoming_contact_id":"7663","existing_contact_id":"11918","incoming_title":"کانال VIP با پشتیبانی","requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:13:53"}
[2026-04-09 12:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 12:14:01] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:05] [INFO] Checking activity reminders 
[2026-04-09 12:14:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:07] [INFO] Checking activity reminders 
[2026-04-09 12:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:10] [INFO] Checking activity reminders 
[2026-04-09 12:14:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:12] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:12] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 12:14:12] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"get_products"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"get_leads"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:13] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"get_leads"}
[2026-04-09 12:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:15] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:14:22] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:22] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-09 12:14:22] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-09 12:14:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:14:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:14:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:14:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:14:34] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:14:34] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-09 12:14:34] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-09 12:14:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:14:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:14:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:14:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:14:35] [INFO] Checking activity reminders 
[2026-04-09 12:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:41] [INFO] Checking activity reminders 
[2026-04-09 12:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:46] [INFO] Checking activity reminders 
[2026-04-09 12:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:14:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"15063","deal_id":"local_69d64388392898.28840248","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:14:50","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:14:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"15063","is_new_deal":false}
[2026-04-09 12:14:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:14:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:14:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:14:50] [INFO] getContactPrimaryPhone called {"contact_id":"15063"}
[2026-04-09 12:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:14:50] [INFO] getContactPrimaryPhone result {"contact_id":"15063","person_found":true,"primary_phone":"9155979503"}
[2026-04-09 12:14:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155979503"}
[2026-04-09 12:14:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155979503","contact_id":"15063","deal_id":"local_69d64388392898.28840248","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:14:50"}
[2026-04-09 12:14:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","existing_deal_found":true,"existing_contact_id":"15063","existing_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:14:50"}
[2026-04-09 12:14:50] [INFO] DealController.save validated payments {"deal_id":"local_69d64388392898.28840248","contact_id":"15063","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:14:50] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"15063","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:14:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d64388392898.28840248","contact_didar_id":"15063","title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9155979503","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای شهابی","existing_deal":"YES","existing_deal_id":"local_69d64388392898.28840248","existing_deal_status":"Lost","server_time":"2026-04-09 12:14:50","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:14:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:14:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d64388392898.28840248","contact_id":"15063","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9155979503 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-09 12:14:50","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:15:05] [INFO] Checking activity reminders 
[2026-04-09 12:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:05] [INFO] Checking activity reminders 
[2026-04-09 12:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:11] [INFO] Checking activity reminders 
[2026-04-09 12:15:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:16] [INFO] Checking activity reminders 
[2026-04-09 12:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:35] [INFO] Checking activity reminders 
[2026-04-09 12:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:36] [INFO] Checking activity reminders 
[2026-04-09 12:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:41] [INFO] Checking activity reminders 
[2026-04-09 12:15:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:43] [INFO] Checking activity reminders 
[2026-04-09 12:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:46] [INFO] Checking activity reminders 
[2026-04-09 12:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:47] [INFO] Activity save request {"post_data":{"contact_id":"649","deal_id":"local_69d6983b84a696.07775607","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت بیعانه بزنه تسویه شنبه معامله کرده سقف پره ","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:15:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"649","note_was_empty":true}
[2026-04-09 12:15:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"649","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:47] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-09 12:15:47] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-09 12:15:47] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-09 12:15:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6983b84a696.07775607","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 12:15:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7673b3afa51.20427345","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7673b3afa51.20427345"}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:47] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-09 12:15:47] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-09 12:15:47] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-09 12:15:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-09 12:15:48] [INFO] Checking activity reminders 
[2026-04-09 12:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:52] [INFO] Checking activity reminders 
[2026-04-09 12:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:15:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:16:04] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:16:04] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":false}
[2026-04-09 12:16:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:16:05] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:16:05] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:16:05] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:16:06] [INFO] Checking activity reminders 
[2026-04-09 12:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:08] [INFO] Checking activity reminders 
[2026-04-09 12:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:12] [INFO] Activity save request {"post_data":{"contact_id":"15063","deal_id":"local_69d64388392898.28840248","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من قصد خرید ندارم چون خیلی مبلغ بالست و خب من الا کسب و کارم هم خوابیده و دارم از جیب میخورم نمیتونم فعلا اصلا بیام تو کانال یا محصولی بگیرم تا کار و درامد فعال ندارم ","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 12:16:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"15063","note_was_empty":true}
[2026-04-09 12:16:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"15063","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Updating virtual stage {"contact_id":"15063","stage_name":"deal_registered","force":false}
[2026-04-09 12:16:12] [INFO] Virtual stage successfully saved {"contact_id":"15063","stage_name":"deal_registered"}
[2026-04-09 12:16:12] [INFO] Virtual stage updated after activity save {"contact_id":"15063"}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d64388392898.28840248","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-09 12:16:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76754591cf1.59138690","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76754591cf1.59138690"}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:12] [INFO] Updating virtual stage {"contact_id":"15063","stage_name":"deal_registered","force":false}
[2026-04-09 12:16:12] [INFO] Virtual stage successfully saved {"contact_id":"15063","stage_name":"deal_registered"}
[2026-04-09 12:16:12] [INFO] Virtual stage updated after activity save {"contact_id":"15063"}
[2026-04-09 12:16:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15063","person_id":"3632"}
[2026-04-09 12:16:14] [INFO] Checking activity reminders 
[2026-04-09 12:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:15] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:16:15] [WARNING] Login attempt failed - wrong password {"user_id":"19","identifier":"محمدحسین حنفی"}
[2026-04-09 12:16:16] [INFO] Checking activity reminders 
[2026-04-09 12:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:23] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:16:23] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-09 12:16:23] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-09 12:16:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:16:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:16:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:16:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:16:36] [INFO] Checking activity reminders 
[2026-04-09 12:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:39] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:16:39] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-09 12:16:39] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-09 12:16:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:16:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:16:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:16:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:16:44] [INFO] Checking activity reminders 
[2026-04-09 12:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:45] [INFO] Checking activity reminders 
[2026-04-09 12:16:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:46] [INFO] Checking activity reminders 
[2026-04-09 12:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:16:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15806","person_id":"3295"}
[2026-04-09 12:17:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:17:06] [INFO] Checking activity reminders 
[2026-04-09 12:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:10] [INFO] Checking activity reminders 
[2026-04-09 12:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:13] [INFO] Checking activity reminders 
[2026-04-09 12:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:15] [INFO] Checking activity reminders 
[2026-04-09 12:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:30] [INFO] Checking activity reminders 
[2026-04-09 12:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:36] [INFO] Checking activity reminders 
[2026-04-09 12:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:43] [INFO] Checking activity reminders 
[2026-04-09 12:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:17:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:17:44","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:17:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"11918","is_new_deal":false}
[2026-04-09 12:17:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:17:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:17:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:17:44] [INFO] getContactPrimaryPhone called {"contact_id":"11918"}
[2026-04-09 12:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:17:44] [INFO] getContactPrimaryPhone result {"contact_id":"11918","person_found":true,"primary_phone":"9152874020"}
[2026-04-09 12:17:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9152874020"}
[2026-04-09 12:17:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9152874020","contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:17:44"}
[2026-04-09 12:17:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","existing_deal_found":true,"existing_contact_id":"11918","existing_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:17:44"}
[2026-04-09 12:17:44] [INFO] DealController.save validated payments {"deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:17:44] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"11918","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:17:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689838b3dc6.34471510","contact_didar_id":"11918","title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9152874020","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"اقای نوروزی","existing_deal":"YES","existing_deal_id":"local_69d689838b3dc6.34471510","existing_deal_status":"Lost","server_time":"2026-04-09 12:17:44","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:17:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689838b3dc6.34471510","contact_id":"11918","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9152874020 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:17:44","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:17:45] [INFO] Checking activity reminders 
[2026-04-09 12:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:00] [INFO] Checking activity reminders 
[2026-04-09 12:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:06] [INFO] Checking activity reminders 
[2026-04-09 12:18:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:12] [INFO] Activity save request {"post_data":{"contact_id":"11918","deal_id":"local_69d689838b3dc6.34471510","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من اصلا شماره نزاشته بودم و خب مبلغ کانال خیلی نسبت به قبل بالا رفته","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"irrelevant_lead","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 12:18:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"11918","note_was_empty":true}
[2026-04-09 12:18:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"11918","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Updating virtual stage {"contact_id":"11918","stage_name":"deal_registered","force":false}
[2026-04-09 12:18:12] [INFO] Virtual stage successfully saved {"contact_id":"11918","stage_name":"deal_registered"}
[2026-04-09 12:18:12] [INFO] Virtual stage updated after activity save {"contact_id":"11918"}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689838b3dc6.34471510","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-09 12:18:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d767cc0e5da3.42393206","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69d767cc0e5da3.42393206"}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:12] [INFO] Updating virtual stage {"contact_id":"11918","stage_name":"deal_registered","force":false}
[2026-04-09 12:18:12] [INFO] Virtual stage successfully saved {"contact_id":"11918","stage_name":"deal_registered"}
[2026-04-09 12:18:12] [INFO] Virtual stage updated after activity save {"contact_id":"11918"}
[2026-04-09 12:18:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11918","person_id":"17613"}
[2026-04-09 12:18:14] [INFO] Checking activity reminders 
[2026-04-09 12:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:31] [INFO] Checking activity reminders 
[2026-04-09 12:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:36] [INFO] Checking activity reminders 
[2026-04-09 12:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:18:40] [INFO] Checking activity reminders 
[2026-04-09 12:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:18:44] [INFO] Checking activity reminders 
[2026-04-09 12:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:06] [INFO] Checking activity reminders 
[2026-04-09 12:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:06] [INFO] Checking activity reminders 
[2026-04-09 12:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:08] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9153617613","09153617613"]}
[2026-04-09 12:19:08] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9153617613","09153617613"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-09 12:19:08] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9153617613","full_name":"لید جدید"}
[2026-04-09 12:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:19:08] [INFO] Notification created {"notification_id":"638","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-09 12:19:14] [INFO] Checking activity reminders 
[2026-04-09 12:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:20] [INFO] Activity save request {"post_data":{"contact_id":"4271","deal_id":"local_69d698fd09aad5.01396655","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشت خطی هدف تمدید کانال ارسال پیامک ","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:19:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4271","note_was_empty":true}
[2026-04-09 12:19:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"4271","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:20] [INFO] Updating virtual stage {"contact_id":"4271","stage_name":"deal_registered","force":false}
[2026-04-09 12:19:20] [INFO] Virtual stage successfully saved {"contact_id":"4271","stage_name":"deal_registered"}
[2026-04-09 12:19:20] [INFO] Virtual stage updated after activity save {"contact_id":"4271"}
[2026-04-09 12:19:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d698fd09aad5.01396655","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:19:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76810b87b08.19627519","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76810b87b08.19627519"}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:20] [INFO] Updating virtual stage {"contact_id":"4271","stage_name":"deal_registered","force":false}
[2026-04-09 12:19:20] [INFO] Virtual stage successfully saved {"contact_id":"4271","stage_name":"deal_registered"}
[2026-04-09 12:19:20] [INFO] Virtual stage updated after activity save {"contact_id":"4271"}
[2026-04-09 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:19:36] [INFO] Checking activity reminders 
[2026-04-09 12:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:36] [INFO] Checking activity reminders 
[2026-04-09 12:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:19:44] [INFO] Checking activity reminders 
[2026-04-09 12:19:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:19:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:06] [INFO] Checking activity reminders 
[2026-04-09 12:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:06] [INFO] Checking activity reminders 
[2026-04-09 12:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:14] [INFO] Checking activity reminders 
[2026-04-09 12:20:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:20:36] [INFO] Checking activity reminders 
[2026-04-09 12:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:36] [INFO] Checking activity reminders 
[2026-04-09 12:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:44] [INFO] Checking activity reminders 
[2026-04-09 12:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:20:57] [INFO] Checking activity reminders 
[2026-04-09 12:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:00] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:21:00] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:21:00] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:21:06] [INFO] Checking activity reminders 
[2026-04-09 12:21:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:06] [INFO] Checking activity reminders 
[2026-04-09 12:21:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:14] [INFO] Checking activity reminders 
[2026-04-09 12:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:21:27] [INFO] Checking activity reminders 
[2026-04-09 12:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:36] [INFO] Checking activity reminders 
[2026-04-09 12:21:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:36] [INFO] Checking activity reminders 
[2026-04-09 12:21:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:44] [INFO] Checking activity reminders 
[2026-04-09 12:21:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:21:57] [INFO] Checking activity reminders 
[2026-04-09 12:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:06] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:22:06","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7666","is_new_deal":false}
[2026-04-09 12:22:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:22:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:22:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:22:06] [INFO] getContactPrimaryPhone called {"contact_id":"7666"}
[2026-04-09 12:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:06] [INFO] getContactPrimaryPhone result {"contact_id":"7666","person_found":true,"primary_phone":"9330667795"}
[2026-04-09 12:22:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330667795"}
[2026-04-09 12:22:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330667795","contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:22:06"}
[2026-04-09 12:22:06] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","existing_deal_found":true,"existing_contact_id":"7666","existing_title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:22:06"}
[2026-04-09 12:22:06] [INFO] DealController.save validated payments {"deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:22:06] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7666","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:22:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6909d3aa6b0.45939408","contact_didar_id":"7666","title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9330667795","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر نصیری","existing_deal":"YES","existing_deal_id":"local_69d6909d3aa6b0.45939408","existing_deal_status":"Pending","server_time":"2026-04-09 12:22:06","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:06] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:22:06","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:22:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:06] [INFO] Checking activity reminders 
[2026-04-09 12:22:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:07] [INFO] Checking activity reminders 
[2026-04-09 12:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:14] [INFO] Checking activity reminders 
[2026-04-09 12:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:25] [INFO] Activity save request {"post_data":{"contact_id":"17940","deal_id":"local_69d698a8c08702.90598553","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ساعت 12 شنبه تماس \/ هدف تمدید کانال","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:22:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17940","note_was_empty":true}
[2026-04-09 12:22:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"17940","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Updating virtual stage {"contact_id":"17940","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:25] [INFO] Virtual stage successfully saved {"contact_id":"17940","stage_name":"deal_registered"}
[2026-04-09 12:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"17940"}
[2026-04-09 12:22:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d698a8c08702.90598553","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:22:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d768c90edb43.22158817","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69d768c90edb43.22158817"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Updating virtual stage {"contact_id":"17940","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:25] [INFO] Virtual stage successfully saved {"contact_id":"17940","stage_name":"deal_registered"}
[2026-04-09 12:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"17940"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17940","person_id":"17093"}
[2026-04-09 12:22:25] [INFO] Activity save request {"post_data":{"contact_id":"4786","deal_id":"local_69b988fda51064.12687406","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"1","due_date":"2026-04-11 15:00:00","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:25] [INFO] Activity is_done determination {"is_scheduled":true,"is_done_from_data":1,"final_is_done":0}
[2026-04-09 12:22:25] [INFO] Formatted due date for Didar {"original":"2026-04-11 15:00:00","formatted":"2026-04-11T11:30:00.000Z"}
[2026-04-09 12:22:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"4786","note_was_empty":true}
[2026-04-09 12:22:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"4786","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:25] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:25] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-09 12:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-09 12:22:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b988fda51064.12687406","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:22:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d768c98f8ee9.57787811","is_scheduled":true,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69d768c98f8ee9.57787811"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:25] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:25] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-09 12:22:25] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-09 12:22:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 12:22:36] [INFO] Checking activity reminders 
[2026-04-09 12:22:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:37] [INFO] Checking activity reminders 
[2026-04-09 12:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:44] [INFO] Checking activity reminders 
[2026-04-09 12:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:22:55] [INFO] Activity save request {"post_data":{"contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال 405 2 روز پیش پرزنت و پیگیری شد\r\nهنوز با برادرش صححبت نداشته \r\nتماس مجدد ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:22:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7666","note_was_empty":true}
[2026-04-09 12:22:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"7666","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:55] [INFO] Updating virtual stage {"contact_id":"7666","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:55] [INFO] Virtual stage successfully saved {"contact_id":"7666","stage_name":"deal_registered"}
[2026-04-09 12:22:55] [INFO] Virtual stage updated after activity save {"contact_id":"7666"}
[2026-04-09 12:22:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6909d3aa6b0.45939408","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:22:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d768e7349c61.88004276","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69d768e7349c61.88004276"}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:55] [INFO] Updating virtual stage {"contact_id":"7666","stage_name":"deal_registered","force":false}
[2026-04-09 12:22:55] [INFO] Virtual stage successfully saved {"contact_id":"7666","stage_name":"deal_registered"}
[2026-04-09 12:22:55] [INFO] Virtual stage updated after activity save {"contact_id":"7666"}
[2026-04-09 12:22:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-09 12:22:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:23:01] [INFO] Checking activity reminders 
[2026-04-09 12:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:23:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:23:06] [INFO] Checking activity reminders 
[2026-04-09 12:23:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:07] [INFO] Checking activity reminders 
[2026-04-09 12:23:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:15] [INFO] Checking activity reminders 
[2026-04-09 12:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:37] [INFO] Checking activity reminders 
[2026-04-09 12:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:37] [INFO] Checking activity reminders 
[2026-04-09 12:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:38] [INFO] Checking activity reminders 
[2026-04-09 12:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:23:45] [INFO] Checking activity reminders 
[2026-04-09 12:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:04] [INFO] Checking activity reminders 
[2026-04-09 12:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:24:07] [INFO] Checking activity reminders 
[2026-04-09 12:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:07] [INFO] Checking activity reminders 
[2026-04-09 12:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:08] [INFO] Checking activity reminders 
[2026-04-09 12:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:08] [INFO] Checking activity reminders 
[2026-04-09 12:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:11] [INFO] Checking activity reminders 
[2026-04-09 12:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:13] [INFO] Checking activity reminders 
[2026-04-09 12:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:16] [INFO] Checking activity reminders 
[2026-04-09 12:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:18] [INFO] Checking activity reminders 
[2026-04-09 12:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:20] [INFO] Checking activity reminders 
[2026-04-09 12:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:24:37] [INFO] Checking activity reminders 
[2026-04-09 12:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:37] [INFO] Checking activity reminders 
[2026-04-09 12:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:38] [INFO] Checking activity reminders 
[2026-04-09 12:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:50] [INFO] Checking activity reminders 
[2026-04-09 12:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:50] [INFO] Checking activity reminders 
[2026-04-09 12:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:24:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:25:04] [INFO] Activity save request {"post_data":{"contact_id":"20297","deal_id":"local_69d697c5a701c9.52928792","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خاموش ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:25:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20297","note_was_empty":true}
[2026-04-09 12:25:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"20297","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:04] [INFO] Updating virtual stage {"contact_id":"20297","stage_name":"deal_registered","force":false}
[2026-04-09 12:25:04] [INFO] Virtual stage successfully saved {"contact_id":"20297","stage_name":"deal_registered"}
[2026-04-09 12:25:04] [INFO] Virtual stage updated after activity save {"contact_id":"20297"}
[2026-04-09 12:25:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d697c5a701c9.52928792","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 12:25:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76968643311.62672404","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76968643311.62672404"}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:04] [INFO] Updating virtual stage {"contact_id":"20297","stage_name":"deal_registered","force":false}
[2026-04-09 12:25:04] [INFO] Virtual stage successfully saved {"contact_id":"20297","stage_name":"deal_registered"}
[2026-04-09 12:25:04] [INFO] Virtual stage updated after activity save {"contact_id":"20297"}
[2026-04-09 12:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20297","person_id":"1786"}
[2026-04-09 12:25:07] [INFO] Checking activity reminders 
[2026-04-09 12:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:07] [INFO] Checking activity reminders 
[2026-04-09 12:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:25:20] [INFO] Checking activity reminders 
[2026-04-09 12:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:20] [INFO] Checking activity reminders 
[2026-04-09 12:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:24] [INFO] Lead update received {"contact_id":"269","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:25:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:25:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:25:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"269"}
[2026-04-09 12:25:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:25:37] [INFO] Checking activity reminders 
[2026-04-09 12:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:37] [INFO] Checking activity reminders 
[2026-04-09 12:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:43] [INFO] Checking activity reminders 
[2026-04-09 12:25:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:50] [INFO] Checking activity reminders 
[2026-04-09 12:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:25:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-09 12:26:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:26:07] [INFO] Checking activity reminders 
[2026-04-09 12:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:13] [INFO] Checking activity reminders 
[2026-04-09 12:26:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:19] [INFO] Activity save request {"post_data":{"contact_id":"19022","deal_id":"local_69d69794bfaab2.73342862","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دیروز تماس گرفته ب.د صحبت شد تمدید نکرده میگه سیگنال بدین طلامو چیکار کنم گفتم میتونید تمدید کنید یک ساله 6ماهه مبلغ گفتم گفت اطلاع میدم\/ همیشه اذیت میکنه ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:26:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"19022","note_was_empty":true}
[2026-04-09 12:26:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"19022","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:19] [INFO] Updating virtual stage {"contact_id":"19022","stage_name":"new","force":false}
[2026-04-09 12:26:19] [WARNING] Prevented overwriting special stage with 'new' {"contact_id":"19022","existing_special_stage":"with_purchase","requested_stage":"new"}
[2026-04-09 12:26:19] [INFO] Virtual stage updated after activity save {"contact_id":"19022"}
[2026-04-09 12:26:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69794bfaab2.73342862","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:26:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d769b3b37018.88151695","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d769b3b37018.88151695"}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:19] [INFO] Updating virtual stage {"contact_id":"19022","stage_name":"deal_registered","force":false}
[2026-04-09 12:26:19] [INFO] Virtual stage successfully saved {"contact_id":"19022","stage_name":"deal_registered"}
[2026-04-09 12:26:19] [INFO] Virtual stage updated after activity save {"contact_id":"19022"}
[2026-04-09 12:26:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19022","person_id":"13793"}
[2026-04-09 12:26:20] [INFO] Checking activity reminders 
[2026-04-09 12:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:35] [INFO] Checking activity reminders 
[2026-04-09 12:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:38] [INFO] Checking activity reminders 
[2026-04-09 12:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:43] [INFO] Checking activity reminders 
[2026-04-09 12:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:51] [INFO] Checking activity reminders 
[2026-04-09 12:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:26:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:27:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"269","deal_id":"local_69d6965e72f169.77215995","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:27:00","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:27:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:27:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"269","is_new_deal":false}
[2026-04-09 12:27:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:27:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:27:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:27:00] [INFO] getContactPrimaryPhone called {"contact_id":"269"}
[2026-04-09 12:27:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:27:00] [INFO] getContactPrimaryPhone result {"contact_id":"269","person_found":true,"primary_phone":"9123175448"}
[2026-04-09 12:27:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123175448"}
[2026-04-09 12:27:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123175448","contact_id":"269","deal_id":"local_69d6965e72f169.77215995","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:27:00"}
[2026-04-09 12:27:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6965e72f169.77215995","contact_id":"269","existing_deal_found":true,"existing_contact_id":"269","existing_title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:27:00"}
[2026-04-09 12:27:00] [INFO] DealController.save validated payments {"deal_id":"local_69d6965e72f169.77215995","contact_id":"269","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:27:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"269","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:27:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6965e72f169.77215995","contact_didar_id":"269","title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9123175448","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیزاده علیزاده","existing_deal":"YES","existing_deal_id":"local_69d6965e72f169.77215995","existing_deal_status":"Pending","server_time":"2026-04-09 12:27:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:27:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:27:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6965e72f169.77215995","contact_id":"269","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:27:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:27:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:27:05] [INFO] Checking activity reminders 
[2026-04-09 12:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:08] [INFO] Checking activity reminders 
[2026-04-09 12:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:21] [INFO] Checking activity reminders 
[2026-04-09 12:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:35] [INFO] Checking activity reminders 
[2026-04-09 12:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:38] [INFO] Checking activity reminders 
[2026-04-09 12:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:51] [INFO] Checking activity reminders 
[2026-04-09 12:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:27:52] [INFO] Checking activity reminders 
[2026-04-09 12:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:03] [INFO] Checking activity reminders 
[2026-04-09 12:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:05] [INFO] Checking activity reminders 
[2026-04-09 12:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:08] [INFO] Checking activity reminders 
[2026-04-09 12:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:21] [INFO] Checking activity reminders 
[2026-04-09 12:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:28:33] [INFO] Checking activity reminders 
[2026-04-09 12:28:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:35] [INFO] Checking activity reminders 
[2026-04-09 12:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:38] [INFO] Checking activity reminders 
[2026-04-09 12:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:28:51] [INFO] Checking activity reminders 
[2026-04-09 12:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:03] [INFO] Checking activity reminders 
[2026-04-09 12:29:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:05] [INFO] Checking activity reminders 
[2026-04-09 12:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:08] [INFO] Checking activity reminders 
[2026-04-09 12:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:22] [INFO] Checking activity reminders 
[2026-04-09 12:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:33] [INFO] Checking activity reminders 
[2026-04-09 12:29:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:35] [INFO] Checking activity reminders 
[2026-04-09 12:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:38] [INFO] Checking activity reminders 
[2026-04-09 12:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:29:52] [INFO] Checking activity reminders 
[2026-04-09 12:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:03] [INFO] Checking activity reminders 
[2026-04-09 12:30:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:05] [INFO] Checking activity reminders 
[2026-04-09 12:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:08] [INFO] Checking activity reminders 
[2026-04-09 12:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:22] [INFO] Checking activity reminders 
[2026-04-09 12:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:33] [INFO] Checking activity reminders 
[2026-04-09 12:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:35] [INFO] Checking activity reminders 
[2026-04-09 12:30:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:38] [INFO] Checking activity reminders 
[2026-04-09 12:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:30:52] [INFO] Checking activity reminders 
[2026-04-09 12:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:03] [INFO] Checking activity reminders 
[2026-04-09 12:31:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:05] [INFO] Checking activity reminders 
[2026-04-09 12:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:08] [INFO] Checking activity reminders 
[2026-04-09 12:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:23] [INFO] Checking activity reminders 
[2026-04-09 12:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:34] [INFO] Checking activity reminders 
[2026-04-09 12:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:36] [INFO] Checking activity reminders 
[2026-04-09 12:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:38] [INFO] Checking activity reminders 
[2026-04-09 12:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:31:53] [INFO] Checking activity reminders 
[2026-04-09 12:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:04] [INFO] Checking activity reminders 
[2026-04-09 12:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:06] [INFO] Checking activity reminders 
[2026-04-09 12:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:08] [INFO] Checking activity reminders 
[2026-04-09 12:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:23] [INFO] Checking activity reminders 
[2026-04-09 12:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:27] [INFO] Activity save request {"post_data":{"contact_id":"4271","deal_id":"local_69d698fd09aad5.01396655","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رو طلا مونده\/ میگه از دی دستری کانال نداشته بله نداشته ارتباط با پشتیبان نداشته خودشم\/ \r\n79ت تا اخر سال گفت خرداد میام \/ ارتباط داریم موردی بود \/ 6ماهه گفتم در کل گفت یکم سنگینه برام خرداد بیام یکم ببینم شرایطم چطور میشه","activity_duration":"20","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:32:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"4271","note_was_empty":true}
[2026-04-09 12:32:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"4271","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-09 12:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:27] [INFO] Updating virtual stage {"contact_id":"4271","stage_name":"deal_registered","force":false}
[2026-04-09 12:32:27] [INFO] Virtual stage successfully saved {"contact_id":"4271","stage_name":"deal_registered"}
[2026-04-09 12:32:27] [INFO] Virtual stage updated after activity save {"contact_id":"4271"}
[2026-04-09 12:32:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d698fd09aad5.01396655","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:32:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76b23eaaae0.97355305","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76b23eaaae0.97355305"}
[2026-04-09 12:32:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:27] [INFO] Updating virtual stage {"contact_id":"4271","stage_name":"deal_registered","force":false}
[2026-04-09 12:32:27] [INFO] Virtual stage successfully saved {"contact_id":"4271","stage_name":"deal_registered"}
[2026-04-09 12:32:27] [INFO] Virtual stage updated after activity save {"contact_id":"4271"}
[2026-04-09 12:32:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-09 12:32:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:32:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:32:34] [INFO] Checking activity reminders 
[2026-04-09 12:32:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:36] [INFO] Checking activity reminders 
[2026-04-09 12:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:38] [INFO] Checking activity reminders 
[2026-04-09 12:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:32:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:32:53] [INFO] Checking activity reminders 
[2026-04-09 12:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:04] [INFO] Checking activity reminders 
[2026-04-09 12:33:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:06] [INFO] Checking activity reminders 
[2026-04-09 12:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:08] [INFO] Checking activity reminders 
[2026-04-09 12:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:23] [INFO] Checking activity reminders 
[2026-04-09 12:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:34] [INFO] Checking activity reminders 
[2026-04-09 12:33:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:36] [INFO] Checking activity reminders 
[2026-04-09 12:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:38] [INFO] Checking activity reminders 
[2026-04-09 12:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:33:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"local_69d75837d1b549.28151894","deal_id":"local_69d75837de51c","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:33:39","session_id":"mpi1ck2btl0f5994fi0nlpdsvv"}
[2026-04-09 12:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:33:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"local_69d75837d1b549.28151894","is_new_deal":false}
[2026-04-09 12:33:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:33:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:33:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:33:39] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d75837d1b549.28151894"}
[2026-04-09 12:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:33:39] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d75837d1b549.28151894","person_found":true,"primary_phone":"9149115020"}
[2026-04-09 12:33:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9149115020"}
[2026-04-09 12:33:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9149115020","contact_id":"local_69d75837d1b549.28151894","deal_id":"local_69d75837de51c","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:33:39"}
[2026-04-09 12:33:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d75837de51c","contact_id":"local_69d75837d1b549.28151894","existing_deal_found":true,"existing_contact_id":"local_69d75837d1b549.28151894","existing_title":"معامله اول 9149115020","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-09 12:33:39"}
[2026-04-09 12:33:39] [INFO] DealController.save validated payments {"deal_id":"local_69d75837de51c","contact_id":"local_69d75837d1b549.28151894","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 12:33:39] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"local_69d75837d1b549.28151894","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:33:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d75837de51c","contact_didar_id":"local_69d75837d1b549.28151894","title":"معامله اول 9149115020 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9149115020","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69d75837de51c","existing_deal_status":"Pending","server_time":"2026-04-09 12:33:39","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-09 12:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:33:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d75837de51c","contact_id":"local_69d75837d1b549.28151894","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله اول 9149115020 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 12:33:39","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:33:53] [INFO] Checking activity reminders 
[2026-04-09 12:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:04] [INFO] Checking activity reminders 
[2026-04-09 12:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:06] [INFO] Checking activity reminders 
[2026-04-09 12:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:08] [INFO] Checking activity reminders 
[2026-04-09 12:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:23] [INFO] Checking activity reminders 
[2026-04-09 12:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:34] [INFO] Checking activity reminders 
[2026-04-09 12:34:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:36] [INFO] Checking activity reminders 
[2026-04-09 12:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:38] [INFO] Checking activity reminders 
[2026-04-09 12:34:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:34:53] [INFO] Checking activity reminders 
[2026-04-09 12:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:06] [INFO] Checking activity reminders 
[2026-04-09 12:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:08] [INFO] Checking activity reminders 
[2026-04-09 12:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:24] [INFO] Checking activity reminders 
[2026-04-09 12:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:36] [INFO] Checking activity reminders 
[2026-04-09 12:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:38] [INFO] Checking activity reminders 
[2026-04-09 12:35:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:42] [INFO] Activity save request {"post_data":{"contact_id":"local_69d75837d1b549.28151894","deal_id":"local_69d75837de51c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"اقای طرزی\/ ارومیه \/ کول بر برنج دم مرز جابجا میکه  کارگری میکنه \r\n دنبال سیگنال رایگان بود که بهش گفتم سوالش تخصصیه و باید یا با استاد مشورت بگیره یا عضو کانال بشه که چون کارگره قرار شد فکر کنه به من خبر بده ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:42] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 12:35:42] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:42] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"local_69d75837d1b549.28151894","note_was_empty":true}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:42] [INFO] Updating virtual stage {"contact_id":"local_69d75837d1b549.28151894","stage_name":"new","force":false}
[2026-04-09 12:35:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69d75837d1b549.28151894","stage_name":"new"}
[2026-04-09 12:35:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d75837d1b549.28151894"}
[2026-04-09 12:35:42] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d75837de51c","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:35:42] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76be6a75e89.78172264","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:42] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76be6a75e89.78172264"}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:42] [INFO] Updating virtual stage {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered","force":false}
[2026-04-09 12:35:42] [INFO] Virtual stage successfully saved {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered"}
[2026-04-09 12:35:42] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d75837d1b549.28151894"}
[2026-04-09 12:35:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 12:35:44] [INFO] Checking activity reminders 
[2026-04-09 12:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:35:54] [INFO] Checking activity reminders 
[2026-04-09 12:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:06] [INFO] Checking activity reminders 
[2026-04-09 12:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:09] [INFO] Checking activity reminders 
[2026-04-09 12:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:24] [INFO] Checking activity reminders 
[2026-04-09 12:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:29] [INFO] Checking activity reminders 
[2026-04-09 12:36:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:36:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:36:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:36:36] [INFO] Checking activity reminders 
[2026-04-09 12:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:39] [INFO] Checking activity reminders 
[2026-04-09 12:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:36:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:36:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:36:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:36:54] [INFO] Checking activity reminders 
[2026-04-09 12:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:00] [INFO] Checking activity reminders 
[2026-04-09 12:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:06] [INFO] Checking activity reminders 
[2026-04-09 12:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:09] [INFO] Checking activity reminders 
[2026-04-09 12:37:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:24] [INFO] Checking activity reminders 
[2026-04-09 12:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:30] [INFO] Checking activity reminders 
[2026-04-09 12:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:36] [INFO] Checking activity reminders 
[2026-04-09 12:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:39] [INFO] Checking activity reminders 
[2026-04-09 12:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:37:54] [INFO] Checking activity reminders 
[2026-04-09 12:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:00] [INFO] Checking activity reminders 
[2026-04-09 12:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:06] [INFO] Checking activity reminders 
[2026-04-09 12:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:08] [INFO] Checking activity reminders 
[2026-04-09 12:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:09] [INFO] Checking activity reminders 
[2026-04-09 12:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:38:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:38:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:38:24] [INFO] Checking activity reminders 
[2026-04-09 12:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:38:38] [INFO] Checking activity reminders 
[2026-04-09 12:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:39] [INFO] Checking activity reminders 
[2026-04-09 12:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:38:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:38:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:38:54] [INFO] Checking activity reminders 
[2026-04-09 12:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:38:57] [INFO] Checking activity reminders 
[2026-04-09 12:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:08] [INFO] Checking activity reminders 
[2026-04-09 12:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:09] [INFO] Checking activity reminders 
[2026-04-09 12:39:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:10] [INFO] Activity save request {"post_data":{"contact_id":"269","deal_id":"local_69d6965e72f169.77215995","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"با خانمش صحبت کردم \/ کل سرمایه  در بورس و اعضای cip  \r\nبرای کانال405 سرمایه ای ندارند \r\nبا مشاوره ی استاد حنفی کسب و کار برای پسرش نزد و خیلی تشکر کرد از استاد \r\nاقای علیزاده پاسخ گو نبود \/ پیامک ارسال ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:39:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"269","note_was_empty":true}
[2026-04-09 12:39:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"269","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:39:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:10] [INFO] Updating virtual stage {"contact_id":"269","stage_name":"deal_registered","force":false}
[2026-04-09 12:39:11] [INFO] Virtual stage successfully saved {"contact_id":"269","stage_name":"deal_registered"}
[2026-04-09 12:39:11] [INFO] Virtual stage updated after activity save {"contact_id":"269"}
[2026-04-09 12:39:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6965e72f169.77215995","stage":"تماس پیگیری","status_change":null}
[2026-04-09 12:39:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76cb6f2c6d9.89926909","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76cb6f2c6d9.89926909"}
[2026-04-09 12:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:11] [INFO] Updating virtual stage {"contact_id":"269","stage_name":"deal_registered","force":false}
[2026-04-09 12:39:11] [INFO] Virtual stage successfully saved {"contact_id":"269","stage_name":"deal_registered"}
[2026-04-09 12:39:11] [INFO] Virtual stage updated after activity save {"contact_id":"269"}
[2026-04-09 12:39:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 12:39:25] [INFO] Checking activity reminders 
[2026-04-09 12:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:39:38] [INFO] Checking activity reminders 
[2026-04-09 12:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:39] [INFO] Checking activity reminders 
[2026-04-09 12:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:39:48] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_88","deal_id":"local_69d69763c94b24.52814194","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"404 کانال بوده \/ تمدید نکرده 79ت شنبه واریز ارسال ش کارت حسابش اوکی نشد اقساط 2مرحله بنزه \/ ساخت و ساز میگه حسابام بسته شده چک وصول نشده بهم ریخته هستم \r\nتهران","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:39:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_88","note_was_empty":true}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:48] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_88","stage_name":"new","force":false}
[2026-04-09 12:39:48] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_88","stage_name":"new"}
[2026-04-09 12:39:48] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_88"}
[2026-04-09 12:39:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69763c94b24.52814194","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 12:39:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76cdc0363e4.00618823","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76cdc0363e4.00618823"}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:48] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered","force":false}
[2026-04-09 12:39:48] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered"}
[2026-04-09 12:39:48] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_88"}
[2026-04-09 12:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:39:55] [INFO] Checking activity reminders 
[2026-04-09 12:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:40:08] [INFO] Checking activity reminders 
[2026-04-09 12:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:40:09] [INFO] Checking activity reminders 
[2026-04-09 12:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:40:13] [INFO] Lead update received {"contact_id":"local_1403_09_26_88","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:40:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:40:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:40:13] [DEBUG] findByPhone: Found person {"phones":["9126055197"],"found_id":"14223","found_didar_id":"21521","found_name":"اقای فردوسی"}
[2026-04-09 12:40:13] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9126055197","found_didar_id":"21521","found_local_id":"14223","found_name":"اقای فردوسی"}
[2026-04-09 12:40:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:40:13] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9126055197","found_id":"14223","found_didar_id":"21521","exclude_id":21165,"exclude_didar_id":"local_1403_09_26_88"}
[2026-04-09 12:40:13] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  اقای فردوسی (مسئول: خانم شایسته) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-09 12:40:26] [INFO] Checking activity reminders 
[2026-04-09 12:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:40:39] [INFO] Checking activity reminders 
[2026-04-09 12:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:40:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:40:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:40:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:40:56] [INFO] Checking activity reminders 
[2026-04-09 12:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:41:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:41:07","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:41:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"127","is_new_deal":false}
[2026-04-09 12:41:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:07] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-09 12:41:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:07] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-09 12:41:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-09 12:41:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:41:07"}
[2026-04-09 12:41:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","existing_deal_found":true,"existing_contact_id":"127","existing_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:41:07"}
[2026-04-09 12:41:07] [INFO] DealController.save validated payments {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 12:41:07] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:41:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49998c56fe4.78942941","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"YES","existing_deal_id":"local_69d49998c56fe4.78942941","existing_deal_status":"Pending","server_time":"2026-04-09 12:41:07","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:41:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-09 12:41:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:09] [INFO] Checking activity reminders 
[2026-04-09 12:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:41:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:41:16","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"127","is_new_deal":false}
[2026-04-09 12:41:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 12:41:16] [INFO] getContactPrimaryPhone called {"contact_id":"127"}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:16] [INFO] getContactPrimaryPhone result {"contact_id":"127","person_found":true,"primary_phone":"9141490413"}
[2026-04-09 12:41:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141490413"}
[2026-04-09 12:41:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141490413","contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:41:16"}
[2026-04-09 12:41:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","existing_deal_found":true,"existing_contact_id":"127","existing_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:41:16"}
[2026-04-09 12:41:16] [INFO] DealController.save validated payments {"deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 12:41:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:41:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d49998c56fe4.78942941","contact_didar_id":"127","title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9141490413","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":54000000,"payment_amount":54000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عزیزی","existing_deal":"YES","existing_deal_id":"local_69d49998c56fe4.78942941","existing_deal_status":"Pending","server_time":"2026-04-09 12:41:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:16] [INFO] Deal success processed {"contact_id":"127","person_name":"عزیزی","products_count":1}
[2026-04-09 12:41:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d49998c56fe4.78942941","contact_id":"127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9141490413 | کانال VIP بدون پشتیبان","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":54000000,"payment_amount":54000000,"server_time":"2026-04-09 12:41:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:16] [INFO] Updating virtual stage {"contact_id":"127","stage_name":"with_purchase","force":true}
[2026-04-09 12:41:16] [INFO] Virtual stage successfully saved {"contact_id":"127","stage_name":"with_purchase"}
[2026-04-09 12:41:16] [INFO] Moved contact out of kariz after successful deal {"contact_id":"127","deal_id":"local_69d49998c56fe4.78942941","target_stage":"with_purchase"}
[2026-04-09 12:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:26] [INFO] Checking activity reminders 
[2026-04-09 12:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:41:36] [INFO] Lead update received {"contact_id":"127","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:36] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"127"}
[2026-04-09 12:41:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"127","person_id":"17958"}
[2026-04-09 12:41:39] [INFO] Checking activity reminders 
[2026-04-09 12:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:41:59] [INFO] Checking activity reminders 
[2026-04-09 12:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:42:11] [INFO] Checking activity reminders 
[2026-04-09 12:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:42:29] [INFO] Checking activity reminders 
[2026-04-09 12:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:42:33] [INFO] Checking activity reminders 
[2026-04-09 12:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:42:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-09 12:42:56] [INFO] Lead update received {"contact_id":"9756","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:42:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-09 12:42:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-09 12:42:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-09 12:42:56] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9756"}
[2026-04-09 12:42:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-09 12:42:59] [INFO] Checking activity reminders 
[2026-04-09 12:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:43:29] [INFO] Checking activity reminders 
[2026-04-09 12:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:43:36] [INFO] Checking activity reminders 
[2026-04-09 12:43:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:43:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:43:59] [INFO] Checking activity reminders 
[2026-04-09 12:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:44:06] [INFO] Checking activity reminders 
[2026-04-09 12:44:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:44:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:44:15] [INFO] Activity save request {"post_data":{"contact_id":"647","deal_id":"local_69b73475739fc5.85636200","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ","activity_duration":"2","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"1","due_date":"2026-04-11 15:00:00","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:44:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:15] [INFO] Activity is_done determination {"is_scheduled":true,"is_done_from_data":1,"final_is_done":0}
[2026-04-09 12:44:15] [INFO] Formatted due date for Didar {"original":"2026-04-11 15:00:00","formatted":"2026-04-11T11:30:00.000Z"}
[2026-04-09 12:44:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:44:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"647","note_was_empty":true}
[2026-04-09 12:44:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"647","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-09 12:44:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:15] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"deal_registered","force":false}
[2026-04-09 12:44:15] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"deal_registered"}
[2026-04-09 12:44:15] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-09 12:44:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73475739fc5.85636200","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-09 12:44:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d76de7edece8.80205761","is_scheduled":true,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:44:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d76de7edece8.80205761"}
[2026-04-09 12:44:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:15] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"deal_registered","force":false}
[2026-04-09 12:44:15] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"deal_registered"}
[2026-04-09 12:44:15] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-09 12:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 12:44:29] [INFO] Checking activity reminders 
[2026-04-09 12:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:44:40] [INFO] Checking activity reminders 
[2026-04-09 12:44:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:44:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:44:49] [INFO] Checking activity reminders 
[2026-04-09 12:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:44:59] [INFO] Checking activity reminders 
[2026-04-09 12:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:45:06] [INFO] Checking activity reminders 
[2026-04-09 12:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:45:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:45:30] [INFO] Checking activity reminders 
[2026-04-09 12:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:45:36] [INFO] Checking activity reminders 
[2026-04-09 12:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:45:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:45:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:45:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21521","person_id":"14223"}
[2026-04-09 12:46:00] [INFO] Checking activity reminders 
[2026-04-09 12:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:46:08] [INFO] Checking activity reminders 
[2026-04-09 12:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:46:11] [INFO] Checking activity reminders 
[2026-04-09 12:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:46:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:46:22] [INFO] Checking activity reminders 
[2026-04-09 12:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:46:25] [INFO] Lead update received {"contact_id":"local_1403_09_26_88","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:46:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_1403_09_26_88"}
[2026-04-09 12:46:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-09 12:46:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-09 12:46:30] [INFO] Checking activity reminders 
[2026-04-09 12:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:46:38] [INFO] Checking activity reminders 
[2026-04-09 12:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:47:00] [INFO] Checking activity reminders 
[2026-04-09 12:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:47:09] [INFO] Checking activity reminders 
[2026-04-09 12:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:47:22] [INFO] Checking activity reminders 
[2026-04-09 12:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:47:30] [INFO] Checking activity reminders 
[2026-04-09 12:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:48:00] [INFO] Checking activity reminders 
[2026-04-09 12:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:48:30] [INFO] Checking activity reminders 
[2026-04-09 12:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:49:01] [INFO] Checking activity reminders 
[2026-04-09 12:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:49:05] [INFO] Checking activity reminders 
[2026-04-09 12:49:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:49:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:49:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-09 12:49:31] [INFO] Checking activity reminders 
[2026-04-09 12:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:50:01] [INFO] Checking activity reminders 
[2026-04-09 12:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:50:14] [INFO] Checking activity reminders 
[2026-04-09 12:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:50:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:50:32] [INFO] Checking activity reminders 
[2026-04-09 12:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:50:42] [WARNING] Auth check failed - not authenticated {"session_id":"1rf2kr20d5nkrkrspveueijhtq","session_keys":[],"action":"log_client_event"}
[2026-04-09 12:50:43] [INFO] User logged in {"user_id":"4","email":"hanaficars.khodro4@gmail.com","role":"system","via_master":false}
[2026-04-09 12:50:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 12:50:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:50:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:50:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:50:44] [INFO] Checking activity reminders 
[2026-04-09 12:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:50:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:50:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:50:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:50:59] [INFO] Checking activity reminders 
[2026-04-09 12:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:02] [INFO] Checking activity reminders 
[2026-04-09 12:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:09] [INFO] Checking activity reminders 
[2026-04-09 12:51:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:14] [INFO] Checking activity reminders 
[2026-04-09 12:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:15] [INFO] Checking activity reminders 
[2026-04-09 12:51:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:51:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:51:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:51:32] [INFO] Checking activity reminders 
[2026-04-09 12:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:44] [INFO] Checking activity reminders 
[2026-04-09 12:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:51:57] [INFO] Checking activity reminders 
[2026-04-09 12:51:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:51:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:52:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:52:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:52:03] [INFO] Checking activity reminders 
[2026-04-09 12:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:14] [INFO] Checking activity reminders 
[2026-04-09 12:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:27] [INFO] Checking activity reminders 
[2026-04-09 12:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:33] [INFO] Checking activity reminders 
[2026-04-09 12:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:33] [INFO] Checking activity reminders 
[2026-04-09 12:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:52:45] [INFO] Checking activity reminders 
[2026-04-09 12:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:03] [INFO] Checking activity reminders 
[2026-04-09 12:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:53:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:53:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:53:05] [INFO] Checking activity reminders 
[2026-04-09 12:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:15] [INFO] Checking activity reminders 
[2026-04-09 12:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:53:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:53:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:53:33] [INFO] Checking activity reminders 
[2026-04-09 12:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:36] [INFO] Checking activity reminders 
[2026-04-09 12:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:53:45] [INFO] Checking activity reminders 
[2026-04-09 12:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:03] [INFO] Checking activity reminders 
[2026-04-09 12:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:06] [INFO] Checking activity reminders 
[2026-04-09 12:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:15] [INFO] Checking activity reminders 
[2026-04-09 12:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 12:54:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 12:54:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 12:54:33] [INFO] Checking activity reminders 
[2026-04-09 12:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:36] [INFO] Checking activity reminders 
[2026-04-09 12:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:54:45] [INFO] Checking activity reminders 
[2026-04-09 12:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:55:06] [INFO] Checking activity reminders 
[2026-04-09 12:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:55:15] [INFO] Checking activity reminders 
[2026-04-09 12:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:55:37] [INFO] Checking activity reminders 
[2026-04-09 12:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:55:45] [INFO] Checking activity reminders 
[2026-04-09 12:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:01] [INFO] Checking activity reminders 
[2026-04-09 12:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:03] [INFO] Checking activity reminders 
[2026-04-09 12:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:15] [INFO] Checking activity reminders 
[2026-04-09 12:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:31] [INFO] Checking activity reminders 
[2026-04-09 12:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:34] [INFO] Checking activity reminders 
[2026-04-09 12:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:41] [INFO] Checking activity reminders 
[2026-04-09 12:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:56:45] [INFO] Checking activity reminders 
[2026-04-09 12:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:05] [INFO] Checking activity reminders 
[2026-04-09 12:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:06] [INFO] Checking activity reminders 
[2026-04-09 12:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:09] [INFO] Checking activity reminders 
[2026-04-09 12:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:11] [INFO] Checking activity reminders 
[2026-04-09 12:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:15] [INFO] Checking activity reminders 
[2026-04-09 12:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:57:35] [INFO] Checking activity reminders 
[2026-04-09 12:57:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:41] [INFO] Checking activity reminders 
[2026-04-09 12:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:57:42","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:57:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","is_new_deal":false}
[2026-04-09 12:57:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:57:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:57:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 12:57:42] [INFO] getContactPrimaryPhone called {"contact_id":"21642"}
[2026-04-09 12:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:57:42] [INFO] getContactPrimaryPhone result {"contact_id":"21642","person_found":true,"primary_phone":"9191831099"}
[2026-04-09 12:57:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191831099"}
[2026-04-09 12:57:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191831099","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:57:42"}
[2026-04-09 12:57:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","existing_deal_found":true,"existing_contact_id":"21642","existing_title":"معامله دوم 9191831099 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:57:42"}
[2026-04-09 12:57:42] [INFO] DealController.save validated payments {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 12:57:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21642","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:57:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623294d6e61.38953492","contact_didar_id":"21642","title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9191831099","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرام محمدی","existing_deal":"YES","existing_deal_id":"local_69d623294d6e61.38953492","existing_deal_status":"Pending","server_time":"2026-04-09 12:57:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:57:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 12:57:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:57:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:57:45] [INFO] Checking activity reminders 
[2026-04-09 12:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:57:47] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224986b1d06.92096443","deal_id":"local_69d22498705e5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شماره کارت ارسال شده بود قرار بود واریز کنه با دوستش صحبت بزنه \/ با سجادی صحبت کرده گفته توانا 6ماهه گفته باش فعلا اونم ش شکیبا رو داشته زنگ زده ش کارت مجدد گرفته واریز 27ت بدون پشتیبان یکرده \/ سه کنجی گفت خدا شاهده من شهرستان رفتم درگیر معامله بودم قررار بود به شما ارسال بشه دوستم به شکیبا زنگ زده \r\nگفام موردی نیست پیگیری میکنم ","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:57:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:57:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:57:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224986b1d06.92096443","note_was_empty":true}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:57:47] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered","force":false}
[2026-04-09 12:57:47] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered"}
[2026-04-09 12:57:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-09 12:57:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22498705e5","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 12:57:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77113bfe8c8.24769323","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:57:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77113bfe8c8.24769323"}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:57:47] [INFO] Updating virtual stage {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered","force":false}
[2026-04-09 12:57:47] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224986b1d06.92096443","stage_name":"deal_registered"}
[2026-04-09 12:57:47] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224986b1d06.92096443"}
[2026-04-09 12:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-09 12:58:05] [INFO] Checking activity reminders 
[2026-04-09 12:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:08] [INFO] Checking activity reminders 
[2026-04-09 12:58:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:11] [INFO] Checking activity reminders 
[2026-04-09 12:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:21] [INFO] Activity save request {"post_data":{"contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه برای کارمند 1 ساله هزینه ش بالاست \r\n6 ماهه پرزنت شد \r\nارسال شبا ","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:58:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21642","note_was_empty":true}
[2026-04-09 12:58:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"21642","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:21] [INFO] Updating virtual stage {"contact_id":"21642","stage_name":"deal_registered","force":false}
[2026-04-09 12:58:21] [INFO] Virtual stage successfully saved {"contact_id":"21642","stage_name":"deal_registered"}
[2026-04-09 12:58:21] [INFO] Virtual stage updated after activity save {"contact_id":"21642"}
[2026-04-09 12:58:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d623294d6e61.38953492","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 12:58:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7713553a2f4.04410257","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7713553a2f4.04410257"}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:21] [INFO] Updating virtual stage {"contact_id":"21642","stage_name":"deal_registered","force":false}
[2026-04-09 12:58:21] [INFO] Virtual stage successfully saved {"contact_id":"21642","stage_name":"deal_registered"}
[2026-04-09 12:58:21] [INFO] Virtual stage updated after activity save {"contact_id":"21642"}
[2026-04-09 12:58:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 12:58:27] [INFO] Checking activity reminders 
[2026-04-09 12:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:29] [INFO] Checking activity reminders 
[2026-04-09 12:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4964","deal_id":"local_69d694b9bd0a65.34405641","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:58:37","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:58:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4964","is_new_deal":false}
[2026-04-09 12:58:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 12:58:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:58:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 12:58:37] [INFO] getContactPrimaryPhone called {"contact_id":"4964"}
[2026-04-09 12:58:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:37] [INFO] getContactPrimaryPhone result {"contact_id":"4964","person_found":true,"primary_phone":"9157262580"}
[2026-04-09 12:58:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9157262580"}
[2026-04-09 12:58:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9157262580","contact_id":"4964","deal_id":"local_69d694b9bd0a65.34405641","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:58:37"}
[2026-04-09 12:58:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d694b9bd0a65.34405641","contact_id":"4964","existing_deal_found":true,"existing_contact_id":"4964","existing_title":"معامله پنجم 9157262580 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:58:37"}
[2026-04-09 12:58:37] [INFO] DealController.save validated payments {"deal_id":"local_69d694b9bd0a65.34405641","contact_id":"4964","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 12:58:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"4964","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:58:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d694b9bd0a65.34405641","contact_didar_id":"4964","title":"معامله پنجم 9157262580 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9157262580","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضاخسروی علیرضاخسروی","existing_deal":"YES","existing_deal_id":"local_69d694b9bd0a65.34405641","existing_deal_status":"Pending","server_time":"2026-04-09 12:58:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:58:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d694b9bd0a65.34405641","contact_id":"4964","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9157262580 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 12:58:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:58:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:39] [INFO] Checking activity reminders 
[2026-04-09 12:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:58:54] [INFO] Activity save request {"post_data":{"contact_id":"4964","deal_id":"local_69d694b9bd0a65.34405641","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"2 بار تماس \/ بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 12:58:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4964","note_was_empty":true}
[2026-04-09 12:58:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"4964","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:54] [INFO] Updating virtual stage {"contact_id":"4964","stage_name":"deal_registered","force":false}
[2026-04-09 12:58:54] [INFO] Virtual stage successfully saved {"contact_id":"4964","stage_name":"deal_registered"}
[2026-04-09 12:58:54] [INFO] Virtual stage updated after activity save {"contact_id":"4964"}
[2026-04-09 12:58:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d694b9bd0a65.34405641","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 12:58:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d7715636be95.20854169","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7715636be95.20854169"}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:54] [INFO] Updating virtual stage {"contact_id":"4964","stage_name":"deal_registered","force":false}
[2026-04-09 12:58:54] [INFO] Virtual stage successfully saved {"contact_id":"4964","stage_name":"deal_registered"}
[2026-04-09 12:58:54] [INFO] Virtual stage updated after activity save {"contact_id":"4964"}
[2026-04-09 12:58:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-09 12:58:59] [INFO] Checking activity reminders 
[2026-04-09 12:58:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:58:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:09] [INFO] Checking activity reminders 
[2026-04-09 12:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:59:18] [INFO] Lead update received {"contact_id":"local_69d76804772657.01504104","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 12:59:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d76804772657.01504104"}
[2026-04-09 12:59:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:30] [INFO] Checking activity reminders 
[2026-04-09 12:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 12:59:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 12:59:40","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 12:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","is_new_deal":false}
[2026-04-09 12:59:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 12:59:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 12:59:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 12:59:40] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d76804772657.01504104"}
[2026-04-09 12:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:40] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d76804772657.01504104","person_found":true,"primary_phone":"9153617613"}
[2026-04-09 12:59:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153617613"}
[2026-04-09 12:59:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153617613","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:59:40"}
[2026-04-09 12:59:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","existing_deal_found":true,"existing_contact_id":"local_69d76804772657.01504104","existing_title":"معامله اول 9153617613","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 12:59:40"}
[2026-04-09 12:59:40] [INFO] DealController.save validated payments {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 12:59:40] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d76804772657.01504104","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 12:59:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d7680477ed9","contact_didar_id":"local_69d76804772657.01504104","title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9153617613","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم اسلامی","existing_deal":"YES","existing_deal_id":"local_69d7680477ed9","existing_deal_status":"Pending","server_time":"2026-04-09 12:59:40","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 12:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-09 12:59:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 12:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 12:59:40] [INFO] Checking activity reminders 
[2026-04-09 12:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 12:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:00:00] [INFO] Checking activity reminders 
[2026-04-09 13:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:00:10] [INFO] Checking activity reminders 
[2026-04-09 13:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:00:30] [INFO] Checking activity reminders 
[2026-04-09 13:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:00:40] [INFO] Checking activity reminders 
[2026-04-09 13:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:01:00] [INFO] Checking activity reminders 
[2026-04-09 13:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:01:10] [INFO] Checking activity reminders 
[2026-04-09 13:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:01:30] [INFO] Checking activity reminders 
[2026-04-09 13:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:01:40] [INFO] Checking activity reminders 
[2026-04-09 13:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:01:41] [INFO] Activity save request {"post_data":{"contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"از طرف سروش تقی زاده معرفی \r\nزاهدان \r\nمعلم \r\nمتاهل\r\nخیلی از اساتید مختلف مشاوره و تحقیق کرده \r\n3-4 میلیارد طلا در 10 م خریده \r\nمیخواد ملک مصرفی بخره \r\nنمیدونه تهران یا کجا و کی بخره \r\nپرزنت 6 ماهه کانال 39 \r\nارسال شماره کارت \r\n9 م بیعانه واریز رزرو \/ اخر ماه حقوق بگیره تسویه ","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:01:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d76804772657.01504104","note_was_empty":true}
[2026-04-09 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:41] [INFO] Updating virtual stage {"contact_id":"local_69d76804772657.01504104","stage_name":"new","force":false}
[2026-04-09 13:01:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69d76804772657.01504104","stage_name":"new"}
[2026-04-09 13:01:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d76804772657.01504104"}
[2026-04-09 13:01:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d7680477ed9","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 13:01:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d771fdd5f0b7.01560948","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69d771fdd5f0b7.01560948"}
[2026-04-09 13:01:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:41] [INFO] Updating virtual stage {"contact_id":"local_69d76804772657.01504104","stage_name":"deal_registered","force":false}
[2026-04-09 13:01:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69d76804772657.01504104","stage_name":"deal_registered"}
[2026-04-09 13:01:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d76804772657.01504104"}
[2026-04-09 13:01:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 13:01:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:01:54] [INFO] Checking activity reminders 
[2026-04-09 13:01:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:01:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:02:01] [INFO] Checking activity reminders 
[2026-04-09 13:02:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:02:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:02:04] [INFO] Checking activity reminders 
[2026-04-09 13:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:02:11] [INFO] Checking activity reminders 
[2026-04-09 13:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:02:34] [INFO] Checking activity reminders 
[2026-04-09 13:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:02:41] [INFO] Checking activity reminders 
[2026-04-09 13:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:03:04] [INFO] Checking activity reminders 
[2026-04-09 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:03:12] [INFO] Checking activity reminders 
[2026-04-09 13:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:03:34] [INFO] Checking activity reminders 
[2026-04-09 13:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:04:04] [INFO] Checking activity reminders 
[2026-04-09 13:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:04:09] [INFO] Checking activity reminders 
[2026-04-09 13:04:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:04:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:04:22] [INFO] Checking activity reminders 
[2026-04-09 13:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:04:34] [INFO] Checking activity reminders 
[2026-04-09 13:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:04:55] [INFO] Checking activity reminders 
[2026-04-09 13:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:05:05] [INFO] Checking activity reminders 
[2026-04-09 13:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:05:35] [INFO] Checking activity reminders 
[2026-04-09 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:06:05] [INFO] Checking activity reminders 
[2026-04-09 13:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:06:12] [INFO] Checking activity reminders 
[2026-04-09 13:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:06:35] [INFO] Checking activity reminders 
[2026-04-09 13:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:06:43] [INFO] Checking activity reminders 
[2026-04-09 13:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:07:05] [INFO] Checking activity reminders 
[2026-04-09 13:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:07:18] [INFO] Checking activity reminders 
[2026-04-09 13:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:07:35] [INFO] Checking activity reminders 
[2026-04-09 13:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:07:48] [INFO] Checking activity reminders 
[2026-04-09 13:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:08:05] [INFO] Checking activity reminders 
[2026-04-09 13:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:08:19] [INFO] Checking activity reminders 
[2026-04-09 13:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:08:35] [INFO] Checking activity reminders 
[2026-04-09 13:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:08:49] [INFO] Checking activity reminders 
[2026-04-09 13:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:09:05] [INFO] Checking activity reminders 
[2026-04-09 13:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:09:19] [INFO] Checking activity reminders 
[2026-04-09 13:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:09:20] [WARNING] Auth check failed - not authenticated {"session_id":"ij5ojlu00mreqjqmg9phf4h60q","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:09:20] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"admin"}
[2026-04-09 13:09:20] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":true}
[2026-04-09 13:09:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:09:21] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:09:21] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:09:21] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:09:33] [WARNING] Auth check failed - not authenticated {"session_id":"ij5ojlu00mreqjqmg9phf4h60q","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:09:33] [INFO] Checking activity reminders 
[2026-04-09 13:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:09:33] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":false}
[2026-04-09 13:09:34] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:09:34] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:09:34] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:09:34] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:09:35] [INFO] Checking activity reminders 
[2026-04-09 13:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:03] [INFO] Checking activity reminders 
[2026-04-09 13:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:04] [INFO] Checking activity reminders 
[2026-04-09 13:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:05] [INFO] Checking activity reminders 
[2026-04-09 13:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:10] [INFO] Master password changed {"user_id":"11","username":"حمیدرضا مکرمی"}
[2026-04-09 13:10:29] [INFO] Checking activity reminders 
[2026-04-09 13:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:33] [INFO] Checking activity reminders 
[2026-04-09 13:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:35] [INFO] Checking activity reminders 
[2026-04-09 13:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:10:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:10:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:10:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:10:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:10:52] [WARNING] Auth check failed - not authenticated {"session_id":"5amn1issq19be94m5f8p1r5ttn","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:10:53] [WARNING] Login attempt failed - wrong password {"user_id":"11","identifier":"حمیدرضا مکرمی"}
[2026-04-09 13:10:57] [WARNING] Auth check failed - not authenticated {"session_id":"5amn1issq19be94m5f8p1r5ttn","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:10:57] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":false}
[2026-04-09 13:10:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:10:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:10:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:10:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:11:06] [INFO] Checking activity reminders 
[2026-04-09 13:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:07] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"admin"}
[2026-04-09 13:11:07] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":true}
[2026-04-09 13:11:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:11:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:11:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:11:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:11:17] [INFO] Checking activity reminders 
[2026-04-09 13:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:19] [INFO] Checking activity reminders 
[2026-04-09 13:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"5amn1issq19be94m5f8p1r5ttn","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:11:20] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":false}
[2026-04-09 13:11:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:11:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:11:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:11:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:11:20] [INFO] Checking activity reminders 
[2026-04-09 13:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:22] [INFO] Checking activity reminders 
[2026-04-09 13:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:28] [INFO] Checking activity reminders 
[2026-04-09 13:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:38] [INFO] Checking activity reminders 
[2026-04-09 13:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:41] [INFO] Checking activity reminders 
[2026-04-09 13:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:11:53] [INFO] Checking activity reminders 
[2026-04-09 13:11:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:11:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:14] [INFO] Checking activity reminders 
[2026-04-09 13:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:12:18","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","is_new_deal":false}
[2026-04-09 13:12:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:18] [INFO] getContactPrimaryPhone called {"contact_id":"21642"}
[2026-04-09 13:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:18] [INFO] getContactPrimaryPhone result {"contact_id":"21642","person_found":true,"primary_phone":"9191831099"}
[2026-04-09 13:12:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191831099"}
[2026-04-09 13:12:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191831099","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:12:18"}
[2026-04-09 13:12:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","existing_deal_found":true,"existing_contact_id":"21642","existing_title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:12:18"}
[2026-04-09 13:12:18] [INFO] DealController.save validated payments {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 13:12:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21642","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:12:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623294d6e61.38953492","contact_didar_id":"21642","title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9191831099","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرام محمدی","existing_deal":"YES","existing_deal_id":"local_69d623294d6e61.38953492","existing_deal_status":"Pending","server_time":"2026-04-09 13:12:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-09 13:12:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:12:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:23] [INFO] Checking activity reminders 
[2026-04-09 13:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:23] [INFO] Checking activity reminders 
[2026-04-09 13:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:12:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:12:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:12:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:12:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:12:27","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21642","is_new_deal":false}
[2026-04-09 13:12:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:12:27] [INFO] getContactPrimaryPhone called {"contact_id":"21642"}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:27] [INFO] getContactPrimaryPhone result {"contact_id":"21642","person_found":true,"primary_phone":"9191831099"}
[2026-04-09 13:12:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191831099"}
[2026-04-09 13:12:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191831099","contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:12:27"}
[2026-04-09 13:12:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","existing_deal_found":true,"existing_contact_id":"21642","existing_title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:12:27"}
[2026-04-09 13:12:27] [INFO] DealController.save validated payments {"deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 13:12:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21642","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:12:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623294d6e61.38953492","contact_didar_id":"21642","title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9191831099","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهرام محمدی","existing_deal":"YES","existing_deal_id":"local_69d623294d6e61.38953492","existing_deal_status":"Pending","server_time":"2026-04-09 13:12:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:27] [INFO] Deal success processed {"contact_id":"21642","person_name":"بهرام محمدی","products_count":1}
[2026-04-09 13:12:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623294d6e61.38953492","contact_id":"21642","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9191831099 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-09 13:12:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:27] [INFO] Updating virtual stage {"contact_id":"21642","stage_name":"with_purchase","force":true}
[2026-04-09 13:12:27] [INFO] Virtual stage successfully saved {"contact_id":"21642","stage_name":"with_purchase"}
[2026-04-09 13:12:27] [INFO] Moved contact out of kariz after successful deal {"contact_id":"21642","deal_id":"local_69d623294d6e61.38953492","target_stage":"with_purchase"}
[2026-04-09 13:12:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:12:34] [INFO] Checking activity reminders 
[2026-04-09 13:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:37] [INFO] Checking activity reminders 
[2026-04-09 13:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:44] [INFO] Checking activity reminders 
[2026-04-09 13:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:12:54] [INFO] Checking activity reminders 
[2026-04-09 13:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:55] [INFO] Checking activity reminders 
[2026-04-09 13:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:57] [INFO] Checking activity reminders 
[2026-04-09 13:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:12:59] [INFO] Checking activity reminders 
[2026-04-09 13:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:01] [INFO] Checking activity reminders 
[2026-04-09 13:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:07] [INFO] Checking activity reminders 
[2026-04-09 13:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"269","deal_id":"local_69d6965e72f169.77215995","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:13:08","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"269","is_new_deal":false}
[2026-04-09 13:13:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:13:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:13:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-09 13:13:08] [INFO] getContactPrimaryPhone called {"contact_id":"269"}
[2026-04-09 13:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:08] [INFO] getContactPrimaryPhone result {"contact_id":"269","person_found":true,"primary_phone":"9123175448"}
[2026-04-09 13:13:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123175448"}
[2026-04-09 13:13:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123175448","contact_id":"269","deal_id":"local_69d6965e72f169.77215995","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:13:08"}
[2026-04-09 13:13:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6965e72f169.77215995","contact_id":"269","existing_deal_found":true,"existing_contact_id":"269","existing_title":"معامله دوم 9123175448 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:13:08"}
[2026-04-09 13:13:08] [INFO] DealController.save validated payments {"deal_id":"local_69d6965e72f169.77215995","contact_id":"269","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 13:13:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"269","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:13:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6965e72f169.77215995","contact_didar_id":"269","title":"معامله دوم 9123175448 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9123175448","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیزاده علیزاده","existing_deal":"YES","existing_deal_id":"local_69d6965e72f169.77215995","existing_deal_status":"Pending","server_time":"2026-04-09 13:13:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6965e72f169.77215995","contact_id":"269","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9123175448 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-09 13:13:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:14] [INFO] Checking activity reminders 
[2026-04-09 13:13:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:31] [INFO] Checking activity reminders 
[2026-04-09 13:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:33] [INFO] Checking activity reminders 
[2026-04-09 13:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:37] [INFO] Checking activity reminders 
[2026-04-09 13:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-09 13:13:37] [INFO] Checking activity reminders 
[2026-04-09 13:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:41] [INFO] Checking activity reminders 
[2026-04-09 13:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:42] [INFO] Checking activity reminders 
[2026-04-09 13:13:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:44] [INFO] Checking activity reminders 
[2026-04-09 13:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:46] [INFO] Checking activity reminders 
[2026-04-09 13:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:13:52] [INFO] Activity save request {"post_data":{"contact_id":"269","deal_id":"local_69d6965e72f169.77215995","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"با اقای علیزاده صحبت شد \r\nخیلی دوست داره در کانال باشه \r\nپرزنت 6 ماهه برای پرداخت تماس مجدد ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:13:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"269","note_was_empty":true}
[2026-04-09 13:13:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"269","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:52] [INFO] Updating virtual stage {"contact_id":"269","stage_name":"deal_registered","force":false}
[2026-04-09 13:13:52] [INFO] Virtual stage successfully saved {"contact_id":"269","stage_name":"deal_registered"}
[2026-04-09 13:13:52] [INFO] Virtual stage updated after activity save {"contact_id":"269"}
[2026-04-09 13:13:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6965e72f169.77215995","stage":"تماس پیگیری","status_change":null}
[2026-04-09 13:13:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d774d862ca50.03468999","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69d774d862ca50.03468999"}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:13:52] [INFO] Updating virtual stage {"contact_id":"269","stage_name":"deal_registered","force":false}
[2026-04-09 13:13:52] [INFO] Virtual stage successfully saved {"contact_id":"269","stage_name":"deal_registered"}
[2026-04-09 13:13:52] [INFO] Virtual stage updated after activity save {"contact_id":"269"}
[2026-04-09 13:13:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"269","person_id":"45"}
[2026-04-09 13:14:03] [INFO] Checking activity reminders 
[2026-04-09 13:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:03] [INFO] Checking activity reminders 
[2026-04-09 13:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:08] [INFO] Checking activity reminders 
[2026-04-09 13:14:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:13] [INFO] Checking activity reminders 
[2026-04-09 13:14:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:16] [INFO] Checking activity reminders 
[2026-04-09 13:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:14:33] [INFO] Checking activity reminders 
[2026-04-09 13:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:38] [INFO] Checking activity reminders 
[2026-04-09 13:14:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:14:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":12,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"}]}
[2026-04-09 13:14:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":12,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1}]}
[2026-04-09 13:14:46] [INFO] Checking activity reminders 
[2026-04-09 13:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:14:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 13:14:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 13:14:59] [INFO] Checking activity reminders 
[2026-04-09 13:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:03] [INFO] Checking activity reminders 
[2026-04-09 13:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:08] [INFO] Checking activity reminders 
[2026-04-09 13:15:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:14] [INFO] Checking activity reminders 
[2026-04-09 13:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:14] [INFO] Checking activity reminders 
[2026-04-09 13:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:16] [INFO] Checking activity reminders 
[2026-04-09 13:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:33] [INFO] Checking activity reminders 
[2026-04-09 13:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:44] [INFO] Checking activity reminders 
[2026-04-09 13:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:45] [INFO] Checking activity reminders 
[2026-04-09 13:15:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:46] [INFO] Checking activity reminders 
[2026-04-09 13:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:15:55] [INFO] Checking activity reminders 
[2026-04-09 13:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:03] [INFO] Checking activity reminders 
[2026-04-09 13:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:14] [INFO] Checking activity reminders 
[2026-04-09 13:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:15] [INFO] Checking activity reminders 
[2026-04-09 13:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:26] [INFO] Checking activity reminders 
[2026-04-09 13:16:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:33] [INFO] Checking activity reminders 
[2026-04-09 13:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:44] [INFO] Checking activity reminders 
[2026-04-09 13:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:45] [INFO] Checking activity reminders 
[2026-04-09 13:16:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:16:56] [INFO] Checking activity reminders 
[2026-04-09 13:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:03] [INFO] Checking activity reminders 
[2026-04-09 13:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:15] [INFO] Checking activity reminders 
[2026-04-09 13:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:15] [INFO] Checking activity reminders 
[2026-04-09 13:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:26] [INFO] Checking activity reminders 
[2026-04-09 13:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:33] [INFO] Checking activity reminders 
[2026-04-09 13:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:33] [INFO] Checking activity reminders 
[2026-04-09 13:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:36] [INFO] Checking activity reminders 
[2026-04-09 13:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:37] [INFO] Checking activity reminders 
[2026-04-09 13:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:45] [INFO] Checking activity reminders 
[2026-04-09 13:17:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:52] [INFO] Checking activity reminders 
[2026-04-09 13:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:17:56] [INFO] Checking activity reminders 
[2026-04-09 13:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:03] [INFO] Checking activity reminders 
[2026-04-09 13:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:07] [INFO] Checking activity reminders 
[2026-04-09 13:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:11] [INFO] Checking activity reminders 
[2026-04-09 13:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:15] [INFO] Checking activity reminders 
[2026-04-09 13:18:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:22] [INFO] Checking activity reminders 
[2026-04-09 13:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:27] [INFO] Checking activity reminders 
[2026-04-09 13:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:33] [INFO] Checking activity reminders 
[2026-04-09 13:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:41] [INFO] Checking activity reminders 
[2026-04-09 13:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:45] [INFO] Checking activity reminders 
[2026-04-09 13:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:18:57] [INFO] Checking activity reminders 
[2026-04-09 13:18:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:18:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:03] [INFO] Checking activity reminders 
[2026-04-09 13:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:11] [INFO] Checking activity reminders 
[2026-04-09 13:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:15] [INFO] Checking activity reminders 
[2026-04-09 13:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:16] [INFO] Checking activity reminders 
[2026-04-09 13:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:20] [INFO] Checking activity reminders 
[2026-04-09 13:19:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:21] [INFO] Checking activity reminders 
[2026-04-09 13:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:27] [INFO] Checking activity reminders 
[2026-04-09 13:19:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:34] [INFO] Checking activity reminders 
[2026-04-09 13:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:46] [INFO] Checking activity reminders 
[2026-04-09 13:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:50] [INFO] Checking activity reminders 
[2026-04-09 13:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:51] [INFO] Checking activity reminders 
[2026-04-09 13:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:54] [INFO] Checking activity reminders 
[2026-04-09 13:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d285ac078524.46998604","person_id":"21991"}
[2026-04-09 13:20:04] [INFO] Checking activity reminders 
[2026-04-09 13:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:20:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:20:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 13:20:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 13:20:16] [INFO] Checking activity reminders 
[2026-04-09 13:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:24] [INFO] Checking activity reminders 
[2026-04-09 13:20:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:34] [INFO] Checking activity reminders 
[2026-04-09 13:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:37] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["8595596565"]}
[2026-04-09 13:20:37] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["8595596565"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-09 13:20:37] [INFO] Didar write disabled; creating local lead only {"owner_id":"local_04f5a5e34e341b7e","mobile":"8595596565","full_name":"تست انتقال اول"}
[2026-04-09 13:20:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:20:37] [INFO] Notification created {"notification_id":"639","user_id":"local_04f5a5e34e341b7e","type":"lead_assigned","show_popup":true}
[2026-04-09 13:20:40] [INFO] Checking activity reminders 
[2026-04-09 13:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:46] [INFO] Checking activity reminders 
[2026-04-09 13:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:20:54] [INFO] Checking activity reminders 
[2026-04-09 13:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:04] [INFO] Checking activity reminders 
[2026-04-09 13:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:10] [INFO] Checking activity reminders 
[2026-04-09 13:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:12] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9845692856","09845692856"]}
[2026-04-09 13:21:12] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9845692856","09845692856"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-09 13:21:12] [INFO] Didar write disabled; creating local lead only {"owner_id":"local_04f5a5e34e341b7e","mobile":"9845692856","full_name":"تست انتقال دوم"}
[2026-04-09 13:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:21:12] [INFO] Notification created {"notification_id":"640","user_id":"local_04f5a5e34e341b7e","type":"lead_assigned","show_popup":true}
[2026-04-09 13:21:16] [INFO] Checking activity reminders 
[2026-04-09 13:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:21:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 13:21:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 13:21:26] [INFO] Checking activity reminders 
[2026-04-09 13:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:30] [WARNING] Auth check failed - not authenticated {"session_id":"djjhce5l50gvq2m0p33u7r73vs","session_keys":[],"action":"log_client_event"}
[2026-04-09 13:21:30] [INFO] User logged in {"user_id":"1715","email":"test@test.com","role":"agent","via_master":false}
[2026-04-09 13:21:34] [INFO] Checking activity reminders 
[2026-04-09 13:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:39] [INFO] Checking activity reminders 
[2026-04-09 13:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:21:42] [INFO] Checking activity reminders 
[2026-04-09 13:21:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:21:47] [INFO] Checking activity reminders 
[2026-04-09 13:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:21:56] [INFO] Checking activity reminders 
[2026-04-09 13:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:22:04] [INFO] Checking activity reminders 
[2026-04-09 13:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:22:12] [INFO] Checking activity reminders 
[2026-04-09 13:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:22:20] [INFO] Checking activity reminders 
[2026-04-09 13:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:22:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"local_69d7769031eb00.28419193","deal_id":"local_69d7769036017","user_id":"local_04f5a5e34e341b7e","user_name":"test","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:22:29","session_id":"djjhce5l50gvq2m0p33u7r73vs"}
[2026-04-09 13:22:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"local_69d7769031eb00.28419193","is_new_deal":false}
[2026-04-09 13:22:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-09 13:22:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 13:22:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 13:22:29] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:22:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:29] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d7769031eb00.28419193","person_found":true,"primary_phone":"9845692856"}
[2026-04-09 13:22:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9845692856"}
[2026-04-09 13:22:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9845692856","contact_id":"local_69d7769031eb00.28419193","deal_id":"local_69d7769036017","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_04f5a5e34e341b7e","user_name":"test","server_time":"2026-04-09 13:22:29"}
[2026-04-09 13:22:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d7769036017","contact_id":"local_69d7769031eb00.28419193","existing_deal_found":true,"existing_contact_id":"local_69d7769031eb00.28419193","existing_title":"معامله اول 9845692856","user_id":"local_04f5a5e34e341b7e","user_name":"test","server_time":"2026-04-09 13:22:29"}
[2026-04-09 13:22:29] [INFO] DealController.save validated payments {"deal_id":"local_69d7769036017","contact_id":"local_69d7769031eb00.28419193","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-09 13:22:29] [INFO] DealController.save validating permissions {"current_user_id":"local_04f5a5e34e341b7e","contact_owner_id":"local_04f5a5e34e341b7e","contact_id":"local_69d7769031eb00.28419193","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:22:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d7769036017","contact_didar_id":"local_69d7769031eb00.28419193","title":"معامله اول 9845692856 | کانال VIP بدون پشتیبان","base_title_used":"معامله اول 9845692856","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_04f5a5e34e341b7e","user_name":"test","contact_owner_id":"local_04f5a5e34e341b7e","contact_name":"تست انتقال دوم","existing_deal":"YES","existing_deal_id":"local_69d7769036017","existing_deal_status":"Pending","server_time":"2026-04-09 13:22:29","session_data":{"didar_id":"local_04f5a5e34e341b7e","name":"test","user_id":"1715"}}
[2026-04-09 13:22:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d7769036017","contact_id":"local_69d7769031eb00.28419193","contact_owner_id":"local_04f5a5e34e341b7e","user_id":"local_04f5a5e34e341b7e","user_name":"test","deal_title":"معامله اول 9845692856 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":10000000,"server_time":"2026-04-09 13:22:30","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:22:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:42] [INFO] Checking activity reminders 
[2026-04-09 13:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:22:50] [INFO] Activity save request {"post_data":{"contact_id":"local_69d7769031eb00.28419193","deal_id":"local_69d7769036017","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"adsaasdd","activity_duration":"12","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-09 13:22:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_04f5a5e34e341b7e","database_didar_user_id":"local_04f5a5e34e341b7e","user_email":"test@test.com","user_name":"test test","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"test test","contact_id":"local_69d7769031eb00.28419193","note_was_empty":true}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:50] [INFO] Updating virtual stage {"contact_id":"local_69d7769031eb00.28419193","stage_name":"new","force":false}
[2026-04-09 13:22:50] [INFO] Virtual stage successfully saved {"contact_id":"local_69d7769031eb00.28419193","stage_name":"new"}
[2026-04-09 13:22:50] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:22:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d7769036017","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-09 13:22:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d776f2585a29.58515046","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69d776f2585a29.58515046"}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:50] [INFO] Updating virtual stage {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered","force":false}
[2026-04-09 13:22:50] [INFO] Virtual stage successfully saved {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered"}
[2026-04-09 13:22:50] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:22:52] [INFO] Checking activity reminders 
[2026-04-09 13:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:23:12] [INFO] Checking activity reminders 
[2026-04-09 13:23:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:23:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:23:19] [INFO] Activity save request {"post_data":{"contact_id":"local_69d7769031eb00.28419193","deal_id":"local_69d7769036017","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"","activity_duration":"12","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"1","due_date":"2026-04-12 10:00:00","reminder_enabled":"1","reminder_offset_minutes":"720"}}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:19] [INFO] Activity is_done determination {"is_scheduled":true,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:23:19] [INFO] Formatted due date for Didar {"original":"2026-04-12 10:00:00","formatted":"2026-04-12T06:30:00.000Z"}
[2026-04-09 13:23:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_04f5a5e34e341b7e","database_didar_user_id":"local_04f5a5e34e341b7e","user_email":"test@test.com","user_name":"test test","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"test test","contact_id":"local_69d7769031eb00.28419193","note_was_empty":true}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:19] [INFO] Updating virtual stage {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered","force":false}
[2026-04-09 13:23:19] [INFO] Virtual stage successfully saved {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered"}
[2026-04-09 13:23:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:23:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d7769036017","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-09 13:23:19] [INFO] Attempting to schedule activity reminder {"activity_id":"local_activity_69d7770f4d7620.83627486","is_scheduled":true,"reminder_enabled":true,"saved_due_date":"2026-04-12 10:00:00","reminder_offset":720,"notification_service_available":true}
[2026-04-09 13:23:19] [INFO] Scheduling activity reminder {"activity_id":"local_activity_69d7770f4d7620.83627486","due_date":"2026-04-12 10:00:00","offset_minutes":720,"reminder_time":"2026-04-11 22:00:00","calculated_timestamp":1775975400}
[2026-04-09 13:23:19] [INFO] Activity reminder created in database {"reminder_id":"192","activity_id":"local_activity_69d7770f4d7620.83627486","reminder_time":"2026-04-11 22:00:00","offset_minutes":720}
[2026-04-09 13:23:19] [INFO] Activity reminder scheduled successfully {"activity_id":"local_activity_69d7770f4d7620.83627486","reminder_time":"2026-04-11 22:00:00"}
[2026-04-09 13:23:19] [INFO] Reminder scheduling result {"activity_id":"local_activity_69d7770f4d7620.83627486","result":"192"}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69d7770f4d7620.83627486"}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:19] [INFO] Updating virtual stage {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered","force":false}
[2026-04-09 13:23:19] [INFO] Virtual stage successfully saved {"contact_id":"local_69d7769031eb00.28419193","stage_name":"deal_registered"}
[2026-04-09 13:23:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:22] [INFO] Checking activity reminders 
[2026-04-09 13:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:23:25] [INFO] generateDealTitle result {"contact_id":"local_69d7769031eb00.28419193","person_name":"تست انتقال دوم","mobile":"9845692856","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9845692856"}
[2026-04-09 13:23:42] [INFO] Checking activity reminders 
[2026-04-09 13:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:23:52] [INFO] Checking activity reminders 
[2026-04-09 13:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:12] [INFO] Checking activity reminders 
[2026-04-09 13:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:17] [INFO] DealController.save start {"is_new":true,"incoming_title":"کارشناسی شخصی ملک","contact_id":"local_69d7769031eb00.28419193","deal_id":"","user_id":"local_04f5a5e34e341b7e","user_name":"test","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:24:17","session_id":"djjhce5l50gvq2m0p33u7r73vs"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کارشناسی شخصی ملک","contact_id":"local_69d7769031eb00.28419193","is_new_deal":true}
[2026-04-09 13:24:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کارشناسی شخصی ملک"}
[2026-04-09 13:24:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کارشناسی شخصی ملک"}
[2026-04-09 13:24:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کارشناسی شخصی ملک"}
[2026-04-09 13:24:17] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d7769031eb00.28419193"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d7769031eb00.28419193","person_found":true,"primary_phone":"9845692856"}
[2026-04-09 13:24:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9845692856"}
[2026-04-09 13:24:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9845692856","contact_id":"local_69d7769031eb00.28419193","deal_id":"","is_new_deal":true,"incoming_title":"کارشناسی شخصی ملک","user_id":"local_04f5a5e34e341b7e","user_name":"test","server_time":"2026-04-09 13:24:17"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [INFO] generateDealTitle result {"contact_id":"local_69d7769031eb00.28419193","person_name":"تست انتقال دوم","mobile":"9845692856","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9845692856"}
[2026-04-09 13:24:17] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69d7769031eb00.28419193","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 13:24:17] [INFO] DealController.save validating permissions {"current_user_id":"local_04f5a5e34e341b7e","contact_owner_id":"local_04f5a5e34e341b7e","contact_id":"local_69d7769031eb00.28419193","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:24:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69d7769031eb00.28419193","title":"معامله دوم 9845692856 | کارشناسی شخصی ملک","base_title_used":"معامله دوم 9845692856","services_text":"کارشناسی شخصی ملک","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":50000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کارشناسی شخصی ملک"],"user_id":"local_04f5a5e34e341b7e","user_name":"test","contact_owner_id":"local_04f5a5e34e341b7e","contact_name":"تست انتقال دوم","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-09 13:24:17","session_data":{"didar_id":"local_04f5a5e34e341b7e","name":"test","user_id":"1715"}}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [INFO] Deal success processed {"contact_id":"local_69d7769031eb00.28419193","person_name":"تست انتقال دوم","products_count":0}
[2026-04-09 13:24:17] [INFO] ensureDealProductsFromText: products synced {"deal_id":"41889","product_ids":[1]}
[2026-04-09 13:24:17] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-09 13:24:17] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69d7769031eb00.28419193","contact_owner_id":"local_04f5a5e34e341b7e","user_id":"local_04f5a5e34e341b7e","user_name":"test","deal_title":"معامله دوم 9845692856 | کارشناسی شخصی ملک","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":50000000,"payment_amount":50000000,"server_time":"2026-04-09 13:24:17","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:17] [INFO] Updating virtual stage {"contact_id":"local_69d7769031eb00.28419193","stage_name":"with_purchase","force":true}
[2026-04-09 13:24:17] [INFO] Virtual stage successfully saved {"contact_id":"local_69d7769031eb00.28419193","stage_name":"with_purchase"}
[2026-04-09 13:24:17] [INFO] Moved contact out of kariz after successful deal {"contact_id":"local_69d7769031eb00.28419193","deal_id":"","target_stage":"with_purchase"}
[2026-04-09 13:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:23] [INFO] Checking activity reminders 
[2026-04-09 13:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:24:24] [INFO] Checking activity reminders 
[2026-04-09 13:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:26] [INFO] Checking activity reminders 
[2026-04-09 13:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:24:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:42] [INFO] Checking activity reminders 
[2026-04-09 13:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:24:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"چکاپ کسب و کار","contact_id":"local_69d7766de33610.44882641","deal_id":"local_69d7766de62e9","user_id":"local_04f5a5e34e341b7e","user_name":"test","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:24:50","session_id":"djjhce5l50gvq2m0p33u7r73vs"}
[2026-04-09 13:24:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"چکاپ کسب و کار","contact_id":"local_69d7766de33610.44882641","is_new_deal":false}
[2026-04-09 13:24:50] [INFO] extractPhoneFromDealTitle called {"input_title":"چکاپ کسب و کار"}
[2026-04-09 13:24:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"چکاپ کسب و کار"}
[2026-04-09 13:24:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"چکاپ کسب و کار"}
[2026-04-09 13:24:50] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d7766de33610.44882641"}
[2026-04-09 13:24:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:50] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d7766de33610.44882641","person_found":true,"primary_phone":"8595596565"}
[2026-04-09 13:24:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"8595596565"}
[2026-04-09 13:24:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"8595596565","contact_id":"local_69d7766de33610.44882641","deal_id":"local_69d7766de62e9","is_new_deal":false,"incoming_title":"چکاپ کسب و کار","user_id":"local_04f5a5e34e341b7e","user_name":"test","server_time":"2026-04-09 13:24:50"}
[2026-04-09 13:24:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d7766de62e9","contact_id":"local_69d7766de33610.44882641","existing_deal_found":true,"existing_contact_id":"local_69d7766de33610.44882641","existing_title":"معامله اول 8595596565","user_id":"local_04f5a5e34e341b7e","user_name":"test","server_time":"2026-04-09 13:24:50"}
[2026-04-09 13:24:50] [INFO] DealController.save validated payments {"deal_id":"local_69d7766de62e9","contact_id":"local_69d7766de33610.44882641","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-09 13:24:50] [INFO] DealController.save validating permissions {"current_user_id":"local_04f5a5e34e341b7e","contact_owner_id":"local_04f5a5e34e341b7e","contact_id":"local_69d7766de33610.44882641","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:24:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d7766de62e9","contact_didar_id":"local_69d7766de33610.44882641","title":"معامله اول 8595596565 | چکاپ کسب و کار","base_title_used":"معامله اول 8595596565","services_text":"چکاپ کسب و کار","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":200000000,"payment_amount":0,"payments_present":false,"requested_services":["چکاپ کسب و کار"],"user_id":"local_04f5a5e34e341b7e","user_name":"test","contact_owner_id":"local_04f5a5e34e341b7e","contact_name":"تست انتقال اول","existing_deal":"YES","existing_deal_id":"local_69d7766de62e9","existing_deal_status":"Pending","server_time":"2026-04-09 13:24:50","session_data":{"didar_id":"local_04f5a5e34e341b7e","name":"test","user_id":"1715"}}
[2026-04-09 13:24:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d7766de62e9","contact_id":"local_69d7766de33610.44882641","contact_owner_id":"local_04f5a5e34e341b7e","user_id":"local_04f5a5e34e341b7e","user_name":"test","deal_title":"معامله اول 8595596565 | چکاپ کسب و کار","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":200000000,"payment_amount":0,"server_time":"2026-04-09 13:24:50","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:24:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-09 13:24:57] [INFO] Checking activity reminders 
[2026-04-09 13:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:00] [INFO] Checking activity reminders 
[2026-04-09 13:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:02] [INFO] Checking activity reminders 
[2026-04-09 13:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:27] [INFO] Checking activity reminders 
[2026-04-09 13:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:32] [INFO] Checking activity reminders 
[2026-04-09 13:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:52] [INFO] Checking activity reminders 
[2026-04-09 13:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:25:57] [INFO] Checking activity reminders 
[2026-04-09 13:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:26:01] [INFO] User logged in {"user_id":"1716","email":"test2@test.com","role":"agent","via_master":false}
[2026-04-09 13:26:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:26:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:26:27] [INFO] Checking activity reminders 
[2026-04-09 13:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:26:28] [INFO] Checking activity reminders 
[2026-04-09 13:26:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:26:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:26:33] [INFO] Checking activity reminders 
[2026-04-09 13:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:26:53] [INFO] Checking activity reminders 
[2026-04-09 13:26:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:26:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:26:59] [INFO] Checking activity reminders 
[2026-04-09 13:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:27:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21300","deal_id":"local_69d69231864421.76342045","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:27:19","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:27:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21300","is_new_deal":false}
[2026-04-09 13:27:19] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:27:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:27:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:27:19] [INFO] getContactPrimaryPhone called {"contact_id":"21300"}
[2026-04-09 13:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:27:19] [INFO] getContactPrimaryPhone result {"contact_id":"21300","person_found":true,"primary_phone":"9366714636"}
[2026-04-09 13:27:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9366714636"}
[2026-04-09 13:27:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9366714636","contact_id":"21300","deal_id":"local_69d69231864421.76342045","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:27:19"}
[2026-04-09 13:27:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d69231864421.76342045","contact_id":"21300","existing_deal_found":true,"existing_contact_id":"21300","existing_title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:27:19"}
[2026-04-09 13:27:19] [INFO] DealController.save validated payments {"deal_id":"local_69d69231864421.76342045","contact_id":"21300","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 13:27:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21300","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:27:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d69231864421.76342045","contact_didar_id":"21300","title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9366714636","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سجاد  وجدانی","existing_deal":"YES","existing_deal_id":"local_69d69231864421.76342045","existing_deal_status":"Pending","server_time":"2026-04-09 13:27:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:27:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d69231864421.76342045","contact_id":"21300","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-09 13:27:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:27:29] [INFO] Checking activity reminders 
[2026-04-09 13:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:00] [INFO] Checking activity reminders 
[2026-04-09 13:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:13] [INFO] Activity save request {"post_data":{"contact_id":"21300","deal_id":"local_69d69231864421.76342045","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"اینترنت برای پیکیری 404 نداشته \r\nاطلاعی از 405 نداشت \r\nپرزنت 405 یکساله و 6 ماهه \r\nارسال لینک پرداخت در بله \r\n","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:28:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21300","note_was_empty":true}
[2026-04-09 13:28:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"21300","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:13] [INFO] Updating virtual stage {"contact_id":"21300","stage_name":"deal_registered","force":false}
[2026-04-09 13:28:13] [INFO] Virtual stage successfully saved {"contact_id":"21300","stage_name":"deal_registered"}
[2026-04-09 13:28:13] [INFO] Virtual stage updated after activity save {"contact_id":"21300"}
[2026-04-09 13:28:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69231864421.76342045","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 13:28:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77835d83b79.53792195","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77835d83b79.53792195"}
[2026-04-09 13:28:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:13] [INFO] Updating virtual stage {"contact_id":"21300","stage_name":"deal_registered","force":false}
[2026-04-09 13:28:13] [INFO] Virtual stage successfully saved {"contact_id":"21300","stage_name":"deal_registered"}
[2026-04-09 13:28:13] [INFO] Virtual stage updated after activity save {"contact_id":"21300"}
[2026-04-09 13:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 13:28:18] [INFO] Checking activity reminders 
[2026-04-09 13:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:23] [INFO] Checking activity reminders 
[2026-04-09 13:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:25] [INFO] Checking activity reminders 
[2026-04-09 13:28:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:27] [INFO] Checking activity reminders 
[2026-04-09 13:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:28:54] [INFO] Checking activity reminders 
[2026-04-09 13:28:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:28:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:29:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:29:14] [INFO] Checking activity reminders 
[2026-04-09 13:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:29:24] [INFO] Checking activity reminders 
[2026-04-09 13:29:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:29:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:29:38] [INFO] Checking activity reminders 
[2026-04-09 13:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:29:39] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:29:39] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 13:29:39] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 13:29:54] [INFO] Checking activity reminders 
[2026-04-09 13:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:30:08] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:30:08] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 13:30:08] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 13:30:09] [INFO] Checking activity reminders 
[2026-04-09 13:30:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:30:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:30:24] [INFO] Checking activity reminders 
[2026-04-09 13:30:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:30:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:30:42] [INFO] Checking activity reminders 
[2026-04-09 13:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:30:54] [INFO] Checking activity reminders 
[2026-04-09 13:30:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:30:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:31:05] [INFO] Checking activity reminders 
[2026-04-09 13:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:31:24] [INFO] Checking activity reminders 
[2026-04-09 13:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:31:37] [INFO] Checking activity reminders 
[2026-04-09 13:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:31:54] [INFO] Checking activity reminders 
[2026-04-09 13:31:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:31:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:32:07] [INFO] Checking activity reminders 
[2026-04-09 13:32:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:32:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:32:25] [INFO] Checking activity reminders 
[2026-04-09 13:32:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:32:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:32:38] [INFO] Checking activity reminders 
[2026-04-09 13:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:32:49] [INFO] Checking activity reminders 
[2026-04-09 13:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:32:55] [INFO] Checking activity reminders 
[2026-04-09 13:32:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:32:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:33:25] [INFO] Checking activity reminders 
[2026-04-09 13:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:33:55] [INFO] Checking activity reminders 
[2026-04-09 13:33:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:33:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:34:25] [INFO] Checking activity reminders 
[2026-04-09 13:34:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:34:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:34:55] [INFO] Checking activity reminders 
[2026-04-09 13:34:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:34:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:35:25] [INFO] Checking activity reminders 
[2026-04-09 13:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:35:56] [INFO] Checking activity reminders 
[2026-04-09 13:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:36:26] [INFO] Checking activity reminders 
[2026-04-09 13:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:36:56] [INFO] Checking activity reminders 
[2026-04-09 13:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:37:26] [INFO] Checking activity reminders 
[2026-04-09 13:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:37:56] [INFO] Checking activity reminders 
[2026-04-09 13:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:38:26] [INFO] Checking activity reminders 
[2026-04-09 13:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:38:57] [INFO] Checking activity reminders 
[2026-04-09 13:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:39:27] [INFO] Checking activity reminders 
[2026-04-09 13:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:39:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"578","deal_id":"local_69d695998c0365.66592328","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:39:43","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:39:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"578","is_new_deal":false}
[2026-04-09 13:39:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:39:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:39:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 13:39:43] [INFO] getContactPrimaryPhone called {"contact_id":"578"}
[2026-04-09 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:39:43] [INFO] getContactPrimaryPhone result {"contact_id":"578","person_found":true,"primary_phone":"9125213284"}
[2026-04-09 13:39:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125213284"}
[2026-04-09 13:39:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125213284","contact_id":"578","deal_id":"local_69d695998c0365.66592328","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:39:43"}
[2026-04-09 13:39:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d695998c0365.66592328","contact_id":"578","existing_deal_found":true,"existing_contact_id":"578","existing_title":"معامله دوم 9125213284 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:39:43"}
[2026-04-09 13:39:43] [INFO] DealController.save validated payments {"deal_id":"local_69d695998c0365.66592328","contact_id":"578","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 13:39:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"578","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:39:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d695998c0365.66592328","contact_didar_id":"578","title":"معامله دوم 9125213284 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9125213284","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمیدرضا عطار","existing_deal":"YES","existing_deal_id":"local_69d695998c0365.66592328","existing_deal_status":"Pending","server_time":"2026-04-09 13:39:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:39:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:39:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d695998c0365.66592328","contact_id":"578","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9125213284 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-09 13:39:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:39:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:39:55] [INFO] Checking activity reminders 
[2026-04-09 13:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:39:57] [INFO] Checking activity reminders 
[2026-04-09 13:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:40:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2057","person_id":"7038"}
[2026-04-09 13:40:25] [INFO] Checking activity reminders 
[2026-04-09 13:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:40:27] [INFO] Checking activity reminders 
[2026-04-09 13:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:40:56] [INFO] Checking activity reminders 
[2026-04-09 13:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:40:57] [INFO] Checking activity reminders 
[2026-04-09 13:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:17] [INFO] Activity save request {"post_data":{"contact_id":"578","deal_id":"local_69d695998c0365.66592328","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال 404 در بله نداشت \/ ارسال شد \r\nپرزنت 405 \/ 6 ماهه .\r\nمیگه فعلا تصمیمی ندارم \r\nنوسان گیری و فرصت های شیفت سرمایه ارسال شد \r\nاطلاع میده ","activity_duration":"6","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:41:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:41:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:41:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"578","note_was_empty":true}
[2026-04-09 13:41:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"578","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:41:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:17] [INFO] Updating virtual stage {"contact_id":"578","stage_name":"deal_registered","force":false}
[2026-04-09 13:41:17] [INFO] Virtual stage successfully saved {"contact_id":"578","stage_name":"deal_registered"}
[2026-04-09 13:41:17] [INFO] Virtual stage updated after activity save {"contact_id":"578"}
[2026-04-09 13:41:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d695998c0365.66592328","stage":"تماس پیگیری","status_change":null}
[2026-04-09 13:41:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77b458c6653.63309468","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:41:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77b458c6653.63309468"}
[2026-04-09 13:41:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:17] [INFO] Updating virtual stage {"contact_id":"578","stage_name":"deal_registered","force":false}
[2026-04-09 13:41:17] [INFO] Virtual stage successfully saved {"contact_id":"578","stage_name":"deal_registered"}
[2026-04-09 13:41:17] [INFO] Virtual stage updated after activity save {"contact_id":"578"}
[2026-04-09 13:41:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"578","person_id":"18668"}
[2026-04-09 13:41:25] [INFO] Checking activity reminders 
[2026-04-09 13:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:26] [INFO] Checking activity reminders 
[2026-04-09 13:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:30] [INFO] Checking activity reminders 
[2026-04-09 13:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:32] [INFO] Checking activity reminders 
[2026-04-09 13:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:34] [INFO] Checking activity reminders 
[2026-04-09 13:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:39] [INFO] Checking activity reminders 
[2026-04-09 13:41:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:41:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:41:56] [INFO] Checking activity reminders 
[2026-04-09 13:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:42:09] [INFO] Checking activity reminders 
[2026-04-09 13:42:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:42:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:42:27] [INFO] Checking activity reminders 
[2026-04-09 13:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:42:39] [INFO] Checking activity reminders 
[2026-04-09 13:42:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:42:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:42:57] [INFO] Checking activity reminders 
[2026-04-09 13:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:09] [INFO] Checking activity reminders 
[2026-04-09 13:43:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:27] [INFO] Checking activity reminders 
[2026-04-09 13:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:39] [INFO] Checking activity reminders 
[2026-04-09 13:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:43:48] [INFO] Checking activity reminders 
[2026-04-09 13:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:50] [INFO] Checking activity reminders 
[2026-04-09 13:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:52] [INFO] Checking activity reminders 
[2026-04-09 13:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:54] [INFO] Checking activity reminders 
[2026-04-09 13:43:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:57] [INFO] Checking activity reminders 
[2026-04-09 13:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:43:58] [INFO] Checking activity reminders 
[2026-04-09 13:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:44:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7791","deal_id":"local_69d69252cf08c5.11409320","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:44:22","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:44:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7791","is_new_deal":false}
[2026-04-09 13:44:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 13:44:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:44:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:44:22] [INFO] getContactPrimaryPhone called {"contact_id":"7791"}
[2026-04-09 13:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:44:22] [INFO] getContactPrimaryPhone result {"contact_id":"7791","person_found":true,"primary_phone":"9367753601"}
[2026-04-09 13:44:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9367753601"}
[2026-04-09 13:44:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9367753601","contact_id":"7791","deal_id":"local_69d69252cf08c5.11409320","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:44:22"}
[2026-04-09 13:44:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d69252cf08c5.11409320","contact_id":"7791","existing_deal_found":true,"existing_contact_id":"7791","existing_title":"معامله سوم 9367753601 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:44:22"}
[2026-04-09 13:44:22] [INFO] DealController.save validated payments {"deal_id":"local_69d69252cf08c5.11409320","contact_id":"7791","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 13:44:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7791","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:44:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d69252cf08c5.11409320","contact_didar_id":"7791","title":"معامله سوم 9367753601 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9367753601","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهرداد محمودی","existing_deal":"YES","existing_deal_id":"local_69d69252cf08c5.11409320","existing_deal_status":"Pending","server_time":"2026-04-09 13:44:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:44:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:44:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d69252cf08c5.11409320","contact_id":"7791","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9367753601 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 13:44:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:44:27] [INFO] Checking activity reminders 
[2026-04-09 13:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:44:28] [INFO] Checking activity reminders 
[2026-04-09 13:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:44:57] [INFO] Checking activity reminders 
[2026-04-09 13:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:44:59] [INFO] Checking activity reminders 
[2026-04-09 13:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:45:14] [INFO] Activity save request {"post_data":{"contact_id":"7791","deal_id":"local_69d69252cf08c5.11409320","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:45:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7791","note_was_empty":true}
[2026-04-09 13:45:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"7791","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:14] [INFO] Updating virtual stage {"contact_id":"7791","stage_name":"deal_registered","force":false}
[2026-04-09 13:45:14] [INFO] Virtual stage successfully saved {"contact_id":"7791","stage_name":"deal_registered"}
[2026-04-09 13:45:14] [INFO] Virtual stage updated after activity save {"contact_id":"7791"}
[2026-04-09 13:45:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69252cf08c5.11409320","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 13:45:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77c32689b99.34846530","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77c32689b99.34846530"}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:14] [INFO] Updating virtual stage {"contact_id":"7791","stage_name":"deal_registered","force":false}
[2026-04-09 13:45:14] [INFO] Virtual stage successfully saved {"contact_id":"7791","stage_name":"deal_registered"}
[2026-04-09 13:45:14] [INFO] Virtual stage updated after activity save {"contact_id":"7791"}
[2026-04-09 13:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7791","person_id":"10280"}
[2026-04-09 13:45:22] [INFO] Checking activity reminders 
[2026-04-09 13:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:45:29] [INFO] Checking activity reminders 
[2026-04-09 13:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:45:53] [INFO] Checking activity reminders 
[2026-04-09 13:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:45:59] [INFO] Checking activity reminders 
[2026-04-09 13:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:46:23] [INFO] Checking activity reminders 
[2026-04-09 13:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:46:29] [INFO] Checking activity reminders 
[2026-04-09 13:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:46:54] [INFO] Checking activity reminders 
[2026-04-09 13:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:47:00] [INFO] Checking activity reminders 
[2026-04-09 13:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:47:24] [INFO] Checking activity reminders 
[2026-04-09 13:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:47:30] [INFO] Checking activity reminders 
[2026-04-09 13:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:47:54] [INFO] Checking activity reminders 
[2026-04-09 13:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:00] [INFO] Checking activity reminders 
[2026-04-09 13:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:24] [INFO] Checking activity reminders 
[2026-04-09 13:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:30] [INFO] Checking activity reminders 
[2026-04-09 13:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:36] [INFO] Checking activity reminders 
[2026-04-09 13:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:38] [INFO] Checking activity reminders 
[2026-04-09 13:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:48:39] [INFO] Checking activity reminders 
[2026-04-09 13:48:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:48:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:49:01] [INFO] Checking activity reminders 
[2026-04-09 13:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:49:09] [INFO] Checking activity reminders 
[2026-04-09 13:49:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:49:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:49:31] [INFO] Checking activity reminders 
[2026-04-09 13:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:49:39] [INFO] Checking activity reminders 
[2026-04-09 13:49:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:49:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:50:01] [INFO] Checking activity reminders 
[2026-04-09 13:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:50:10] [INFO] Checking activity reminders 
[2026-04-09 13:50:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:50:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:50:31] [INFO] Checking activity reminders 
[2026-04-09 13:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:50:40] [INFO] Checking activity reminders 
[2026-04-09 13:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:50:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8996","deal_id":"local_69d6947add0dc9.85306377","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:50:44","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8996","is_new_deal":false}
[2026-04-09 13:50:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 13:50:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:50:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:50:44] [INFO] getContactPrimaryPhone called {"contact_id":"8996"}
[2026-04-09 13:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:44] [INFO] getContactPrimaryPhone result {"contact_id":"8996","person_found":true,"primary_phone":"9163000819"}
[2026-04-09 13:50:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9163000819"}
[2026-04-09 13:50:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9163000819","contact_id":"8996","deal_id":"local_69d6947add0dc9.85306377","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:50:44"}
[2026-04-09 13:50:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6947add0dc9.85306377","contact_id":"8996","existing_deal_found":true,"existing_contact_id":"8996","existing_title":"معامله سوم 9163000819 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:50:44"}
[2026-04-09 13:50:44] [INFO] DealController.save validated payments {"deal_id":"local_69d6947add0dc9.85306377","contact_id":"8996","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 13:50:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8996","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:50:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6947add0dc9.85306377","contact_didar_id":"8996","title":"معامله سوم 9163000819 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9163000819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پروین مجد","existing_deal":"YES","existing_deal_id":"local_69d6947add0dc9.85306377","existing_deal_status":"Pending","server_time":"2026-04-09 13:50:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6947add0dc9.85306377","contact_id":"8996","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9163000819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 13:50:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:50:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Activity save request {"post_data":{"contact_id":"8996","deal_id":"local_69d6947add0dc9.85306377","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:50:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8996","note_was_empty":true}
[2026-04-09 13:50:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"8996","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Updating virtual stage {"contact_id":"8996","stage_name":"deal_registered","force":false}
[2026-04-09 13:50:56] [INFO] Virtual stage successfully saved {"contact_id":"8996","stage_name":"deal_registered"}
[2026-04-09 13:50:56] [INFO] Virtual stage updated after activity save {"contact_id":"8996"}
[2026-04-09 13:50:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6947add0dc9.85306377","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 13:50:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77d880b7089.74652403","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77d880b7089.74652403"}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:56] [INFO] Updating virtual stage {"contact_id":"8996","stage_name":"deal_registered","force":false}
[2026-04-09 13:50:56] [INFO] Virtual stage successfully saved {"contact_id":"8996","stage_name":"deal_registered"}
[2026-04-09 13:50:56] [INFO] Virtual stage updated after activity save {"contact_id":"8996"}
[2026-04-09 13:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8996","person_id":"3739"}
[2026-04-09 13:50:59] [INFO] Checking activity reminders 
[2026-04-09 13:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:01] [INFO] Checking activity reminders 
[2026-04-09 13:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:02] [INFO] Checking activity reminders 
[2026-04-09 13:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:03] [INFO] Checking activity reminders 
[2026-04-09 13:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 13:51:24] [INFO] Checking activity reminders 
[2026-04-09 13:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:26] [INFO] Checking activity reminders 
[2026-04-09 13:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:32] [INFO] Checking activity reminders 
[2026-04-09 13:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:51:56] [INFO] Checking activity reminders 
[2026-04-09 13:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:52:26] [INFO] Checking activity reminders 
[2026-04-09 13:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:52:45] [INFO] Checking activity reminders 
[2026-04-09 13:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:52:56] [INFO] Checking activity reminders 
[2026-04-09 13:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:53:26] [INFO] Checking activity reminders 
[2026-04-09 13:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:53:56] [INFO] Checking activity reminders 
[2026-04-09 13:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:54:10] [INFO] Checking activity reminders 
[2026-04-09 13:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:54:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21642","person_id":"951"}
[2026-04-09 13:54:26] [INFO] Checking activity reminders 
[2026-04-09 13:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:54:57] [INFO] Checking activity reminders 
[2026-04-09 13:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:55:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"975","deal_id":"local_69d68fb50cfcc9.99082614","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:55:24","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:55:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"975","is_new_deal":false}
[2026-04-09 13:55:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 13:55:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:55:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:55:24] [INFO] getContactPrimaryPhone called {"contact_id":"975"}
[2026-04-09 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:55:24] [INFO] getContactPrimaryPhone result {"contact_id":"975","person_found":true,"primary_phone":"9139293182"}
[2026-04-09 13:55:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139293182"}
[2026-04-09 13:55:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139293182","contact_id":"975","deal_id":"local_69d68fb50cfcc9.99082614","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:55:24"}
[2026-04-09 13:55:24] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68fb50cfcc9.99082614","contact_id":"975","existing_deal_found":true,"existing_contact_id":"975","existing_title":"معامله سوم 9139293182 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:55:24"}
[2026-04-09 13:55:24] [INFO] DealController.save validated payments {"deal_id":"local_69d68fb50cfcc9.99082614","contact_id":"975","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 13:55:24] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"975","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:55:24] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68fb50cfcc9.99082614","contact_didar_id":"975","title":"معامله سوم 9139293182 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9139293182","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سروش فروهر","existing_deal":"YES","existing_deal_id":"local_69d68fb50cfcc9.99082614","existing_deal_status":"Pending","server_time":"2026-04-09 13:55:24","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:55:24] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68fb50cfcc9.99082614","contact_id":"975","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9139293182 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 13:55:24","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:55:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:55:27] [INFO] Checking activity reminders 
[2026-04-09 13:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:55:57] [INFO] Checking activity reminders 
[2026-04-09 13:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:56:27] [INFO] Checking activity reminders 
[2026-04-09 13:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:56:57] [INFO] Checking activity reminders 
[2026-04-09 13:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:57:00] [INFO] Activity save request {"post_data":{"contact_id":"975","deal_id":"local_69d68fb50cfcc9.99082614","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:57:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"975","note_was_empty":true}
[2026-04-09 13:57:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"975","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:00] [INFO] Updating virtual stage {"contact_id":"975","stage_name":"deal_registered","force":false}
[2026-04-09 13:57:00] [INFO] Virtual stage successfully saved {"contact_id":"975","stage_name":"deal_registered"}
[2026-04-09 13:57:00] [INFO] Virtual stage updated after activity save {"contact_id":"975"}
[2026-04-09 13:57:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68fb50cfcc9.99082614","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 13:57:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77ef4cb8b67.12190068","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77ef4cb8b67.12190068"}
[2026-04-09 13:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:00] [INFO] Updating virtual stage {"contact_id":"975","stage_name":"deal_registered","force":false}
[2026-04-09 13:57:00] [INFO] Virtual stage successfully saved {"contact_id":"975","stage_name":"deal_registered"}
[2026-04-09 13:57:00] [INFO] Virtual stage updated after activity save {"contact_id":"975"}
[2026-04-09 13:57:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"975","person_id":"16190"}
[2026-04-09 13:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:57:27] [INFO] Checking activity reminders 
[2026-04-09 13:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:57:57] [INFO] Checking activity reminders 
[2026-04-09 13:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:58:20] [INFO] Checking activity reminders 
[2026-04-09 13:58:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:58:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:58:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 13:58:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 13:58:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 13:58:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 13:58:28] [INFO] Checking activity reminders 
[2026-04-09 13:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:58:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7769031eb00.28419193","person_id":"22100"}
[2026-04-09 13:58:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8074","deal_id":"local_69d6929700dfc4.60323795","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 13:58:49","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 13:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:58:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8074","is_new_deal":false}
[2026-04-09 13:58:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 13:58:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:58:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 13:58:49] [INFO] getContactPrimaryPhone called {"contact_id":"8074"}
[2026-04-09 13:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:58:49] [INFO] getContactPrimaryPhone result {"contact_id":"8074","person_found":true,"primary_phone":"9370627473"}
[2026-04-09 13:58:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9370627473"}
[2026-04-09 13:58:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9370627473","contact_id":"8074","deal_id":"local_69d6929700dfc4.60323795","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:58:49"}
[2026-04-09 13:58:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6929700dfc4.60323795","contact_id":"8074","existing_deal_found":true,"existing_contact_id":"8074","existing_title":"معامله دوم 9370627473 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 13:58:49"}
[2026-04-09 13:58:49] [INFO] DealController.save validated payments {"deal_id":"local_69d6929700dfc4.60323795","contact_id":"8074","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 13:58:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8074","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 13:58:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6929700dfc4.60323795","contact_didar_id":"8074","title":"معامله دوم 9370627473 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9370627473","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد اسماعیلی","existing_deal":"YES","existing_deal_id":"local_69d6929700dfc4.60323795","existing_deal_status":"Pending","server_time":"2026-04-09 13:58:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 13:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:58:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6929700dfc4.60323795","contact_id":"8074","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9370627473 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 13:58:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 13:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:58:55] [INFO] Checking activity reminders 
[2026-04-09 13:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:58:58] [INFO] Checking activity reminders 
[2026-04-09 13:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:59:25] [INFO] Checking activity reminders 
[2026-04-09 13:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:59:28] [INFO] Checking activity reminders 
[2026-04-09 13:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:59:33] [INFO] Activity save request {"post_data":{"contact_id":"8074","deal_id":"local_69d6929700dfc4.60323795","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک داد \/ شرایط کار دولتی ماموریت بود \r\nخودش تماس میگره ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 13:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 13:59:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 13:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8074","note_was_empty":true}
[2026-04-09 13:59:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"8074","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 13:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:33] [INFO] Updating virtual stage {"contact_id":"8074","stage_name":"deal_registered","force":false}
[2026-04-09 13:59:33] [INFO] Virtual stage successfully saved {"contact_id":"8074","stage_name":"deal_registered"}
[2026-04-09 13:59:33] [INFO] Virtual stage updated after activity save {"contact_id":"8074"}
[2026-04-09 13:59:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6929700dfc4.60323795","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 13:59:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d77f8deeeae1.87572473","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 13:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69d77f8deeeae1.87572473"}
[2026-04-09 13:59:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:33] [INFO] Updating virtual stage {"contact_id":"8074","stage_name":"deal_registered","force":false}
[2026-04-09 13:59:33] [INFO] Virtual stage successfully saved {"contact_id":"8074","stage_name":"deal_registered"}
[2026-04-09 13:59:33] [INFO] Virtual stage updated after activity save {"contact_id":"8074"}
[2026-04-09 13:59:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8074","person_id":"13975"}
[2026-04-09 13:59:56] [INFO] Checking activity reminders 
[2026-04-09 13:59:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:59:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 13:59:58] [INFO] Checking activity reminders 
[2026-04-09 13:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 13:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"check_reminders"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"get_products"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"get_leads"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:09] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:11] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:12] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:13] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"get_leads"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:14] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:18] [INFO] Checking activity reminders 
[2026-04-09 14:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:00:20] [WARNING] Auth check failed - not authenticated {"session_id":"5iqeilhq271tnslobjrla98oga","session_keys":[],"action":"log_client_event"}
[2026-04-09 14:00:21] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-09 14:00:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 14:00:26] [INFO] Checking activity reminders 
[2026-04-09 14:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:00:48] [INFO] Checking activity reminders 
[2026-04-09 14:00:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:00:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:00:56] [INFO] Checking activity reminders 
[2026-04-09 14:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:01:18] [INFO] Checking activity reminders 
[2026-04-09 14:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:01:26] [INFO] Checking activity reminders 
[2026-04-09 14:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:01:48] [INFO] Checking activity reminders 
[2026-04-09 14:01:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:01:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:01:56] [INFO] Checking activity reminders 
[2026-04-09 14:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:02:18] [INFO] Checking activity reminders 
[2026-04-09 14:02:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:02:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:02:26] [INFO] Checking activity reminders 
[2026-04-09 14:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:02:48] [INFO] Checking activity reminders 
[2026-04-09 14:02:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:02:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:02:56] [INFO] Checking activity reminders 
[2026-04-09 14:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:03:19] [INFO] Checking activity reminders 
[2026-04-09 14:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:03:26] [INFO] Checking activity reminders 
[2026-04-09 14:03:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:03:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:03:49] [INFO] Checking activity reminders 
[2026-04-09 14:03:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:03:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:03:57] [INFO] Checking activity reminders 
[2026-04-09 14:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:04:21] [INFO] Checking activity reminders 
[2026-04-09 14:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:04:27] [INFO] Checking activity reminders 
[2026-04-09 14:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:04:52] [INFO] Checking activity reminders 
[2026-04-09 14:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:04:57] [INFO] Checking activity reminders 
[2026-04-09 14:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:05:22] [INFO] Checking activity reminders 
[2026-04-09 14:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:05:27] [INFO] Checking activity reminders 
[2026-04-09 14:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:05:52] [INFO] Checking activity reminders 
[2026-04-09 14:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:05:57] [INFO] Checking activity reminders 
[2026-04-09 14:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:06:22] [INFO] Checking activity reminders 
[2026-04-09 14:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:06:27] [INFO] Checking activity reminders 
[2026-04-09 14:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:06:53] [INFO] Checking activity reminders 
[2026-04-09 14:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:07:23] [INFO] Checking activity reminders 
[2026-04-09 14:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:07:53] [INFO] Checking activity reminders 
[2026-04-09 14:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:08:04] [INFO] Checking activity reminders 
[2026-04-09 14:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:08:23] [INFO] Checking activity reminders 
[2026-04-09 14:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:08:30] [INFO] Checking activity reminders 
[2026-04-09 14:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:08:53] [INFO] Checking activity reminders 
[2026-04-09 14:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:09:23] [INFO] Checking activity reminders 
[2026-04-09 14:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:09:53] [INFO] Checking activity reminders 
[2026-04-09 14:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:10:24] [INFO] Checking activity reminders 
[2026-04-09 14:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:10:54] [INFO] Checking activity reminders 
[2026-04-09 14:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:11:24] [INFO] Checking activity reminders 
[2026-04-09 14:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:11:55] [INFO] Checking activity reminders 
[2026-04-09 14:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:12:10] [INFO] Checking activity reminders 
[2026-04-09 14:12:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:12:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:12:41] [INFO] Checking activity reminders 
[2026-04-09 14:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:13:11] [INFO] Checking activity reminders 
[2026-04-09 14:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:13:41] [INFO] Checking activity reminders 
[2026-04-09 14:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:13:57] [INFO] Checking activity reminders 
[2026-04-09 14:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:13:57] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 14:13:57] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 14:13:57] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 14:14:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:14:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:14:11] [INFO] Checking activity reminders 
[2026-04-09 14:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:14:14] [INFO] Checking activity reminders 
[2026-04-09 14:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:14:15] [INFO] Checking activity reminders 
[2026-04-09 14:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:14:21] [INFO] Checking activity reminders 
[2026-04-09 14:14:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:14:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:14:51] [INFO] Checking activity reminders 
[2026-04-09 14:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:18] [INFO] Checking activity reminders 
[2026-04-09 14:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:15:19] [INFO] Checking activity reminders 
[2026-04-09 14:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:21] [INFO] Checking activity reminders 
[2026-04-09 14:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:48] [INFO] Checking activity reminders 
[2026-04-09 14:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:51] [INFO] Checking activity reminders 
[2026-04-09 14:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:15:58] [INFO] Lead update received {"contact_id":"4014","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:15:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:15:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:15:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:15:58] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"4014"}
[2026-04-09 14:15:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4014","person_id":"18757"}
[2026-04-09 14:16:21] [INFO] Checking activity reminders 
[2026-04-09 14:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:16:51] [INFO] Checking activity reminders 
[2026-04-09 14:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:17:21] [INFO] Checking activity reminders 
[2026-04-09 14:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:17:52] [INFO] Checking activity reminders 
[2026-04-09 14:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:18:22] [INFO] Checking activity reminders 
[2026-04-09 14:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:18:52] [INFO] Checking activity reminders 
[2026-04-09 14:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:19:22] [INFO] Checking activity reminders 
[2026-04-09 14:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:19:53] [INFO] Checking activity reminders 
[2026-04-09 14:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:20:23] [INFO] Checking activity reminders 
[2026-04-09 14:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:20:54] [INFO] Checking activity reminders 
[2026-04-09 14:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:21:24] [INFO] Checking activity reminders 
[2026-04-09 14:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:21:54] [INFO] Checking activity reminders 
[2026-04-09 14:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:22:24] [INFO] Checking activity reminders 
[2026-04-09 14:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:22:54] [INFO] Checking activity reminders 
[2026-04-09 14:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:23:24] [INFO] Checking activity reminders 
[2026-04-09 14:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:23:41] [INFO] Checking activity reminders 
[2026-04-09 14:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:23:54] [INFO] Checking activity reminders 
[2026-04-09 14:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:24:03] [INFO] Checking activity reminders 
[2026-04-09 14:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1117","person_id":"7014"}
[2026-04-09 14:24:25] [INFO] Checking activity reminders 
[2026-04-09 14:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:24:32] [INFO] Checking activity reminders 
[2026-04-09 14:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:24:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:24:49] [INFO] Checking activity reminders 
[2026-04-09 14:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:25:02] [INFO] Checking activity reminders 
[2026-04-09 14:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:25:03] [INFO] Checking activity reminders 
[2026-04-09 14:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:25:32] [INFO] Checking activity reminders 
[2026-04-09 14:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:25:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"628","deal_id":"local_69b9195524bd16.39037949","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:25:34","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"628","is_new_deal":false}
[2026-04-09 14:25:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:34] [INFO] getContactPrimaryPhone called {"contact_id":"628"}
[2026-04-09 14:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:34] [INFO] getContactPrimaryPhone result {"contact_id":"628","person_found":true,"primary_phone":"9135175912"}
[2026-04-09 14:25:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135175912"}
[2026-04-09 14:25:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135175912","contact_id":"628","deal_id":"local_69b9195524bd16.39037949","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:25:34"}
[2026-04-09 14:25:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b9195524bd16.39037949","contact_id":"628","existing_deal_found":true,"existing_contact_id":"628","existing_title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:25:34"}
[2026-04-09 14:25:34] [INFO] DealController.save validated payments {"deal_id":"local_69b9195524bd16.39037949","contact_id":"628","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 14:25:34] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"628","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:25:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b9195524bd16.39037949","contact_didar_id":"628","title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135175912","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرز اکبری","existing_deal":"YES","existing_deal_id":"local_69b9195524bd16.39037949","existing_deal_status":"Pending","server_time":"2026-04-09 14:25:34","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b9195524bd16.39037949","contact_id":"628","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-09 14:25:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"628","deal_id":"local_69b9195524bd16.39037949","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:25:44","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"628","is_new_deal":false}
[2026-04-09 14:25:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:25:44] [INFO] getContactPrimaryPhone called {"contact_id":"628"}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [INFO] getContactPrimaryPhone result {"contact_id":"628","person_found":true,"primary_phone":"9135175912"}
[2026-04-09 14:25:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135175912"}
[2026-04-09 14:25:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135175912","contact_id":"628","deal_id":"local_69b9195524bd16.39037949","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:25:44"}
[2026-04-09 14:25:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b9195524bd16.39037949","contact_id":"628","existing_deal_found":true,"existing_contact_id":"628","existing_title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:25:44"}
[2026-04-09 14:25:44] [INFO] DealController.save validated payments {"deal_id":"local_69b9195524bd16.39037949","contact_id":"628","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 14:25:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"628","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:25:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b9195524bd16.39037949","contact_didar_id":"628","title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135175912","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فرامرز اکبری","existing_deal":"YES","existing_deal_id":"local_69b9195524bd16.39037949","existing_deal_status":"Pending","server_time":"2026-04-09 14:25:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [INFO] Deal success processed {"contact_id":"628","person_name":"فرامرز اکبری","products_count":1}
[2026-04-09 14:25:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b9195524bd16.39037949","contact_id":"628","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135175912 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-09 14:25:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:44] [INFO] Updating virtual stage {"contact_id":"628","stage_name":"with_purchase","force":true}
[2026-04-09 14:25:44] [INFO] Virtual stage successfully saved {"contact_id":"628","stage_name":"with_purchase"}
[2026-04-09 14:25:44] [INFO] Moved contact out of kariz after successful deal {"contact_id":"628","deal_id":"local_69b9195524bd16.39037949","target_stage":"with_purchase"}
[2026-04-09 14:25:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"628","person_id":"16029"}
[2026-04-09 14:25:54] [INFO] Checking activity reminders 
[2026-04-09 14:25:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:25:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:02] [INFO] Checking activity reminders 
[2026-04-09 14:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:26] [INFO] Checking activity reminders 
[2026-04-09 14:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:26:36] [INFO] Checking activity reminders 
[2026-04-09 14:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:36] [INFO] Checking activity reminders 
[2026-04-09 14:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:38] [INFO] Checking activity reminders 
[2026-04-09 14:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:40] [INFO] Checking activity reminders 
[2026-04-09 14:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:26:57] [INFO] Checking activity reminders 
[2026-04-09 14:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:27:10] [INFO] Checking activity reminders 
[2026-04-09 14:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:27:20] [INFO] Checking activity reminders 
[2026-04-09 14:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:27:40] [INFO] Checking activity reminders 
[2026-04-09 14:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:27:52] [INFO] Checking activity reminders 
[2026-04-09 14:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:28:10] [INFO] Checking activity reminders 
[2026-04-09 14:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:28:32] [INFO] Checking activity reminders 
[2026-04-09 14:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:28:40] [INFO] Checking activity reminders 
[2026-04-09 14:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:02] [INFO] Checking activity reminders 
[2026-04-09 14:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:11] [INFO] Checking activity reminders 
[2026-04-09 14:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:20] [INFO] Checking activity reminders 
[2026-04-09 14:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:27] [INFO] Checking activity reminders 
[2026-04-09 14:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:41] [INFO] Checking activity reminders 
[2026-04-09 14:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:43] [INFO] Checking activity reminders 
[2026-04-09 14:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:29:52] [INFO] Checking activity reminders 
[2026-04-09 14:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:12] [INFO] Checking activity reminders 
[2026-04-09 14:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:17] [INFO] Checking activity reminders 
[2026-04-09 14:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:24] [INFO] Checking activity reminders 
[2026-04-09 14:30:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:33] [INFO] Checking activity reminders 
[2026-04-09 14:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:42] [INFO] Checking activity reminders 
[2026-04-09 14:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:47] [INFO] Checking activity reminders 
[2026-04-09 14:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:30:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"647","deal_id":"local_69b73475739fc5.85636200","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:30:54","session_id":"ekupfho0lk04v02r7or38mi1hf"}
[2026-04-09 14:30:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:30:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"647","is_new_deal":false}
[2026-04-09 14:30:54] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:30:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:30:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:30:54] [INFO] getContactPrimaryPhone called {"contact_id":"647"}
[2026-04-09 14:30:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:30:54] [INFO] getContactPrimaryPhone result {"contact_id":"647","person_found":true,"primary_phone":"9114234003"}
[2026-04-09 14:30:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9114234003"}
[2026-04-09 14:30:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9114234003","contact_id":"647","deal_id":"local_69b73475739fc5.85636200","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-09 14:30:54"}
[2026-04-09 14:30:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b73475739fc5.85636200","contact_id":"647","existing_deal_found":true,"existing_contact_id":"647","existing_title":"معامله دوم 9114234003 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-09 14:30:54"}
[2026-04-09 14:30:54] [INFO] DealController.save validated payments {"deal_id":"local_69b73475739fc5.85636200","contact_id":"647","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 14:30:54] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"647","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-09 14:30:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b73475739fc5.85636200","contact_didar_id":"647","title":"معامله دوم 9114234003 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9114234003","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"رضا قربانی","existing_deal":"YES","existing_deal_id":"local_69b73475739fc5.85636200","existing_deal_status":"Pending","server_time":"2026-04-09 14:30:54","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-09 14:30:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:30:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b73475739fc5.85636200","contact_id":"647","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9114234003 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-09 14:30:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:30:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:31:12] [INFO] Checking activity reminders 
[2026-04-09 14:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:31:17] [INFO] Checking activity reminders 
[2026-04-09 14:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:31:42] [INFO] Checking activity reminders 
[2026-04-09 14:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:31:47] [INFO] Checking activity reminders 
[2026-04-09 14:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:32:12] [INFO] Checking activity reminders 
[2026-04-09 14:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:32:17] [INFO] Checking activity reminders 
[2026-04-09 14:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:32:42] [INFO] Checking activity reminders 
[2026-04-09 14:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:32:47] [INFO] Checking activity reminders 
[2026-04-09 14:32:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:32:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:33:13] [INFO] Checking activity reminders 
[2026-04-09 14:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:33:18] [INFO] Checking activity reminders 
[2026-04-09 14:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:33:43] [INFO] Checking activity reminders 
[2026-04-09 14:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:33:48] [INFO] Checking activity reminders 
[2026-04-09 14:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:34:13] [INFO] Checking activity reminders 
[2026-04-09 14:34:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:34:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:34:18] [INFO] Checking activity reminders 
[2026-04-09 14:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:34:43] [INFO] Checking activity reminders 
[2026-04-09 14:34:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:34:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:34:48] [INFO] Checking activity reminders 
[2026-04-09 14:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:35:13] [INFO] Checking activity reminders 
[2026-04-09 14:35:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:35:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:35:18] [INFO] Checking activity reminders 
[2026-04-09 14:35:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:35:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:35:44] [INFO] Checking activity reminders 
[2026-04-09 14:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:35:50] [INFO] Checking activity reminders 
[2026-04-09 14:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:35:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:36:14] [INFO] Checking activity reminders 
[2026-04-09 14:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:36:24] [INFO] Checking activity reminders 
[2026-04-09 14:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:36:44] [INFO] Checking activity reminders 
[2026-04-09 14:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:36:53] [INFO] Checking activity reminders 
[2026-04-09 14:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:36:59] [INFO] Checking activity reminders 
[2026-04-09 14:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:37:05] [INFO] Checking activity reminders 
[2026-04-09 14:37:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:37:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:37:14] [INFO] Checking activity reminders 
[2026-04-09 14:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:37:24] [INFO] Checking activity reminders 
[2026-04-09 14:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:37:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1584","deal_id":"local_69b72fa0d9ec89.35266337","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:37:35","session_id":"ekupfho0lk04v02r7or38mi1hf"}
[2026-04-09 14:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:37:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1584","is_new_deal":false}
[2026-04-09 14:37:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:37:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:37:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:37:35] [INFO] getContactPrimaryPhone called {"contact_id":"1584"}
[2026-04-09 14:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:37:35] [INFO] getContactPrimaryPhone result {"contact_id":"1584","person_found":true,"primary_phone":"9102429707"}
[2026-04-09 14:37:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102429707"}
[2026-04-09 14:37:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102429707","contact_id":"1584","deal_id":"local_69b72fa0d9ec89.35266337","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-09 14:37:35"}
[2026-04-09 14:37:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72fa0d9ec89.35266337","contact_id":"1584","existing_deal_found":true,"existing_contact_id":"1584","existing_title":"معامله سوم 9102429707 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-09 14:37:35"}
[2026-04-09 14:37:35] [INFO] DealController.save validated payments {"deal_id":"local_69b72fa0d9ec89.35266337","contact_id":"1584","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 14:37:35] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"1584","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-09 14:37:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72fa0d9ec89.35266337","contact_didar_id":"1584","title":"معامله سوم 9102429707 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9102429707","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"رحیم آقا زاده","existing_deal":"YES","existing_deal_id":"local_69b72fa0d9ec89.35266337","existing_deal_status":"Pending","server_time":"2026-04-09 14:37:35","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-09 14:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:37:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72fa0d9ec89.35266337","contact_id":"1584","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9102429707 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-09 14:37:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:37:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:37:45] [INFO] Checking activity reminders 
[2026-04-09 14:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:38:08] [INFO] Checking activity reminders 
[2026-04-09 14:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:38:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2744","person_id":"13748"}
[2026-04-09 14:38:15] [INFO] Checking activity reminders 
[2026-04-09 14:38:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:38:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:38:45] [INFO] Checking activity reminders 
[2026-04-09 14:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:39:13] [INFO] Checking activity reminders 
[2026-04-09 14:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:39:15] [INFO] Checking activity reminders 
[2026-04-09 14:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:39:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-09 14:39:43] [INFO] Checking activity reminders 
[2026-04-09 14:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:39:45] [INFO] Checking activity reminders 
[2026-04-09 14:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:39:51] [INFO] Lead update received {"contact_id":"702","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:39:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-09 14:39:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-09 14:39:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-09 14:39:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"702"}
[2026-04-09 14:39:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-09 14:40:08] [INFO] Checking activity reminders 
[2026-04-09 14:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:40:16] [INFO] Checking activity reminders 
[2026-04-09 14:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:40:16] [INFO] Checking activity reminders 
[2026-04-09 14:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:40:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2756","person_id":"3920"}
[2026-04-09 14:40:41] [INFO] Checking activity reminders 
[2026-04-09 14:40:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:40:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:40:46] [INFO] Checking activity reminders 
[2026-04-09 14:40:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:40:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:40:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-09 14:41:13] [INFO] Checking activity reminders 
[2026-04-09 14:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:41:16] [INFO] Checking activity reminders 
[2026-04-09 14:41:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:41:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:41:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1424","person_id":"4361"}
[2026-04-09 14:41:30] [INFO] Lead update received {"contact_id":"1424","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1424","person_id":"4361"}
[2026-04-09 14:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1424","person_id":"4361"}
[2026-04-09 14:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1424","person_id":"4361"}
[2026-04-09 14:41:30] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1424"}
[2026-04-09 14:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1424","person_id":"4361"}
[2026-04-09 14:41:46] [INFO] Checking activity reminders 
[2026-04-09 14:41:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:41:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:42:16] [INFO] Checking activity reminders 
[2026-04-09 14:42:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:42:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:42:22] [INFO] Checking activity reminders 
[2026-04-09 14:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:42:46] [INFO] Checking activity reminders 
[2026-04-09 14:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:43:16] [INFO] Checking activity reminders 
[2026-04-09 14:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:43:42] [INFO] Checking activity reminders 
[2026-04-09 14:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:43:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:43:46] [INFO] Checking activity reminders 
[2026-04-09 14:43:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:43:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:43:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16029","deal_id":"local_69d692c93593d0.92218263","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:43:49","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:43:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16029","is_new_deal":false}
[2026-04-09 14:43:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:43:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:43:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:43:49] [INFO] getContactPrimaryPhone called {"contact_id":"16029"}
[2026-04-09 14:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:43:49] [INFO] getContactPrimaryPhone result {"contact_id":"16029","person_found":true,"primary_phone":"9374518635"}
[2026-04-09 14:43:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9374518635"}
[2026-04-09 14:43:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9374518635","contact_id":"16029","deal_id":"local_69d692c93593d0.92218263","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:43:49"}
[2026-04-09 14:43:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","existing_deal_found":true,"existing_contact_id":"16029","existing_title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:43:49"}
[2026-04-09 14:43:49] [INFO] DealController.save validated payments {"deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 14:43:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16029","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:43:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d692c93593d0.92218263","contact_didar_id":"16029","title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9374518635","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ایمان میر طبار","existing_deal":"YES","existing_deal_id":"local_69d692c93593d0.92218263","existing_deal_status":"Pending","server_time":"2026-04-09 14:43:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:43:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 14:43:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:43:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:44:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:44:12] [INFO] Checking activity reminders 
[2026-04-09 14:44:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:44:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:44:16] [INFO] Lead update received {"contact_id":"21527","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:44:16] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21527"}
[2026-04-09 14:44:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21527","person_id":"3940"}
[2026-04-09 14:44:16] [INFO] Checking activity reminders 
[2026-04-09 14:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:44:47] [INFO] Checking activity reminders 
[2026-04-09 14:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:44:57] [INFO] Checking activity reminders 
[2026-04-09 14:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:45:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-09 14:45:17] [INFO] Checking activity reminders 
[2026-04-09 14:45:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:45:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:45:27] [INFO] Checking activity reminders 
[2026-04-09 14:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:45:28] [INFO] Lead update received {"contact_id":"11242","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-09 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-09 14:45:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-09 14:45:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11242"}
[2026-04-09 14:45:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-09 14:45:37] [INFO] Checking activity reminders 
[2026-04-09 14:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-09 14:45:47] [INFO] Checking activity reminders 
[2026-04-09 14:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:46:08] [INFO] Checking activity reminders 
[2026-04-09 14:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:46:17] [INFO] Checking activity reminders 
[2026-04-09 14:46:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:46:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:46:18] [INFO] Lead update received {"contact_id":"9202","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-09 14:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-09 14:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-09 14:46:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9202"}
[2026-04-09 14:46:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9202","person_id":"3980"}
[2026-04-09 14:46:30] [INFO] Checking activity reminders 
[2026-04-09 14:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:46:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:46:47] [INFO] Checking activity reminders 
[2026-04-09 14:46:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:46:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:00] [INFO] Checking activity reminders 
[2026-04-09 14:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:09] [INFO] Checking activity reminders 
[2026-04-09 14:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:10] [INFO] Checking activity reminders 
[2026-04-09 14:47:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:12] [INFO] Checking activity reminders 
[2026-04-09 14:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:13] [INFO] Lead update received {"contact_id":"1584","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:47:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1584"}
[2026-04-09 14:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-09 14:47:30] [INFO] Checking activity reminders 
[2026-04-09 14:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:44] [INFO] Checking activity reminders 
[2026-04-09 14:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:47:54] [INFO] Checking activity reminders 
[2026-04-09 14:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:05] [INFO] Checking activity reminders 
[2026-04-09 14:48:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:07] [INFO] Checking activity reminders 
[2026-04-09 14:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:09] [INFO] Checking activity reminders 
[2026-04-09 14:48:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:18] [INFO] Activity save request {"post_data":{"contact_id":"16029","deal_id":"local_69d692c93593d0.92218263","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ویلا و ملک شخصی خریده داره میسازه \/ تمام سرمایه و نقدینگی داره میره اون سمت \r\nسرمایه مازاد  برای 405 نداره \r\nخیلی دوست داره وارد بشه\r\nبهش گفتم 200-300 برای نوسان گیری بذار به درامدت کمک میکنه \r\nدر اولین فرصت اکی میکنه ","activity_duration":"12","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 14:48:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16029","note_was_empty":true}
[2026-04-09 14:48:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"16029","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:18] [INFO] Updating virtual stage {"contact_id":"16029","stage_name":"deal_registered","force":false}
[2026-04-09 14:48:18] [INFO] Virtual stage successfully saved {"contact_id":"16029","stage_name":"deal_registered"}
[2026-04-09 14:48:18] [INFO] Virtual stage updated after activity save {"contact_id":"16029"}
[2026-04-09 14:48:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d692c93593d0.92218263","stage":"تماس پیگیری","status_change":null}
[2026-04-09 14:48:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d78afa772dc2.95830195","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d78afa772dc2.95830195"}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:18] [INFO] Updating virtual stage {"contact_id":"16029","stage_name":"deal_registered","force":false}
[2026-04-09 14:48:18] [INFO] Virtual stage successfully saved {"contact_id":"16029","stage_name":"deal_registered"}
[2026-04-09 14:48:18] [INFO] Virtual stage updated after activity save {"contact_id":"16029"}
[2026-04-09 14:48:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-09 14:48:27] [INFO] Checking activity reminders 
[2026-04-09 14:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:31] [INFO] Checking activity reminders 
[2026-04-09 14:48:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:37] [INFO] Checking activity reminders 
[2026-04-09 14:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:43] [INFO] Checking activity reminders 
[2026-04-09 14:48:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:44] [INFO] Checking activity reminders 
[2026-04-09 14:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:46] [INFO] Checking activity reminders 
[2026-04-09 14:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:48:48] [INFO] Checking activity reminders 
[2026-04-09 14:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:49:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:49:07] [INFO] Checking activity reminders 
[2026-04-09 14:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:49:17] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9377696388","09377696388"]}
[2026-04-09 14:49:17] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9377696388","09377696388"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-09 14:49:17] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9377696388","full_name":"یکتا حیدری"}
[2026-04-09 14:49:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-09 14:49:17] [INFO] Notification created {"notification_id":"641","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-09 14:49:19] [INFO] Checking activity reminders 
[2026-04-09 14:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:49:49] [INFO] Checking activity reminders 
[2026-04-09 14:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:49:55] [INFO] Checking activity reminders 
[2026-04-09 14:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:49:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2057","person_id":"7038"}
[2026-04-09 14:50:19] [INFO] Checking activity reminders 
[2026-04-09 14:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:50:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:50:22","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","is_new_deal":false}
[2026-04-09 14:50:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:22] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d76804772657.01504104"}
[2026-04-09 14:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:22] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d76804772657.01504104","person_found":true,"primary_phone":"9153617613"}
[2026-04-09 14:50:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153617613"}
[2026-04-09 14:50:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153617613","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:50:22"}
[2026-04-09 14:50:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","existing_deal_found":true,"existing_contact_id":"local_69d76804772657.01504104","existing_title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:50:22"}
[2026-04-09 14:50:22] [INFO] DealController.save validated payments {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-09 14:50:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d76804772657.01504104","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:50:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d7680477ed9","contact_didar_id":"local_69d76804772657.01504104","title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9153617613","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم اسلامی","existing_deal":"YES","existing_deal_id":"local_69d7680477ed9","existing_deal_status":"Pending","server_time":"2026-04-09 14:50:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-09 14:50:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:50:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:50:31","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d76804772657.01504104","is_new_deal":false}
[2026-04-09 14:50:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 14:50:31] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d76804772657.01504104"}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d76804772657.01504104","person_found":true,"primary_phone":"9153617613"}
[2026-04-09 14:50:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153617613"}
[2026-04-09 14:50:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153617613","contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:50:31"}
[2026-04-09 14:50:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","existing_deal_found":true,"existing_contact_id":"local_69d76804772657.01504104","existing_title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:50:31"}
[2026-04-09 14:50:31] [INFO] DealController.save validated payments {"deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-09 14:50:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d76804772657.01504104","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:50:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d7680477ed9","contact_didar_id":"local_69d76804772657.01504104","title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9153617613","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم اسلامی","existing_deal":"YES","existing_deal_id":"local_69d7680477ed9","existing_deal_status":"Pending","server_time":"2026-04-09 14:50:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [INFO] Deal success processed {"contact_id":"local_69d76804772657.01504104","person_name":"خانم اسلامی","products_count":1}
[2026-04-09 14:50:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d7680477ed9","contact_id":"local_69d76804772657.01504104","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9153617613 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-09 14:50:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:31] [INFO] Updating virtual stage {"contact_id":"local_69d76804772657.01504104","stage_name":"with_purchase","force":true}
[2026-04-09 14:50:31] [INFO] Virtual stage successfully saved {"contact_id":"local_69d76804772657.01504104","stage_name":"with_purchase"}
[2026-04-09 14:50:31] [INFO] Moved contact out of kariz after successful deal {"contact_id":"local_69d76804772657.01504104","deal_id":"local_69d7680477ed9","target_stage":"with_purchase"}
[2026-04-09 14:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:50:37] [INFO] Checking activity reminders 
[2026-04-09 14:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:50:39] [INFO] Checking activity reminders 
[2026-04-09 14:50:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:50:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:50:40] [INFO] Checking activity reminders 
[2026-04-09 14:50:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:50:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:50:41] [INFO] Checking activity reminders 
[2026-04-09 14:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:50:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 14:51:06] [INFO] Checking activity reminders 
[2026-04-09 14:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:51:12] [INFO] Checking activity reminders 
[2026-04-09 14:51:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:51:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:51:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-09 14:51:42] [INFO] Checking activity reminders 
[2026-04-09 14:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:52:07] [INFO] Checking activity reminders 
[2026-04-09 14:52:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:52:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:52:12] [INFO] Checking activity reminders 
[2026-04-09 14:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:52:43] [INFO] Checking activity reminders 
[2026-04-09 14:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:01] [INFO] Checking activity reminders 
[2026-04-09 14:53:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:03] [INFO] Checking activity reminders 
[2026-04-09 14:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:07] [INFO] Checking activity reminders 
[2026-04-09 14:53:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:22] [INFO] Checking activity reminders 
[2026-04-09 14:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-09 14:53:37] [INFO] Checking activity reminders 
[2026-04-09 14:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:41] [INFO] Checking activity reminders 
[2026-04-09 14:53:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:43] [INFO] Checking activity reminders 
[2026-04-09 14:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:53:44] [INFO] Lead update received {"contact_id":"803","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-09 14:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-09 14:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-09 14:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-09 14:53:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"803"}
[2026-04-09 14:53:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"803","person_id":"9560"}
[2026-04-09 14:54:13] [INFO] Checking activity reminders 
[2026-04-09 14:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:54:43] [INFO] Checking activity reminders 
[2026-04-09 14:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:55:13] [INFO] Checking activity reminders 
[2026-04-09 14:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:55:44] [INFO] Checking activity reminders 
[2026-04-09 14:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:56:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:56:11","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2128","is_new_deal":false}
[2026-04-09 14:56:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 14:56:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:56:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 14:56:11] [INFO] getContactPrimaryPhone called {"contact_id":"2128"}
[2026-04-09 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:11] [INFO] getContactPrimaryPhone result {"contact_id":"2128","person_found":true,"primary_phone":"9223847214"}
[2026-04-09 14:56:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9223847214"}
[2026-04-09 14:56:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9223847214","contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:56:11"}
[2026-04-09 14:56:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","existing_deal_found":true,"existing_contact_id":"2128","existing_title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:56:11"}
[2026-04-09 14:56:11] [INFO] DealController.save validated payments {"deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 14:56:11] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2128","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:56:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68ffe958646.99867336","contact_didar_id":"2128","title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9223847214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"افروزی","existing_deal":"YES","existing_deal_id":"local_69d68ffe958646.99867336","existing_deal_status":"Pending","server_time":"2026-04-09 14:56:11","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 14:56:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:56:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:14] [INFO] Checking activity reminders 
[2026-04-09 14:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:56:44] [INFO] Checking activity reminders 
[2026-04-09 14:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:56:47] [INFO] Activity save request {"post_data":{"contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک داد ایران نیستم \r\nترکیه پیش دخترشه \r\nتماس میگیرم ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 14:56:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2128","note_was_empty":true}
[2026-04-09 14:56:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"2128","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:47] [INFO] Updating virtual stage {"contact_id":"2128","stage_name":"deal_registered","force":false}
[2026-04-09 14:56:47] [INFO] Virtual stage successfully saved {"contact_id":"2128","stage_name":"deal_registered"}
[2026-04-09 14:56:47] [INFO] Virtual stage updated after activity save {"contact_id":"2128"}
[2026-04-09 14:56:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68ffe958646.99867336","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 14:56:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d78cf7be1924.14568441","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69d78cf7be1924.14568441"}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:56:47] [INFO] Updating virtual stage {"contact_id":"2128","stage_name":"deal_registered","force":false}
[2026-04-09 14:56:47] [INFO] Virtual stage successfully saved {"contact_id":"2128","stage_name":"deal_registered"}
[2026-04-09 14:56:47] [INFO] Virtual stage updated after activity save {"contact_id":"2128"}
[2026-04-09 14:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-09 14:57:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-09 14:57:13] [INFO] Checking activity reminders 
[2026-04-09 14:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:57:14] [INFO] Checking activity reminders 
[2026-04-09 14:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d76804772657.01504104","person_id":"22093"}
[2026-04-09 14:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:43] [INFO] Checking activity reminders 
[2026-04-09 14:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:57:44] [INFO] Checking activity reminders 
[2026-04-09 14:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:57:54] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_69d678255b4477.34900458","deal_id":"local_69d6782561737","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 14:57:54","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 14:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:54] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_69d678255b4477.34900458","is_new_deal":false}
[2026-04-09 14:57:54] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-09 14:57:54] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-09 14:57:54] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-09 14:57:54] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d678255b4477.34900458"}
[2026-04-09 14:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:54] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d678255b4477.34900458","person_found":true,"primary_phone":"9900332887"}
[2026-04-09 14:57:54] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9900332887"}
[2026-04-09 14:57:54] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9900332887","contact_id":"local_69d678255b4477.34900458","deal_id":"local_69d6782561737","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:57:54"}
[2026-04-09 14:57:54] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6782561737","contact_id":"local_69d678255b4477.34900458","existing_deal_found":true,"existing_contact_id":"local_69d678255b4477.34900458","existing_title":"معامله اول 9900332887","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 14:57:54"}
[2026-04-09 14:57:54] [INFO] DealController.save validated payments {"deal_id":"local_69d6782561737","contact_id":"local_69d678255b4477.34900458","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-09 14:57:54] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d678255b4477.34900458","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 14:57:54] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6782561737","contact_didar_id":"local_69d678255b4477.34900458","title":"معامله اول 9900332887 | هوش خودرو","base_title_used":"معامله اول 9900332887","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7900000,"payment_amount":0,"payments_present":false,"requested_services":["هوش خودرو"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69d6782561737","existing_deal_status":"Pending","server_time":"2026-04-09 14:57:54","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 14:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:54] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6782561737","contact_id":"local_69d678255b4477.34900458","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9900332887 | هوش خودرو","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7900000,"payment_amount":0,"server_time":"2026-04-09 14:57:54","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 14:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:57:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:58:09] [INFO] Checking activity reminders 
[2026-04-09 14:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:58:16] [INFO] Checking activity reminders 
[2026-04-09 14:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:58:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"974","person_id":"6980"}
[2026-04-09 14:58:39] [INFO] Checking activity reminders 
[2026-04-09 14:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:58:47] [INFO] Checking activity reminders 
[2026-04-09 14:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:59:09] [INFO] Checking activity reminders 
[2026-04-09 14:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:59:17] [INFO] Checking activity reminders 
[2026-04-09 14:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:59:26] [INFO] Activity save request {"post_data":{"contact_id":"local_69d678255b4477.34900458","deal_id":"local_69d6782561737","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"2 ماهه اشنا \/ اپارات \r\nبوشهر \r\nکارگاه تعمیرات سیستم کولر و سرمایشی داره \r\nنیرو داره \r\n28 ساله \r\nعلاقه به خودرو \r\nقبلا خرید و فروش موبایل \r\nپرزنت هوش \r\nهیچ اپلیکیشنی نداره براش سرفصل بفرستم \r\nخودش اطلاع میده ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 14:59:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d678255b4477.34900458","note_was_empty":true}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:26] [INFO] Updating virtual stage {"contact_id":"local_69d678255b4477.34900458","stage_name":"new","force":false}
[2026-04-09 14:59:26] [INFO] Virtual stage successfully saved {"contact_id":"local_69d678255b4477.34900458","stage_name":"new"}
[2026-04-09 14:59:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d678255b4477.34900458"}
[2026-04-09 14:59:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6782561737","stage":"تماس پیگیری","status_change":null}
[2026-04-09 14:59:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d78d9605c0a3.70743222","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69d78d9605c0a3.70743222"}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:26] [INFO] Updating virtual stage {"contact_id":"local_69d678255b4477.34900458","stage_name":"deal_registered","force":false}
[2026-04-09 14:59:26] [INFO] Virtual stage successfully saved {"contact_id":"local_69d678255b4477.34900458","stage_name":"deal_registered"}
[2026-04-09 14:59:26] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d678255b4477.34900458"}
[2026-04-09 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d678255b4477.34900458","person_id":"22050"}
[2026-04-09 14:59:39] [INFO] Checking activity reminders 
[2026-04-09 14:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:59:40] [INFO] Checking activity reminders 
[2026-04-09 14:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 14:59:42] [INFO] Checking activity reminders 
[2026-04-09 14:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 14:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:08] [INFO] Checking activity reminders 
[2026-04-09 15:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:09] [INFO] Checking activity reminders 
[2026-04-09 15:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:10] [INFO] Checking activity reminders 
[2026-04-09 15:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:12] [INFO] Checking activity reminders 
[2026-04-09 15:00:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"854","deal_id":"local_69d69059b04ac9.44052025","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 15:00:23","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 15:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:00:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"854","is_new_deal":false}
[2026-04-09 15:00:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 15:00:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:00:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:00:23] [INFO] getContactPrimaryPhone called {"contact_id":"854"}
[2026-04-09 15:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:00:23] [INFO] getContactPrimaryPhone result {"contact_id":"854","person_found":true,"primary_phone":"9330204339"}
[2026-04-09 15:00:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330204339"}
[2026-04-09 15:00:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330204339","contact_id":"854","deal_id":"local_69d69059b04ac9.44052025","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:00:23"}
[2026-04-09 15:00:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d69059b04ac9.44052025","contact_id":"854","existing_deal_found":true,"existing_contact_id":"854","existing_title":"معامله سوم 9330204339 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:00:23"}
[2026-04-09 15:00:23] [INFO] DealController.save validated payments {"deal_id":"local_69d69059b04ac9.44052025","contact_id":"854","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 15:00:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"854","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 15:00:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d69059b04ac9.44052025","contact_didar_id":"854","title":"معامله سوم 9330204339 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9330204339","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بهزاد پیرپنبه","existing_deal":"YES","existing_deal_id":"local_69d69059b04ac9.44052025","existing_deal_status":"Pending","server_time":"2026-04-09 15:00:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 15:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:00:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d69059b04ac9.44052025","contact_id":"854","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9330204339 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 15:00:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 15:00:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:00:40] [INFO] Checking activity reminders 
[2026-04-09 15:00:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:00:42] [INFO] Checking activity reminders 
[2026-04-09 15:00:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:00:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:01:10] [INFO] Checking activity reminders 
[2026-04-09 15:01:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:01:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:01:12] [INFO] Checking activity reminders 
[2026-04-09 15:01:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:01:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:01:40] [INFO] Checking activity reminders 
[2026-04-09 15:01:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:01:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:01:42] [INFO] Checking activity reminders 
[2026-04-09 15:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:02:10] [INFO] Checking activity reminders 
[2026-04-09 15:02:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:02:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:02:12] [INFO] Checking activity reminders 
[2026-04-09 15:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:02:31] [INFO] Activity save request {"post_data":{"contact_id":"854","deal_id":"local_69d69059b04ac9.44052025","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیاامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 15:02:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"854","note_was_empty":true}
[2026-04-09 15:02:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"854","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:31] [INFO] Updating virtual stage {"contact_id":"854","stage_name":"deal_registered","force":false}
[2026-04-09 15:02:31] [INFO] Virtual stage successfully saved {"contact_id":"854","stage_name":"deal_registered"}
[2026-04-09 15:02:31] [INFO] Virtual stage updated after activity save {"contact_id":"854"}
[2026-04-09 15:02:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69059b04ac9.44052025","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 15:02:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d78e4fa56168.44195908","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69d78e4fa56168.44195908"}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:31] [INFO] Updating virtual stage {"contact_id":"854","stage_name":"deal_registered","force":false}
[2026-04-09 15:02:31] [INFO] Virtual stage successfully saved {"contact_id":"854","stage_name":"deal_registered"}
[2026-04-09 15:02:31] [INFO] Virtual stage updated after activity save {"contact_id":"854"}
[2026-04-09 15:02:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"854","person_id":"1397"}
[2026-04-09 15:02:41] [INFO] Checking activity reminders 
[2026-04-09 15:02:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:02:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:02:44] [INFO] Checking activity reminders 
[2026-04-09 15:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:03:11] [INFO] Checking activity reminders 
[2026-04-09 15:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:03:15] [INFO] Checking activity reminders 
[2026-04-09 15:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:03:41] [INFO] Checking activity reminders 
[2026-04-09 15:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:03:45] [INFO] Checking activity reminders 
[2026-04-09 15:03:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:03:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:04:11] [INFO] Checking activity reminders 
[2026-04-09 15:04:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:04:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:04:15] [INFO] Checking activity reminders 
[2026-04-09 15:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:04:41] [INFO] Checking activity reminders 
[2026-04-09 15:04:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:04:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:04:45] [INFO] Checking activity reminders 
[2026-04-09 15:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:05:11] [INFO] Checking activity reminders 
[2026-04-09 15:05:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:05:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:05:16] [INFO] Checking activity reminders 
[2026-04-09 15:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:05:41] [INFO] Checking activity reminders 
[2026-04-09 15:05:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:05:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:05:46] [INFO] Checking activity reminders 
[2026-04-09 15:05:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:05:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:06:11] [INFO] Checking activity reminders 
[2026-04-09 15:06:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:06:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:06:17] [INFO] Checking activity reminders 
[2026-04-09 15:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:06:41] [INFO] Checking activity reminders 
[2026-04-09 15:06:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:06:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:06:47] [INFO] Checking activity reminders 
[2026-04-09 15:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:07:11] [INFO] Checking activity reminders 
[2026-04-09 15:07:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:07:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:07:17] [INFO] Checking activity reminders 
[2026-04-09 15:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:07:41] [INFO] Checking activity reminders 
[2026-04-09 15:07:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:07:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:07:47] [INFO] Checking activity reminders 
[2026-04-09 15:07:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:07:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:08:12] [INFO] Checking activity reminders 
[2026-04-09 15:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:08:17] [INFO] Checking activity reminders 
[2026-04-09 15:08:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:08:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:08:42] [INFO] Checking activity reminders 
[2026-04-09 15:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:08:47] [INFO] Checking activity reminders 
[2026-04-09 15:08:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:08:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:09:12] [INFO] Checking activity reminders 
[2026-04-09 15:09:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:09:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:09:17] [INFO] Checking activity reminders 
[2026-04-09 15:09:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:09:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:09:42] [INFO] Checking activity reminders 
[2026-04-09 15:09:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:09:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:09:47] [INFO] Checking activity reminders 
[2026-04-09 15:09:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:09:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:10:17] [INFO] Checking activity reminders 
[2026-04-09 15:10:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:10:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:10:48] [INFO] Checking activity reminders 
[2026-04-09 15:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:11:18] [INFO] Checking activity reminders 
[2026-04-09 15:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:11:48] [INFO] Checking activity reminders 
[2026-04-09 15:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:12:18] [INFO] Checking activity reminders 
[2026-04-09 15:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:12:48] [INFO] Checking activity reminders 
[2026-04-09 15:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:13:18] [INFO] Checking activity reminders 
[2026-04-09 15:13:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:13:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:13:48] [INFO] Checking activity reminders 
[2026-04-09 15:13:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:13:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:14:18] [INFO] Checking activity reminders 
[2026-04-09 15:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:14:49] [INFO] Checking activity reminders 
[2026-04-09 15:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:15:19] [INFO] Checking activity reminders 
[2026-04-09 15:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:15:49] [INFO] Checking activity reminders 
[2026-04-09 15:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:37:42] [INFO] Checking activity reminders 
[2026-04-09 15:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:37:56] [INFO] Checking activity reminders 
[2026-04-09 15:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:37:59] [INFO] Checking activity reminders 
[2026-04-09 15:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:38:00] [INFO] Checking activity reminders 
[2026-04-09 15:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:38:18] [INFO] Checking activity reminders 
[2026-04-09 15:38:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:38:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:38:21] [INFO] Checking activity reminders 
[2026-04-09 15:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:38:35] [INFO] Checking activity reminders 
[2026-04-09 15:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:38:42] [INFO] Checking activity reminders 
[2026-04-09 15:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:12] [INFO] Checking activity reminders 
[2026-04-09 15:39:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:39:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:19] [INFO] Checking activity reminders 
[2026-04-09 15:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:21] [INFO] Checking activity reminders 
[2026-04-09 15:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:24] [INFO] Checking activity reminders 
[2026-04-09 15:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:54] [INFO] Checking activity reminders 
[2026-04-09 15:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:39:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21300","deal_id":"local_69d69231864421.76342045","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 15:39:56","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 15:39:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 15:39:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21300","is_new_deal":false}
[2026-04-09 15:39:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:39:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:39:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:39:56] [INFO] getContactPrimaryPhone called {"contact_id":"21300"}
[2026-04-09 15:39:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 15:39:56] [INFO] getContactPrimaryPhone result {"contact_id":"21300","person_found":true,"primary_phone":"9366714636"}
[2026-04-09 15:39:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9366714636"}
[2026-04-09 15:39:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9366714636","contact_id":"21300","deal_id":"local_69d69231864421.76342045","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:39:56"}
[2026-04-09 15:39:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d69231864421.76342045","contact_id":"21300","existing_deal_found":true,"existing_contact_id":"21300","existing_title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:39:56"}
[2026-04-09 15:39:56] [INFO] DealController.save validated payments {"deal_id":"local_69d69231864421.76342045","contact_id":"21300","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 15:39:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21300","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 15:39:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d69231864421.76342045","contact_didar_id":"21300","title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9366714636","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سجاد  وجدانی","existing_deal":"YES","existing_deal_id":"local_69d69231864421.76342045","existing_deal_status":"Pending","server_time":"2026-04-09 15:39:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 15:39:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 15:39:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d69231864421.76342045","contact_id":"21300","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9366714636 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-09 15:39:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 15:39:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21300","person_id":"10110"}
[2026-04-09 15:40:19] [INFO] Checking activity reminders 
[2026-04-09 15:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:40:50] [INFO] Checking activity reminders 
[2026-04-09 15:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:40:55] [INFO] Checking activity reminders 
[2026-04-09 15:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:41:26] [INFO] Checking activity reminders 
[2026-04-09 15:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:41:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-09 15:41:56] [INFO] Checking activity reminders 
[2026-04-09 15:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:43:04] [INFO] Checking activity reminders 
[2026-04-09 15:43:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:43:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:43:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:43:34] [INFO] Checking activity reminders 
[2026-04-09 15:43:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:43:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:44:03] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 15:44:36] [INFO] Checking activity reminders 
[2026-04-09 15:44:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:44:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:44:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-09 15:45:06] [INFO] Checking activity reminders 
[2026-04-09 15:45:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:45:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:45:36] [INFO] Checking activity reminders 
[2026-04-09 15:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:45:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"19838","deal_id":"local_69d695fb6ddf32.90741086","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 15:45:50","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 15:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-09 15:45:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"19838","is_new_deal":false}
[2026-04-09 15:45:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 15:45:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:45:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:45:50] [INFO] getContactPrimaryPhone called {"contact_id":"19838"}
[2026-04-09 15:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-09 15:45:50] [INFO] getContactPrimaryPhone result {"contact_id":"19838","person_found":true,"primary_phone":"9124083274"}
[2026-04-09 15:45:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124083274"}
[2026-04-09 15:45:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124083274","contact_id":"19838","deal_id":"local_69d695fb6ddf32.90741086","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:45:50"}
[2026-04-09 15:45:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","existing_deal_found":true,"existing_contact_id":"19838","existing_title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:45:50"}
[2026-04-09 15:45:50] [INFO] DealController.save validated payments {"deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-09 15:45:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"19838","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 15:45:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d695fb6ddf32.90741086","contact_didar_id":"19838","title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124083274","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین جلیلیان","existing_deal":"YES","existing_deal_id":"local_69d695fb6ddf32.90741086","existing_deal_status":"Pending","server_time":"2026-04-09 15:45:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 15:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-09 15:45:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 15:45:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 15:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-09 15:45:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:46:06] [INFO] Checking activity reminders 
[2026-04-09 15:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:46:36] [INFO] Checking activity reminders 
[2026-04-09 15:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:47:06] [INFO] Checking activity reminders 
[2026-04-09 15:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:47:37] [INFO] Checking activity reminders 
[2026-04-09 15:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:48:07] [INFO] Checking activity reminders 
[2026-04-09 15:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:48:37] [INFO] Checking activity reminders 
[2026-04-09 15:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:49:07] [INFO] Checking activity reminders 
[2026-04-09 15:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:49:37] [INFO] Checking activity reminders 
[2026-04-09 15:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:50:07] [INFO] Checking activity reminders 
[2026-04-09 15:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:50:10] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 15:50:10] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:50:10] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:50:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:50:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 15:50:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:50:37] [INFO] Checking activity reminders 
[2026-04-09 15:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:51:08] [INFO] Checking activity reminders 
[2026-04-09 15:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:51:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:51:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 15:51:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:51:39] [INFO] Checking activity reminders 
[2026-04-09 15:51:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:51:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:52:09] [INFO] Checking activity reminders 
[2026-04-09 15:52:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:52:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:52:39] [INFO] Checking activity reminders 
[2026-04-09 15:52:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:52:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:53:08] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:53:08] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 15:53:08] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 15:53:09] [INFO] Checking activity reminders 
[2026-04-09 15:53:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:53:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:53:40] [INFO] Checking activity reminders 
[2026-04-09 15:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:54:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2078","deal_id":"local_69d695612b3f22.02031521","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 15:54:00","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 15:54:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"2078","is_new_deal":false}
[2026-04-09 15:54:00] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:54:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:54:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-09 15:54:00] [INFO] getContactPrimaryPhone called {"contact_id":"2078"}
[2026-04-09 15:54:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:00] [INFO] getContactPrimaryPhone result {"contact_id":"2078","person_found":true,"primary_phone":"9153853890"}
[2026-04-09 15:54:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153853890"}
[2026-04-09 15:54:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153853890","contact_id":"2078","deal_id":"local_69d695612b3f22.02031521","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:54:00"}
[2026-04-09 15:54:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d695612b3f22.02031521","contact_id":"2078","existing_deal_found":true,"existing_contact_id":"2078","existing_title":"معامله دوم 9153853890 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:54:00"}
[2026-04-09 15:54:00] [INFO] DealController.save validated payments {"deal_id":"local_69d695612b3f22.02031521","contact_id":"2078","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 15:54:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2078","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 15:54:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d695612b3f22.02031521","contact_didar_id":"2078","title":"معامله دوم 9153853890 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9153853890","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میرزایی میرزایی","existing_deal":"YES","existing_deal_id":"local_69d695612b3f22.02031521","existing_deal_status":"Pending","server_time":"2026-04-09 15:54:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 15:54:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d695612b3f22.02031521","contact_id":"2078","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9153853890 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-09 15:54:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 15:54:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:10] [INFO] Checking activity reminders 
[2026-04-09 15:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:54:36] [INFO] Activity save request {"post_data":{"contact_id":"2078","deal_id":"local_69d695612b3f22.02031521","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه 39 با پشتیبانی استاد \r\nارسال شبا ملت در بله \r\n","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 15:54:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2078","note_was_empty":true}
[2026-04-09 15:54:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"2078","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:36] [INFO] Updating virtual stage {"contact_id":"2078","stage_name":"deal_registered","force":false}
[2026-04-09 15:54:36] [INFO] Virtual stage successfully saved {"contact_id":"2078","stage_name":"deal_registered"}
[2026-04-09 15:54:36] [INFO] Virtual stage updated after activity save {"contact_id":"2078"}
[2026-04-09 15:54:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d695612b3f22.02031521","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 15:54:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d79a8419caa3.01032937","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69d79a8419caa3.01032937"}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:36] [INFO] Updating virtual stage {"contact_id":"2078","stage_name":"deal_registered","force":false}
[2026-04-09 15:54:36] [INFO] Virtual stage successfully saved {"contact_id":"2078","stage_name":"deal_registered"}
[2026-04-09 15:54:36] [INFO] Virtual stage updated after activity save {"contact_id":"2078"}
[2026-04-09 15:54:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-09 15:54:40] [INFO] Checking activity reminders 
[2026-04-09 15:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:54:57] [INFO] Checking activity reminders 
[2026-04-09 15:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:55:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 15:55:09","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 15:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1499","is_new_deal":false}
[2026-04-09 15:55:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-09 15:55:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:55:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-09 15:55:09] [INFO] getContactPrimaryPhone called {"contact_id":"1499"}
[2026-04-09 15:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:09] [INFO] getContactPrimaryPhone result {"contact_id":"1499","person_found":true,"primary_phone":"9210328323"}
[2026-04-09 15:55:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9210328323"}
[2026-04-09 15:55:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9210328323","contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:55:09"}
[2026-04-09 15:55:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","existing_deal_found":true,"existing_contact_id":"1499","existing_title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 15:55:09"}
[2026-04-09 15:55:09] [INFO] DealController.save validated payments {"deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-09 15:55:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1499","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 15:55:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68fd22bb1b5.50176459","contact_didar_id":"1499","title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9210328323","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین شاهی","existing_deal":"YES","existing_deal_id":"local_69d68fd22bb1b5.50176459","existing_deal_status":"Pending","server_time":"2026-04-09 15:55:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 15:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-09 15:55:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 15:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Activity save request {"post_data":{"contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 15:55:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1499","note_was_empty":true}
[2026-04-09 15:55:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"1499","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Updating virtual stage {"contact_id":"1499","stage_name":"deal_registered","force":false}
[2026-04-09 15:55:20] [INFO] Virtual stage successfully saved {"contact_id":"1499","stage_name":"deal_registered"}
[2026-04-09 15:55:20] [INFO] Virtual stage updated after activity save {"contact_id":"1499"}
[2026-04-09 15:55:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68fd22bb1b5.50176459","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-09 15:55:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d79ab098efe6.88936890","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69d79ab098efe6.88936890"}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:20] [INFO] Updating virtual stage {"contact_id":"1499","stage_name":"deal_registered","force":false}
[2026-04-09 15:55:20] [INFO] Virtual stage successfully saved {"contact_id":"1499","stage_name":"deal_registered"}
[2026-04-09 15:55:20] [INFO] Virtual stage updated after activity save {"contact_id":"1499"}
[2026-04-09 15:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-09 15:55:27] [INFO] Checking activity reminders 
[2026-04-09 15:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:55:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 15:55:57] [INFO] Checking activity reminders 
[2026-04-09 15:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:56:27] [INFO] Checking activity reminders 
[2026-04-09 15:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:56:57] [INFO] Checking activity reminders 
[2026-04-09 15:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:57:28] [INFO] Checking activity reminders 
[2026-04-09 15:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:57:58] [INFO] Checking activity reminders 
[2026-04-09 15:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:58:28] [INFO] Checking activity reminders 
[2026-04-09 15:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:58:58] [INFO] Checking activity reminders 
[2026-04-09 15:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:59:28] [INFO] Checking activity reminders 
[2026-04-09 15:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 15:59:59] [INFO] Checking activity reminders 
[2026-04-09 15:59:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 15:59:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:00:29] [INFO] Checking activity reminders 
[2026-04-09 16:00:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:00:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:01:00] [INFO] Checking activity reminders 
[2026-04-09 16:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:01:30] [INFO] Checking activity reminders 
[2026-04-09 16:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:02:00] [INFO] Checking activity reminders 
[2026-04-09 16:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:02:30] [INFO] Checking activity reminders 
[2026-04-09 16:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:03:00] [INFO] Checking activity reminders 
[2026-04-09 16:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:03:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 16:03:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:18] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:18] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 16:03:18] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:20] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:21] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:29] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:29] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 16:03:29] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:03:30] [INFO] Checking activity reminders 
[2026-04-09 16:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:04:01] [INFO] Checking activity reminders 
[2026-04-09 16:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:04:31] [INFO] Checking activity reminders 
[2026-04-09 16:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:05:01] [INFO] Checking activity reminders 
[2026-04-09 16:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:05:31] [INFO] Checking activity reminders 
[2026-04-09 16:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:06:02] [INFO] Checking activity reminders 
[2026-04-09 16:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:06:34] [INFO] Checking activity reminders 
[2026-04-09 16:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:13:17] [INFO] Checking activity reminders 
[2026-04-09 16:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:13:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"20974","deal_id":"local_69d691395fefb5.62385943","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-09 16:13:42","session_id":"rg9eoqntccuaudkhlu9hs8o07m"}
[2026-04-09 16:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:13:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"20974","is_new_deal":false}
[2026-04-09 16:13:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-09 16:13:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 16:13:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-09 16:13:42] [INFO] getContactPrimaryPhone called {"contact_id":"20974"}
[2026-04-09 16:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:13:42] [INFO] getContactPrimaryPhone result {"contact_id":"20974","person_found":true,"primary_phone":"9357810632"}
[2026-04-09 16:13:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9357810632"}
[2026-04-09 16:13:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9357810632","contact_id":"20974","deal_id":"local_69d691395fefb5.62385943","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 16:13:42"}
[2026-04-09 16:13:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d691395fefb5.62385943","contact_id":"20974","existing_deal_found":true,"existing_contact_id":"20974","existing_title":"معامله دوم 9357810632 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-09 16:13:42"}
[2026-04-09 16:13:42] [INFO] DealController.save validated payments {"deal_id":"local_69d691395fefb5.62385943","contact_id":"20974","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-09 16:13:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20974","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-09 16:13:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d691395fefb5.62385943","contact_didar_id":"20974","title":"معامله دوم 9357810632 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9357810632","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ترابی","existing_deal":"YES","existing_deal_id":"local_69d691395fefb5.62385943","existing_deal_status":"Pending","server_time":"2026-04-09 16:13:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-09 16:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:13:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d691395fefb5.62385943","contact_id":"20974","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9357810632 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-09 16:13:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-09 16:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:13:47] [INFO] Checking activity reminders 
[2026-04-09 16:13:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:13:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:14:18] [INFO] Checking activity reminders 
[2026-04-09 16:14:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:14:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:14:48] [INFO] Checking activity reminders 
[2026-04-09 16:14:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:14:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:14:56] [INFO] Activity save request {"post_data":{"contact_id":"20974","deal_id":"local_69d691395fefb5.62385943","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال 404 در بله نداشت \r\nکاسبی شب عید نداشت \/ پرزنت 405 با پیش بینا 405 \r\nارسال شبا تجارت  در بله ","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:14:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-09 16:14:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:14:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20974","note_was_empty":true}
[2026-04-09 16:14:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"20974","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:14:56] [INFO] Updating virtual stage {"contact_id":"20974","stage_name":"deal_registered","force":false}
[2026-04-09 16:14:56] [INFO] Virtual stage successfully saved {"contact_id":"20974","stage_name":"deal_registered"}
[2026-04-09 16:14:56] [INFO] Virtual stage updated after activity save {"contact_id":"20974"}
[2026-04-09 16:14:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d691395fefb5.62385943","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-09 16:14:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d79f48adb3e9.43242089","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:14:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69d79f48adb3e9.43242089"}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:14:56] [INFO] Updating virtual stage {"contact_id":"20974","stage_name":"deal_registered","force":false}
[2026-04-09 16:14:56] [INFO] Virtual stage successfully saved {"contact_id":"20974","stage_name":"deal_registered"}
[2026-04-09 16:14:56] [INFO] Virtual stage updated after activity save {"contact_id":"20974"}
[2026-04-09 16:14:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-09 16:15:12] [INFO] Checking activity reminders 
[2026-04-09 16:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:15:15] [INFO] Checking activity reminders 
[2026-04-09 16:15:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:15:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:15:18] [INFO] Checking activity reminders 
[2026-04-09 16:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:19:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"check_reminders"}
[2026-04-09 16:19:14] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-09 16:19:16] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:27] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:27] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-09 16:19:44] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:44] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-09 16:19:55] [WARNING] Auth check failed - not authenticated {"session_id":"ekupfho0lk04v02r7or38mi1hf","session_keys":[],"action":"log_client_event"}
[2026-04-09 16:19:55] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-09 16:19:55] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-09 16:19:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-09 16:19:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-09 16:19:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-09 16:19:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-09 16:20:26] [INFO] Checking activity reminders 
[2026-04-09 16:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:20:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-09 16:20:56] [INFO] Checking activity reminders 
[2026-04-09 16:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:21:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17472","person_id":"17560"}
[2026-04-09 16:21:26] [INFO] Checking activity reminders 
[2026-04-09 16:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:21:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-09 16:21:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-09 16:21:57] [INFO] Checking activity reminders 
[2026-04-09 16:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:23:20] [INFO] Checking activity reminders 
[2026-04-09 16:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:23:50] [INFO] Checking activity reminders 
[2026-04-09 16:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:24:20] [INFO] Checking activity reminders 
[2026-04-09 16:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:24:50] [INFO] Checking activity reminders 
[2026-04-09 16:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:25:20] [INFO] Checking activity reminders 
[2026-04-09 16:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:25:50] [INFO] Checking activity reminders 
[2026-04-09 16:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:26:20] [INFO] Checking activity reminders 
[2026-04-09 16:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:26:50] [INFO] Checking activity reminders 
[2026-04-09 16:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:27:21] [INFO] Checking activity reminders 
[2026-04-09 16:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:27:51] [INFO] Checking activity reminders 
[2026-04-09 16:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:28:21] [INFO] Checking activity reminders 
[2026-04-09 16:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 16:28:51] [INFO] Checking activity reminders 
[2026-04-09 16:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-09 16:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-09 21:05:25] [WARNING] Auth check failed - not authenticated {"session_id":"9pshd3q6obgfu9hve9021o1lla","session_keys":[],"action":"log_client_event"}
[2026-04-09 21:05:25] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-09 21:06:10] [WARNING] Auth check failed - not authenticated {"session_id":"9pshd3q6obgfu9hve9021o1lla","session_keys":[],"action":"log_client_event"}
[2026-04-09 21:06:10] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-09 21:06:12] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-09 21:06:12] [WARNING] Auth check failed - not authenticated {"session_id":"9pshd3q6obgfu9hve9021o1lla","session_keys":[],"action":"log_client_event"}
[2026-04-09 21:06:48] [WARNING] Auth check failed - not authenticated {"session_id":"9pshd3q6obgfu9hve9021o1lla","session_keys":[],"action":"log_client_event"}
[2026-04-09 21:06:48] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-10 00:19:07] [WARNING] Auth check failed - not authenticated {"session_id":"sm7ggum7e8uaoacb8rm8520gt8","session_keys":[],"action":"log_client_event"}
[2026-04-10 00:19:07] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-10 00:19:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-10 00:19:39] [INFO] Checking activity reminders 
[2026-04-10 00:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-10 00:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-10 00:19:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-10 00:20:11] [INFO] Checking activity reminders 
[2026-04-10 00:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-10 00:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-10 00:20:41] [INFO] Checking activity reminders 
[2026-04-10 00:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-10 00:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-10 00:22:24] [INFO] Checking activity reminders 
[2026-04-10 00:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-10 00:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 02:13:48] [WARNING] Auth check failed - not authenticated {"session_id":"7n2igo718l71i6h037jm3ju4c3","session_keys":[],"action":"log_client_event"}
[2026-04-11 02:13:49] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-11 09:35:49] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 09:35:49] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 09:35:49] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 09:35:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 09:35:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 09:35:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 09:35:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 09:36:20] [INFO] Checking activity reminders 
[2026-04-11 09:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:36:50] [INFO] Checking activity reminders 
[2026-04-11 09:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:39:04] [INFO] Checking activity reminders 
[2026-04-11 09:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:39:34] [INFO] Checking activity reminders 
[2026-04-11 09:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:40:04] [INFO] Checking activity reminders 
[2026-04-11 09:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:40:34] [INFO] Checking activity reminders 
[2026-04-11 09:40:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:40:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:42:27] [INFO] Checking activity reminders 
[2026-04-11 09:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 09:42:43] [INFO] Checking activity reminders 
[2026-04-11 09:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 09:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:32:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:32:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"check_reminders"}
[2026-04-11 10:32:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"check_reminders"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:46] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:47] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:47] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:47] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:48] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:48] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"get_leads"}
[2026-04-11 10:40:48] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:48] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:50] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:40:50] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:17] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:17] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:17] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"create_lead"}
[2026-04-11 10:41:17] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:19] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:23] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:23] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:23] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"create_lead"}
[2026-04-11 10:41:23] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:25] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:28] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:30] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:30] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:41:32] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"get_leads"}
[2026-04-11 10:42:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:22] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:22] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"check_reminders"}
[2026-04-11 10:42:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:42:51] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:03] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:03] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:03] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"create_lead"}
[2026-04-11 10:43:03] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:05] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:45] [WARNING] Auth check failed - not authenticated {"session_id":"i5phf88vq06eb5b39uuu60qtlg","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:43:45] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 10:43:45] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 10:43:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 10:43:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 10:43:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 10:43:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 10:44:16] [INFO] Checking activity reminders 
[2026-04-11 10:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:44:46] [INFO] Checking activity reminders 
[2026-04-11 10:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:45:14] [WARNING] Auth check failed - not authenticated {"session_id":"k2i10ivn6l764dafdcqdoclgj1","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:45:14] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-11 10:45:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 10:45:16] [INFO] Checking activity reminders 
[2026-04-11 10:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:45:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:45:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 10:45:37] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-11 10:45:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 10:45:39] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 10:45:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 10:45:45] [INFO] Checking activity reminders 
[2026-04-11 10:45:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:45:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:45:46] [INFO] Checking activity reminders 
[2026-04-11 10:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:46:15] [INFO] Checking activity reminders 
[2026-04-11 10:46:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:46:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:46:16] [INFO] Checking activity reminders 
[2026-04-11 10:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:46:46] [INFO] Checking activity reminders 
[2026-04-11 10:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:46:49] [INFO] Checking activity reminders 
[2026-04-11 10:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:47:14] [INFO] Activity save request {"post_data":{"contact_id":"local_69d78b3578c053.50378714","deal_id":"local_69d78b358284d","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شمارش رو هفته ی گذشته برام گذاشته بودین تماس گرفته بودم فعالیت هم داشتم اما الان نیست \/ کانال عضو بوده اصفهان بوتاکس و ژل انجام میده بازار نداشته \/ \\ارسال خونه خریده \\ولی فعلا نداره اوکی شد خرداد میاد ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 10:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 10:47:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 10:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d78b3578c053.50378714","note_was_empty":true}
[2026-04-11 10:47:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:14] [INFO] Updating virtual stage {"contact_id":"local_69d78b3578c053.50378714","stage_name":"new","force":false}
[2026-04-11 10:47:14] [INFO] Virtual stage successfully saved {"contact_id":"local_69d78b3578c053.50378714","stage_name":"new"}
[2026-04-11 10:47:14] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d78b3578c053.50378714"}
[2026-04-11 10:47:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d78b358284d","stage":"تماس پیگیری","status_change":null}
[2026-04-11 10:47:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d9f57ad44c39.16045894","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 10:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d9f57ad44c39.16045894"}
[2026-04-11 10:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:15] [INFO] Updating virtual stage {"contact_id":"local_69d78b3578c053.50378714","stage_name":"deal_registered","force":false}
[2026-04-11 10:47:15] [INFO] Virtual stage successfully saved {"contact_id":"local_69d78b3578c053.50378714","stage_name":"deal_registered"}
[2026-04-11 10:47:15] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d78b3578c053.50378714"}
[2026-04-11 10:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-11 10:47:17] [INFO] Checking activity reminders 
[2026-04-11 10:47:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:47:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:47:19] [INFO] Checking activity reminders 
[2026-04-11 10:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:47:47] [INFO] Checking activity reminders 
[2026-04-11 10:47:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:47:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:47:49] [INFO] Checking activity reminders 
[2026-04-11 10:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:48:17] [INFO] Checking activity reminders 
[2026-04-11 10:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:48:19] [INFO] Checking activity reminders 
[2026-04-11 10:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:48:47] [INFO] Checking activity reminders 
[2026-04-11 10:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:48:50] [INFO] Checking activity reminders 
[2026-04-11 10:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:49:17] [INFO] Checking activity reminders 
[2026-04-11 10:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:49:20] [INFO] Checking activity reminders 
[2026-04-11 10:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:49:47] [INFO] Checking activity reminders 
[2026-04-11 10:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:49:50] [INFO] Checking activity reminders 
[2026-04-11 10:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:50:17] [INFO] Checking activity reminders 
[2026-04-11 10:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:50:20] [INFO] Checking activity reminders 
[2026-04-11 10:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:50:47] [INFO] Checking activity reminders 
[2026-04-11 10:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:50:51] [INFO] Checking activity reminders 
[2026-04-11 10:50:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:50:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:51:17] [INFO] Checking activity reminders 
[2026-04-11 10:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:51:21] [INFO] Checking activity reminders 
[2026-04-11 10:51:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:51:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:51:47] [INFO] Checking activity reminders 
[2026-04-11 10:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:51:51] [INFO] Checking activity reminders 
[2026-04-11 10:51:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:51:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:52:17] [INFO] Checking activity reminders 
[2026-04-11 10:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:52:21] [INFO] Checking activity reminders 
[2026-04-11 10:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:52:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:52:47] [INFO] Checking activity reminders 
[2026-04-11 10:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:52:52] [INFO] Checking activity reminders 
[2026-04-11 10:52:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:52:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:53:17] [INFO] Checking activity reminders 
[2026-04-11 10:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:53:22] [INFO] Checking activity reminders 
[2026-04-11 10:53:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:53:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:53:48] [INFO] Checking activity reminders 
[2026-04-11 10:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:53:52] [INFO] Checking activity reminders 
[2026-04-11 10:53:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:53:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:54:22] [INFO] Checking activity reminders 
[2026-04-11 10:54:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:54:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:54:52] [INFO] Checking activity reminders 
[2026-04-11 10:54:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:54:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:55:27] [INFO] Checking activity reminders 
[2026-04-11 10:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:55:57] [INFO] Checking activity reminders 
[2026-04-11 10:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:56:27] [INFO] Checking activity reminders 
[2026-04-11 10:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:56:57] [INFO] Checking activity reminders 
[2026-04-11 10:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:57:00] [INFO] Checking activity reminders 
[2026-04-11 10:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:57:28] [INFO] Checking activity reminders 
[2026-04-11 10:57:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:57:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:57:30] [INFO] Checking activity reminders 
[2026-04-11 10:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:57:58] [INFO] Checking activity reminders 
[2026-04-11 10:57:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:57:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:58:18] [INFO] Activity save request {"post_data":{"contact_id":"6215","deal_id":"local_69d68ca71be485.71919468","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سرمایه رو ملک خریده نقد نیست نوسان بگیره گفت میخوام بفروشم \\ول بیاد دستم تابستون میام\/ \r\n6ماهه 39ت گفتم ","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 10:58:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6215","note_was_empty":true}
[2026-04-11 10:58:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"6215","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:18] [INFO] Updating virtual stage {"contact_id":"6215","stage_name":"deal_registered","force":false}
[2026-04-11 10:58:18] [INFO] Virtual stage successfully saved {"contact_id":"6215","stage_name":"deal_registered"}
[2026-04-11 10:58:18] [INFO] Virtual stage updated after activity save {"contact_id":"6215"}
[2026-04-11 10:58:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68ca71be485.71919468","stage":"تماس پیگیری","status_change":null}
[2026-04-11 10:58:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d9f8129e3df9.25868776","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69d9f8129e3df9.25868776"}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:18] [INFO] Updating virtual stage {"contact_id":"6215","stage_name":"deal_registered","force":false}
[2026-04-11 10:58:18] [INFO] Virtual stage successfully saved {"contact_id":"6215","stage_name":"deal_registered"}
[2026-04-11 10:58:18] [INFO] Virtual stage updated after activity save {"contact_id":"6215"}
[2026-04-11 10:58:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6215","person_id":"16296"}
[2026-04-11 10:58:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 10:58:28] [INFO] Checking activity reminders 
[2026-04-11 10:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:58:58] [INFO] Checking activity reminders 
[2026-04-11 10:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 10:59:30] [INFO] Checking activity reminders 
[2026-04-11 10:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 10:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:00:00] [INFO] Checking activity reminders 
[2026-04-11 11:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:01:35] [INFO] Checking activity reminders 
[2026-04-11 11:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:02:05] [INFO] Checking activity reminders 
[2026-04-11 11:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:02:35] [INFO] Checking activity reminders 
[2026-04-11 11:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:03:05] [INFO] Checking activity reminders 
[2026-04-11 11:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:03:35] [INFO] Checking activity reminders 
[2026-04-11 11:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:04:05] [INFO] Checking activity reminders 
[2026-04-11 11:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:04:35] [INFO] Checking activity reminders 
[2026-04-11 11:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:05:05] [INFO] Checking activity reminders 
[2026-04-11 11:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:05:35] [INFO] Checking activity reminders 
[2026-04-11 11:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:06:05] [INFO] Checking activity reminders 
[2026-04-11 11:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:06:35] [INFO] Checking activity reminders 
[2026-04-11 11:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:07:05] [INFO] Checking activity reminders 
[2026-04-11 11:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:07:35] [INFO] Checking activity reminders 
[2026-04-11 11:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:08:05] [INFO] Checking activity reminders 
[2026-04-11 11:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:08:35] [INFO] Checking activity reminders 
[2026-04-11 11:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:08:36] [INFO] Checking activity reminders 
[2026-04-11 11:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:08:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:08:44] [INFO] Checking activity reminders 
[2026-04-11 11:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:09:06] [INFO] Checking activity reminders 
[2026-04-11 11:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:09:14] [INFO] Checking activity reminders 
[2026-04-11 11:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:09:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:09:36] [INFO] Checking activity reminders 
[2026-04-11 11:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:09:44] [INFO] Checking activity reminders 
[2026-04-11 11:09:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:09:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:10:06] [INFO] Checking activity reminders 
[2026-04-11 11:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:10:14] [INFO] Checking activity reminders 
[2026-04-11 11:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:10:36] [INFO] Checking activity reminders 
[2026-04-11 11:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:10:46] [INFO] Checking activity reminders 
[2026-04-11 11:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:11:06] [INFO] Checking activity reminders 
[2026-04-11 11:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:11:17] [INFO] Checking activity reminders 
[2026-04-11 11:11:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:11:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:11:36] [INFO] Checking activity reminders 
[2026-04-11 11:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:11:47] [INFO] Checking activity reminders 
[2026-04-11 11:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:11:59] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 11:11:59] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-11 11:12:06] [INFO] Checking activity reminders 
[2026-04-11 11:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:12:17] [INFO] Checking activity reminders 
[2026-04-11 11:12:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:12:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:12:29] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 11:12:29] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 11:12:29] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 11:12:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 11:12:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 11:12:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 11:12:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 11:12:36] [INFO] Checking activity reminders 
[2026-04-11 11:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:12:47] [INFO] Checking activity reminders 
[2026-04-11 11:12:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:12:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:12:59] [INFO] Checking activity reminders 
[2026-04-11 11:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:06] [INFO] Checking activity reminders 
[2026-04-11 11:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:17] [INFO] Checking activity reminders 
[2026-04-11 11:13:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:24] [INFO] Checking activity reminders 
[2026-04-11 11:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:29] [INFO] Checking activity reminders 
[2026-04-11 11:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:13:35","session_id":"1td3h5j4ak45i9jplkloda2iqs"}
[2026-04-11 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"848","is_new_deal":false}
[2026-04-11 11:13:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 11:13:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:13:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:13:35] [INFO] getContactPrimaryPhone called {"contact_id":"848"}
[2026-04-11 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:35] [INFO] getContactPrimaryPhone result {"contact_id":"848","person_found":true,"primary_phone":"9193355341"}
[2026-04-11 11:13:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193355341"}
[2026-04-11 11:13:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193355341","contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-11 11:13:35"}
[2026-04-11 11:13:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","existing_deal_found":true,"existing_contact_id":"848","existing_title":"معامله دوم 9193355341 | کانال VIP","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-11 11:13:35"}
[2026-04-11 11:13:35] [INFO] DealController.save validated payments {"deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 11:13:35] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"848","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-11 11:13:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695e59f9e1ad03.41227809","contact_didar_id":"848","title":"معامله دوم 9193355341 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193355341","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"تیرانداز","existing_deal":"YES","existing_deal_id":"local_695e59f9e1ad03.41227809","existing_deal_status":"Pending","server_time":"2026-04-11 11:13:35","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-11 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9193355341 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-11 11:13:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:13:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-11 11:13:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:36] [INFO] Checking activity reminders 
[2026-04-11 11:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:13:54] [INFO] Checking activity reminders 
[2026-04-11 11:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:13:59] [INFO] Checking activity reminders 
[2026-04-11 11:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:14:06] [INFO] Checking activity reminders 
[2026-04-11 11:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:14:24] [INFO] Checking activity reminders 
[2026-04-11 11:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:14:36] [INFO] Checking activity reminders 
[2026-04-11 11:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:14:55] [INFO] Checking activity reminders 
[2026-04-11 11:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:15:06] [INFO] Checking activity reminders 
[2026-04-11 11:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:15:25] [INFO] Checking activity reminders 
[2026-04-11 11:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:15:36] [INFO] Checking activity reminders 
[2026-04-11 11:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:15:48] [INFO] Checking activity reminders 
[2026-04-11 11:15:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:15:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:15:55] [INFO] Checking activity reminders 
[2026-04-11 11:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:16:06] [INFO] Checking activity reminders 
[2026-04-11 11:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:16:25] [INFO] Checking activity reminders 
[2026-04-11 11:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:16:36] [INFO] Checking activity reminders 
[2026-04-11 11:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:16:55] [INFO] Checking activity reminders 
[2026-04-11 11:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:17:06] [INFO] Checking activity reminders 
[2026-04-11 11:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:17:25] [INFO] Checking activity reminders 
[2026-04-11 11:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:17:37] [INFO] Checking activity reminders 
[2026-04-11 11:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:17:55] [INFO] Checking activity reminders 
[2026-04-11 11:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:07] [INFO] Checking activity reminders 
[2026-04-11 11:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:26] [INFO] Checking activity reminders 
[2026-04-11 11:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:27] [INFO] Checking activity reminders 
[2026-04-11 11:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-11 11:18:37] [INFO] Checking activity reminders 
[2026-04-11 11:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:56] [INFO] Checking activity reminders 
[2026-04-11 11:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:18:59] [INFO] Lead update received {"contact_id":"21285","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 11:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-11 11:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-11 11:18:59] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21285"}
[2026-04-11 11:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-11 11:19:07] [INFO] Checking activity reminders 
[2026-04-11 11:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:19:26] [INFO] Checking activity reminders 
[2026-04-11 11:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:19:33] [INFO] Checking activity reminders 
[2026-04-11 11:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:19:37] [INFO] Checking activity reminders 
[2026-04-11 11:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:19:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 11:20:07] [INFO] Checking activity reminders 
[2026-04-11 11:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:20:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:20:21] [INFO] Checking activity reminders 
[2026-04-11 11:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:20:37] [INFO] Checking activity reminders 
[2026-04-11 11:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:20:51] [INFO] Checking activity reminders 
[2026-04-11 11:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:21:07] [INFO] Checking activity reminders 
[2026-04-11 11:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:21:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:21:21","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:21:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"848","is_new_deal":false}
[2026-04-11 11:21:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 11:21:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:21:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:21:21] [INFO] getContactPrimaryPhone called {"contact_id":"848"}
[2026-04-11 11:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:21:21] [INFO] getContactPrimaryPhone result {"contact_id":"848","person_found":true,"primary_phone":"9193355341"}
[2026-04-11 11:21:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193355341"}
[2026-04-11 11:21:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193355341","contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:21:21"}
[2026-04-11 11:21:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","existing_deal_found":true,"existing_contact_id":"848","existing_title":"معامله دوم 9193355341 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:21:21"}
[2026-04-11 11:21:21] [INFO] DealController.save validated payments {"deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 11:21:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"848","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:21:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695e59f9e1ad03.41227809","contact_didar_id":"848","title":"معامله دوم 9193355341 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9193355341","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"تیرانداز","existing_deal":"YES","existing_deal_id":"local_695e59f9e1ad03.41227809","existing_deal_status":"Pending","server_time":"2026-04-11 11:21:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:21:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695e59f9e1ad03.41227809","contact_id":"848","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9193355341 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-11 11:21:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:21:22] [INFO] Checking activity reminders 
[2026-04-11 11:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:21:37] [INFO] Checking activity reminders 
[2026-04-11 11:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:21:52] [INFO] Checking activity reminders 
[2026-04-11 11:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:22:01] [INFO] Activity save request {"post_data":{"contact_id":"848","deal_id":"local_695e59f9e1ad03.41227809","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای عضویت کانال405 یک شماره دیگه اضاافه \r\nتا اخر مااه اطلاع میده 6 ماهه یا یکسال ","activity_duration":"2","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:22:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"848","note_was_empty":true}
[2026-04-11 11:22:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"848","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:01] [INFO] Updating virtual stage {"contact_id":"848","stage_name":"deal_registered","force":false}
[2026-04-11 11:22:01] [INFO] Virtual stage successfully saved {"contact_id":"848","stage_name":"deal_registered"}
[2026-04-11 11:22:01] [INFO] Virtual stage updated after activity save {"contact_id":"848"}
[2026-04-11 11:22:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695e59f9e1ad03.41227809","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 11:22:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d9fda18a6db8.85874147","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69d9fda18a6db8.85874147"}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:01] [INFO] Updating virtual stage {"contact_id":"848","stage_name":"deal_registered","force":false}
[2026-04-11 11:22:01] [INFO] Virtual stage successfully saved {"contact_id":"848","stage_name":"deal_registered"}
[2026-04-11 11:22:01] [INFO] Virtual stage updated after activity save {"contact_id":"848"}
[2026-04-11 11:22:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:22:07] [INFO] Checking activity reminders 
[2026-04-11 11:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:22:22] [INFO] Checking activity reminders 
[2026-04-11 11:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:22:37] [INFO] Checking activity reminders 
[2026-04-11 11:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:22:52] [INFO] Checking activity reminders 
[2026-04-11 11:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:23:07] [INFO] Checking activity reminders 
[2026-04-11 11:23:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:23:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:23:14] [INFO] Activity save request {"post_data":{"contact_id":"13157","deal_id":"local_69d68d8a19ca04.42388963","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"طلا و دلار 3 میلیارد داشته فروخته ملک مصرف خریده داره میسازه \/ ملک 4تایی داره زراعی و روستایی به دید سرمایه \/ \r\nکرمان جیروفت \r\nدبی \/ فروشگاه مصالح ساختمانی \r\nیکی از زمین ها رو برای فروش گذاشته باهاش نوسان بگیره \r\n206 داره سرمایه \r\nدنا مصرف\r\nارسال ش کارت واریز بیعانه دوشنبه بگه تا اخر سال هست یا 6 ماهه \r\n79 یا 39","activity_duration":"30","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:23:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:23:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13157","note_was_empty":true}
[2026-04-11 11:23:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"13157","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 11:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:15] [INFO] Updating virtual stage {"contact_id":"13157","stage_name":"deal_registered","force":false}
[2026-04-11 11:23:15] [INFO] Virtual stage successfully saved {"contact_id":"13157","stage_name":"deal_registered"}
[2026-04-11 11:23:15] [INFO] Virtual stage updated after activity save {"contact_id":"13157"}
[2026-04-11 11:23:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68d8a19ca04.42388963","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 11:23:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d9fdeac60a88.94372958","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69d9fdeac60a88.94372958"}
[2026-04-11 11:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:15] [INFO] Updating virtual stage {"contact_id":"13157","stage_name":"deal_registered","force":false}
[2026-04-11 11:23:15] [INFO] Virtual stage successfully saved {"contact_id":"13157","stage_name":"deal_registered"}
[2026-04-11 11:23:15] [INFO] Virtual stage updated after activity save {"contact_id":"13157"}
[2026-04-11 11:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 11:23:22] [INFO] Checking activity reminders 
[2026-04-11 11:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:23:29] [INFO] Activity save request {"post_data":{"contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال شاره کارت خود استاد \r\nواریز در بله ارسال ","activity_duration":"3","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:23:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1979","note_was_empty":true}
[2026-04-11 11:23:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"1979","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:29] [INFO] Updating virtual stage {"contact_id":"1979","stage_name":"deal_registered","force":false}
[2026-04-11 11:23:29] [INFO] Virtual stage successfully saved {"contact_id":"1979","stage_name":"deal_registered"}
[2026-04-11 11:23:29] [INFO] Virtual stage updated after activity save {"contact_id":"1979"}
[2026-04-11 11:23:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6f088abce41.09336821","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 11:23:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69d9fdf9348058.84422614","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69d9fdf9348058.84422614"}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:29] [INFO] Updating virtual stage {"contact_id":"1979","stage_name":"deal_registered","force":false}
[2026-04-11 11:23:29] [INFO] Virtual stage successfully saved {"contact_id":"1979","stage_name":"deal_registered"}
[2026-04-11 11:23:29] [INFO] Virtual stage updated after activity save {"contact_id":"1979"}
[2026-04-11 11:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:23:37] [INFO] Checking activity reminders 
[2026-04-11 11:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:23:52] [INFO] Checking activity reminders 
[2026-04-11 11:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:24:07] [INFO] Checking activity reminders 
[2026-04-11 11:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:24:22] [INFO] Checking activity reminders 
[2026-04-11 11:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:24:37] [INFO] Checking activity reminders 
[2026-04-11 11:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:24:53] [INFO] Checking activity reminders 
[2026-04-11 11:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:24:57] [INFO] Checking activity reminders 
[2026-04-11 11:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:25:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:25:08] [INFO] Checking activity reminders 
[2026-04-11 11:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:25:27] [INFO] Checking activity reminders 
[2026-04-11 11:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:25:38] [INFO] Checking activity reminders 
[2026-04-11 11:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:25:57] [INFO] Checking activity reminders 
[2026-04-11 11:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:26:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:26:03","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","is_new_deal":false}
[2026-04-11 11:26:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:03] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-11 11:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:03] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-11 11:26:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-11 11:26:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:26:03"}
[2026-04-11 11:26:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","existing_deal_found":true,"existing_contact_id":"21119","existing_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:26:03"}
[2026-04-11 11:26:03] [INFO] DealController.save validated payments {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-11 11:26:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:26:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2242cc75260.76890464","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"YES","existing_deal_id":"local_69d2242cc75260.76890464","existing_deal_status":"Pending","server_time":"2026-04-11 11:26:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-11 11:26:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:26:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:08] [INFO] Checking activity reminders 
[2026-04-11 11:26:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:26:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:26:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:26:16","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21119","is_new_deal":false}
[2026-04-11 11:26:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 11:26:16] [INFO] getContactPrimaryPhone called {"contact_id":"21119"}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:16] [INFO] getContactPrimaryPhone result {"contact_id":"21119","person_found":true,"primary_phone":"9192792365"}
[2026-04-11 11:26:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9192792365"}
[2026-04-11 11:26:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9192792365","contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:26:16"}
[2026-04-11 11:26:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","existing_deal_found":true,"existing_contact_id":"21119","existing_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:26:16"}
[2026-04-11 11:26:16] [INFO] DealController.save validated payments {"deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-11 11:26:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21119","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:26:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d2242cc75260.76890464","contact_didar_id":"21119","title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9192792365","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آهنگری","existing_deal":"YES","existing_deal_id":"local_69d2242cc75260.76890464","existing_deal_status":"Pending","server_time":"2026-04-11 11:26:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:16] [INFO] Deal success processed {"contact_id":"21119","person_name":"آهنگری","products_count":1}
[2026-04-11 11:26:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d2242cc75260.76890464","contact_id":"21119","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9192792365 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-11 11:26:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:16] [INFO] Updating virtual stage {"contact_id":"21119","stage_name":"with_purchase","force":true}
[2026-04-11 11:26:16] [INFO] Virtual stage successfully saved {"contact_id":"21119","stage_name":"with_purchase"}
[2026-04-11 11:26:16] [INFO] Moved contact out of kariz after successful deal {"contact_id":"21119","deal_id":"local_69d2242cc75260.76890464","target_stage":"with_purchase"}
[2026-04-11 11:26:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21119","person_id":"988"}
[2026-04-11 11:26:27] [INFO] Checking activity reminders 
[2026-04-11 11:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:26:38] [INFO] Checking activity reminders 
[2026-04-11 11:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:26:40] [INFO] Checking activity reminders 
[2026-04-11 11:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:27:08] [INFO] Checking activity reminders 
[2026-04-11 11:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:27:10] [INFO] Checking activity reminders 
[2026-04-11 11:27:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:27:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:27:38] [INFO] Checking activity reminders 
[2026-04-11 11:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:27:40] [INFO] Checking activity reminders 
[2026-04-11 11:27:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:27:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:28:08] [INFO] Checking activity reminders 
[2026-04-11 11:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:28:10] [INFO] Checking activity reminders 
[2026-04-11 11:28:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:28:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:28:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:28:14","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:28:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1979","is_new_deal":false}
[2026-04-11 11:28:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 11:28:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:28:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:28:14] [INFO] getContactPrimaryPhone called {"contact_id":"1979"}
[2026-04-11 11:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:28:14] [INFO] getContactPrimaryPhone result {"contact_id":"1979","person_found":true,"primary_phone":"9385649391"}
[2026-04-11 11:28:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9385649391"}
[2026-04-11 11:28:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9385649391","contact_id":"1979","deal_id":"local_69b6f088abce41.09336821","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:28:14"}
[2026-04-11 11:28:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","existing_deal_found":true,"existing_contact_id":"1979","existing_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:28:14"}
[2026-04-11 11:28:14] [INFO] DealController.save validated payments {"deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","payments_count":4,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 11:28:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1979","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:28:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6f088abce41.09336821","contact_didar_id":"1979","title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9385649391","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":55000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ملکی","existing_deal":"YES","existing_deal_id":"local_69b6f088abce41.09336821","existing_deal_status":"Pending","server_time":"2026-04-11 11:28:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:28:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6f088abce41.09336821","contact_id":"1979","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9385649391 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":55000000,"server_time":"2026-04-11 11:28:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:28:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1979","person_id":"6092"}
[2026-04-11 11:28:38] [INFO] Checking activity reminders 
[2026-04-11 11:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:28:40] [INFO] Checking activity reminders 
[2026-04-11 11:28:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:28:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:29:08] [INFO] Checking activity reminders 
[2026-04-11 11:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:29:10] [INFO] Checking activity reminders 
[2026-04-11 11:29:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:29:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:29:38] [INFO] Checking activity reminders 
[2026-04-11 11:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:29:41] [INFO] Checking activity reminders 
[2026-04-11 11:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:30:08] [INFO] Checking activity reminders 
[2026-04-11 11:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:30:11] [INFO] Checking activity reminders 
[2026-04-11 11:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:30:38] [INFO] Checking activity reminders 
[2026-04-11 11:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:30:41] [INFO] Checking activity reminders 
[2026-04-11 11:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:31:08] [INFO] Checking activity reminders 
[2026-04-11 11:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:31:11] [INFO] Checking activity reminders 
[2026-04-11 11:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:31:26] [INFO] Checking activity reminders 
[2026-04-11 11:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:31:38] [INFO] Checking activity reminders 
[2026-04-11 11:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:31:57] [INFO] Checking activity reminders 
[2026-04-11 11:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:32:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:32:09] [INFO] Checking activity reminders 
[2026-04-11 11:32:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:32:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 11:32:27] [INFO] Checking activity reminders 
[2026-04-11 11:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:32:39] [INFO] Checking activity reminders 
[2026-04-11 11:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:32:57] [INFO] Checking activity reminders 
[2026-04-11 11:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:33:09] [INFO] Checking activity reminders 
[2026-04-11 11:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:33:27] [INFO] Checking activity reminders 
[2026-04-11 11:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:33:39] [INFO] Checking activity reminders 
[2026-04-11 11:33:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:33:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:33:57] [INFO] Checking activity reminders 
[2026-04-11 11:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:34:27] [INFO] Checking activity reminders 
[2026-04-11 11:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:34:57] [INFO] Checking activity reminders 
[2026-04-11 11:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:35:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:35:27] [INFO] Checking activity reminders 
[2026-04-11 11:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:35:57] [INFO] Checking activity reminders 
[2026-04-11 11:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:36:13] [INFO] Activity save request {"post_data":{"contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای تسویه تا فردا انجام \r\nسکه میخواد بفروشه \r\n","activity_duration":"2","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:36:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b7d9a7ab9697.18146949","note_was_empty":true}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:13] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered","force":false}
[2026-04-11 11:36:13] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered"}
[2026-04-11 11:36:13] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-04-11 11:36:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7d9a7b670a","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 11:36:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da00f5b5c2f4.37766974","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69da00f5b5c2f4.37766974"}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:13] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered","force":false}
[2026-04-11 11:36:13] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered"}
[2026-04-11 11:36:13] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-04-11 11:36:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-11 11:36:27] [INFO] Checking activity reminders 
[2026-04-11 11:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:36:57] [INFO] Checking activity reminders 
[2026-04-11 11:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:37:27] [INFO] Checking activity reminders 
[2026-04-11 11:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:37:58] [INFO] Checking activity reminders 
[2026-04-11 11:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:38:10] [INFO] Checking activity reminders 
[2026-04-11 11:38:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:38:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:38:28] [INFO] Checking activity reminders 
[2026-04-11 11:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:38:40] [INFO] Checking activity reminders 
[2026-04-11 11:38:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:38:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:38:58] [INFO] Checking activity reminders 
[2026-04-11 11:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:39:10] [INFO] Checking activity reminders 
[2026-04-11 11:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:39:28] [INFO] Checking activity reminders 
[2026-04-11 11:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:39:40] [INFO] Checking activity reminders 
[2026-04-11 11:39:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:39:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:39:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:39:58] [INFO] Checking activity reminders 
[2026-04-11 11:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:40:10] [INFO] Checking activity reminders 
[2026-04-11 11:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:40:26] [INFO] Checking activity reminders 
[2026-04-11 11:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:40:40] [INFO] Checking activity reminders 
[2026-04-11 11:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:40:56] [INFO] Checking activity reminders 
[2026-04-11 11:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:41:10] [INFO] Checking activity reminders 
[2026-04-11 11:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:41:13] [INFO] Checking activity reminders 
[2026-04-11 11:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:41:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:41:40] [INFO] Checking activity reminders 
[2026-04-11 11:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:41:43] [INFO] Checking activity reminders 
[2026-04-11 11:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:41:44] [INFO] Lead update received {"contact_id":"848","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:41:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:41:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"848"}
[2026-04-11 11:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 11:42:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 11:42:06] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-11 11:42:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 11:42:10] [INFO] Checking activity reminders 
[2026-04-11 11:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:42:14] [INFO] Checking activity reminders 
[2026-04-11 11:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:42:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:42:37] [INFO] Checking activity reminders 
[2026-04-11 11:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:42:40] [INFO] Checking activity reminders 
[2026-04-11 11:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:42:44] [INFO] Checking activity reminders 
[2026-04-11 11:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:07] [INFO] Checking activity reminders 
[2026-04-11 11:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:10] [INFO] Checking activity reminders 
[2026-04-11 11:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:14] [INFO] Checking activity reminders 
[2026-04-11 11:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:16] [INFO] Checking activity reminders 
[2026-04-11 11:43:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:24] [INFO] Activity save request {"post_data":{"contact_id":"7910","deal_id":"local_69d64de19866a6.12340319","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"باهاش تماس گرفتم جهت یاداوری حضور جهت مشاوره حضوری امروز شنبه 22 فروردین ساعت 14","activity_duration":"3","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 11:43:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"7910","note_was_empty":true}
[2026-04-11 11:43:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"7910","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Updating virtual stage {"contact_id":"7910","stage_name":"with_purchase","force":false}
[2026-04-11 11:43:24] [INFO] Virtual stage successfully saved {"contact_id":"7910","stage_name":"with_purchase"}
[2026-04-11 11:43:24] [INFO] Virtual stage updated after activity save {"contact_id":"7910"}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d64de19866a6.12340319","stage":"اتمام","status_change":"Won"}
[2026-04-11 11:43:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da02a4b59b47.75538355","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69da02a4b59b47.75538355"}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:24] [INFO] Updating virtual stage {"contact_id":"7910","stage_name":"with_purchase","force":false}
[2026-04-11 11:43:24] [INFO] Virtual stage successfully saved {"contact_id":"7910","stage_name":"with_purchase"}
[2026-04-11 11:43:24] [INFO] Virtual stage updated after activity save {"contact_id":"7910"}
[2026-04-11 11:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7910","person_id":"11936"}
[2026-04-11 11:43:41] [INFO] Checking activity reminders 
[2026-04-11 11:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:43:46] [INFO] Checking activity reminders 
[2026-04-11 11:43:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:43:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:44:11] [INFO] Checking activity reminders 
[2026-04-11 11:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:44:16] [INFO] Checking activity reminders 
[2026-04-11 11:44:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:44:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:44:41] [INFO] Checking activity reminders 
[2026-04-11 11:44:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:44:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:44:46] [INFO] Checking activity reminders 
[2026-04-11 11:44:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:44:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:45:11] [INFO] Checking activity reminders 
[2026-04-11 11:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:45:16] [INFO] Checking activity reminders 
[2026-04-11 11:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:45:41] [INFO] Checking activity reminders 
[2026-04-11 11:45:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:45:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:45:46] [INFO] Checking activity reminders 
[2026-04-11 11:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:46:11] [INFO] Checking activity reminders 
[2026-04-11 11:46:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:46:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:46:16] [INFO] Checking activity reminders 
[2026-04-11 11:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:46:41] [INFO] Checking activity reminders 
[2026-04-11 11:46:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:46:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:46:46] [INFO] Checking activity reminders 
[2026-04-11 11:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:47:08] [INFO] Activity save request {"post_data":{"contact_id":"8114","deal_id":"local_69d68f98a56051.08634798","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مادرش جواب داد\r\n919 خودش بیپاسخ \r\nپیامک ارسال شد ","activity_duration":"2","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:47:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8114","note_was_empty":true}
[2026-04-11 11:47:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"8114","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:08] [INFO] Updating virtual stage {"contact_id":"8114","stage_name":"deal_registered","force":false}
[2026-04-11 11:47:08] [INFO] Virtual stage successfully saved {"contact_id":"8114","stage_name":"deal_registered"}
[2026-04-11 11:47:08] [INFO] Virtual stage updated after activity save {"contact_id":"8114"}
[2026-04-11 11:47:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68f98a56051.08634798","stage":"تماس پیگیری","status_change":null}
[2026-04-11 11:47:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da03845fd763.27705341","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69da03845fd763.27705341"}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:08] [INFO] Updating virtual stage {"contact_id":"8114","stage_name":"deal_registered","force":false}
[2026-04-11 11:47:08] [INFO] Virtual stage successfully saved {"contact_id":"8114","stage_name":"deal_registered"}
[2026-04-11 11:47:08] [INFO] Virtual stage updated after activity save {"contact_id":"8114"}
[2026-04-11 11:47:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:11] [INFO] Checking activity reminders 
[2026-04-11 11:47:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:47:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:47:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8114","deal_id":"local_69d68f98a56051.08634798","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:47:15","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8114","is_new_deal":false}
[2026-04-11 11:47:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 11:47:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:47:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:47:15] [INFO] getContactPrimaryPhone called {"contact_id":"8114"}
[2026-04-11 11:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:15] [INFO] getContactPrimaryPhone result {"contact_id":"8114","person_found":true,"primary_phone":"9199204947"}
[2026-04-11 11:47:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9199204947"}
[2026-04-11 11:47:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9199204947","contact_id":"8114","deal_id":"local_69d68f98a56051.08634798","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:47:15"}
[2026-04-11 11:47:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68f98a56051.08634798","contact_id":"8114","existing_deal_found":true,"existing_contact_id":"8114","existing_title":"معامله چهارم 9199204947 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:47:15"}
[2026-04-11 11:47:15] [INFO] DealController.save validated payments {"deal_id":"local_69d68f98a56051.08634798","contact_id":"8114","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 11:47:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8114","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:47:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68f98a56051.08634798","contact_didar_id":"8114","title":"معامله چهارم 9199204947 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9199204947","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مرادی","existing_deal":"YES","existing_deal_id":"local_69d68f98a56051.08634798","existing_deal_status":"Pending","server_time":"2026-04-11 11:47:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68f98a56051.08634798","contact_id":"8114","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9199204947 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 11:47:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:47:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8114","person_id":"185"}
[2026-04-11 11:47:17] [INFO] Checking activity reminders 
[2026-04-11 11:47:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:47:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:47:41] [INFO] Checking activity reminders 
[2026-04-11 11:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:47:47] [INFO] Checking activity reminders 
[2026-04-11 11:47:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:47:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:48:11] [INFO] Checking activity reminders 
[2026-04-11 11:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:48:17] [INFO] Checking activity reminders 
[2026-04-11 11:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:48:37] [INFO] Checking activity reminders 
[2026-04-11 11:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:48:41] [INFO] Checking activity reminders 
[2026-04-11 11:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:48:47] [INFO] Checking activity reminders 
[2026-04-11 11:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:49:11] [INFO] Checking activity reminders 
[2026-04-11 11:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:49:17] [INFO] Checking activity reminders 
[2026-04-11 11:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:49:42] [INFO] Checking activity reminders 
[2026-04-11 11:49:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:49:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:49:47] [INFO] Checking activity reminders 
[2026-04-11 11:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:50:12] [INFO] Checking activity reminders 
[2026-04-11 11:50:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:50:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:50:17] [INFO] Checking activity reminders 
[2026-04-11 11:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:50:42] [INFO] Checking activity reminders 
[2026-04-11 11:50:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:50:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:50:47] [INFO] Checking activity reminders 
[2026-04-11 11:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:51:12] [INFO] Checking activity reminders 
[2026-04-11 11:51:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:51:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:51:17] [INFO] Checking activity reminders 
[2026-04-11 11:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:51:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20999","deal_id":"local_69d696299605e9.41542921","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 11:51:38","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 11:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:51:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20999","is_new_deal":false}
[2026-04-11 11:51:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 11:51:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:51:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 11:51:38] [INFO] getContactPrimaryPhone called {"contact_id":"20999"}
[2026-04-11 11:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:51:38] [INFO] getContactPrimaryPhone result {"contact_id":"20999","person_found":true,"primary_phone":"9123334579"}
[2026-04-11 11:51:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123334579"}
[2026-04-11 11:51:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123334579","contact_id":"20999","deal_id":"local_69d696299605e9.41542921","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:51:38"}
[2026-04-11 11:51:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d696299605e9.41542921","contact_id":"20999","existing_deal_found":true,"existing_contact_id":"20999","existing_title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 11:51:38"}
[2026-04-11 11:51:38] [INFO] DealController.save validated payments {"deal_id":"local_69d696299605e9.41542921","contact_id":"20999","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 11:51:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20999","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 11:51:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d696299605e9.41542921","contact_didar_id":"20999","title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123334579","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای نظری","existing_deal":"YES","existing_deal_id":"local_69d696299605e9.41542921","existing_deal_status":"Pending","server_time":"2026-04-11 11:51:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 11:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:51:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d696299605e9.41542921","contact_id":"20999","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 11:51:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 11:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:51:42] [INFO] Checking activity reminders 
[2026-04-11 11:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:51:47] [INFO] Checking activity reminders 
[2026-04-11 11:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:52:01] [INFO] Activity save request {"post_data":{"contact_id":"20999","deal_id":"local_69d696299605e9.41542921","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nساعت 17 تماس مجدد ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 11:52:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20999","note_was_empty":true}
[2026-04-11 11:52:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"20999","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:01] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-11 11:52:01] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-11 11:52:01] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-11 11:52:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d696299605e9.41542921","stage":"تماس پیگیری","status_change":null}
[2026-04-11 11:52:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da04a9c66f77.53676101","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69da04a9c66f77.53676101"}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:01] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-11 11:52:01] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-11 11:52:01] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-11 11:52:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:52:12] [INFO] Checking activity reminders 
[2026-04-11 11:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:52:17] [INFO] Checking activity reminders 
[2026-04-11 11:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:52:42] [INFO] Checking activity reminders 
[2026-04-11 11:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:52:47] [INFO] Checking activity reminders 
[2026-04-11 11:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:52:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:53:07] [INFO] Lead update received {"contact_id":"20999","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 11:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:53:07] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20999"}
[2026-04-11 11:53:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-11 11:53:18] [INFO] Checking activity reminders 
[2026-04-11 11:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:53:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 11:53:48] [INFO] Checking activity reminders 
[2026-04-11 11:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:54:09] [INFO] Checking activity reminders 
[2026-04-11 11:54:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:54:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:54:11] [INFO] Checking activity reminders 
[2026-04-11 11:54:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:54:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:54:18] [INFO] Checking activity reminders 
[2026-04-11 11:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:54:41] [INFO] Checking activity reminders 
[2026-04-11 11:54:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:54:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:54:48] [INFO] Checking activity reminders 
[2026-04-11 11:54:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:54:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:55:10] [INFO] Checking activity reminders 
[2026-04-11 11:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:55:11] [INFO] Checking activity reminders 
[2026-04-11 11:55:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:55:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:55:19] [INFO] Checking activity reminders 
[2026-04-11 11:55:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:55:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:55:41] [INFO] Checking activity reminders 
[2026-04-11 11:55:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:55:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:55:49] [INFO] Checking activity reminders 
[2026-04-11 11:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:56:11] [INFO] Checking activity reminders 
[2026-04-11 11:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:56:19] [INFO] Checking activity reminders 
[2026-04-11 11:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:56:41] [INFO] Checking activity reminders 
[2026-04-11 11:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:56:49] [INFO] Checking activity reminders 
[2026-04-11 11:56:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:56:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:57:11] [INFO] Checking activity reminders 
[2026-04-11 11:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:57:19] [INFO] Checking activity reminders 
[2026-04-11 11:57:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:57:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:57:41] [INFO] Checking activity reminders 
[2026-04-11 11:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:57:49] [INFO] Checking activity reminders 
[2026-04-11 11:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:58:11] [INFO] Checking activity reminders 
[2026-04-11 11:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:58:42] [INFO] Checking activity reminders 
[2026-04-11 11:58:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:58:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:59:12] [INFO] Checking activity reminders 
[2026-04-11 11:59:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:59:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:59:28] [INFO] Checking activity reminders 
[2026-04-11 11:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:59:50] [INFO] Checking activity reminders 
[2026-04-11 11:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 11:59:58] [INFO] Checking activity reminders 
[2026-04-11 11:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 11:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:00:20] [INFO] Checking activity reminders 
[2026-04-11 12:00:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:00:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:00:29] [INFO] Checking activity reminders 
[2026-04-11 12:00:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:00:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:00:50] [INFO] Checking activity reminders 
[2026-04-11 12:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:00:59] [INFO] Checking activity reminders 
[2026-04-11 12:00:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:00:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:01:20] [INFO] Checking activity reminders 
[2026-04-11 12:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:01:44] [INFO] Checking activity reminders 
[2026-04-11 12:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:01:57] [INFO] Checking activity reminders 
[2026-04-11 12:01:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:01:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:02:14] [INFO] Checking activity reminders 
[2026-04-11 12:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:02:27] [INFO] Checking activity reminders 
[2026-04-11 12:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:02:57] [INFO] Checking activity reminders 
[2026-04-11 12:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:02:57] [INFO] Checking activity reminders 
[2026-04-11 12:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:03:27] [INFO] Checking activity reminders 
[2026-04-11 12:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:03:28] [INFO] Checking activity reminders 
[2026-04-11 12:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:03:58] [INFO] Checking activity reminders 
[2026-04-11 12:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:04:03] [INFO] Checking activity reminders 
[2026-04-11 12:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:04:28] [INFO] Checking activity reminders 
[2026-04-11 12:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:04:33] [INFO] Checking activity reminders 
[2026-04-11 12:04:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:04:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:04:58] [INFO] Checking activity reminders 
[2026-04-11 12:04:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:04:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:05:03] [INFO] Checking activity reminders 
[2026-04-11 12:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:05:28] [INFO] Checking activity reminders 
[2026-04-11 12:05:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:05:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:05:33] [INFO] Checking activity reminders 
[2026-04-11 12:05:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:05:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:05:58] [INFO] Checking activity reminders 
[2026-04-11 12:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:06:03] [INFO] Checking activity reminders 
[2026-04-11 12:06:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:06:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:06:28] [INFO] Checking activity reminders 
[2026-04-11 12:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:06:34] [INFO] Checking activity reminders 
[2026-04-11 12:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:06:58] [INFO] Checking activity reminders 
[2026-04-11 12:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:07:04] [INFO] Checking activity reminders 
[2026-04-11 12:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:07:28] [INFO] Checking activity reminders 
[2026-04-11 12:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:07:34] [INFO] Checking activity reminders 
[2026-04-11 12:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:07:58] [INFO] Checking activity reminders 
[2026-04-11 12:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:08:04] [INFO] Checking activity reminders 
[2026-04-11 12:08:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:08:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:08:28] [INFO] Checking activity reminders 
[2026-04-11 12:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:08:34] [INFO] Checking activity reminders 
[2026-04-11 12:08:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:08:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:08:58] [INFO] Checking activity reminders 
[2026-04-11 12:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:09:04] [INFO] Checking activity reminders 
[2026-04-11 12:09:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:09:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"get_products"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"get_person_profile"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:15] [INFO] Checking activity reminders 
[2026-04-11 12:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:09:28] [INFO] Checking activity reminders 
[2026-04-11 12:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:09:30] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 12:09:30] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 12:09:30] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 12:09:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 12:09:30] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 12:09:30] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 12:09:30] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 12:09:34] [INFO] Checking activity reminders 
[2026-04-11 12:09:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:09:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:00] [INFO] Checking activity reminders 
[2026-04-11 12:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:04] [INFO] Checking activity reminders 
[2026-04-11 12:10:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:06] [INFO] Checking activity reminders 
[2026-04-11 12:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"848","person_id":"717"}
[2026-04-11 12:10:31] [INFO] Checking activity reminders 
[2026-04-11 12:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:34] [INFO] Checking activity reminders 
[2026-04-11 12:10:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:36] [INFO] Checking activity reminders 
[2026-04-11 12:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:10:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-11 12:10:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d7766de33610.44882641","person_id":"22099"}
[2026-04-11 12:11:01] [INFO] Checking activity reminders 
[2026-04-11 12:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:11:04] [INFO] Checking activity reminders 
[2026-04-11 12:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:11:06] [INFO] Checking activity reminders 
[2026-04-11 12:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:11:31] [INFO] Checking activity reminders 
[2026-04-11 12:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:11:34] [INFO] Checking activity reminders 
[2026-04-11 12:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:11:36] [INFO] Checking activity reminders 
[2026-04-11 12:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:01] [INFO] Checking activity reminders 
[2026-04-11 12:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:04] [INFO] Checking activity reminders 
[2026-04-11 12:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:06] [INFO] Checking activity reminders 
[2026-04-11 12:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 12:12:24] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 12:12:24] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 12:12:24] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 12:12:34] [INFO] Checking activity reminders 
[2026-04-11 12:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:36] [INFO] Checking activity reminders 
[2026-04-11 12:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:12:54] [INFO] Checking activity reminders 
[2026-04-11 12:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:05] [INFO] Checking activity reminders 
[2026-04-11 12:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:06] [INFO] Checking activity reminders 
[2026-04-11 12:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:24] [INFO] Checking activity reminders 
[2026-04-11 12:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:35] [INFO] Checking activity reminders 
[2026-04-11 12:13:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:36] [INFO] Checking activity reminders 
[2026-04-11 12:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:13:55] [INFO] Checking activity reminders 
[2026-04-11 12:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:05] [INFO] Checking activity reminders 
[2026-04-11 12:14:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:06] [INFO] Checking activity reminders 
[2026-04-11 12:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:28] [INFO] Checking activity reminders 
[2026-04-11 12:14:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:35] [INFO] Checking activity reminders 
[2026-04-11 12:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:36] [INFO] Checking activity reminders 
[2026-04-11 12:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:14:58] [INFO] Checking activity reminders 
[2026-04-11 12:14:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:14:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:05] [INFO] Checking activity reminders 
[2026-04-11 12:15:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:07] [INFO] Checking activity reminders 
[2026-04-11 12:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:28] [INFO] Checking activity reminders 
[2026-04-11 12:15:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:35] [INFO] Checking activity reminders 
[2026-04-11 12:15:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:37] [INFO] Checking activity reminders 
[2026-04-11 12:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:15:58] [INFO] Checking activity reminders 
[2026-04-11 12:15:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:15:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:05] [INFO] Checking activity reminders 
[2026-04-11 12:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:07] [INFO] Checking activity reminders 
[2026-04-11 12:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:28] [INFO] Checking activity reminders 
[2026-04-11 12:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:30] [INFO] Activity save request {"post_data":{"contact_id":"11361","deal_id":"11304","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال 405 تماس ریجک \r\nارسال لینک عمومی در روبیکا ","activity_duration":"1","direction":"outgoing","current_stage":"آکادمی هوش خودرو","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 12:16:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11361","note_was_empty":true}
[2026-04-11 12:16:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"11361","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:30] [INFO] Updating virtual stage {"contact_id":"11361","stage_name":"deal_registered","force":false}
[2026-04-11 12:16:30] [INFO] Virtual stage successfully saved {"contact_id":"11361","stage_name":"deal_registered"}
[2026-04-11 12:16:30] [INFO] Virtual stage updated after activity save {"contact_id":"11361"}
[2026-04-11 12:16:30] [INFO] Pipeline stage updated after activity save {"deal_id":"11304","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 12:16:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da0a660faef4.42847336","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69da0a660faef4.42847336"}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:30] [INFO] Updating virtual stage {"contact_id":"11361","stage_name":"deal_registered","force":false}
[2026-04-11 12:16:30] [INFO] Virtual stage successfully saved {"contact_id":"11361","stage_name":"deal_registered"}
[2026-04-11 12:16:30] [INFO] Virtual stage updated after activity save {"contact_id":"11361"}
[2026-04-11 12:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11361","person_id":"19502"}
[2026-04-11 12:16:35] [INFO] Checking activity reminders 
[2026-04-11 12:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:37] [INFO] Checking activity reminders 
[2026-04-11 12:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:16:42] [INFO] Checking activity reminders 
[2026-04-11 12:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:48] [INFO] Checking activity reminders 
[2026-04-11 12:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:16:58] [INFO] Checking activity reminders 
[2026-04-11 12:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:07] [INFO] Checking activity reminders 
[2026-04-11 12:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:11] [INFO] generateDealTitle result {"contact_id":"20519","person_name":"جواد نریمانی","mobile":"9130045845","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130045845"}
[2026-04-11 12:17:18] [INFO] Checking activity reminders 
[2026-04-11 12:17:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:28] [INFO] Checking activity reminders 
[2026-04-11 12:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"20519","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 12:17:31","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 12:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"20519","is_new_deal":true}
[2026-04-11 12:17:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 12:17:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 12:17:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 12:17:31] [INFO] getContactPrimaryPhone called {"contact_id":"20519"}
[2026-04-11 12:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:31] [INFO] getContactPrimaryPhone result {"contact_id":"20519","person_found":true,"primary_phone":"9130045845"}
[2026-04-11 12:17:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130045845"}
[2026-04-11 12:17:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130045845","contact_id":"20519","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 12:17:31"}
[2026-04-11 12:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:31] [INFO] generateDealTitle result {"contact_id":"20519","person_name":"جواد نریمانی","mobile":"9130045845","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9130045845"}
[2026-04-11 12:17:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20519","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 12:17:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20519","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 12:17:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20519","title":"معامله دوم 9130045845 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9130045845","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد نریمانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-11 12:17:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 12:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-11 12:17:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20519","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130045845 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-11 12:17:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 12:17:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:17:37] [INFO] Checking activity reminders 
[2026-04-11 12:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:48] [INFO] Checking activity reminders 
[2026-04-11 12:17:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:17:58] [INFO] Checking activity reminders 
[2026-04-11 12:17:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:17:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:07] [INFO] Checking activity reminders 
[2026-04-11 12:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:18] [INFO] Checking activity reminders 
[2026-04-11 12:18:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:18:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:28] [INFO] Checking activity reminders 
[2026-04-11 12:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:37] [INFO] Checking activity reminders 
[2026-04-11 12:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:48] [INFO] Checking activity reminders 
[2026-04-11 12:18:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:18:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:18:54] [INFO] Activity save request {"post_data":{"contact_id":"20519","deal_id":"local_69da0aa331c420.57299180","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کارمند رسمی فولاد مبارکه \/ اصفهان \r\nدر جنگ بیکار شده \r\nگفتن برو خونه تا یکناهه بدون حقوق \r\nبراش نوسانات و صندوق هارو توضیح دادم \/ درامد غیرفعال \r\nارسال شماره کارت ملت در بله \r\n6 ماهه بدون پ\r\nشتیبانی \r\n","activity_duration":"8","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:18:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 12:18:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:18:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20519","note_was_empty":true}
[2026-04-11 12:18:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"20519","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:18:54] [INFO] Updating virtual stage {"contact_id":"20519","stage_name":"deal_registered","force":false}
[2026-04-11 12:18:54] [INFO] Virtual stage successfully saved {"contact_id":"20519","stage_name":"deal_registered"}
[2026-04-11 12:18:54] [INFO] Virtual stage updated after activity save {"contact_id":"20519"}
[2026-04-11 12:18:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69da0aa331c420.57299180","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 12:18:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da0af6c6a871.77898253","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:18:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69da0af6c6a871.77898253"}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:18:54] [INFO] Updating virtual stage {"contact_id":"20519","stage_name":"deal_registered","force":false}
[2026-04-11 12:18:54] [INFO] Virtual stage successfully saved {"contact_id":"20519","stage_name":"deal_registered"}
[2026-04-11 12:18:54] [INFO] Virtual stage updated after activity save {"contact_id":"20519"}
[2026-04-11 12:18:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20519","person_id":"20256"}
[2026-04-11 12:19:01] [INFO] Checking activity reminders 
[2026-04-11 12:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:19:07] [INFO] Checking activity reminders 
[2026-04-11 12:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:19:37] [INFO] Checking activity reminders 
[2026-04-11 12:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:20:04] [INFO] Checking activity reminders 
[2026-04-11 12:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:20:34] [INFO] Checking activity reminders 
[2026-04-11 12:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:21:08] [INFO] Checking activity reminders 
[2026-04-11 12:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:21:08] [INFO] Checking activity reminders 
[2026-04-11 12:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:21:38] [INFO] Checking activity reminders 
[2026-04-11 12:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:22:09] [INFO] Checking activity reminders 
[2026-04-11 12:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:22:39] [INFO] Checking activity reminders 
[2026-04-11 12:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:23:13] [INFO] Checking activity reminders 
[2026-04-11 12:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:23:43] [INFO] Checking activity reminders 
[2026-04-11 12:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:24:13] [INFO] Checking activity reminders 
[2026-04-11 12:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:24:43] [INFO] Checking activity reminders 
[2026-04-11 12:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:25:17] [INFO] Checking activity reminders 
[2026-04-11 12:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:25:47] [INFO] Checking activity reminders 
[2026-04-11 12:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:26:12] [INFO] Checking activity reminders 
[2026-04-11 12:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:26:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12738","deal_id":"local_69d695c9924a37.26034199","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 12:26:15","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 12:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12738","is_new_deal":false}
[2026-04-11 12:26:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 12:26:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 12:26:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 12:26:15] [INFO] getContactPrimaryPhone called {"contact_id":"12738"}
[2026-04-11 12:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:15] [INFO] getContactPrimaryPhone result {"contact_id":"12738","person_found":true,"primary_phone":"9124938901"}
[2026-04-11 12:26:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124938901"}
[2026-04-11 12:26:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124938901","contact_id":"12738","deal_id":"local_69d695c9924a37.26034199","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 12:26:15"}
[2026-04-11 12:26:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d695c9924a37.26034199","contact_id":"12738","existing_deal_found":true,"existing_contact_id":"12738","existing_title":"معامله دوم 9124938901 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 12:26:15"}
[2026-04-11 12:26:15] [INFO] DealController.save validated payments {"deal_id":"local_69d695c9924a37.26034199","contact_id":"12738","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 12:26:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12738","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 12:26:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d695c9924a37.26034199","contact_didar_id":"12738","title":"معامله دوم 9124938901 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124938901","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حمیدیان حمیدیان","existing_deal":"YES","existing_deal_id":"local_69d695c9924a37.26034199","existing_deal_status":"Pending","server_time":"2026-04-11 12:26:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 12:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d695c9924a37.26034199","contact_id":"12738","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124938901 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 12:26:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 12:26:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Activity save request {"post_data":{"contact_id":"12738","deal_id":"local_69d695c9924a37.26034199","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 12:26:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12738","note_was_empty":true}
[2026-04-11 12:26:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"12738","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Updating virtual stage {"contact_id":"12738","stage_name":"deal_registered","force":false}
[2026-04-11 12:26:31] [INFO] Virtual stage successfully saved {"contact_id":"12738","stage_name":"deal_registered"}
[2026-04-11 12:26:31] [INFO] Virtual stage updated after activity save {"contact_id":"12738"}
[2026-04-11 12:26:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d695c9924a37.26034199","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 12:26:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da0cbfa9ad79.50927753","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69da0cbfa9ad79.50927753"}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:31] [INFO] Updating virtual stage {"contact_id":"12738","stage_name":"deal_registered","force":false}
[2026-04-11 12:26:31] [INFO] Virtual stage successfully saved {"contact_id":"12738","stage_name":"deal_registered"}
[2026-04-11 12:26:31] [INFO] Virtual stage updated after activity save {"contact_id":"12738"}
[2026-04-11 12:26:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12738","person_id":"19004"}
[2026-04-11 12:26:42] [INFO] Checking activity reminders 
[2026-04-11 12:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:27:12] [INFO] Checking activity reminders 
[2026-04-11 12:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:27:42] [INFO] Checking activity reminders 
[2026-04-11 12:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:28:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 12:28:12] [INFO] Checking activity reminders 
[2026-04-11 12:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:28:42] [INFO] Checking activity reminders 
[2026-04-11 12:28:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:28:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:29:12] [INFO] Checking activity reminders 
[2026-04-11 12:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:29:42] [INFO] Checking activity reminders 
[2026-04-11 12:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:30:12] [INFO] Checking activity reminders 
[2026-04-11 12:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:30:42] [INFO] Checking activity reminders 
[2026-04-11 12:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:30:46] [INFO] Checking activity reminders 
[2026-04-11 12:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:31:17] [INFO] Checking activity reminders 
[2026-04-11 12:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:31:47] [INFO] Checking activity reminders 
[2026-04-11 12:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:32:00] [INFO] Checking activity reminders 
[2026-04-11 12:32:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:32:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:32:17] [INFO] Checking activity reminders 
[2026-04-11 12:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:32:31] [INFO] Checking activity reminders 
[2026-04-11 12:32:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:32:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:32:47] [INFO] Checking activity reminders 
[2026-04-11 12:32:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:32:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:33:01] [INFO] Checking activity reminders 
[2026-04-11 12:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:33:17] [INFO] Checking activity reminders 
[2026-04-11 12:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:33:31] [INFO] Checking activity reminders 
[2026-04-11 12:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:33:47] [INFO] Checking activity reminders 
[2026-04-11 12:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:34:01] [INFO] Checking activity reminders 
[2026-04-11 12:34:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:34:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:34:17] [INFO] Checking activity reminders 
[2026-04-11 12:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:34:31] [INFO] Checking activity reminders 
[2026-04-11 12:34:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:34:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:34:47] [INFO] Checking activity reminders 
[2026-04-11 12:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:35:01] [INFO] Checking activity reminders 
[2026-04-11 12:35:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:35:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:35:17] [INFO] Checking activity reminders 
[2026-04-11 12:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:35:31] [INFO] Checking activity reminders 
[2026-04-11 12:35:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:35:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:35:47] [INFO] Checking activity reminders 
[2026-04-11 12:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:36:01] [INFO] Checking activity reminders 
[2026-04-11 12:36:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:36:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:36:18] [INFO] Checking activity reminders 
[2026-04-11 12:36:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:36:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:36:31] [INFO] Checking activity reminders 
[2026-04-11 12:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:36:48] [INFO] Checking activity reminders 
[2026-04-11 12:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:37:02] [INFO] Checking activity reminders 
[2026-04-11 12:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:37:18] [INFO] Checking activity reminders 
[2026-04-11 12:37:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:37:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:37:22] [INFO] Checking activity reminders 
[2026-04-11 12:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:37:32] [INFO] Checking activity reminders 
[2026-04-11 12:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:37:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"869","deal_id":"local_69d690c16d1234.46670556","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 12:37:35","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 12:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 12:37:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"869","is_new_deal":false}
[2026-04-11 12:37:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 12:37:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 12:37:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 12:37:35] [INFO] getContactPrimaryPhone called {"contact_id":"869"}
[2026-04-11 12:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 12:37:35] [INFO] getContactPrimaryPhone result {"contact_id":"869","person_found":true,"primary_phone":"9334633943"}
[2026-04-11 12:37:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9334633943"}
[2026-04-11 12:37:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9334633943","contact_id":"869","deal_id":"local_69d690c16d1234.46670556","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 12:37:35"}
[2026-04-11 12:37:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d690c16d1234.46670556","contact_id":"869","existing_deal_found":true,"existing_contact_id":"869","existing_title":"معامله سوم 9334633943 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 12:37:35"}
[2026-04-11 12:37:35] [INFO] DealController.save validated payments {"deal_id":"local_69d690c16d1234.46670556","contact_id":"869","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 12:37:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"869","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 12:37:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d690c16d1234.46670556","contact_didar_id":"869","title":"معامله سوم 9334633943 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9334633943","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امید رحیمی","existing_deal":"YES","existing_deal_id":"local_69d690c16d1234.46670556","existing_deal_status":"Pending","server_time":"2026-04-11 12:37:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 12:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 12:37:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d690c16d1234.46670556","contact_id":"869","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9334633943 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 12:37:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 12:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 12:37:53] [INFO] Checking activity reminders 
[2026-04-11 12:37:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:37:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:38:02] [INFO] Checking activity reminders 
[2026-04-11 12:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:38:23] [INFO] Checking activity reminders 
[2026-04-11 12:38:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:38:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:38:32] [INFO] Checking activity reminders 
[2026-04-11 12:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:38:53] [INFO] Checking activity reminders 
[2026-04-11 12:38:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:38:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:39:02] [INFO] Checking activity reminders 
[2026-04-11 12:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:39:23] [INFO] Checking activity reminders 
[2026-04-11 12:39:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:39:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:39:32] [INFO] Checking activity reminders 
[2026-04-11 12:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:39:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:39:53] [INFO] Checking activity reminders 
[2026-04-11 12:39:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:39:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:40:02] [INFO] Checking activity reminders 
[2026-04-11 12:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:40:10] [INFO] Activity save request {"post_data":{"contact_id":"1584","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نقد و چک عضو کانال با شایسته بود \/ 405 هست","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 12:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:40:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 12:40:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 12:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:40:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1584","note_was_empty":true}
[2026-04-11 12:40:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"1584","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 12:40:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da0ff2027ed2.59532664","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 12:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:40:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69da0ff2027ed2.59532664"}
[2026-04-11 12:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:40:10] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-11 12:40:10] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-11 12:40:10] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-11 12:40:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-11 12:40:23] [INFO] Checking activity reminders 
[2026-04-11 12:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:40:32] [INFO] Checking activity reminders 
[2026-04-11 12:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:40:53] [INFO] Checking activity reminders 
[2026-04-11 12:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:41:02] [INFO] Checking activity reminders 
[2026-04-11 12:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:41:24] [INFO] Checking activity reminders 
[2026-04-11 12:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:41:32] [INFO] Checking activity reminders 
[2026-04-11 12:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:41:54] [INFO] Checking activity reminders 
[2026-04-11 12:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:42:03] [INFO] Checking activity reminders 
[2026-04-11 12:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:42:24] [INFO] Checking activity reminders 
[2026-04-11 12:42:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:42:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:42:33] [INFO] Checking activity reminders 
[2026-04-11 12:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:42:54] [INFO] Checking activity reminders 
[2026-04-11 12:42:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:42:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:43:03] [INFO] Checking activity reminders 
[2026-04-11 12:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:43:24] [INFO] Checking activity reminders 
[2026-04-11 12:43:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:43:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:43:33] [INFO] Checking activity reminders 
[2026-04-11 12:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:43:55] [INFO] Checking activity reminders 
[2026-04-11 12:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:44:03] [INFO] Checking activity reminders 
[2026-04-11 12:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21217","person_id":"19924"}
[2026-04-11 12:44:25] [INFO] Checking activity reminders 
[2026-04-11 12:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:44:33] [INFO] Checking activity reminders 
[2026-04-11 12:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:44:55] [INFO] Checking activity reminders 
[2026-04-11 12:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:45:25] [INFO] Checking activity reminders 
[2026-04-11 12:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:45:55] [INFO] Checking activity reminders 
[2026-04-11 12:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:46:25] [INFO] Checking activity reminders 
[2026-04-11 12:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:46:56] [INFO] Checking activity reminders 
[2026-04-11 12:46:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:46:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:47:26] [INFO] Checking activity reminders 
[2026-04-11 12:47:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:47:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:47:56] [INFO] Checking activity reminders 
[2026-04-11 12:47:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:47:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:48:26] [INFO] Checking activity reminders 
[2026-04-11 12:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:48:56] [INFO] Checking activity reminders 
[2026-04-11 12:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:49:18] [INFO] Checking activity reminders 
[2026-04-11 12:49:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:49:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:49:48] [INFO] Checking activity reminders 
[2026-04-11 12:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:50:18] [INFO] Checking activity reminders 
[2026-04-11 12:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:50:48] [INFO] Checking activity reminders 
[2026-04-11 12:50:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:50:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:51:18] [INFO] Checking activity reminders 
[2026-04-11 12:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:51:49] [INFO] Checking activity reminders 
[2026-04-11 12:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:52:19] [INFO] Checking activity reminders 
[2026-04-11 12:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:52:49] [INFO] Checking activity reminders 
[2026-04-11 12:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:53:19] [INFO] Checking activity reminders 
[2026-04-11 12:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:53:49] [INFO] Checking activity reminders 
[2026-04-11 12:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:54:19] [INFO] Checking activity reminders 
[2026-04-11 12:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:54:50] [INFO] Checking activity reminders 
[2026-04-11 12:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:55:09] [INFO] Checking activity reminders 
[2026-04-11 12:55:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:55:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:55:29] [INFO] Checking activity reminders 
[2026-04-11 12:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:55:30] [INFO] Checking activity reminders 
[2026-04-11 12:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:55:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9084","person_id":"12485"}
[2026-04-11 12:55:59] [INFO] Checking activity reminders 
[2026-04-11 12:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:56:00] [INFO] Checking activity reminders 
[2026-04-11 12:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:56:29] [INFO] Lead update received {"contact_id":"9084","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 12:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9084","person_id":"12485"}
[2026-04-11 12:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9084","person_id":"12485"}
[2026-04-11 12:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9084","person_id":"12485"}
[2026-04-11 12:56:29] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"9084"}
[2026-04-11 12:56:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9084","person_id":"12485"}
[2026-04-11 12:56:30] [INFO] Checking activity reminders 
[2026-04-11 12:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:56:47] [INFO] Checking activity reminders 
[2026-04-11 12:56:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:56:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:57:17] [INFO] Checking activity reminders 
[2026-04-11 12:57:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:57:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:57:39] [INFO] Checking activity reminders 
[2026-04-11 12:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:57:48] [INFO] Checking activity reminders 
[2026-04-11 12:57:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:57:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:58:18] [INFO] Checking activity reminders 
[2026-04-11 12:58:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:58:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:58:48] [INFO] Checking activity reminders 
[2026-04-11 12:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:59:18] [INFO] Checking activity reminders 
[2026-04-11 12:59:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:59:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 12:59:48] [INFO] Checking activity reminders 
[2026-04-11 12:59:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 12:59:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:00:18] [INFO] Checking activity reminders 
[2026-04-11 13:00:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:00:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:00:48] [INFO] Checking activity reminders 
[2026-04-11 13:00:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:00:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"check_reminders"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_person_profile"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:01:19] [INFO] Checking activity reminders 
[2026-04-11 13:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:01:49] [INFO] Checking activity reminders 
[2026-04-11 13:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:02:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:02:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"check_reminders"}
[2026-04-11 13:02:02] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 13:02:19] [INFO] Checking activity reminders 
[2026-04-11 13:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:02:49] [INFO] Checking activity reminders 
[2026-04-11 13:02:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:02:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:02:50] [INFO] Checking activity reminders 
[2026-04-11 13:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-11 13:03:19] [INFO] Checking activity reminders 
[2026-04-11 13:03:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:03:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:03:49] [INFO] Checking activity reminders 
[2026-04-11 13:03:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:03:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:04:03] [INFO] Checking activity reminders 
[2026-04-11 13:04:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:04:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:04:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:04:19] [INFO] Checking activity reminders 
[2026-04-11 13:04:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:04:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:04:33] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:33] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:49] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:49] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:55] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:55] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:55] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:56] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:57] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:57] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:57] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:04:59] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:03] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:03] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:03] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:08] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:10] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:10] [ERROR] Database connection failed {"exception":{"message":"SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '\/var\/lib\/mysql\/mysql.sock' (2)","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php","line":30,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(30): PDO->__construct()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Database\/Connection.php(51): App\\Database\\Connection->__construct()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/app\/bootstrap.php(46): App\\Database\\Connection::getInstance()\n#3 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(27): require('\/home\/hanafiv1\/...')\n#4 {main}"}}
[2026-04-11 13:05:15] [INFO] Checking activity reminders 
[2026-04-11 13:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Activity save request {"post_data":{"contact_id":"13157","deal_id":"local_69d68d8a19ca04.42388963","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"\\یگیری کردم میگه با خانومم مشورت کردم فعلا خونه رو تموم کنیم امسال نمیتونم باشم \\ول اومد دستم اطلاع میدم","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:05:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13157","note_was_empty":true}
[2026-04-11 13:05:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"13157","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Updating virtual stage {"contact_id":"13157","stage_name":"deal_registered","force":false}
[2026-04-11 13:05:44] [INFO] Virtual stage successfully saved {"contact_id":"13157","stage_name":"deal_registered"}
[2026-04-11 13:05:44] [INFO] Virtual stage updated after activity save {"contact_id":"13157"}
[2026-04-11 13:05:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68d8a19ca04.42388963","stage":"تماس پیگیری","status_change":null}
[2026-04-11 13:05:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da15f00a3de7.39851075","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69da15f00a3de7.39851075"}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:44] [INFO] Updating virtual stage {"contact_id":"13157","stage_name":"deal_registered","force":false}
[2026-04-11 13:05:44] [INFO] Virtual stage successfully saved {"contact_id":"13157","stage_name":"deal_registered"}
[2026-04-11 13:05:44] [INFO] Virtual stage updated after activity save {"contact_id":"13157"}
[2026-04-11 13:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13157","person_id":"16406"}
[2026-04-11 13:05:45] [INFO] Checking activity reminders 
[2026-04-11 13:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:05:49] [INFO] Checking activity reminders 
[2026-04-11 13:05:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:05:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:05:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:06:15] [INFO] Checking activity reminders 
[2026-04-11 13:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:06:20] [INFO] Checking activity reminders 
[2026-04-11 13:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:06:45] [INFO] Checking activity reminders 
[2026-04-11 13:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:06:50] [INFO] Checking activity reminders 
[2026-04-11 13:06:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:06:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:07:15] [INFO] Checking activity reminders 
[2026-04-11 13:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:07:20] [INFO] Checking activity reminders 
[2026-04-11 13:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:07:45] [INFO] Checking activity reminders 
[2026-04-11 13:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:07:50] [INFO] Checking activity reminders 
[2026-04-11 13:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:08:15] [INFO] Checking activity reminders 
[2026-04-11 13:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:08:20] [INFO] Checking activity reminders 
[2026-04-11 13:08:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:08:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:08:45] [INFO] Checking activity reminders 
[2026-04-11 13:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:08:50] [INFO] Checking activity reminders 
[2026-04-11 13:08:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:08:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:09:15] [INFO] Checking activity reminders 
[2026-04-11 13:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:09:20] [INFO] Checking activity reminders 
[2026-04-11 13:09:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:09:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:09:46] [INFO] Checking activity reminders 
[2026-04-11 13:09:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:09:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:09:51] [INFO] Checking activity reminders 
[2026-04-11 13:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:10:16] [INFO] Checking activity reminders 
[2026-04-11 13:10:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:10:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:10:21] [INFO] Checking activity reminders 
[2026-04-11 13:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:10:46] [INFO] Checking activity reminders 
[2026-04-11 13:10:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:10:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:10:51] [INFO] Checking activity reminders 
[2026-04-11 13:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:11:16] [INFO] Checking activity reminders 
[2026-04-11 13:11:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:11:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:11:21] [INFO] Checking activity reminders 
[2026-04-11 13:11:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:11:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:11:46] [INFO] Checking activity reminders 
[2026-04-11 13:11:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:11:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:11:52] [INFO] Checking activity reminders 
[2026-04-11 13:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:12:16] [INFO] Checking activity reminders 
[2026-04-11 13:12:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:12:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:12:22] [INFO] Checking activity reminders 
[2026-04-11 13:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:12:46] [INFO] Checking activity reminders 
[2026-04-11 13:12:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:12:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:12:52] [INFO] Checking activity reminders 
[2026-04-11 13:12:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:12:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:13:16] [INFO] Checking activity reminders 
[2026-04-11 13:13:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:13:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:13:22] [INFO] Checking activity reminders 
[2026-04-11 13:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:13:46] [INFO] Checking activity reminders 
[2026-04-11 13:13:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:13:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:13:52] [INFO] Checking activity reminders 
[2026-04-11 13:13:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:13:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:14:16] [INFO] Checking activity reminders 
[2026-04-11 13:14:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:14:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:14:22] [INFO] Checking activity reminders 
[2026-04-11 13:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:14:46] [INFO] Checking activity reminders 
[2026-04-11 13:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:14:52] [INFO] Checking activity reminders 
[2026-04-11 13:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:15:16] [INFO] Checking activity reminders 
[2026-04-11 13:15:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:15:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:15:22] [INFO] Checking activity reminders 
[2026-04-11 13:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:15:46] [INFO] Checking activity reminders 
[2026-04-11 13:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:15:53] [INFO] Checking activity reminders 
[2026-04-11 13:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:16:16] [INFO] Checking activity reminders 
[2026-04-11 13:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:16:23] [INFO] Checking activity reminders 
[2026-04-11 13:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:16:46] [INFO] Checking activity reminders 
[2026-04-11 13:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:16:53] [INFO] Checking activity reminders 
[2026-04-11 13:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:17:17] [INFO] Checking activity reminders 
[2026-04-11 13:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:17:23] [INFO] Checking activity reminders 
[2026-04-11 13:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:17:47] [INFO] Checking activity reminders 
[2026-04-11 13:17:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:17:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:17:53] [INFO] Checking activity reminders 
[2026-04-11 13:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:18:17] [INFO] Checking activity reminders 
[2026-04-11 13:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:18:23] [INFO] Checking activity reminders 
[2026-04-11 13:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:18:47] [INFO] Checking activity reminders 
[2026-04-11 13:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:18:53] [INFO] Checking activity reminders 
[2026-04-11 13:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:19:17] [INFO] Checking activity reminders 
[2026-04-11 13:19:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:19:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:19:23] [INFO] Checking activity reminders 
[2026-04-11 13:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:19:47] [INFO] Checking activity reminders 
[2026-04-11 13:19:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:19:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:19:53] [INFO] Checking activity reminders 
[2026-04-11 13:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:20:17] [INFO] Checking activity reminders 
[2026-04-11 13:20:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:20:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:20:23] [INFO] Checking activity reminders 
[2026-04-11 13:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:20:47] [INFO] Checking activity reminders 
[2026-04-11 13:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:20:53] [INFO] Checking activity reminders 
[2026-04-11 13:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:21:02] [INFO] Activity save request {"post_data":{"contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"6ماهه 3قسطه میزنه 13ت الان دسترسی فعال 10 اردیبهشت مبلغ دوم تسویه 28 اردیبهشت \r\nهی غر میزنه از ملک عقب موندم دید دادم شفاف کردم ","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:21:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"820","note_was_empty":true}
[2026-04-11 13:21:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"820","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:21:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:02] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-11 13:21:02] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-11 13:21:02] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-11 13:21:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bdce250d32.40067496","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 13:21:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da1986d82290.78012722","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:21:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69da1986d82290.78012722"}
[2026-04-11 13:21:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:03] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-11 13:21:03] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-11 13:21:03] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-11 13:21:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:21:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 13:21:17] [INFO] Checking activity reminders 
[2026-04-11 13:21:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:21:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:21:24] [INFO] Checking activity reminders 
[2026-04-11 13:21:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:21:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:21:47] [INFO] Checking activity reminders 
[2026-04-11 13:21:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:21:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:21:54] [INFO] Checking activity reminders 
[2026-04-11 13:21:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:21:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:22:17] [INFO] Checking activity reminders 
[2026-04-11 13:22:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:22:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:22:24] [INFO] Checking activity reminders 
[2026-04-11 13:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:22:38] [INFO] Activity save request {"post_data":{"contact_id":"869","deal_id":"local_69d690c16d1234.46670556","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کرمان\r\nفعلا برای کانال نمیخواد وارد بشه\r\nتصمیم کلی برای نداره \r\nهر زمان بخواد خودش تماس میگیره ","activity_duration":"7","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:22:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"869","note_was_empty":true}
[2026-04-11 13:22:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"869","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:38] [INFO] Updating virtual stage {"contact_id":"869","stage_name":"deal_registered","force":false}
[2026-04-11 13:22:38] [INFO] Virtual stage successfully saved {"contact_id":"869","stage_name":"deal_registered"}
[2026-04-11 13:22:38] [INFO] Virtual stage updated after activity save {"contact_id":"869"}
[2026-04-11 13:22:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d690c16d1234.46670556","stage":"تماس پیگیری","status_change":null}
[2026-04-11 13:22:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da19e69a12e8.52910363","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69da19e69a12e8.52910363"}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:38] [INFO] Updating virtual stage {"contact_id":"869","stage_name":"deal_registered","force":false}
[2026-04-11 13:22:38] [INFO] Virtual stage successfully saved {"contact_id":"869","stage_name":"deal_registered"}
[2026-04-11 13:22:38] [INFO] Virtual stage updated after activity save {"contact_id":"869"}
[2026-04-11 13:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"869","person_id":"1754"}
[2026-04-11 13:22:47] [INFO] Checking activity reminders 
[2026-04-11 13:22:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:22:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:22:54] [INFO] Checking activity reminders 
[2026-04-11 13:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:23:17] [INFO] Checking activity reminders 
[2026-04-11 13:23:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:23:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:23:24] [INFO] Checking activity reminders 
[2026-04-11 13:23:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:23:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:23:47] [INFO] Checking activity reminders 
[2026-04-11 13:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:23:54] [INFO] Checking activity reminders 
[2026-04-11 13:23:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:23:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:24:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:24:17] [INFO] Checking activity reminders 
[2026-04-11 13:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:24:24] [INFO] Checking activity reminders 
[2026-04-11 13:24:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:24:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:24:48] [INFO] Checking activity reminders 
[2026-04-11 13:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:24:54] [INFO] Checking activity reminders 
[2026-04-11 13:24:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:24:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:25:18] [INFO] Checking activity reminders 
[2026-04-11 13:25:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:25:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:25:24] [INFO] Checking activity reminders 
[2026-04-11 13:25:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:25:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:25:48] [INFO] Checking activity reminders 
[2026-04-11 13:25:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:25:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:25:54] [INFO] Checking activity reminders 
[2026-04-11 13:25:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:25:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:26:18] [INFO] Checking activity reminders 
[2026-04-11 13:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:26:25] [INFO] Checking activity reminders 
[2026-04-11 13:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:26:48] [INFO] Checking activity reminders 
[2026-04-11 13:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:26:55] [INFO] Checking activity reminders 
[2026-04-11 13:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:27:18] [INFO] Checking activity reminders 
[2026-04-11 13:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:27:25] [INFO] Checking activity reminders 
[2026-04-11 13:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:27:48] [INFO] Checking activity reminders 
[2026-04-11 13:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:27:55] [INFO] Checking activity reminders 
[2026-04-11 13:27:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:27:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:28:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21034","deal_id":"local_69d6907b12d947.87897673","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:28:16","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 13:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:28:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21034","is_new_deal":false}
[2026-04-11 13:28:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 13:28:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:28:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:28:16] [INFO] getContactPrimaryPhone called {"contact_id":"21034"}
[2026-04-11 13:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:28:16] [INFO] getContactPrimaryPhone result {"contact_id":"21034","person_found":true,"primary_phone":"9330471275"}
[2026-04-11 13:28:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330471275"}
[2026-04-11 13:28:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330471275","contact_id":"21034","deal_id":"local_69d6907b12d947.87897673","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:28:16"}
[2026-04-11 13:28:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6907b12d947.87897673","contact_id":"21034","existing_deal_found":true,"existing_contact_id":"21034","existing_title":"معامله دوم 9330471275 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:28:16"}
[2026-04-11 13:28:16] [INFO] DealController.save validated payments {"deal_id":"local_69d6907b12d947.87897673","contact_id":"21034","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 13:28:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21034","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:28:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6907b12d947.87897673","contact_didar_id":"21034","title":"معامله دوم 9330471275 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9330471275","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پوریا لطفی","existing_deal":"YES","existing_deal_id":"local_69d6907b12d947.87897673","existing_deal_status":"Pending","server_time":"2026-04-11 13:28:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 13:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:28:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6907b12d947.87897673","contact_id":"21034","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9330471275 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 13:28:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:28:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:28:18] [INFO] Checking activity reminders 
[2026-04-11 13:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:28:25] [INFO] Checking activity reminders 
[2026-04-11 13:28:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:28:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:28:49] [INFO] Checking activity reminders 
[2026-04-11 13:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:28:55] [INFO] Checking activity reminders 
[2026-04-11 13:28:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:28:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:29:19] [INFO] Checking activity reminders 
[2026-04-11 13:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:29:25] [INFO] Checking activity reminders 
[2026-04-11 13:29:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:29:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:29:49] [INFO] Checking activity reminders 
[2026-04-11 13:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:29:55] [INFO] Checking activity reminders 
[2026-04-11 13:29:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:29:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:30:19] [INFO] Checking activity reminders 
[2026-04-11 13:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:30:26] [INFO] Checking activity reminders 
[2026-04-11 13:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:30:49] [INFO] Checking activity reminders 
[2026-04-11 13:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:30:56] [INFO] Checking activity reminders 
[2026-04-11 13:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:31:26] [INFO] Checking activity reminders 
[2026-04-11 13:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:31:56] [INFO] Activity save request {"post_data":{"contact_id":"21034","deal_id":"local_69d6907b12d947.87897673","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه در سال 404 تبدیل به واحد  مصرفی شد \r\nاصلا نقدینگی نداره \r\nبه محض داشتن نقدینگی و سرمایه مجدد وارد کانل میشه \r\nپیام در بله ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:31:56] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21034","note_was_empty":true}
[2026-04-11 13:31:56] [INFO] Didar write disabled; saving activity locally {"contact_id":"21034","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Updating virtual stage {"contact_id":"21034","stage_name":"deal_registered","force":false}
[2026-04-11 13:31:56] [INFO] Virtual stage successfully saved {"contact_id":"21034","stage_name":"deal_registered"}
[2026-04-11 13:31:56] [INFO] Virtual stage updated after activity save {"contact_id":"21034"}
[2026-04-11 13:31:56] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6907b12d947.87897673","stage":"تماس پیگیری","status_change":null}
[2026-04-11 13:31:56] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da1c143f7379.13083920","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Activity saved successfully {"activity_id":"local_activity_69da1c143f7379.13083920"}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Updating virtual stage {"contact_id":"21034","stage_name":"deal_registered","force":false}
[2026-04-11 13:31:56] [INFO] Virtual stage successfully saved {"contact_id":"21034","stage_name":"deal_registered"}
[2026-04-11 13:31:56] [INFO] Virtual stage updated after activity save {"contact_id":"21034"}
[2026-04-11 13:31:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21034","person_id":"1504"}
[2026-04-11 13:31:56] [INFO] Checking activity reminders 
[2026-04-11 13:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:32:26] [INFO] Checking activity reminders 
[2026-04-11 13:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:37:27] [INFO] Checking activity reminders 
[2026-04-11 13:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:37:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1817","person_id":"4257"}
[2026-04-11 13:37:57] [INFO] Checking activity reminders 
[2026-04-11 13:37:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:37:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:38:27] [INFO] Checking activity reminders 
[2026-04-11 13:38:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:38:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:38:57] [INFO] Checking activity reminders 
[2026-04-11 13:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:39:27] [INFO] Checking activity reminders 
[2026-04-11 13:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:39:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 13:39:27] [INFO] Checking activity reminders 
[2026-04-11 13:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:39:57] [INFO] Checking activity reminders 
[2026-04-11 13:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:40:02] [INFO] Checking activity reminders 
[2026-04-11 13:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:40:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:40:27] [INFO] Checking activity reminders 
[2026-04-11 13:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:40:32] [INFO] Checking activity reminders 
[2026-04-11 13:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:40:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"8402","deal_id":"local_69d68f7a61c4a9.45750519","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:40:55","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 13:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:40:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"8402","is_new_deal":false}
[2026-04-11 13:40:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 13:40:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:40:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:40:55] [INFO] getContactPrimaryPhone called {"contact_id":"8402"}
[2026-04-11 13:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:40:55] [INFO] getContactPrimaryPhone result {"contact_id":"8402","person_found":true,"primary_phone":"9198308144"}
[2026-04-11 13:40:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198308144"}
[2026-04-11 13:40:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198308144","contact_id":"8402","deal_id":"local_69d68f7a61c4a9.45750519","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:40:55"}
[2026-04-11 13:40:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68f7a61c4a9.45750519","contact_id":"8402","existing_deal_found":true,"existing_contact_id":"8402","existing_title":"معامله پنجم 9198308144 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:40:55"}
[2026-04-11 13:40:55] [INFO] DealController.save validated payments {"deal_id":"local_69d68f7a61c4a9.45750519","contact_id":"8402","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 13:40:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"8402","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:40:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68f7a61c4a9.45750519","contact_didar_id":"8402","title":"معامله پنجم 9198308144 | کانال VIP با پشتیبانی","base_title_used":"معامله پنجم 9198308144","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سیدحسین محمدی","existing_deal":"YES","existing_deal_id":"local_69d68f7a61c4a9.45750519","existing_deal_status":"Pending","server_time":"2026-04-11 13:40:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 13:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:40:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68f7a61c4a9.45750519","contact_id":"8402","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پنجم 9198308144 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 13:40:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:02] [INFO] Checking activity reminders 
[2026-04-11 13:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:41:11] [INFO] Checking activity reminders 
[2026-04-11 13:41:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:41:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:41:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:41:11","session_id":"k2i10ivn6l764dafdcqdoclgj1"}
[2026-04-11 13:41:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:41:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"820","is_new_deal":false}
[2026-04-11 13:41:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:41:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:41:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:41:11] [INFO] getContactPrimaryPhone called {"contact_id":"820"}
[2026-04-11 13:41:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:41:11] [INFO] getContactPrimaryPhone result {"contact_id":"820","person_found":true,"primary_phone":"9174414232"}
[2026-04-11 13:41:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174414232"}
[2026-04-11 13:41:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174414232","contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 13:41:11"}
[2026-04-11 13:41:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","existing_deal_found":true,"existing_contact_id":"820","existing_title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 13:41:11"}
[2026-04-11 13:41:11] [INFO] DealController.save validated payments {"deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 13:41:11] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"820","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:41:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4bdce250d32.40067496","contact_didar_id":"820","title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9174414232","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رزمجویی رزمجویی","existing_deal":"YES","existing_deal_id":"local_69d4bdce250d32.40067496","existing_deal_status":"Pending","server_time":"2026-04-11 13:41:11","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-11 13:41:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:41:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-11 13:41:11","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:41:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:41:14] [INFO] Activity save request {"post_data":{"contact_id":"8402","deal_id":"local_69d68f7a61c4a9.45750519","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:41:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8402","note_was_empty":true}
[2026-04-11 13:41:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"8402","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:14] [INFO] Updating virtual stage {"contact_id":"8402","stage_name":"deal_registered","force":false}
[2026-04-11 13:41:14] [INFO] Virtual stage successfully saved {"contact_id":"8402","stage_name":"deal_registered"}
[2026-04-11 13:41:14] [INFO] Virtual stage updated after activity save {"contact_id":"8402"}
[2026-04-11 13:41:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68f7a61c4a9.45750519","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 13:41:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da1e42886a46.98550966","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69da1e42886a46.98550966"}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:14] [INFO] Updating virtual stage {"contact_id":"8402","stage_name":"deal_registered","force":false}
[2026-04-11 13:41:14] [INFO] Virtual stage successfully saved {"contact_id":"8402","stage_name":"deal_registered"}
[2026-04-11 13:41:14] [INFO] Virtual stage updated after activity save {"contact_id":"8402"}
[2026-04-11 13:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8402","person_id":"319"}
[2026-04-11 13:41:32] [INFO] Checking activity reminders 
[2026-04-11 13:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:41:42] [INFO] Checking activity reminders 
[2026-04-11 13:41:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:41:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:42:02] [INFO] Checking activity reminders 
[2026-04-11 13:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:42:32] [INFO] Checking activity reminders 
[2026-04-11 13:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:42:32] [INFO] Checking activity reminders 
[2026-04-11 13:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:42:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:43:02] [INFO] Checking activity reminders 
[2026-04-11 13:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:43:02] [INFO] Checking activity reminders 
[2026-04-11 13:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:43:32] [INFO] Checking activity reminders 
[2026-04-11 13:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:43:32] [INFO] Checking activity reminders 
[2026-04-11 13:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:44:02] [INFO] Checking activity reminders 
[2026-04-11 13:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:44:02] [INFO] Checking activity reminders 
[2026-04-11 13:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:44:32] [INFO] Checking activity reminders 
[2026-04-11 13:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:44:33] [INFO] Checking activity reminders 
[2026-04-11 13:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:44:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:44:41","session_id":"k2i10ivn6l764dafdcqdoclgj1"}
[2026-04-11 13:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:44:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"820","is_new_deal":false}
[2026-04-11 13:44:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:44:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:44:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 13:44:41] [INFO] getContactPrimaryPhone called {"contact_id":"820"}
[2026-04-11 13:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:44:41] [INFO] getContactPrimaryPhone result {"contact_id":"820","person_found":true,"primary_phone":"9174414232"}
[2026-04-11 13:44:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174414232"}
[2026-04-11 13:44:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174414232","contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 13:44:41"}
[2026-04-11 13:44:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","existing_deal_found":true,"existing_contact_id":"820","existing_title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 13:44:41"}
[2026-04-11 13:44:41] [INFO] DealController.save validated payments {"deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 13:44:41] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"820","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:44:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4bdce250d32.40067496","contact_didar_id":"820","title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9174414232","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":13000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"رزمجویی رزمجویی","existing_deal":"YES","existing_deal_id":"local_69d4bdce250d32.40067496","existing_deal_status":"Pending","server_time":"2026-04-11 13:44:41","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-11 13:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:44:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4bdce250d32.40067496","contact_id":"820","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9174414232 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":13000000,"server_time":"2026-04-11 13:44:41","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Activity save request {"post_data":{"contact_id":"820","deal_id":"local_69d4bdce250d32.40067496","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"واریز شد 13ت دسترسی فعال ","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:45:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"820","note_was_empty":true}
[2026-04-11 13:45:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"820","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-11 13:45:01] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-11 13:45:01] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-11 13:45:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bdce250d32.40067496","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 13:45:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da1f25295493.14466524","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69da1f25295493.14466524"}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:01] [INFO] Updating virtual stage {"contact_id":"820","stage_name":"deal_registered","force":false}
[2026-04-11 13:45:01] [INFO] Virtual stage successfully saved {"contact_id":"820","stage_name":"deal_registered"}
[2026-04-11 13:45:01] [INFO] Virtual stage updated after activity save {"contact_id":"820"}
[2026-04-11 13:45:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 13:45:03] [INFO] Checking activity reminders 
[2026-04-11 13:45:03] [INFO] Checking activity reminders 
[2026-04-11 13:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:45:33] [INFO] Checking activity reminders 
[2026-04-11 13:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:45:33] [INFO] Checking activity reminders 
[2026-04-11 13:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:46:03] [INFO] Checking activity reminders 
[2026-04-11 13:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:46:03] [INFO] Checking activity reminders 
[2026-04-11 13:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:46:33] [INFO] Checking activity reminders 
[2026-04-11 13:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:46:33] [INFO] Checking activity reminders 
[2026-04-11 13:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:47:03] [INFO] Checking activity reminders 
[2026-04-11 13:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:47:03] [INFO] Checking activity reminders 
[2026-04-11 13:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:47:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:47:33] [INFO] Checking activity reminders 
[2026-04-11 13:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:47:33] [INFO] Checking activity reminders 
[2026-04-11 13:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:48:03] [INFO] Checking activity reminders 
[2026-04-11 13:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:48:04] [INFO] Checking activity reminders 
[2026-04-11 13:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:48:33] [INFO] Checking activity reminders 
[2026-04-11 13:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:48:34] [INFO] Checking activity reminders 
[2026-04-11 13:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:49:03] [INFO] Checking activity reminders 
[2026-04-11 13:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:49:04] [INFO] Checking activity reminders 
[2026-04-11 13:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:49:20] [INFO] Activity save request {"post_data":{"contact_id":"649","deal_id":"local_69d6983b84a696.07775607","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"\\یگیری واریزی  5دقیقه دیگه میزنه","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:49:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"649","note_was_empty":true}
[2026-04-11 13:49:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"649","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:20] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-11 13:49:20] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-11 13:49:20] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-11 13:49:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6983b84a696.07775607","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 13:49:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da20288ae467.29707457","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69da20288ae467.29707457"}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:20] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-11 13:49:20] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-11 13:49:20] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-11 13:49:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-11 13:49:33] [INFO] Checking activity reminders 
[2026-04-11 13:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:49:34] [INFO] Checking activity reminders 
[2026-04-11 13:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:50:03] [INFO] Checking activity reminders 
[2026-04-11 13:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:50:05] [INFO] Checking activity reminders 
[2026-04-11 13:50:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:50:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:50:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:50:33] [INFO] Checking activity reminders 
[2026-04-11 13:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:50:35] [INFO] Checking activity reminders 
[2026-04-11 13:50:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:50:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:51:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12377","deal_id":"local_69d69279051628.40670198","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:51:03","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 13:51:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:51:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12377","is_new_deal":false}
[2026-04-11 13:51:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 13:51:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:51:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:51:03] [INFO] getContactPrimaryPhone called {"contact_id":"12377"}
[2026-04-11 13:51:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:51:03] [INFO] getContactPrimaryPhone result {"contact_id":"12377","person_found":true,"primary_phone":"9369923911"}
[2026-04-11 13:51:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9369923911"}
[2026-04-11 13:51:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9369923911","contact_id":"12377","deal_id":"local_69d69279051628.40670198","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:51:03"}
[2026-04-11 13:51:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d69279051628.40670198","contact_id":"12377","existing_deal_found":true,"existing_contact_id":"12377","existing_title":"معامله دوم 9369923911 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:51:03"}
[2026-04-11 13:51:03] [INFO] DealController.save validated payments {"deal_id":"local_69d69279051628.40670198","contact_id":"12377","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 13:51:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12377","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:51:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d69279051628.40670198","contact_didar_id":"12377","title":"معامله دوم 9369923911 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9369923911","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صادقی","existing_deal":"YES","existing_deal_id":"local_69d69279051628.40670198","existing_deal_status":"Pending","server_time":"2026-04-11 13:51:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 13:51:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:51:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d69279051628.40670198","contact_id":"12377","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9369923911 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 13:51:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:51:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:51:03] [INFO] Checking activity reminders 
[2026-04-11 13:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:51:05] [INFO] Checking activity reminders 
[2026-04-11 13:51:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:51:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:51:33] [INFO] Checking activity reminders 
[2026-04-11 13:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:51:35] [INFO] Checking activity reminders 
[2026-04-11 13:51:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:51:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:52:03] [INFO] Checking activity reminders 
[2026-04-11 13:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:52:05] [INFO] Checking activity reminders 
[2026-04-11 13:52:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:52:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:52:34] [INFO] Checking activity reminders 
[2026-04-11 13:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:52:35] [INFO] Checking activity reminders 
[2026-04-11 13:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:52:57] [INFO] Activity save request {"post_data":{"contact_id":"983","deal_id":"local_69d4bd470a8d20.97501450","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"\\گیری عدم \\اسخ ارسال \\یامک \\یگیری","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:52:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:52:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:52:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"983","note_was_empty":true}
[2026-04-11 13:52:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"983","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:52:57] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-11 13:52:57] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-11 13:52:57] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-11 13:52:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bd470a8d20.97501450","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 13:52:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da21014af8d1.07537002","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:52:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69da21014af8d1.07537002"}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:52:57] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-11 13:52:57] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-11 13:52:57] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-11 13:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-11 13:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:53:04] [INFO] Checking activity reminders 
[2026-04-11 13:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:53:05] [INFO] Checking activity reminders 
[2026-04-11 13:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:53:34] [INFO] Checking activity reminders 
[2026-04-11 13:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:53:35] [INFO] Checking activity reminders 
[2026-04-11 13:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:54:04] [INFO] Checking activity reminders 
[2026-04-11 13:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:54:05] [INFO] Checking activity reminders 
[2026-04-11 13:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:54:34] [INFO] Checking activity reminders 
[2026-04-11 13:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:54:36] [INFO] Checking activity reminders 
[2026-04-11 13:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:55:04] [INFO] Checking activity reminders 
[2026-04-11 13:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:55:06] [INFO] Checking activity reminders 
[2026-04-11 13:55:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:55:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:55:13] [INFO] Activity save request {"post_data":{"contact_id":"12377","deal_id":"local_69d69279051628.40670198","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه ملک شخصی خریده \/ سرمایه و نقدینگی نداره برای عضویت در کانال \r\nدوست داره بیاد در اولین فرصت پول بیاد دستش میاد تو کانال \r\nپرزنت 6 ماهه در کانال بله دیده بود \r\n","activity_duration":"8","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:55:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12377","note_was_empty":true}
[2026-04-11 13:55:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"12377","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 13:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:13] [INFO] Updating virtual stage {"contact_id":"12377","stage_name":"deal_registered","force":false}
[2026-04-11 13:55:13] [INFO] Virtual stage successfully saved {"contact_id":"12377","stage_name":"deal_registered"}
[2026-04-11 13:55:13] [INFO] Virtual stage updated after activity save {"contact_id":"12377"}
[2026-04-11 13:55:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69279051628.40670198","stage":"تماس پیگیری","status_change":null}
[2026-04-11 13:55:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da2189ed33e3.82199075","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69da2189ed33e3.82199075"}
[2026-04-11 13:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:14] [INFO] Updating virtual stage {"contact_id":"12377","stage_name":"deal_registered","force":false}
[2026-04-11 13:55:14] [INFO] Virtual stage successfully saved {"contact_id":"12377","stage_name":"deal_registered"}
[2026-04-11 13:55:14] [INFO] Virtual stage updated after activity save {"contact_id":"12377"}
[2026-04-11 13:55:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12377","person_id":"10118"}
[2026-04-11 13:55:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:55:34] [INFO] Checking activity reminders 
[2026-04-11 13:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:55:36] [INFO] Checking activity reminders 
[2026-04-11 13:55:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:55:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:56:04] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_88","deal_id":"local_69d69763c94b24.52814194","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"با خط 912 تماس بگیرم بیشتر \/ میگه بهم ریخته هستم حقوق کارگر و چک وصولی \/ فرصت میخوام اوضاش بهتر شه خبر بده","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:56:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_88","note_was_empty":true}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered","force":false}
[2026-04-11 13:56:04] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered"}
[2026-04-11 13:56:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_88"}
[2026-04-11 13:56:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d69763c94b24.52814194","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 13:56:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da21bc0694d2.59507844","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69da21bc0694d2.59507844"}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered","force":false}
[2026-04-11 13:56:04] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_88","stage_name":"deal_registered"}
[2026-04-11 13:56:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_88"}
[2026-04-11 13:56:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_88","person_id":"21165"}
[2026-04-11 13:56:04] [INFO] Checking activity reminders 
[2026-04-11 13:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:56:06] [INFO] Checking activity reminders 
[2026-04-11 13:56:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:56:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:56:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:34] [INFO] Checking activity reminders 
[2026-04-11 13:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:56:36] [INFO] Checking activity reminders 
[2026-04-11 13:56:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:56:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:56:38] [INFO] Activity save request {"post_data":{"contact_id":"9593","deal_id":"local_69d4bc40b1a1d4.49878057","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مسیج داد خانومش موافقت نکرده","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:56:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9593","note_was_empty":true}
[2026-04-11 13:56:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"9593","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:38] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-11 13:56:38] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-11 13:56:38] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-11 13:56:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bc40b1a1d4.49878057","stage":"تماس پیگیری","status_change":null}
[2026-04-11 13:56:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da21de695298.92832240","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69da21de695298.92832240"}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:38] [INFO] Updating virtual stage {"contact_id":"9593","stage_name":"deal_registered","force":false}
[2026-04-11 13:56:38] [INFO] Virtual stage successfully saved {"contact_id":"9593","stage_name":"deal_registered"}
[2026-04-11 13:56:38] [INFO] Virtual stage updated after activity save {"contact_id":"9593"}
[2026-04-11 13:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9593","person_id":"4126"}
[2026-04-11 13:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-11 13:57:04] [INFO] Checking activity reminders 
[2026-04-11 13:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:57:06] [INFO] Checking activity reminders 
[2026-04-11 13:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:57:34] [INFO] Checking activity reminders 
[2026-04-11 13:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:57:36] [INFO] Checking activity reminders 
[2026-04-11 13:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:57:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9513","deal_id":"local_69d68f55003671.24868044","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 13:57:42","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 13:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:57:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9513","is_new_deal":false}
[2026-04-11 13:57:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 13:57:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:57:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 13:57:42] [INFO] getContactPrimaryPhone called {"contact_id":"9513"}
[2026-04-11 13:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:57:42] [INFO] getContactPrimaryPhone result {"contact_id":"9513","person_found":true,"primary_phone":"9198039150"}
[2026-04-11 13:57:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9198039150"}
[2026-04-11 13:57:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9198039150","contact_id":"9513","deal_id":"local_69d68f55003671.24868044","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:57:42"}
[2026-04-11 13:57:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68f55003671.24868044","contact_id":"9513","existing_deal_found":true,"existing_contact_id":"9513","existing_title":"معامله چهارم 9198039150 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 13:57:42"}
[2026-04-11 13:57:42] [INFO] DealController.save validated payments {"deal_id":"local_69d68f55003671.24868044","contact_id":"9513","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 13:57:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9513","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 13:57:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68f55003671.24868044","contact_didar_id":"9513","title":"معامله چهارم 9198039150 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9198039150","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رضا سیفی","existing_deal":"YES","existing_deal_id":"local_69d68f55003671.24868044","existing_deal_status":"Pending","server_time":"2026-04-11 13:57:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 13:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:57:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68f55003671.24868044","contact_id":"9513","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9198039150 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 13:57:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 13:57:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Activity save request {"post_data":{"contact_id":"9513","deal_id":"local_69d68f55003671.24868044","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 13:58:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9513","note_was_empty":true}
[2026-04-11 13:58:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"9513","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Updating virtual stage {"contact_id":"9513","stage_name":"deal_registered","force":false}
[2026-04-11 13:58:01] [INFO] Virtual stage successfully saved {"contact_id":"9513","stage_name":"deal_registered"}
[2026-04-11 13:58:01] [INFO] Virtual stage updated after activity save {"contact_id":"9513"}
[2026-04-11 13:58:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68f55003671.24868044","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 13:58:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da223132b702.17263222","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69da223132b702.17263222"}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:01] [INFO] Updating virtual stage {"contact_id":"9513","stage_name":"deal_registered","force":false}
[2026-04-11 13:58:01] [INFO] Virtual stage successfully saved {"contact_id":"9513","stage_name":"deal_registered"}
[2026-04-11 13:58:01] [INFO] Virtual stage updated after activity save {"contact_id":"9513"}
[2026-04-11 13:58:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9513","person_id":"367"}
[2026-04-11 13:58:04] [INFO] Checking activity reminders 
[2026-04-11 13:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:58:06] [INFO] Checking activity reminders 
[2026-04-11 13:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:58:37] [INFO] Checking activity reminders 
[2026-04-11 13:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:59:07] [INFO] Checking activity reminders 
[2026-04-11 13:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 13:59:40] [INFO] Checking activity reminders 
[2026-04-11 13:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 13:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:00:10] [INFO] Checking activity reminders 
[2026-04-11 14:00:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:00:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:00:41] [INFO] Checking activity reminders 
[2026-04-11 14:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:01:11] [INFO] Checking activity reminders 
[2026-04-11 14:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:02:21] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 14:02:51] [INFO] Checking activity reminders 
[2026-04-11 14:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:03:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:21] [INFO] Checking activity reminders 
[2026-04-11 14:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:03:27] [INFO] Activity save request {"post_data":{"contact_id":"21638","deal_id":"local_69b73be32e0585.78940642","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم \\اسخ مجدد ارسال \\یامک \\یگیری واریزی","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:03:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21638","note_was_empty":true}
[2026-04-11 14:03:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"21638","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:27] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-04-11 14:03:27] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-04-11 14:03:27] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-04-11 14:03:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73be32e0585.78940642","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 14:03:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da237792bfa3.49710187","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69da237792bfa3.49710187"}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:27] [INFO] Updating virtual stage {"contact_id":"21638","stage_name":"deal_registered","force":false}
[2026-04-11 14:03:27] [INFO] Virtual stage successfully saved {"contact_id":"21638","stage_name":"deal_registered"}
[2026-04-11 14:03:27] [INFO] Virtual stage updated after activity save {"contact_id":"21638"}
[2026-04-11 14:03:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21638","person_id":"12229"}
[2026-04-11 14:03:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:03:51] [INFO] Checking activity reminders 
[2026-04-11 14:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:04:22] [INFO] Checking activity reminders 
[2026-04-11 14:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:04:52] [INFO] Checking activity reminders 
[2026-04-11 14:04:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:04:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:05:22] [INFO] Checking activity reminders 
[2026-04-11 14:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:05:52] [INFO] Checking activity reminders 
[2026-04-11 14:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:06:23] [INFO] Checking activity reminders 
[2026-04-11 14:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:06:53] [INFO] Checking activity reminders 
[2026-04-11 14:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:07:23] [INFO] Checking activity reminders 
[2026-04-11 14:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:07:53] [INFO] Checking activity reminders 
[2026-04-11 14:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:08:23] [INFO] Checking activity reminders 
[2026-04-11 14:08:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:08:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:08:53] [INFO] Checking activity reminders 
[2026-04-11 14:08:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:08:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:09:23] [INFO] Checking activity reminders 
[2026-04-11 14:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:09:53] [INFO] Checking activity reminders 
[2026-04-11 14:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:10:23] [INFO] Checking activity reminders 
[2026-04-11 14:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:10:53] [INFO] Checking activity reminders 
[2026-04-11 14:10:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:10:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:11:23] [INFO] Checking activity reminders 
[2026-04-11 14:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:11:53] [INFO] Checking activity reminders 
[2026-04-11 14:11:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:11:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:12:23] [INFO] Checking activity reminders 
[2026-04-11 14:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:12:54] [INFO] Checking activity reminders 
[2026-04-11 14:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:13:17] [INFO] Activity save request {"post_data":{"contact_id":"21123","deal_id":"local_69d68dcf4e9032.27886912","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرکت \\خش مواد غذایی \/ لوازم قنادی \/ اصفهان \/ \r\nمیگه تصمیم نگرفتم بابت تمدید \\ارسال شلوغ بودم نشد استفاده کنم \/ 79ت اطلاع میده نیاز \\یگیری","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:13:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21123","note_was_empty":true}
[2026-04-11 14:13:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"21123","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:17] [INFO] Updating virtual stage {"contact_id":"21123","stage_name":"deal_registered","force":false}
[2026-04-11 14:13:17] [INFO] Virtual stage successfully saved {"contact_id":"21123","stage_name":"deal_registered"}
[2026-04-11 14:13:17] [INFO] Virtual stage updated after activity save {"contact_id":"21123"}
[2026-04-11 14:13:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68dcf4e9032.27886912","stage":"تماس پیگیری","status_change":null}
[2026-04-11 14:13:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da25c55f4b79.46828196","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69da25c55f4b79.46828196"}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:17] [INFO] Updating virtual stage {"contact_id":"21123","stage_name":"deal_registered","force":false}
[2026-04-11 14:13:17] [INFO] Virtual stage successfully saved {"contact_id":"21123","stage_name":"deal_registered"}
[2026-04-11 14:13:17] [INFO] Virtual stage updated after activity save {"contact_id":"21123"}
[2026-04-11 14:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21123","person_id":"16687"}
[2026-04-11 14:13:24] [INFO] Checking activity reminders 
[2026-04-11 14:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:13:54] [INFO] Checking activity reminders 
[2026-04-11 14:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:14:24] [INFO] Checking activity reminders 
[2026-04-11 14:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:14:54] [INFO] Checking activity reminders 
[2026-04-11 14:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:15:24] [INFO] Checking activity reminders 
[2026-04-11 14:15:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:15:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:15:54] [INFO] Checking activity reminders 
[2026-04-11 14:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:16:24] [INFO] Checking activity reminders 
[2026-04-11 14:16:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:16:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:16:55] [INFO] Checking activity reminders 
[2026-04-11 14:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:17:25] [INFO] Checking activity reminders 
[2026-04-11 14:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:17:55] [INFO] Checking activity reminders 
[2026-04-11 14:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:18:25] [INFO] Checking activity reminders 
[2026-04-11 14:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:18:55] [INFO] Checking activity reminders 
[2026-04-11 14:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:19:25] [INFO] Checking activity reminders 
[2026-04-11 14:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:19:55] [INFO] Checking activity reminders 
[2026-04-11 14:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:20:25] [INFO] Checking activity reminders 
[2026-04-11 14:20:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:20:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:20:55] [INFO] Checking activity reminders 
[2026-04-11 14:20:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:20:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:21:25] [INFO] Checking activity reminders 
[2026-04-11 14:21:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:21:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:21:55] [INFO] Checking activity reminders 
[2026-04-11 14:21:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:21:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:22:26] [INFO] Checking activity reminders 
[2026-04-11 14:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:22:56] [INFO] Checking activity reminders 
[2026-04-11 14:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:34:56] [INFO] Checking activity reminders 
[2026-04-11 14:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:35:26] [INFO] Checking activity reminders 
[2026-04-11 14:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:35:57] [INFO] Checking activity reminders 
[2026-04-11 14:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:36:27] [INFO] Checking activity reminders 
[2026-04-11 14:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:36:59] [INFO] Checking activity reminders 
[2026-04-11 14:36:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:36:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:37:29] [INFO] Checking activity reminders 
[2026-04-11 14:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:37:59] [INFO] Checking activity reminders 
[2026-04-11 14:37:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:37:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:38:29] [INFO] Checking activity reminders 
[2026-04-11 14:38:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:38:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:39:06] [INFO] Checking activity reminders 
[2026-04-11 14:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:39:36] [INFO] Checking activity reminders 
[2026-04-11 14:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:40:06] [INFO] Checking activity reminders 
[2026-04-11 14:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:40:36] [INFO] Checking activity reminders 
[2026-04-11 14:40:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:40:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:41:06] [INFO] Checking activity reminders 
[2026-04-11 14:41:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:41:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:41:36] [INFO] Checking activity reminders 
[2026-04-11 14:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:42:06] [INFO] Checking activity reminders 
[2026-04-11 14:42:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:42:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:42:36] [INFO] Checking activity reminders 
[2026-04-11 14:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:43:06] [INFO] Checking activity reminders 
[2026-04-11 14:43:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:43:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:43:37] [INFO] Checking activity reminders 
[2026-04-11 14:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:44:07] [INFO] Checking activity reminders 
[2026-04-11 14:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:44:37] [INFO] Checking activity reminders 
[2026-04-11 14:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:45:07] [INFO] Checking activity reminders 
[2026-04-11 14:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:46:03] [INFO] Checking activity reminders 
[2026-04-11 14:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:46:33] [INFO] Checking activity reminders 
[2026-04-11 14:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:47:16] [INFO] Checking activity reminders 
[2026-04-11 14:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:47:46] [INFO] Checking activity reminders 
[2026-04-11 14:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"check_reminders"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"check_reminders"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_deals"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_products"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_deals"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"check_reminders"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:14] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:26] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_products"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_deals"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_deals"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:28] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:29] [INFO] Checking activity reminders 
[2026-04-11 14:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_products"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_leads"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:37] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:41] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:41] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:41] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:43] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:44] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"get_leads"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:46] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:52] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:59] [INFO] Checking activity reminders 
[2026-04-11 14:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:48:59] [WARNING] Auth check failed - not authenticated {"session_id":"nog0aoipbl1rmsv85veu77u107","session_keys":[],"action":"log_client_event"}
[2026-04-11 14:48:59] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-11 14:48:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 14:49:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:49:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 14:49:25","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 14:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:49:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-11 14:49:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 14:49:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 14:49:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 14:49:25] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-11 14:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:49:25] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-11 14:49:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-11 14:49:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 14:49:25"}
[2026-04-11 14:49:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 14:49:25"}
[2026-04-11 14:49:25] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 14:49:25] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 14:49:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-11 14:49:25","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 14:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:49:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 14:49:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 14:49:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:49:29] [INFO] Checking activity reminders 
[2026-04-11 14:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:50:00] [INFO] Checking activity reminders 
[2026-04-11 14:50:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:50:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:50:30] [INFO] Checking activity reminders 
[2026-04-11 14:50:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:50:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:51:00] [INFO] Checking activity reminders 
[2026-04-11 14:51:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:51:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:51:22] [INFO] Activity save request {"post_data":{"contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تازه زمین پدرش فروخته 60 میلیارد نقد \/ سبد چینی با استاد \r\nبرای بورس  و cip  پرزنت شد \/ اصلا اشنایی نداره \r\nدر خرید و فروش خودرو نمیخواد زمان بذاره \r\nبهش گفتم 405 بیا اگر استاد تایید دادند در بورس پول بذار \r\nارسال شماره شبا \r\n10 م بیعانه \/ فردا تسویه ","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:51:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13256","note_was_empty":true}
[2026-04-11 14:51:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"13256","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:22] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"deal_registered","force":false}
[2026-04-11 14:51:22] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"deal_registered"}
[2026-04-11 14:51:22] [INFO] Virtual stage updated after activity save {"contact_id":"13256"}
[2026-04-11 14:51:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7fc8c85ff31.51322513","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 14:51:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da2eb2676fd9.28124474","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69da2eb2676fd9.28124474"}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:22] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"deal_registered","force":false}
[2026-04-11 14:51:22] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"deal_registered"}
[2026-04-11 14:51:22] [INFO] Virtual stage updated after activity save {"contact_id":"13256"}
[2026-04-11 14:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 14:51:30] [INFO] Checking activity reminders 
[2026-04-11 14:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:52:00] [INFO] Checking activity reminders 
[2026-04-11 14:52:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:52:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:52:30] [INFO] Checking activity reminders 
[2026-04-11 14:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:52:45] [INFO] Activity save request {"post_data":{"contact_id":"3042","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"جهت نوسان گیری روی طلای فیزیکی سوال داشت \/ بهش گفتم نوسان گیری فقط در عیار و صنوق ها انجام میشه \r\n","activity_duration":"5","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:52:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:52:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:52:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3042","note_was_empty":true}
[2026-04-11 14:52:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"3042","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 14:52:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da2f05481860.75084247","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:52:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69da2f05481860.75084247"}
[2026-04-11 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:52:45] [INFO] Updating virtual stage {"contact_id":"3042","stage_name":"with_purchase","force":false}
[2026-04-11 14:52:45] [INFO] Virtual stage successfully saved {"contact_id":"3042","stage_name":"with_purchase"}
[2026-04-11 14:52:45] [INFO] Virtual stage updated after activity save {"contact_id":"3042"}
[2026-04-11 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-11 14:53:00] [INFO] Checking activity reminders 
[2026-04-11 14:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:53:30] [INFO] Checking activity reminders 
[2026-04-11 14:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:54:00] [INFO] Checking activity reminders 
[2026-04-11 14:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:54:30] [INFO] Checking activity reminders 
[2026-04-11 14:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:55:00] [INFO] Checking activity reminders 
[2026-04-11 14:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:55:31] [INFO] Checking activity reminders 
[2026-04-11 14:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:56:01] [INFO] Checking activity reminders 
[2026-04-11 14:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:56:09] [INFO] Checking activity reminders 
[2026-04-11 14:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:56:31] [INFO] Checking activity reminders 
[2026-04-11 14:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:57:01] [INFO] Checking activity reminders 
[2026-04-11 14:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:57:31] [INFO] Checking activity reminders 
[2026-04-11 14:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:58:01] [INFO] Checking activity reminders 
[2026-04-11 14:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:58:17] [INFO] Activity save request {"post_data":{"contact_id":"15491","deal_id":"local_69427f919cfb44.45541137","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا اخر هفته تسویه 9 \/ ارسال شماره کارت \r\nدر مورد cip  توضیح داده شد \/ سرمایه مازاد باید داشته باشه بالای 2 م \r\nتاکید زمان داشت بهش گفتم اصلا نمیشه تعهد زمان تو بحران داد \/ زمان بورسی مهمه ","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:58:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15491","note_was_empty":true}
[2026-04-11 14:58:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"15491","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:17] [INFO] Updating virtual stage {"contact_id":"15491","stage_name":"deal_registered","force":false}
[2026-04-11 14:58:17] [INFO] Virtual stage successfully saved {"contact_id":"15491","stage_name":"deal_registered"}
[2026-04-11 14:58:17] [INFO] Virtual stage updated after activity save {"contact_id":"15491"}
[2026-04-11 14:58:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69427f919cfb44.45541137","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 14:58:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da30518c15a6.82706778","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69da30518c15a6.82706778"}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:17] [INFO] Updating virtual stage {"contact_id":"15491","stage_name":"deal_registered","force":false}
[2026-04-11 14:58:17] [INFO] Virtual stage successfully saved {"contact_id":"15491","stage_name":"deal_registered"}
[2026-04-11 14:58:17] [INFO] Virtual stage updated after activity save {"contact_id":"15491"}
[2026-04-11 14:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15491","person_id":"14011"}
[2026-04-11 14:58:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:58:31] [INFO] Checking activity reminders 
[2026-04-11 14:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:58:55] [INFO] Checking activity reminders 
[2026-04-11 14:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:59:01] [INFO] Checking activity reminders 
[2026-04-11 14:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:59:16] [INFO] Activity save request {"post_data":{"contact_id":"17008","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"د رمورد خودرو ثبت نامی سوال داشت \r\nارسال سوال در بله \/ ارجاع به استاد ","activity_duration":"2","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 14:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:59:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 14:59:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 14:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:59:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17008","note_was_empty":true}
[2026-04-11 14:59:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"17008","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 14:59:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da308ccc50f7.19937381","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 14:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:59:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69da308ccc50f7.19937381"}
[2026-04-11 14:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:59:16] [INFO] Updating virtual stage {"contact_id":"17008","stage_name":"with_purchase","force":false}
[2026-04-11 14:59:16] [INFO] Virtual stage successfully saved {"contact_id":"17008","stage_name":"with_purchase"}
[2026-04-11 14:59:16] [INFO] Virtual stage updated after activity save {"contact_id":"17008"}
[2026-04-11 14:59:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-11 14:59:27] [INFO] Checking activity reminders 
[2026-04-11 14:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 14:59:57] [INFO] Checking activity reminders 
[2026-04-11 14:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 14:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:00:04] [INFO] Checking activity reminders 
[2026-04-11 15:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:00:54] [INFO] Checking activity reminders 
[2026-04-11 15:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:00:54] [INFO] Lead update received {"contact_id":"17261","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 15:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:00:54] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17261"}
[2026-04-11 15:00:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:01:24] [INFO] Checking activity reminders 
[2026-04-11 15:01:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:01:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:01:57] [INFO] Checking activity reminders 
[2026-04-11 15:01:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:01:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:02:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:27] [INFO] Checking activity reminders 
[2026-04-11 15:02:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:02:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:02:39] [INFO] Activity save request {"post_data":{"contact_id":"17261","deal_id":"local_694688331afe97.88015634","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:02:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17261","note_was_empty":true}
[2026-04-11 15:02:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"17261","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:39] [INFO] Updating virtual stage {"contact_id":"17261","stage_name":"deal_registered","force":false}
[2026-04-11 15:02:39] [INFO] Virtual stage successfully saved {"contact_id":"17261","stage_name":"deal_registered"}
[2026-04-11 15:02:39] [INFO] Virtual stage updated after activity save {"contact_id":"17261"}
[2026-04-11 15:02:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694688331afe97.88015634","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 15:02:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3157c4fc51.26528545","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3157c4fc51.26528545"}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:39] [INFO] Updating virtual stage {"contact_id":"17261","stage_name":"deal_registered","force":false}
[2026-04-11 15:02:39] [INFO] Virtual stage successfully saved {"contact_id":"17261","stage_name":"deal_registered"}
[2026-04-11 15:02:39] [INFO] Virtual stage updated after activity save {"contact_id":"17261"}
[2026-04-11 15:02:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:02:57] [INFO] Checking activity reminders 
[2026-04-11 15:02:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:02:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:03:31] [INFO] Checking activity reminders 
[2026-04-11 15:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:04:01] [INFO] Checking activity reminders 
[2026-04-11 15:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:04:31] [INFO] Checking activity reminders 
[2026-04-11 15:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:04:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:05:01] [INFO] Checking activity reminders 
[2026-04-11 15:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-11 15:05:31] [INFO] Checking activity reminders 
[2026-04-11 15:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:06:01] [INFO] Checking activity reminders 
[2026-04-11 15:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:06:31] [INFO] Checking activity reminders 
[2026-04-11 15:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:06:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:06:52] [INFO] Lead update received {"contact_id":"11748","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 15:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:06:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11748"}
[2026-04-11 15:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:07:02] [INFO] Checking activity reminders 
[2026-04-11 15:07:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:07:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:07:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:07:28] [INFO] Checking activity reminders 
[2026-04-11 15:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:07:32] [INFO] Checking activity reminders 
[2026-04-11 15:07:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:07:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:08:02] [INFO] Checking activity reminders 
[2026-04-11 15:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:08:32] [INFO] Checking activity reminders 
[2026-04-11 15:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:09:00] [INFO] Checking activity reminders 
[2026-04-11 15:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:09:02] [INFO] Checking activity reminders 
[2026-04-11 15:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:09:32] [INFO] Checking activity reminders 
[2026-04-11 15:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:10:02] [INFO] Checking activity reminders 
[2026-04-11 15:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:10:13] [INFO] Checking activity reminders 
[2026-04-11 15:10:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:10:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:10:32] [INFO] Checking activity reminders 
[2026-04-11 15:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:10:49] [INFO] Activity save request {"post_data":{"contact_id":"11748","deal_id":"local_695a6d59b71887.16010531","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در کسب و کارش دجار مشکل شده \/ پرزنت مشاوره کسب و کار با استاد 30 م \r\nمیگه در 404 متضرر شدم \/ بهش گفتم شما 207 فروخی طلای 12 تومانی خریده پس سود کرده \r\nمجدد در خرید و فروش طلا با استاد سود کردی در نهایت برایند کارتون مثبت بوده \r\nهر جا سود هست ضرر هم هست \r\nارز کانال با صحبت های استاد درامد زایی ایجاد کردی \r\nمیگه میترسم از استاد سوال کنم گفتم برای من بفرست \r\nدر نهایت قرار شد 6 ماهه در کانال باشه \/ مشاوره با استاد داشته باشه \r\nمشورت با همسرش \r\nبا تایید استاد بعد از مشاوره بیاد تو کانال \r\n30 دقیقه مشاوره دادم ","activity_duration":"30","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:10:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:10:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:10:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11748","note_was_empty":true}
[2026-04-11 15:10:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"11748","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:10:49] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-11 15:10:49] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-11 15:10:49] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-11 15:10:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6d59b71887.16010531","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 15:10:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3341b1fcc9.95834011","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:10:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3341b1fcc9.95834011"}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:10:49] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-11 15:10:49] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-11 15:10:49] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-11 15:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-11 15:11:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:02] [INFO] Checking activity reminders 
[2026-04-11 15:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:11:19] [INFO] Activity save request {"post_data":{"contact_id":"8904","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:11:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8904","note_was_empty":true}
[2026-04-11 15:11:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"8904","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:11:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da335f749151.37681271","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69da335f749151.37681271"}
[2026-04-11 15:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:19] [INFO] Updating virtual stage {"contact_id":"8904","stage_name":"deal_registered","force":false}
[2026-04-11 15:11:19] [INFO] Virtual stage successfully saved {"contact_id":"8904","stage_name":"deal_registered"}
[2026-04-11 15:11:19] [INFO] Virtual stage updated after activity save {"contact_id":"8904"}
[2026-04-11 15:11:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8904","person_id":"20285"}
[2026-04-11 15:11:33] [INFO] Checking activity reminders 
[2026-04-11 15:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:11:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12838","deal_id":"local_69b721a5993a91.95624195","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:11:49","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:11:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12838","is_new_deal":false}
[2026-04-11 15:11:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:11:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:11:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:11:49] [INFO] getContactPrimaryPhone called {"contact_id":"12838"}
[2026-04-11 15:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:11:49] [INFO] getContactPrimaryPhone result {"contact_id":"12838","person_found":true,"primary_phone":"9015323979"}
[2026-04-11 15:11:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9015323979"}
[2026-04-11 15:11:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9015323979","contact_id":"12838","deal_id":"local_69b721a5993a91.95624195","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:11:49"}
[2026-04-11 15:11:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b721a5993a91.95624195","contact_id":"12838","existing_deal_found":true,"existing_contact_id":"12838","existing_title":"معامله سوم 9015323979 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:11:49"}
[2026-04-11 15:11:49] [INFO] DealController.save validated payments {"deal_id":"local_69b721a5993a91.95624195","contact_id":"12838","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 15:11:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12838","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:11:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b721a5993a91.95624195","contact_didar_id":"12838","title":"معامله سوم 9015323979 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9015323979","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شکور زاده","existing_deal":"YES","existing_deal_id":"local_69b721a5993a91.95624195","existing_deal_status":"Pending","server_time":"2026-04-11 15:11:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:11:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b721a5993a91.95624195","contact_id":"12838","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9015323979 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 15:11:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:03] [INFO] Checking activity reminders 
[2026-04-11 15:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:12:06] [INFO] Activity save request {"post_data":{"contact_id":"12838","deal_id":"local_69b721a5993a91.95624195","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\nدر بله پیام ارسال ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:12:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12838","note_was_empty":true}
[2026-04-11 15:12:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"12838","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:06] [INFO] Updating virtual stage {"contact_id":"12838","stage_name":"deal_registered","force":false}
[2026-04-11 15:12:06] [INFO] Virtual stage successfully saved {"contact_id":"12838","stage_name":"deal_registered"}
[2026-04-11 15:12:06] [INFO] Virtual stage updated after activity save {"contact_id":"12838"}
[2026-04-11 15:12:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b721a5993a91.95624195","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 15:12:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da338e698381.98071403","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69da338e698381.98071403"}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:06] [INFO] Updating virtual stage {"contact_id":"12838","stage_name":"deal_registered","force":false}
[2026-04-11 15:12:06] [INFO] Virtual stage successfully saved {"contact_id":"12838","stage_name":"deal_registered"}
[2026-04-11 15:12:06] [INFO] Virtual stage updated after activity save {"contact_id":"12838"}
[2026-04-11 15:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12838","person_id":"13301"}
[2026-04-11 15:12:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:33] [INFO] Checking activity reminders 
[2026-04-11 15:12:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:12:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:12:55] [INFO] Activity save request {"post_data":{"contact_id":"3353","deal_id":"local_69d61f4c7124f7.42259015","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\nپیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:12:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3353","note_was_empty":true}
[2026-04-11 15:12:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"3353","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:55] [INFO] Updating virtual stage {"contact_id":"3353","stage_name":"deal_registered","force":false}
[2026-04-11 15:12:55] [INFO] Virtual stage successfully saved {"contact_id":"3353","stage_name":"deal_registered"}
[2026-04-11 15:12:55] [INFO] Virtual stage updated after activity save {"contact_id":"3353"}
[2026-04-11 15:12:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61f4c7124f7.42259015","stage":"تماس پیگیری","status_change":null}
[2026-04-11 15:12:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da33bf74eed1.32699669","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69da33bf74eed1.32699669"}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:12:55] [INFO] Updating virtual stage {"contact_id":"3353","stage_name":"deal_registered","force":false}
[2026-04-11 15:12:55] [INFO] Virtual stage successfully saved {"contact_id":"3353","stage_name":"deal_registered"}
[2026-04-11 15:12:55] [INFO] Virtual stage updated after activity save {"contact_id":"3353"}
[2026-04-11 15:12:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3353","person_id":"5207"}
[2026-04-11 15:13:03] [INFO] Checking activity reminders 
[2026-04-11 15:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:13:33] [INFO] Checking activity reminders 
[2026-04-11 15:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:14:03] [INFO] Checking activity reminders 
[2026-04-11 15:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:14:33] [INFO] Checking activity reminders 
[2026-04-11 15:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:15:03] [INFO] Checking activity reminders 
[2026-04-11 15:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:15:33] [INFO] Checking activity reminders 
[2026-04-11 15:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:15:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:00] [INFO] Activity save request {"post_data":{"contact_id":"2868","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای چکش تماس گرفتم تا اخر هفته وصول میکنه ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:16:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2868","note_was_empty":true}
[2026-04-11 15:16:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"2868","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:16:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da34785a3fe3.69919204","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69da34785a3fe3.69919204"}
[2026-04-11 15:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:00] [INFO] Updating virtual stage {"contact_id":"2868","stage_name":"deal_registered","force":false}
[2026-04-11 15:16:00] [INFO] Virtual stage successfully saved {"contact_id":"2868","stage_name":"deal_registered"}
[2026-04-11 15:16:00] [INFO] Virtual stage updated after activity save {"contact_id":"2868"}
[2026-04-11 15:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-11 15:16:04] [INFO] Checking activity reminders 
[2026-04-11 15:16:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:16:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:16:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:16:34] [INFO] Checking activity reminders 
[2026-04-11 15:16:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:16:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:17:04] [INFO] Checking activity reminders 
[2026-04-11 15:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:17:34] [INFO] Checking activity reminders 
[2026-04-11 15:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:18:04] [INFO] Checking activity reminders 
[2026-04-11 15:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:18:34] [INFO] Checking activity reminders 
[2026-04-11 15:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:19:04] [INFO] Checking activity reminders 
[2026-04-11 15:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:19:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:19:30","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:19:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12168","is_new_deal":false}
[2026-04-11 15:19:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:19:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:19:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:19:30] [INFO] getContactPrimaryPhone called {"contact_id":"12168"}
[2026-04-11 15:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:19:30] [INFO] getContactPrimaryPhone result {"contact_id":"12168","person_found":true,"primary_phone":"9146335212"}
[2026-04-11 15:19:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146335212"}
[2026-04-11 15:19:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146335212","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:19:30"}
[2026-04-11 15:19:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","existing_deal_found":true,"existing_contact_id":"12168","existing_title":"معامله چهارم 9146335212 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:19:30"}
[2026-04-11 15:19:34] [INFO] Checking activity reminders 
[2026-04-11 15:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:20:04] [INFO] Checking activity reminders 
[2026-04-11 15:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:20:34] [INFO] Checking activity reminders 
[2026-04-11 15:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:21:05] [INFO] Checking activity reminders 
[2026-04-11 15:21:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:21:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:21:35] [INFO] Checking activity reminders 
[2026-04-11 15:21:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:21:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:22:05] [INFO] Checking activity reminders 
[2026-04-11 15:22:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:22:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:22:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:22:27","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12168","is_new_deal":false}
[2026-04-11 15:22:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:22:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:22:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:22:27] [INFO] getContactPrimaryPhone called {"contact_id":"12168"}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:27] [INFO] getContactPrimaryPhone result {"contact_id":"12168","person_found":true,"primary_phone":"9146335212"}
[2026-04-11 15:22:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146335212"}
[2026-04-11 15:22:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146335212","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:22:27"}
[2026-04-11 15:22:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","existing_deal_found":true,"existing_contact_id":"12168","existing_title":"معامله چهارم 9146335212 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:22:27"}
[2026-04-11 15:22:27] [INFO] DealController.save validated payments {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-11 15:22:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12168","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:22:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d199adc53d4.54626037","contact_didar_id":"12168","title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9146335212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی عسگری","existing_deal":"YES","existing_deal_id":"local_695d199adc53d4.54626037","existing_deal_status":"Pending","server_time":"2026-04-11 15:22:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:27] [INFO] Deal success processed {"contact_id":"12168","person_name":"مصطفی عسگری","products_count":1}
[2026-04-11 15:22:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-11 15:22:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:27] [INFO] Updating virtual stage {"contact_id":"12168","stage_name":"with_purchase","force":true}
[2026-04-11 15:22:27] [INFO] Virtual stage successfully saved {"contact_id":"12168","stage_name":"with_purchase"}
[2026-04-11 15:22:27] [INFO] Moved contact out of kariz after successful deal {"contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","target_stage":"with_purchase"}
[2026-04-11 15:22:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:22:35] [INFO] Checking activity reminders 
[2026-04-11 15:22:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:22:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:22:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:05] [INFO] Checking activity reminders 
[2026-04-11 15:23:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:23:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:23:33] [INFO] Activity save request {"post_data":{"contact_id":"12168","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"به دلیل مالیات حساب مسدود \r\nواریز نقدی \/ شبا \r\nارسال شماره شبا \r\nعودت چک بعد از واریز ","activity_duration":"2","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:23:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12168","note_was_empty":true}
[2026-04-11 15:23:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"12168","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:23:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da363db49433.65889266","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69da363db49433.65889266"}
[2026-04-11 15:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:33] [INFO] Updating virtual stage {"contact_id":"12168","stage_name":"with_purchase","force":false}
[2026-04-11 15:23:33] [INFO] Virtual stage successfully saved {"contact_id":"12168","stage_name":"with_purchase"}
[2026-04-11 15:23:33] [INFO] Virtual stage updated after activity save {"contact_id":"12168"}
[2026-04-11 15:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-11 15:23:35] [INFO] Checking activity reminders 
[2026-04-11 15:23:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:23:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:23:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Activity save request {"post_data":{"contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:24:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2947","note_was_empty":true}
[2026-04-11 15:24:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"2947","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-11 15:24:05] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-11 15:24:05] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-11 15:24:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca90762afa17.07440898","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 15:24:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da365dab85a6.57949138","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69da365dab85a6.57949138"}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Updating virtual stage {"contact_id":"2947","stage_name":"deal_registered","force":false}
[2026-04-11 15:24:05] [INFO] Virtual stage successfully saved {"contact_id":"2947","stage_name":"deal_registered"}
[2026-04-11 15:24:05] [INFO] Virtual stage updated after activity save {"contact_id":"2947"}
[2026-04-11 15:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:05] [INFO] Checking activity reminders 
[2026-04-11 15:24:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:24:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:24:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:24:17","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2947","is_new_deal":false}
[2026-04-11 15:24:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:24:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:24:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:24:17] [INFO] getContactPrimaryPhone called {"contact_id":"2947"}
[2026-04-11 15:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:17] [INFO] getContactPrimaryPhone result {"contact_id":"2947","person_found":true,"primary_phone":"9121211748"}
[2026-04-11 15:24:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121211748"}
[2026-04-11 15:24:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121211748","contact_id":"2947","deal_id":"local_69ca90762afa17.07440898","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:24:17"}
[2026-04-11 15:24:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","existing_deal_found":true,"existing_contact_id":"2947","existing_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:24:17"}
[2026-04-11 15:24:17] [INFO] DealController.save validated payments {"deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 15:24:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2947","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:24:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca90762afa17.07440898","contact_didar_id":"2947","title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9121211748","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین صنعتی","existing_deal":"YES","existing_deal_id":"local_69ca90762afa17.07440898","existing_deal_status":"Pending","server_time":"2026-04-11 15:24:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca90762afa17.07440898","contact_id":"2947","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9121211748 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 15:24:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:24:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2947","person_id":"12455"}
[2026-04-11 15:24:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:24:36] [INFO] Checking activity reminders 
[2026-04-11 15:24:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:24:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:25:04] [INFO] Activity save request {"post_data":{"contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"6 م تا اخر هفته واریز \r\nچک داشته برای ملک \/ هنوز تو کانال عضو نیست ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:25:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7918","note_was_empty":true}
[2026-04-11 15:25:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"7918","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:04] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-11 15:25:04] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-11 15:25:04] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-11 15:25:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9e549b7b3.48363944","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 15:25:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da369813e331.62509123","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69da369813e331.62509123"}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:04] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-11 15:25:04] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-11 15:25:04] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-11 15:25:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-11 15:25:06] [INFO] Checking activity reminders 
[2026-04-11 15:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:25:36] [INFO] Checking activity reminders 
[2026-04-11 15:25:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:25:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:25:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:06] [INFO] Checking activity reminders 
[2026-04-11 15:26:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:26:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:26:14] [INFO] Activity save request {"post_data":{"contact_id":"1569","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:26:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:26:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:26:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1569","note_was_empty":true}
[2026-04-11 15:26:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"1569","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:26:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da36de0a9cf0.53533551","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:26:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69da36de0a9cf0.53533551"}
[2026-04-11 15:26:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:14] [INFO] Updating virtual stage {"contact_id":"1569","stage_name":"deal_registered","force":false}
[2026-04-11 15:26:14] [INFO] Virtual stage successfully saved {"contact_id":"1569","stage_name":"deal_registered"}
[2026-04-11 15:26:14] [INFO] Virtual stage updated after activity save {"contact_id":"1569"}
[2026-04-11 15:26:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-11 15:26:36] [INFO] Checking activity reminders 
[2026-04-11 15:26:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:26:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:27:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 15:27:31] [INFO] Checking activity reminders 
[2026-04-11 15:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:28:01] [INFO] Checking activity reminders 
[2026-04-11 15:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:28:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:28:31] [INFO] Checking activity reminders 
[2026-04-11 15:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:29:01] [INFO] Checking activity reminders 
[2026-04-11 15:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:29:31] [INFO] Checking activity reminders 
[2026-04-11 15:29:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:29:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:29:34] [INFO] Checking activity reminders 
[2026-04-11 15:29:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:29:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:30:01] [INFO] Checking activity reminders 
[2026-04-11 15:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:30:31] [INFO] Checking activity reminders 
[2026-04-11 15:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:30:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:30:52","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:30:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-11 15:30:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:30:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:30:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:30:52] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-11 15:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:30:52] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-11 15:30:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-11 15:30:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:30:52"}
[2026-04-11 15:30:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:30:52"}
[2026-04-11 15:30:52] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 15:30:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:30:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-11 15:30:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:30:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-11 15:30:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:30:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:31:01] [INFO] Checking activity reminders 
[2026-04-11 15:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:31:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:31:03","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:31:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-11 15:31:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:31:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:31:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:31:03] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-11 15:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:31:03] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-11 15:31:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-11 15:31:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:31:03"}
[2026-04-11 15:31:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:31:03"}
[2026-04-11 15:31:03] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 15:31:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:31:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-11 15:31:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:31:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-11 15:31:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:31:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 15:31:17] [INFO] Checking activity reminders 
[2026-04-11 15:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:31:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 15:31:47] [INFO] Checking activity reminders 
[2026-04-11 15:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:32:17] [INFO] Checking activity reminders 
[2026-04-11 15:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:32:19] [INFO] Checking activity reminders 
[2026-04-11 15:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:32:42] [INFO] Checking activity reminders 
[2026-04-11 15:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:32:49] [INFO] Checking activity reminders 
[2026-04-11 15:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:32:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:12] [INFO] Checking activity reminders 
[2026-04-11 15:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:33:19] [INFO] Checking activity reminders 
[2026-04-11 15:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:33:25] [INFO] Activity save request {"post_data":{"contact_id":"10797","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال 405 \r\nسوال دشت \/ ارسال در بله ","activity_duration":"1","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:33:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10797","note_was_empty":true}
[2026-04-11 15:33:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"10797","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:33:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da388df10c60.94152602","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69da388df10c60.94152602"}
[2026-04-11 15:33:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:25] [INFO] Updating virtual stage {"contact_id":"10797","stage_name":"with_purchase","force":false}
[2026-04-11 15:33:26] [INFO] Virtual stage successfully saved {"contact_id":"10797","stage_name":"with_purchase"}
[2026-04-11 15:33:26] [INFO] Virtual stage updated after activity save {"contact_id":"10797"}
[2026-04-11 15:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10797","person_id":"1111"}
[2026-04-11 15:33:42] [INFO] Checking activity reminders 
[2026-04-11 15:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:33:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:33:49] [INFO] Checking activity reminders 
[2026-04-11 15:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:34:12] [INFO] Checking activity reminders 
[2026-04-11 15:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:34:19] [INFO] Checking activity reminders 
[2026-04-11 15:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:34:42] [INFO] Checking activity reminders 
[2026-04-11 15:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:34:50] [INFO] Checking activity reminders 
[2026-04-11 15:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:35:12] [INFO] Checking activity reminders 
[2026-04-11 15:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:35:20] [INFO] Checking activity reminders 
[2026-04-11 15:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:35:42] [INFO] Checking activity reminders 
[2026-04-11 15:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:35:50] [INFO] Checking activity reminders 
[2026-04-11 15:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:36:12] [INFO] Checking activity reminders 
[2026-04-11 15:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:36:20] [INFO] Checking activity reminders 
[2026-04-11 15:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:36:43] [INFO] Checking activity reminders 
[2026-04-11 15:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:36:50] [INFO] Checking activity reminders 
[2026-04-11 15:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:36:51] [INFO] Activity save request {"post_data":{"contact_id":"15112","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"خیلی برای 404 غر میزنه \/ میگه من متضرر شدم \r\nبا سیگنال ا پبیش نرفته خودش رفته طلا خریده و فروخته بعد میگه 600 م ضرر کردم \r\nدر 404 تلگرام پشتیباین هم استاد بلاک کرده چون خیلی غر میزنه \r\nمیگه استاد تخصص نداره رشته ی تحصیلیش مرتبط نیست بهش گفتم هر جا که خودتون تایید و تخصص میبینید صاحب اختیار هستین \r\nمیگه ضمانت بدید برای کانال \/ مسولیت میخواد بندازه به عهده ی شخص دیگه ","activity_duration":"15","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:36:51] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:36:51] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:36:51] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15112","note_was_empty":true}
[2026-04-11 15:36:51] [INFO] Didar write disabled; saving activity locally {"contact_id":"15112","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:36:51] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da395beb6c03.14000408","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:36:51] [INFO] Activity saved successfully {"activity_id":"local_activity_69da395beb6c03.14000408"}
[2026-04-11 15:36:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:36:51] [INFO] Updating virtual stage {"contact_id":"15112","stage_name":"deal_registered","force":false}
[2026-04-11 15:36:52] [INFO] Virtual stage successfully saved {"contact_id":"15112","stage_name":"deal_registered"}
[2026-04-11 15:36:52] [INFO] Virtual stage updated after activity save {"contact_id":"15112"}
[2026-04-11 15:36:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15112","person_id":"1157"}
[2026-04-11 15:37:13] [INFO] Checking activity reminders 
[2026-04-11 15:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:37:20] [INFO] Checking activity reminders 
[2026-04-11 15:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:37:36] [INFO] Checking activity reminders 
[2026-04-11 15:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:37:38] [INFO] Checking activity reminders 
[2026-04-11 15:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:37:50] [INFO] Checking activity reminders 
[2026-04-11 15:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:37:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:08] [INFO] Checking activity reminders 
[2026-04-11 15:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:38:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"795","deal_id":"local_695a6def503b20.08264464","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:38:17","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"795","is_new_deal":false}
[2026-04-11 15:38:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:38:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:38:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:38:17] [INFO] getContactPrimaryPhone called {"contact_id":"795"}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:17] [INFO] getContactPrimaryPhone result {"contact_id":"795","person_found":true,"primary_phone":"9138167593"}
[2026-04-11 15:38:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9138167593"}
[2026-04-11 15:38:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9138167593","contact_id":"795","deal_id":"local_695a6def503b20.08264464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:38:17"}
[2026-04-11 15:38:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","existing_deal_found":true,"existing_contact_id":"795","existing_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:38:17"}
[2026-04-11 15:38:17] [INFO] DealController.save validated payments {"deal_id":"local_695a6def503b20.08264464","contact_id":"795","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-11 15:38:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"795","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:38:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6def503b20.08264464","contact_didar_id":"795","title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9138167593","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسینی زاده","existing_deal":"YES","existing_deal_id":"local_695a6def503b20.08264464","existing_deal_status":"Won","server_time":"2026-04-11 15:38:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:17] [INFO] Deal success processed {"contact_id":"795","person_name":"حسینی زاده","products_count":1}
[2026-04-11 15:38:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6def503b20.08264464","contact_id":"795","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9138167593 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-11 15:38:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:17] [INFO] Updating virtual stage {"contact_id":"795","stage_name":"with_purchase","force":true}
[2026-04-11 15:38:17] [INFO] Virtual stage successfully saved {"contact_id":"795","stage_name":"with_purchase"}
[2026-04-11 15:38:17] [INFO] Moved contact out of kariz after successful deal {"contact_id":"795","deal_id":"local_695a6def503b20.08264464","target_stage":"with_purchase"}
[2026-04-11 15:38:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:20] [INFO] Checking activity reminders 
[2026-04-11 15:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:38:38] [INFO] Checking activity reminders 
[2026-04-11 15:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:38:41] [INFO] Activity save request {"post_data":{"contact_id":"795","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای ارسال فیزیک چک تماس \r\nبیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:38:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"795","note_was_empty":true}
[2026-04-11 15:38:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"795","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:38:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da39c94b8d20.99909492","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69da39c94b8d20.99909492"}
[2026-04-11 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:41] [INFO] Updating virtual stage {"contact_id":"795","stage_name":"with_purchase","force":false}
[2026-04-11 15:38:41] [INFO] Virtual stage successfully saved {"contact_id":"795","stage_name":"with_purchase"}
[2026-04-11 15:38:41] [INFO] Virtual stage updated after activity save {"contact_id":"795"}
[2026-04-11 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"795","person_id":"16322"}
[2026-04-11 15:38:50] [INFO] Checking activity reminders 
[2026-04-11 15:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:39:08] [INFO] Checking activity reminders 
[2026-04-11 15:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:39:20] [INFO] Checking activity reminders 
[2026-04-11 15:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:39:38] [INFO] Checking activity reminders 
[2026-04-11 15:39:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:39:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:39:50] [INFO] Checking activity reminders 
[2026-04-11 15:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:40:08] [INFO] Checking activity reminders 
[2026-04-11 15:40:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:40:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:40:39] [INFO] Checking activity reminders 
[2026-04-11 15:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:41:09] [INFO] Checking activity reminders 
[2026-04-11 15:41:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:41:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:41:22] [INFO] Checking activity reminders 
[2026-04-11 15:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:41:52] [INFO] Checking activity reminders 
[2026-04-11 15:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:42:10] [INFO] Checking activity reminders 
[2026-04-11 15:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:42:22] [INFO] Checking activity reminders 
[2026-04-11 15:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:42:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:32] [INFO] Checking activity reminders 
[2026-04-11 15:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:42:40] [INFO] Checking activity reminders 
[2026-04-11 15:42:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:42:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:42:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:42:54] [INFO] Activity save request {"post_data":{"contact_id":"3068","deal_id":"local_699982392b0572.34485161","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشتیبانی \/ سی ای پی هست \/ کانالم هست","activity_duration":"20","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:42:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:42:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:42:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3068","note_was_empty":true}
[2026-04-11 15:42:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"3068","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 15:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:55] [INFO] Updating virtual stage {"contact_id":"3068","stage_name":"deal_registered","force":false}
[2026-04-11 15:42:55] [INFO] Virtual stage successfully saved {"contact_id":"3068","stage_name":"deal_registered"}
[2026-04-11 15:42:55] [INFO] Virtual stage updated after activity save {"contact_id":"3068"}
[2026-04-11 15:42:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699982392b0572.34485161","stage":"برگزاری دوره","status_change":null}
[2026-04-11 15:42:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3ac6eab180.78624553","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3ac6eab180.78624553"}
[2026-04-11 15:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:42:55] [INFO] Updating virtual stage {"contact_id":"3068","stage_name":"deal_registered","force":false}
[2026-04-11 15:42:55] [INFO] Virtual stage successfully saved {"contact_id":"3068","stage_name":"deal_registered"}
[2026-04-11 15:42:55] [INFO] Virtual stage updated after activity save {"contact_id":"3068"}
[2026-04-11 15:42:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-11 15:43:02] [INFO] Checking activity reminders 
[2026-04-11 15:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:43:10] [INFO] Checking activity reminders 
[2026-04-11 15:43:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:43:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:43:32] [INFO] Checking activity reminders 
[2026-04-11 15:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:44:02] [INFO] Checking activity reminders 
[2026-04-11 15:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:44:32] [INFO] Checking activity reminders 
[2026-04-11 15:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:44:53] [INFO] Activity save request {"post_data":{"contact_id":"15018","deal_id":"local_69d694f57bf0f9.35772456","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nمجدد \r\n1 سالعت دیگه ","activity_duration":"1","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:44:53] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:44:53] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:44:53] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15018","note_was_empty":true}
[2026-04-11 15:44:53] [INFO] Didar write disabled; saving activity locally {"contact_id":"15018","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:44:53] [INFO] Updating virtual stage {"contact_id":"15018","stage_name":"deal_registered","force":false}
[2026-04-11 15:44:53] [INFO] Virtual stage successfully saved {"contact_id":"15018","stage_name":"deal_registered"}
[2026-04-11 15:44:53] [INFO] Virtual stage updated after activity save {"contact_id":"15018"}
[2026-04-11 15:44:53] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d694f57bf0f9.35772456","stage":"تماس پیگیری","status_change":null}
[2026-04-11 15:44:53] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3b3d06ca07.10034698","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:44:53] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3b3d06ca07.10034698"}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:44:53] [INFO] Updating virtual stage {"contact_id":"15018","stage_name":"deal_registered","force":false}
[2026-04-11 15:44:53] [INFO] Virtual stage successfully saved {"contact_id":"15018","stage_name":"deal_registered"}
[2026-04-11 15:44:53] [INFO] Virtual stage updated after activity save {"contact_id":"15018"}
[2026-04-11 15:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 15:45:03] [INFO] Checking activity reminders 
[2026-04-11 15:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:45:22] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:22] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"check_reminders"}
[2026-04-11 15:45:22] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:24] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:25] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:25] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"get_leads"}
[2026-04-11 15:45:25] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:25] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"check_reminders"}
[2026-04-11 15:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:31] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:33] [INFO] Checking activity reminders 
[2026-04-11 15:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:45:36] [INFO] Checking activity reminders 
[2026-04-11 15:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:45:37] [INFO] Checking activity reminders 
[2026-04-11 15:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:45:39] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 15:45:40] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 15:45:40] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 15:45:40] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 15:45:40] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 15:45:40] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 15:45:40] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 15:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 15:45:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:46:07] [INFO] Checking activity reminders 
[2026-04-11 15:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:46:07] [INFO] Checking activity reminders 
[2026-04-11 15:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:46:10] [INFO] Checking activity reminders 
[2026-04-11 15:46:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:46:37] [INFO] Checking activity reminders 
[2026-04-11 15:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:46:37] [INFO] Checking activity reminders 
[2026-04-11 15:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:46:46] [INFO] Checking activity reminders 
[2026-04-11 15:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"820","person_id":"13725"}
[2026-04-11 15:47:07] [INFO] Checking activity reminders 
[2026-04-11 15:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:07] [INFO] Checking activity reminders 
[2026-04-11 15:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:17] [INFO] Checking activity reminders 
[2026-04-11 15:47:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:37] [INFO] Checking activity reminders 
[2026-04-11 15:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:45] [INFO] Checking activity reminders 
[2026-04-11 15:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:47:47] [INFO] Checking activity reminders 
[2026-04-11 15:47:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:47:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:48:07] [INFO] Checking activity reminders 
[2026-04-11 15:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:48:15] [INFO] Checking activity reminders 
[2026-04-11 15:48:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:48:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:48:37] [INFO] Checking activity reminders 
[2026-04-11 15:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:48:46] [INFO] Checking activity reminders 
[2026-04-11 15:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:07] [INFO] Checking activity reminders 
[2026-04-11 15:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:16] [INFO] Checking activity reminders 
[2026-04-11 15:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20800","deal_id":"local_69d6933d014915.70196777","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 15:49:18","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 15:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:49:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20800","is_new_deal":false}
[2026-04-11 15:49:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 15:49:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:49:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 15:49:18] [INFO] getContactPrimaryPhone called {"contact_id":"20800"}
[2026-04-11 15:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:49:18] [INFO] getContactPrimaryPhone result {"contact_id":"20800","person_found":true,"primary_phone":"9378742585"}
[2026-04-11 15:49:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9378742585"}
[2026-04-11 15:49:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9378742585","contact_id":"20800","deal_id":"local_69d6933d014915.70196777","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:49:18"}
[2026-04-11 15:49:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6933d014915.70196777","contact_id":"20800","existing_deal_found":true,"existing_contact_id":"20800","existing_title":"معامله دوم 9378742585 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 15:49:18"}
[2026-04-11 15:49:18] [INFO] DealController.save validated payments {"deal_id":"local_69d6933d014915.70196777","contact_id":"20800","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 15:49:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20800","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 15:49:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6933d014915.70196777","contact_didar_id":"20800","title":"معامله دوم 9378742585 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9378742585","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی احمدی","existing_deal":"YES","existing_deal_id":"local_69d6933d014915.70196777","existing_deal_status":"Pending","server_time":"2026-04-11 15:49:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 15:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:49:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6933d014915.70196777","contact_id":"20800","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9378742585 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 15:49:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 15:49:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:49:37] [INFO] Checking activity reminders 
[2026-04-11 15:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:46] [INFO] Checking activity reminders 
[2026-04-11 15:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:46] [INFO] Checking activity reminders 
[2026-04-11 15:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:49:54] [INFO] Checking activity reminders 
[2026-04-11 15:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:02] [INFO] Checking activity reminders 
[2026-04-11 15:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:07] [INFO] Checking activity reminders 
[2026-04-11 15:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:09] [INFO] Checking activity reminders 
[2026-04-11 15:50:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1884","person_id":"7482"}
[2026-04-11 15:50:16] [INFO] Checking activity reminders 
[2026-04-11 15:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:38] [INFO] Checking activity reminders 
[2026-04-11 15:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:50:46] [INFO] Checking activity reminders 
[2026-04-11 15:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:51:08] [INFO] Checking activity reminders 
[2026-04-11 15:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:51:16] [INFO] Checking activity reminders 
[2026-04-11 15:51:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:51:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:51:35] [INFO] Activity save request {"post_data":{"contact_id":"20800","deal_id":"local_69d6933d014915.70196777","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:51:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20800","note_was_empty":true}
[2026-04-11 15:51:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"20800","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:35] [INFO] Updating virtual stage {"contact_id":"20800","stage_name":"deal_registered","force":false}
[2026-04-11 15:51:35] [INFO] Virtual stage successfully saved {"contact_id":"20800","stage_name":"deal_registered"}
[2026-04-11 15:51:35] [INFO] Virtual stage updated after activity save {"contact_id":"20800"}
[2026-04-11 15:51:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6933d014915.70196777","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 15:51:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3ccfa1e0a3.52720510","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3ccfa1e0a3.52720510"}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:35] [INFO] Updating virtual stage {"contact_id":"20800","stage_name":"deal_registered","force":false}
[2026-04-11 15:51:35] [INFO] Virtual stage successfully saved {"contact_id":"20800","stage_name":"deal_registered"}
[2026-04-11 15:51:35] [INFO] Virtual stage updated after activity save {"contact_id":"20800"}
[2026-04-11 15:51:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-11 15:51:38] [INFO] Checking activity reminders 
[2026-04-11 15:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:51:43] [INFO] Checking activity reminders 
[2026-04-11 15:51:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:51:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:51:46] [INFO] Checking activity reminders 
[2026-04-11 15:51:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:51:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:52:13] [INFO] Checking activity reminders 
[2026-04-11 15:52:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:52:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:52:13] [INFO] Activity save request {"post_data":{"contact_id":"20967","deal_id":"local_69d68e6b5d83b6.56203123","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نمیدونست 6ماهه داریم گفت مبلغ رفته بالا دید دادم \/ 6ماهه گفتم اکروز حتما اطلاع بده \r\n39ت تا ساعت 5:30 ","activity_duration":"10","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 15:52:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20967","note_was_empty":true}
[2026-04-11 15:52:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"20967","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:13] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-11 15:52:13] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-11 15:52:13] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-11 15:52:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68e6b5d83b6.56203123","stage":"تماس پیگیری","status_change":null}
[2026-04-11 15:52:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3cf5898033.53779772","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3cf5898033.53779772"}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:13] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-11 15:52:13] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-11 15:52:13] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-11 15:52:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 15:52:16] [INFO] Checking activity reminders 
[2026-04-11 15:52:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:52:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:52:43] [INFO] Checking activity reminders 
[2026-04-11 15:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:52:46] [INFO] Checking activity reminders 
[2026-04-11 15:52:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:52:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:53:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 15:53:13] [INFO] Checking activity reminders 
[2026-04-11 15:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:53:16] [INFO] Checking activity reminders 
[2026-04-11 15:53:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:53:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:53:43] [INFO] Checking activity reminders 
[2026-04-11 15:53:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:53:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:53:46] [INFO] Checking activity reminders 
[2026-04-11 15:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:54:13] [INFO] Checking activity reminders 
[2026-04-11 15:54:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:54:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:54:16] [INFO] Checking activity reminders 
[2026-04-11 15:54:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:54:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:54:43] [INFO] Checking activity reminders 
[2026-04-11 15:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:54:46] [INFO] Checking activity reminders 
[2026-04-11 15:54:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:54:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:55:14] [INFO] Checking activity reminders 
[2026-04-11 15:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:55:16] [INFO] Checking activity reminders 
[2026-04-11 15:55:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:55:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:55:44] [INFO] Checking activity reminders 
[2026-04-11 15:55:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:55:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:55:46] [INFO] Checking activity reminders 
[2026-04-11 15:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:56:14] [INFO] Checking activity reminders 
[2026-04-11 15:56:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:56:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:56:16] [INFO] Checking activity reminders 
[2026-04-11 15:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:56:44] [INFO] Checking activity reminders 
[2026-04-11 15:56:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:56:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:56:46] [INFO] Checking activity reminders 
[2026-04-11 15:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:57:14] [INFO] Checking activity reminders 
[2026-04-11 15:57:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:57:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:57:16] [INFO] Checking activity reminders 
[2026-04-11 15:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:57:44] [INFO] Checking activity reminders 
[2026-04-11 15:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:57:46] [INFO] Checking activity reminders 
[2026-04-11 15:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:58:25] [INFO] Checking activity reminders 
[2026-04-11 15:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:58:55] [INFO] Checking activity reminders 
[2026-04-11 15:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:59:25] [INFO] Checking activity reminders 
[2026-04-11 15:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:59:44] [INFO] Checking activity reminders 
[2026-04-11 15:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 15:59:55] [INFO] Checking activity reminders 
[2026-04-11 15:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 15:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:00:14] [INFO] Checking activity reminders 
[2026-04-11 16:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:00:26] [INFO] Checking activity reminders 
[2026-04-11 16:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:00:33] [INFO] Activity save request {"post_data":{"contact_id":"5966","deal_id":"local_69d68e3d35b237.04409232","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"نمیتونه فعلا تمدید کنه احتمالا 6ماه دوم \/ نقد نیست درگیر هست ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:00:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5966","note_was_empty":true}
[2026-04-11 16:00:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"5966","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:33] [INFO] Updating virtual stage {"contact_id":"5966","stage_name":"deal_registered","force":false}
[2026-04-11 16:00:33] [INFO] Virtual stage successfully saved {"contact_id":"5966","stage_name":"deal_registered"}
[2026-04-11 16:00:33] [INFO] Virtual stage updated after activity save {"contact_id":"5966"}
[2026-04-11 16:00:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68e3d35b237.04409232","stage":"تماس پیگیری","status_change":null}
[2026-04-11 16:00:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da3ee94cc208.92135099","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69da3ee94cc208.92135099"}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:33] [INFO] Updating virtual stage {"contact_id":"5966","stage_name":"deal_registered","force":false}
[2026-04-11 16:00:33] [INFO] Virtual stage successfully saved {"contact_id":"5966","stage_name":"deal_registered"}
[2026-04-11 16:00:33] [INFO] Virtual stage updated after activity save {"contact_id":"5966"}
[2026-04-11 16:00:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5966","person_id":"19720"}
[2026-04-11 16:00:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:00:47] [INFO] Checking activity reminders 
[2026-04-11 16:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:00:56] [INFO] Checking activity reminders 
[2026-04-11 16:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:01:17] [INFO] Checking activity reminders 
[2026-04-11 16:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:01:26] [INFO] Checking activity reminders 
[2026-04-11 16:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:01:47] [INFO] Checking activity reminders 
[2026-04-11 16:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:01:56] [INFO] Checking activity reminders 
[2026-04-11 16:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:02:17] [INFO] Checking activity reminders 
[2026-04-11 16:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:02:26] [INFO] Checking activity reminders 
[2026-04-11 16:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:02:47] [INFO] Checking activity reminders 
[2026-04-11 16:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:02:56] [INFO] Checking activity reminders 
[2026-04-11 16:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:03:18] [INFO] Checking activity reminders 
[2026-04-11 16:03:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:03:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:03:26] [INFO] Checking activity reminders 
[2026-04-11 16:03:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:03:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:03:48] [INFO] Checking activity reminders 
[2026-04-11 16:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:03:56] [INFO] Checking activity reminders 
[2026-04-11 16:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:04:18] [INFO] Checking activity reminders 
[2026-04-11 16:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:04:26] [INFO] Checking activity reminders 
[2026-04-11 16:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:04:48] [INFO] Checking activity reminders 
[2026-04-11 16:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:04:56] [INFO] Checking activity reminders 
[2026-04-11 16:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:05:26] [INFO] Checking activity reminders 
[2026-04-11 16:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:05:56] [INFO] Checking activity reminders 
[2026-04-11 16:05:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:05:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:06:26] [INFO] Checking activity reminders 
[2026-04-11 16:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:06:56] [INFO] Checking activity reminders 
[2026-04-11 16:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:07:26] [INFO] Checking activity reminders 
[2026-04-11 16:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:07:56] [INFO] Checking activity reminders 
[2026-04-11 16:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:08:27] [INFO] Checking activity reminders 
[2026-04-11 16:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:08:57] [INFO] Checking activity reminders 
[2026-04-11 16:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:09:27] [INFO] Checking activity reminders 
[2026-04-11 16:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:09:57] [INFO] Checking activity reminders 
[2026-04-11 16:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:10:27] [INFO] Checking activity reminders 
[2026-04-11 16:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:10:57] [INFO] Checking activity reminders 
[2026-04-11 16:10:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:10:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:11:27] [INFO] Checking activity reminders 
[2026-04-11 16:11:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:11:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:11:50] [INFO] Checking activity reminders 
[2026-04-11 16:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:11:57] [INFO] Checking activity reminders 
[2026-04-11 16:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:12:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"793","deal_id":"local_69d6952e13e1b5.58385565","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:12:03","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:12:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"793","is_new_deal":false}
[2026-04-11 16:12:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 16:12:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 16:12:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 16:12:03] [INFO] getContactPrimaryPhone called {"contact_id":"793"}
[2026-04-11 16:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:12:03] [INFO] getContactPrimaryPhone result {"contact_id":"793","person_found":true,"primary_phone":"9155000190"}
[2026-04-11 16:12:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155000190"}
[2026-04-11 16:12:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155000190","contact_id":"793","deal_id":"local_69d6952e13e1b5.58385565","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:12:03"}
[2026-04-11 16:12:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6952e13e1b5.58385565","contact_id":"793","existing_deal_found":true,"existing_contact_id":"793","existing_title":"معامله دوم 9155000190 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:12:03"}
[2026-04-11 16:12:03] [INFO] DealController.save validated payments {"deal_id":"local_69d6952e13e1b5.58385565","contact_id":"793","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 16:12:03] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"793","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:12:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6952e13e1b5.58385565","contact_didar_id":"793","title":"معامله دوم 9155000190 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9155000190","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"جواد رضایی","existing_deal":"YES","existing_deal_id":"local_69d6952e13e1b5.58385565","existing_deal_status":"Pending","server_time":"2026-04-11 16:12:03","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:12:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6952e13e1b5.58385565","contact_id":"793","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9155000190 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 16:12:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:12:10] [INFO] Checking activity reminders 
[2026-04-11 16:12:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:12:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:12:20] [INFO] Checking activity reminders 
[2026-04-11 16:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:12:27] [INFO] Checking activity reminders 
[2026-04-11 16:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:12:50] [INFO] Checking activity reminders 
[2026-04-11 16:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:12:57] [INFO] Checking activity reminders 
[2026-04-11 16:12:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:12:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:13:21] [INFO] Checking activity reminders 
[2026-04-11 16:13:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:13:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:13:27] [INFO] Checking activity reminders 
[2026-04-11 16:13:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:13:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:13:51] [INFO] Checking activity reminders 
[2026-04-11 16:13:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:13:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:13:57] [INFO] Checking activity reminders 
[2026-04-11 16:13:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:13:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:18] [INFO] Activity save request {"post_data":{"contact_id":"793","deal_id":"local_69d6952e13e1b5.58385565","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"بازار رضا مشهد \r\nدر خرید نقره 404 خیلی سود کرده \r\nپرزنت 405 \/ 6 مهه با پشتیبانی \r\nبله نداره فقط روبیکا \r\nبهش پیام دادم \r\nارسال شماره ملت در پیامک ","activity_duration":"13","direction":"incoming","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:14:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"793","note_was_empty":true}
[2026-04-11 16:14:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"793","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:18] [INFO] Updating virtual stage {"contact_id":"793","stage_name":"deal_registered","force":false}
[2026-04-11 16:14:18] [INFO] Virtual stage successfully saved {"contact_id":"793","stage_name":"deal_registered"}
[2026-04-11 16:14:18] [INFO] Virtual stage updated after activity save {"contact_id":"793"}
[2026-04-11 16:14:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6952e13e1b5.58385565","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 16:14:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4222b345c0.70152941","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4222b345c0.70152941"}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:18] [INFO] Updating virtual stage {"contact_id":"793","stage_name":"deal_registered","force":false}
[2026-04-11 16:14:18] [INFO] Virtual stage successfully saved {"contact_id":"793","stage_name":"deal_registered"}
[2026-04-11 16:14:18] [INFO] Virtual stage updated after activity save {"contact_id":"793"}
[2026-04-11 16:14:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-11 16:14:21] [INFO] Checking activity reminders 
[2026-04-11 16:14:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:24] [INFO] Checking activity reminders 
[2026-04-11 16:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:26] [INFO] Checking activity reminders 
[2026-04-11 16:14:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:27] [INFO] Checking activity reminders 
[2026-04-11 16:14:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:14:56] [INFO] Checking activity reminders 
[2026-04-11 16:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:14:57] [INFO] Checking activity reminders 
[2026-04-11 16:14:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:14:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:15:00] [INFO] Lead update received {"contact_id":"21140","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 16:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21140"}
[2026-04-11 16:15:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:15:17","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:15:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"21140","is_new_deal":false}
[2026-04-11 16:15:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:17] [INFO] getContactPrimaryPhone called {"contact_id":"21140"}
[2026-04-11 16:15:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:17] [INFO] getContactPrimaryPhone result {"contact_id":"21140","person_found":true,"primary_phone":"9102821143"}
[2026-04-11 16:15:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102821143"}
[2026-04-11 16:15:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102821143","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:15:17"}
[2026-04-11 16:15:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","existing_deal_found":true,"existing_contact_id":"21140","existing_title":"معامله دوم 9102821143 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:15:17"}
[2026-04-11 16:15:17] [INFO] DealController.save validated payments {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 16:15:17] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21140","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:15:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b723050d8bb1.51027279","contact_didar_id":"21140","title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9102821143","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خسروجردی خسروجردی","existing_deal":"YES","existing_deal_id":"local_69b723050d8bb1.51027279","existing_deal_status":"Pending","server_time":"2026-04-11 16:15:17","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:15:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-11 16:15:17","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:15:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:26] [INFO] Checking activity reminders 
[2026-04-11 16:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:15:27] [INFO] Checking activity reminders 
[2026-04-11 16:15:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:15:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:15:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:15:28","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:15:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"21140","is_new_deal":false}
[2026-04-11 16:15:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:15:28] [INFO] getContactPrimaryPhone called {"contact_id":"21140"}
[2026-04-11 16:15:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:28] [INFO] getContactPrimaryPhone result {"contact_id":"21140","person_found":true,"primary_phone":"9102821143"}
[2026-04-11 16:15:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102821143"}
[2026-04-11 16:15:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102821143","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:15:28"}
[2026-04-11 16:15:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","existing_deal_found":true,"existing_contact_id":"21140","existing_title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:15:28"}
[2026-04-11 16:15:28] [INFO] DealController.save validated payments {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 16:15:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21140","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:15:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b723050d8bb1.51027279","contact_didar_id":"21140","title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9102821143","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خسروجردی خسروجردی","existing_deal":"YES","existing_deal_id":"local_69b723050d8bb1.51027279","existing_deal_status":"Pending","server_time":"2026-04-11 16:15:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:15:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-11 16:15:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:15:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:15:57] [INFO] Checking activity reminders 
[2026-04-11 16:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:16:08] [INFO] Checking activity reminders 
[2026-04-11 16:16:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:16:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:16:10] [INFO] Checking activity reminders 
[2026-04-11 16:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:16:28] [INFO] Checking activity reminders 
[2026-04-11 16:16:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:16:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:16:40] [INFO] Checking activity reminders 
[2026-04-11 16:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:16:58] [INFO] Checking activity reminders 
[2026-04-11 16:16:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:16:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:17:06] [INFO] Activity save request {"post_data":{"contact_id":"15908","deal_id":"local_69d68d50048f76.91757978","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"5 ت نقد \/ عیار 14 میلیارد \/ ملک مصرف اپارتمان \/ 3 هزار تا دلار \/ 1 قطعه زمین تهران کردان کوهسار \/ 2تا ماشین مصرف فیدیلیتی \/ 206 \r\nکانال تمدید 79 یا 39ت 6ماهه\/ \r\nپرزنت cip کامل شد فکر کنه فردا تا قبل ساعت 14 واریز کانال و سی پی ببینم چی میشه","activity_duration":"35","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:17:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15908","note_was_empty":true}
[2026-04-11 16:17:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"15908","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Updating virtual stage {"contact_id":"15908","stage_name":"deal_registered","force":false}
[2026-04-11 16:17:06] [INFO] Virtual stage successfully saved {"contact_id":"15908","stage_name":"deal_registered"}
[2026-04-11 16:17:06] [INFO] Virtual stage updated after activity save {"contact_id":"15908"}
[2026-04-11 16:17:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68d50048f76.91757978","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 16:17:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da42ca345673.94837563","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69da42ca345673.94837563"}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Updating virtual stage {"contact_id":"15908","stage_name":"deal_registered","force":false}
[2026-04-11 16:17:06] [INFO] Virtual stage successfully saved {"contact_id":"15908","stage_name":"deal_registered"}
[2026-04-11 16:17:06] [INFO] Virtual stage updated after activity save {"contact_id":"15908"}
[2026-04-11 16:17:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-11 16:17:06] [INFO] Checking activity reminders 
[2026-04-11 16:17:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:17:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:17:14] [INFO] Checking activity reminders 
[2026-04-11 16:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:17:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:17:28] [INFO] Checking activity reminders 
[2026-04-11 16:17:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:17:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:17:44] [INFO] Checking activity reminders 
[2026-04-11 16:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:17:58] [INFO] Checking activity reminders 
[2026-04-11 16:17:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:17:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:18:14] [INFO] Checking activity reminders 
[2026-04-11 16:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:18:28] [INFO] Checking activity reminders 
[2026-04-11 16:18:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:18:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:18:44] [INFO] Checking activity reminders 
[2026-04-11 16:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:18:58] [INFO] Checking activity reminders 
[2026-04-11 16:18:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:18:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:19:14] [INFO] Checking activity reminders 
[2026-04-11 16:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:19:28] [INFO] Checking activity reminders 
[2026-04-11 16:19:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:19:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:19:45] [INFO] Checking activity reminders 
[2026-04-11 16:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:19:58] [INFO] Checking activity reminders 
[2026-04-11 16:19:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:19:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:20:15] [INFO] Checking activity reminders 
[2026-04-11 16:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:20:28] [INFO] Checking activity reminders 
[2026-04-11 16:20:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:20:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:20:45] [INFO] Checking activity reminders 
[2026-04-11 16:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:20:58] [INFO] Checking activity reminders 
[2026-04-11 16:20:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:20:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:21:15] [INFO] Checking activity reminders 
[2026-04-11 16:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:21:28] [INFO] Checking activity reminders 
[2026-04-11 16:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:21:45] [INFO] Checking activity reminders 
[2026-04-11 16:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:21:58] [INFO] Checking activity reminders 
[2026-04-11 16:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:22:15] [INFO] Checking activity reminders 
[2026-04-11 16:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:22:28] [INFO] Checking activity reminders 
[2026-04-11 16:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:22:45] [INFO] Checking activity reminders 
[2026-04-11 16:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:22:58] [INFO] Checking activity reminders 
[2026-04-11 16:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:23:15] [INFO] Checking activity reminders 
[2026-04-11 16:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:23:28] [INFO] Checking activity reminders 
[2026-04-11 16:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:23:46] [INFO] Checking activity reminders 
[2026-04-11 16:23:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:23:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:23:58] [INFO] Checking activity reminders 
[2026-04-11 16:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:24:05] [INFO] Activity save request {"post_data":{"contact_id":"701","deal_id":"local_69d68cfd657ed3.65530180","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خونه مصرف خریده تازه ازدواج کرده \/ نقد نیست همه پول داده خونه داره بازسازی میکنه \/ \r\nمیخواد باشه کانال اما الویت خونه هست احتمالا پاییز میاد \r\nراضی بوده از کانال \r\n2سال کانال بوده \r\nطلا 30 گرم \r\n","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:24:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"701","note_was_empty":true}
[2026-04-11 16:24:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"701","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:05] [INFO] Updating virtual stage {"contact_id":"701","stage_name":"deal_registered","force":false}
[2026-04-11 16:24:05] [INFO] Virtual stage successfully saved {"contact_id":"701","stage_name":"deal_registered"}
[2026-04-11 16:24:05] [INFO] Virtual stage updated after activity save {"contact_id":"701"}
[2026-04-11 16:24:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68cfd657ed3.65530180","stage":"تماس پیگیری","status_change":null}
[2026-04-11 16:24:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da446d4ee2d9.44084231","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69da446d4ee2d9.44084231"}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:05] [INFO] Updating virtual stage {"contact_id":"701","stage_name":"deal_registered","force":false}
[2026-04-11 16:24:05] [INFO] Virtual stage successfully saved {"contact_id":"701","stage_name":"deal_registered"}
[2026-04-11 16:24:05] [INFO] Virtual stage updated after activity save {"contact_id":"701"}
[2026-04-11 16:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"701","person_id":"16783"}
[2026-04-11 16:24:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:24:16] [INFO] Checking activity reminders 
[2026-04-11 16:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:24:29] [INFO] Checking activity reminders 
[2026-04-11 16:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:24:46] [INFO] Checking activity reminders 
[2026-04-11 16:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:24:59] [INFO] Checking activity reminders 
[2026-04-11 16:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:25:16] [INFO] Checking activity reminders 
[2026-04-11 16:25:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:25:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:25:29] [INFO] Checking activity reminders 
[2026-04-11 16:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:25:46] [INFO] Checking activity reminders 
[2026-04-11 16:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:25:59] [INFO] Checking activity reminders 
[2026-04-11 16:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:26:01] [INFO] Activity save request {"post_data":{"contact_id":"8760","deal_id":"local_69d68cd23a5e30.76151528","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:26:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8760","note_was_empty":true}
[2026-04-11 16:26:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"8760","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:01] [INFO] Updating virtual stage {"contact_id":"8760","stage_name":"deal_registered","force":false}
[2026-04-11 16:26:01] [INFO] Virtual stage successfully saved {"contact_id":"8760","stage_name":"deal_registered"}
[2026-04-11 16:26:01] [INFO] Virtual stage updated after activity save {"contact_id":"8760"}
[2026-04-11 16:26:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68cd23a5e30.76151528","stage":"تماس پیگیری","status_change":null}
[2026-04-11 16:26:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da44e10906e3.34437303","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69da44e10906e3.34437303"}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:01] [INFO] Updating virtual stage {"contact_id":"8760","stage_name":"deal_registered","force":false}
[2026-04-11 16:26:01] [INFO] Virtual stage successfully saved {"contact_id":"8760","stage_name":"deal_registered"}
[2026-04-11 16:26:01] [INFO] Virtual stage updated after activity save {"contact_id":"8760"}
[2026-04-11 16:26:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8760","person_id":"16024"}
[2026-04-11 16:26:16] [INFO] Checking activity reminders 
[2026-04-11 16:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:26:29] [INFO] Checking activity reminders 
[2026-04-11 16:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:26:46] [INFO] Checking activity reminders 
[2026-04-11 16:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:26:59] [INFO] Checking activity reminders 
[2026-04-11 16:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:27:16] [INFO] Checking activity reminders 
[2026-04-11 16:27:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:27:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:27:29] [INFO] Checking activity reminders 
[2026-04-11 16:27:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:27:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:27:46] [INFO] Checking activity reminders 
[2026-04-11 16:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:27:59] [INFO] Checking activity reminders 
[2026-04-11 16:27:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:27:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:28:16] [INFO] Checking activity reminders 
[2026-04-11 16:28:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:28:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:28:29] [INFO] Checking activity reminders 
[2026-04-11 16:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:28:46] [INFO] Checking activity reminders 
[2026-04-11 16:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:28:59] [INFO] Checking activity reminders 
[2026-04-11 16:28:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:28:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:29:16] [INFO] Checking activity reminders 
[2026-04-11 16:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:29:29] [INFO] Checking activity reminders 
[2026-04-11 16:29:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:29:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:29:47] [INFO] Checking activity reminders 
[2026-04-11 16:29:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:29:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:29:59] [INFO] Checking activity reminders 
[2026-04-11 16:29:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:29:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:30:17] [INFO] Checking activity reminders 
[2026-04-11 16:30:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:30:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:30:29] [INFO] Checking activity reminders 
[2026-04-11 16:30:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:30:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:30:47] [INFO] Checking activity reminders 
[2026-04-11 16:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:30:59] [INFO] Checking activity reminders 
[2026-04-11 16:30:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:30:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:31:17] [INFO] Checking activity reminders 
[2026-04-11 16:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:31:29] [INFO] Checking activity reminders 
[2026-04-11 16:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:31:47] [INFO] Checking activity reminders 
[2026-04-11 16:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:31:59] [INFO] Checking activity reminders 
[2026-04-11 16:31:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:31:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:32:17] [INFO] Checking activity reminders 
[2026-04-11 16:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:32:29] [INFO] Checking activity reminders 
[2026-04-11 16:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:32:47] [INFO] Checking activity reminders 
[2026-04-11 16:32:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:32:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:33:00] [INFO] Checking activity reminders 
[2026-04-11 16:33:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:33:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:33:17] [INFO] Checking activity reminders 
[2026-04-11 16:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:33:30] [INFO] Checking activity reminders 
[2026-04-11 16:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:33:48] [INFO] Checking activity reminders 
[2026-04-11 16:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:34:00] [INFO] Checking activity reminders 
[2026-04-11 16:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:34:18] [INFO] Checking activity reminders 
[2026-04-11 16:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:34:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:34:30] [INFO] Checking activity reminders 
[2026-04-11 16:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:34:48] [INFO] Checking activity reminders 
[2026-04-11 16:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:35:00] [INFO] Checking activity reminders 
[2026-04-11 16:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:35:18] [INFO] Checking activity reminders 
[2026-04-11 16:35:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:35:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:35:30] [INFO] Checking activity reminders 
[2026-04-11 16:35:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:35:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:35:48] [INFO] Checking activity reminders 
[2026-04-11 16:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:36:00] [INFO] Checking activity reminders 
[2026-04-11 16:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:36:18] [INFO] Checking activity reminders 
[2026-04-11 16:36:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:36:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:36:18] [INFO] Lead update received {"contact_id":"local_1403_09_26_164","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 16:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_1403_09_26_164"}
[2026-04-11 16:36:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:36:37","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","is_new_deal":false}
[2026-04-11 16:36:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:36:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:36:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:36:37] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_164"}
[2026-04-11 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:37] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_164","person_found":true,"primary_phone":"9359171138"}
[2026-04-11 16:36:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359171138"}
[2026-04-11 16:36:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359171138","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:36:37"}
[2026-04-11 16:36:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_164","existing_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:36:37"}
[2026-04-11 16:36:37] [INFO] DealController.save validated payments {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 16:36:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_164","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:36:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6916fef5397.36634608","contact_didar_id":"local_1403_09_26_164","title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9359171138","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد یوسفی","existing_deal":"YES","existing_deal_id":"local_69d6916fef5397.36634608","existing_deal_status":"Pending","server_time":"2026-04-11 16:36:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-11 16:36:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:36:48] [INFO] Checking activity reminders 
[2026-04-11 16:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:37:18] [INFO] Checking activity reminders 
[2026-04-11 16:37:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:37:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:37:48] [INFO] Checking activity reminders 
[2026-04-11 16:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:38:18] [INFO] Checking activity reminders 
[2026-04-11 16:38:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:38:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:38:49] [INFO] Checking activity reminders 
[2026-04-11 16:38:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:38:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:39:19] [INFO] Checking activity reminders 
[2026-04-11 16:39:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:39:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:39:49] [INFO] Checking activity reminders 
[2026-04-11 16:39:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:39:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:40:19] [INFO] Checking activity reminders 
[2026-04-11 16:40:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:40:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:40:44] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:40:44","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:40:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:40:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","is_new_deal":false}
[2026-04-11 16:40:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:40:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:40:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-11 16:40:44] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_164"}
[2026-04-11 16:40:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:40:44] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_164","person_found":true,"primary_phone":"9359171138"}
[2026-04-11 16:40:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359171138"}
[2026-04-11 16:40:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359171138","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:40:44"}
[2026-04-11 16:40:44] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_164","existing_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:40:44"}
[2026-04-11 16:40:44] [INFO] DealController.save validated payments {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 16:40:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_164","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:40:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6916fef5397.36634608","contact_didar_id":"local_1403_09_26_164","title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9359171138","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":4000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد یوسفی","existing_deal":"YES","existing_deal_id":"local_69d6916fef5397.36634608","existing_deal_status":"Pending","server_time":"2026-04-11 16:40:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:40:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:40:44] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":4000000,"server_time":"2026-04-11 16:40:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:40:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:40:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:40:49] [INFO] Checking activity reminders 
[2026-04-11 16:40:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:40:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:41:19] [INFO] Checking activity reminders 
[2026-04-11 16:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:41:49] [INFO] Checking activity reminders 
[2026-04-11 16:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:42:19] [INFO] Checking activity reminders 
[2026-04-11 16:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:42:49] [INFO] Checking activity reminders 
[2026-04-11 16:42:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:42:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:43:19] [INFO] Checking activity reminders 
[2026-04-11 16:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:43:30] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خیل یاز نیروهاش تعدیل شدند \/ 17 تا نیرو شده 9 نفر \r\nچهاردنگه کارگاه ستون های تخت \r\nکالای خواب \r\nپرزنت 6 ماهه با پشتیبانی \r\n4 م بیعانه \r\nتسویه فردا \/ وصول چک","activity_duration":"6","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:43:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_164","note_was_empty":true}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:30] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_164","stage_name":"new","force":false}
[2026-04-11 16:43:30] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_164","stage_name":"new"}
[2026-04-11 16:43:30] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_164"}
[2026-04-11 16:43:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6916fef5397.36634608","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-11 16:43:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da48faae0971.91704244","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69da48faae0971.91704244"}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:30] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_164","stage_name":"deal_registered","force":false}
[2026-04-11 16:43:30] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_164","stage_name":"deal_registered"}
[2026-04-11 16:43:30] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_164"}
[2026-04-11 16:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-11 16:43:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:43:38] [INFO] Checking activity reminders 
[2026-04-11 16:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:43:43] [INFO] Checking activity reminders 
[2026-04-11 16:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:43:44] [INFO] Checking activity reminders 
[2026-04-11 16:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:44:14] [INFO] Checking activity reminders 
[2026-04-11 16:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:44:45] [INFO] Checking activity reminders 
[2026-04-11 16:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:00] [INFO] Checking activity reminders 
[2026-04-11 16:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:04] [INFO] Checking activity reminders 
[2026-04-11 16:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 16:45:10] [INFO] Checking activity reminders 
[2026-04-11 16:45:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:11] [INFO] Checking activity reminders 
[2026-04-11 16:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:13] [INFO] Checking activity reminders 
[2026-04-11 16:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:45:43] [INFO] Checking activity reminders 
[2026-04-11 16:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:46:13] [INFO] Checking activity reminders 
[2026-04-11 16:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:46:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:46:43] [INFO] Checking activity reminders 
[2026-04-11 16:46:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:46:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"check_reminders"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:13] [INFO] Checking activity reminders 
[2026-04-11 16:47:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:47:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:47:15] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:16] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:16] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"get_leads"}
[2026-04-11 16:47:16] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:16] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:20] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7819","deal_id":"local_69d6931a3bb291.98569112","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:47:26","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:47:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:47:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7819","is_new_deal":false}
[2026-04-11 16:47:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 16:47:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 16:47:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 16:47:26] [INFO] getContactPrimaryPhone called {"contact_id":"7819"}
[2026-04-11 16:47:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:47:26] [INFO] getContactPrimaryPhone result {"contact_id":"7819","person_found":true,"primary_phone":"9378148942"}
[2026-04-11 16:47:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9378148942"}
[2026-04-11 16:47:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9378148942","contact_id":"7819","deal_id":"local_69d6931a3bb291.98569112","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:47:26"}
[2026-04-11 16:47:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6931a3bb291.98569112","contact_id":"7819","existing_deal_found":true,"existing_contact_id":"7819","existing_title":"معامله چهارم 9378148942 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:47:26"}
[2026-04-11 16:47:26] [INFO] DealController.save validated payments {"deal_id":"local_69d6931a3bb291.98569112","contact_id":"7819","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 16:47:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7819","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:47:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6931a3bb291.98569112","contact_didar_id":"7819","title":"معامله چهارم 9378148942 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9378148942","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد محسنی","existing_deal":"YES","existing_deal_id":"local_69d6931a3bb291.98569112","existing_deal_status":"Pending","server_time":"2026-04-11 16:47:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:47:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:47:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6931a3bb291.98569112","contact_id":"7819","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9378148942 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 16:47:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:47:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:47:31] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:47:31] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 16:47:31] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 16:47:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 16:47:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 16:47:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 16:47:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 16:47:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:47:43] [INFO] Checking activity reminders 
[2026-04-11 16:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:47:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:48:13] [INFO] Checking activity reminders 
[2026-04-11 16:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:48:14] [INFO] Checking activity reminders 
[2026-04-11 16:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:48:36] [INFO] Activity save request {"post_data":{"contact_id":"7819","deal_id":"local_69d6931a3bb291.98569112","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 16:48:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7819","note_was_empty":true}
[2026-04-11 16:48:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"7819","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:36] [INFO] Updating virtual stage {"contact_id":"7819","stage_name":"deal_registered","force":false}
[2026-04-11 16:48:36] [INFO] Virtual stage successfully saved {"contact_id":"7819","stage_name":"deal_registered"}
[2026-04-11 16:48:36] [INFO] Virtual stage updated after activity save {"contact_id":"7819"}
[2026-04-11 16:48:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6931a3bb291.98569112","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 16:48:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4a2c6207b1.49460461","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4a2c6207b1.49460461"}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:36] [INFO] Updating virtual stage {"contact_id":"7819","stage_name":"deal_registered","force":false}
[2026-04-11 16:48:36] [INFO] Virtual stage successfully saved {"contact_id":"7819","stage_name":"deal_registered"}
[2026-04-11 16:48:36] [INFO] Virtual stage updated after activity save {"contact_id":"7819"}
[2026-04-11 16:48:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7819","person_id":"9687"}
[2026-04-11 16:48:44] [INFO] Checking activity reminders 
[2026-04-11 16:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:49:14] [INFO] Checking activity reminders 
[2026-04-11 16:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:49:44] [INFO] Checking activity reminders 
[2026-04-11 16:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 16:51:14] [INFO] Checking activity reminders 
[2026-04-11 16:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:51:44] [INFO] Checking activity reminders 
[2026-04-11 16:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:52:15] [INFO] Checking activity reminders 
[2026-04-11 16:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:52:45] [INFO] Checking activity reminders 
[2026-04-11 16:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:53:15] [INFO] Checking activity reminders 
[2026-04-11 16:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:53:46] [INFO] Checking activity reminders 
[2026-04-11 16:53:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:53:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"check_reminders"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_products"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:52] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:59] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 16:53:59] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-11 16:54:00] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 16:54:00] [INFO] Checking activity reminders 
[2026-04-11 16:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:54:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 16:54:07","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 16:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:54:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"21140","is_new_deal":false}
[2026-04-11 16:54:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:54:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:54:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 16:54:07] [INFO] getContactPrimaryPhone called {"contact_id":"21140"}
[2026-04-11 16:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:54:07] [INFO] getContactPrimaryPhone result {"contact_id":"21140","person_found":true,"primary_phone":"9102821143"}
[2026-04-11 16:54:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9102821143"}
[2026-04-11 16:54:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9102821143","contact_id":"21140","deal_id":"local_69b723050d8bb1.51027279","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:54:07"}
[2026-04-11 16:54:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","existing_deal_found":true,"existing_contact_id":"21140","existing_title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 16:54:07"}
[2026-04-11 16:54:07] [INFO] DealController.save validated payments {"deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 16:54:07] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21140","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 16:54:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b723050d8bb1.51027279","contact_didar_id":"21140","title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9102821143","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خسروجردی خسروجردی","existing_deal":"YES","existing_deal_id":"local_69b723050d8bb1.51027279","existing_deal_status":"Pending","server_time":"2026-04-11 16:54:07","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 16:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:54:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b723050d8bb1.51027279","contact_id":"21140","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9102821143 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":25000000,"server_time":"2026-04-11 16:54:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 16:54:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:54:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:54:25] [INFO] Checking activity reminders 
[2026-04-11 16:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:54:27] [INFO] Checking activity reminders 
[2026-04-11 16:54:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:54:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:54:30] [INFO] Checking activity reminders 
[2026-04-11 16:54:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:54:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:54:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:54:57] [INFO] Checking activity reminders 
[2026-04-11 16:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:00] [INFO] Checking activity reminders 
[2026-04-11 16:55:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:09] [INFO] Lead update received {"contact_id":"21140","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 16:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:55:09] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21140"}
[2026-04-11 16:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-11 16:55:17] [INFO] Activity save request {"post_data":{"contact_id":"20908","deal_id":"local_69d689f2d181d7.43037878","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس داد ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 16:55:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"20908","note_was_empty":true}
[2026-04-11 16:55:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"20908","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:17] [INFO] Updating virtual stage {"contact_id":"20908","stage_name":"deal_registered","force":false}
[2026-04-11 16:55:17] [INFO] Virtual stage successfully saved {"contact_id":"20908","stage_name":"deal_registered"}
[2026-04-11 16:55:17] [INFO] Virtual stage updated after activity save {"contact_id":"20908"}
[2026-04-11 16:55:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689f2d181d7.43037878","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 16:55:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4bbd5e0f09.94067475","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4bbd5e0f09.94067475"}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:17] [INFO] Updating virtual stage {"contact_id":"20908","stage_name":"deal_registered","force":false}
[2026-04-11 16:55:17] [INFO] Virtual stage successfully saved {"contact_id":"20908","stage_name":"deal_registered"}
[2026-04-11 16:55:17] [INFO] Virtual stage updated after activity save {"contact_id":"20908"}
[2026-04-11 16:55:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:55:21] [INFO] Checking activity reminders 
[2026-04-11 16:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 16:55:27] [INFO] Checking activity reminders 
[2026-04-11 16:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:30] [INFO] Checking activity reminders 
[2026-04-11 16:55:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:49] [INFO] Checking activity reminders 
[2026-04-11 16:55:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:51] [INFO] Checking activity reminders 
[2026-04-11 16:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:51] [INFO] Checking activity reminders 
[2026-04-11 16:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:52] [INFO] Checking activity reminders 
[2026-04-11 16:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:54] [INFO] Checking activity reminders 
[2026-04-11 16:55:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:55:56] [INFO] Checking activity reminders 
[2026-04-11 16:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:56:00] [INFO] Checking activity reminders 
[2026-04-11 16:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:56:21] [INFO] Checking activity reminders 
[2026-04-11 16:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:56:26] [INFO] Checking activity reminders 
[2026-04-11 16:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:56:30] [INFO] Checking activity reminders 
[2026-04-11 16:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:56:51] [INFO] Checking activity reminders 
[2026-04-11 16:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:57:00] [INFO] Checking activity reminders 
[2026-04-11 16:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:57:17] [INFO] Activity save request {"post_data":{"contact_id":"20908","deal_id":"local_69d689f2d181d7.43037878","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"براش پیام گذاشتم که باهاتون تماس گرفتم جهت عضوینت کانال 405 ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 16:57:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"20908","note_was_empty":true}
[2026-04-11 16:57:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"20908","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:17] [INFO] Updating virtual stage {"contact_id":"20908","stage_name":"deal_registered","force":false}
[2026-04-11 16:57:17] [INFO] Virtual stage successfully saved {"contact_id":"20908","stage_name":"deal_registered"}
[2026-04-11 16:57:17] [INFO] Virtual stage updated after activity save {"contact_id":"20908"}
[2026-04-11 16:57:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689f2d181d7.43037878","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 16:57:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4c35b22948.42396865","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4c35b22948.42396865"}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:17] [INFO] Updating virtual stage {"contact_id":"20908","stage_name":"deal_registered","force":false}
[2026-04-11 16:57:17] [INFO] Virtual stage successfully saved {"contact_id":"20908","stage_name":"deal_registered"}
[2026-04-11 16:57:17] [INFO] Virtual stage updated after activity save {"contact_id":"20908"}
[2026-04-11 16:57:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20908","person_id":"7013"}
[2026-04-11 16:57:21] [INFO] Checking activity reminders 
[2026-04-11 16:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:57:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 16:57:30] [INFO] Checking activity reminders 
[2026-04-11 16:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:57:51] [INFO] Checking activity reminders 
[2026-04-11 16:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:58:00] [INFO] Checking activity reminders 
[2026-04-11 16:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:58:21] [INFO] Checking activity reminders 
[2026-04-11 16:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:58:51] [INFO] Checking activity reminders 
[2026-04-11 16:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:58:57] [INFO] Checking activity reminders 
[2026-04-11 16:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:18] [INFO] Checking activity reminders 
[2026-04-11 16:59:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:20] [INFO] Checking activity reminders 
[2026-04-11 16:59:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:21] [INFO] Checking activity reminders 
[2026-04-11 16:59:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:22] [INFO] Checking activity reminders 
[2026-04-11 16:59:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 16:59:52] [INFO] Checking activity reminders 
[2026-04-11 16:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 16:59:52] [INFO] Checking activity reminders 
[2026-04-11 16:59:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 16:59:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:00:19] [INFO] Activity save request {"post_data":{"contact_id":"2181","deal_id":"local_69d68c6a4d7019.14208424","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"جمع کرده مغازه رو خالی شده \/ نتونسته چکاب حتی ادامه بده \/ کانال هر وقت نقد اکی شد","activity_duration":"10","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:00:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2181","note_was_empty":true}
[2026-04-11 17:00:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"2181","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:19] [INFO] Updating virtual stage {"contact_id":"2181","stage_name":"deal_registered","force":false}
[2026-04-11 17:00:19] [INFO] Virtual stage successfully saved {"contact_id":"2181","stage_name":"deal_registered"}
[2026-04-11 17:00:19] [INFO] Virtual stage updated after activity save {"contact_id":"2181"}
[2026-04-11 17:00:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68c6a4d7019.14208424","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:00:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4ceb9d80c8.80180971","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4ceb9d80c8.80180971"}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:19] [INFO] Updating virtual stage {"contact_id":"2181","stage_name":"deal_registered","force":false}
[2026-04-11 17:00:19] [INFO] Virtual stage successfully saved {"contact_id":"2181","stage_name":"deal_registered"}
[2026-04-11 17:00:19] [INFO] Virtual stage updated after activity save {"contact_id":"2181"}
[2026-04-11 17:00:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2181","person_id":"16316"}
[2026-04-11 17:00:22] [INFO] Checking activity reminders 
[2026-04-11 17:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:00:22] [INFO] Checking activity reminders 
[2026-04-11 17:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:00:52] [INFO] Checking activity reminders 
[2026-04-11 17:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:00:58] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12732","deal_id":"local_69d622e1aa2008.28181768","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:00:58","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 17:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:00:58] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12732","is_new_deal":false}
[2026-04-11 17:00:58] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 17:00:58] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:00:58] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:00:58] [INFO] getContactPrimaryPhone called {"contact_id":"12732"}
[2026-04-11 17:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:00:58] [INFO] getContactPrimaryPhone result {"contact_id":"12732","person_found":true,"primary_phone":"9191718419"}
[2026-04-11 17:00:58] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9191718419"}
[2026-04-11 17:00:58] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9191718419","contact_id":"12732","deal_id":"local_69d622e1aa2008.28181768","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:00:58"}
[2026-04-11 17:00:58] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d622e1aa2008.28181768","contact_id":"12732","existing_deal_found":true,"existing_contact_id":"12732","existing_title":"معامله سوم 9191718419 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:00:58"}
[2026-04-11 17:00:58] [INFO] DealController.save validated payments {"deal_id":"local_69d622e1aa2008.28181768","contact_id":"12732","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 17:00:58] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12732","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 17:00:58] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d622e1aa2008.28181768","contact_didar_id":"12732","title":"معامله سوم 9191718419 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9191718419","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم عباسی","existing_deal":"YES","existing_deal_id":"local_69d622e1aa2008.28181768","existing_deal_status":"Pending","server_time":"2026-04-11 17:00:58","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 17:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:00:58] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d622e1aa2008.28181768","contact_id":"12732","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9191718419 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 17:00:58","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 17:00:58] [INFO] Checking activity reminders 
[2026-04-11 17:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:00:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:22] [INFO] Checking activity reminders 
[2026-04-11 17:01:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:01:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:01:28] [INFO] Checking activity reminders 
[2026-04-11 17:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:01:35] [INFO] Activity save request {"post_data":{"contact_id":"12732","deal_id":"local_69d622e1aa2008.28181768","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\nدر سال 404 بدلیل پرداخت و تسویه حساب از کانال حذف شد ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:01:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12732","note_was_empty":true}
[2026-04-11 17:01:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"12732","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:35] [INFO] Updating virtual stage {"contact_id":"12732","stage_name":"deal_registered","force":false}
[2026-04-11 17:01:35] [INFO] Virtual stage successfully saved {"contact_id":"12732","stage_name":"deal_registered"}
[2026-04-11 17:01:35] [INFO] Virtual stage updated after activity save {"contact_id":"12732"}
[2026-04-11 17:01:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d622e1aa2008.28181768","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:01:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4d37a71ce7.79320639","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4d37a71ce7.79320639"}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:35] [INFO] Updating virtual stage {"contact_id":"12732","stage_name":"deal_registered","force":false}
[2026-04-11 17:01:35] [INFO] Virtual stage successfully saved {"contact_id":"12732","stage_name":"deal_registered"}
[2026-04-11 17:01:35] [INFO] Virtual stage updated after activity save {"contact_id":"12732"}
[2026-04-11 17:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12732","person_id":"925"}
[2026-04-11 17:01:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:01:52] [INFO] Checking activity reminders 
[2026-04-11 17:01:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:01:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:01:58] [INFO] Checking activity reminders 
[2026-04-11 17:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:02:22] [INFO] Checking activity reminders 
[2026-04-11 17:02:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:02:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:02:28] [INFO] Checking activity reminders 
[2026-04-11 17:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:02:30] [INFO] Checking activity reminders 
[2026-04-11 17:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:02:52] [INFO] Checking activity reminders 
[2026-04-11 17:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:02:58] [INFO] Checking activity reminders 
[2026-04-11 17:02:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:02:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:00] [INFO] Checking activity reminders 
[2026-04-11 17:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:22] [INFO] Checking activity reminders 
[2026-04-11 17:03:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:28] [INFO] Checking activity reminders 
[2026-04-11 17:03:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:30] [INFO] Checking activity reminders 
[2026-04-11 17:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:52] [INFO] Checking activity reminders 
[2026-04-11 17:03:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:03:58] [INFO] Checking activity reminders 
[2026-04-11 17:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:00] [INFO] Checking activity reminders 
[2026-04-11 17:04:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:22] [INFO] Checking activity reminders 
[2026-04-11 17:04:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:24] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"1151","deal_id":"local_69d689552956a2.36646025","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:04:24","session_id":"gk8gb1ab16e5f78vfftjdu9srf"}
[2026-04-11 17:04:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:04:24] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"1151","is_new_deal":false}
[2026-04-11 17:04:24] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-11 17:04:24] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 17:04:24] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-11 17:04:24] [INFO] getContactPrimaryPhone called {"contact_id":"1151"}
[2026-04-11 17:04:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:04:24] [INFO] getContactPrimaryPhone result {"contact_id":"1151","person_found":true,"primary_phone":"9153120223"}
[2026-04-11 17:04:24] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153120223"}
[2026-04-11 17:04:24] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153120223","contact_id":"1151","deal_id":"local_69d689552956a2.36646025","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 17:04:24"}
[2026-04-11 17:04:25] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d689552956a2.36646025","contact_id":"1151","existing_deal_found":true,"existing_contact_id":"1151","existing_title":"معامله سوم 9153120223 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 17:04:25"}
[2026-04-11 17:04:25] [INFO] DealController.save validated payments {"deal_id":"local_69d689552956a2.36646025","contact_id":"1151","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 17:04:25] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"1151","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 17:04:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d689552956a2.36646025","contact_didar_id":"1151","title":"معامله سوم 9153120223 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9153120223","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"یونس قاسم نیا","existing_deal":"YES","existing_deal_id":"local_69d689552956a2.36646025","existing_deal_status":"Pending","server_time":"2026-04-11 17:04:25","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-11 17:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:04:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d689552956a2.36646025","contact_id":"1151","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله سوم 9153120223 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-11 17:04:25","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 17:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:04:28] [INFO] Checking activity reminders 
[2026-04-11 17:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:30] [INFO] Checking activity reminders 
[2026-04-11 17:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:53] [INFO] Checking activity reminders 
[2026-04-11 17:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:04:58] [INFO] Checking activity reminders 
[2026-04-11 17:04:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:04:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:00] [INFO] Checking activity reminders 
[2026-04-11 17:05:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:23] [INFO] Checking activity reminders 
[2026-04-11 17:05:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:29] [INFO] Checking activity reminders 
[2026-04-11 17:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:30] [INFO] Checking activity reminders 
[2026-04-11 17:05:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:53] [INFO] Checking activity reminders 
[2026-04-11 17:05:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:05:54] [INFO] Activity save request {"post_data":{"contact_id":"1151","deal_id":"local_69d689552956a2.36646025","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من اصلا شمارمو نزاشته بودم ولی ممنونم که بهم زنگ زدید گفت من راستش اصلا از اقی حنفی اون تایم هم سوالی نمیپرسیدم پس اگه بخوام بیشتر تمایلم روی کانال بدون پشتیبانیه","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:05:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"1151","note_was_empty":true}
[2026-04-11 17:05:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"1151","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:54] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:05:54] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:05:54] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:05:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689552956a2.36646025","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 17:05:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da4e3a452eb6.99000871","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69da4e3a452eb6.99000871"}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:54] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:05:54] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:05:54] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:05:59] [INFO] Checking activity reminders 
[2026-04-11 17:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:00] [INFO] Checking activity reminders 
[2026-04-11 17:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:23] [INFO] Checking activity reminders 
[2026-04-11 17:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:29] [INFO] Checking activity reminders 
[2026-04-11 17:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:30] [INFO] Checking activity reminders 
[2026-04-11 17:06:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:53] [INFO] Checking activity reminders 
[2026-04-11 17:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:06:59] [INFO] Checking activity reminders 
[2026-04-11 17:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:01] [INFO] Checking activity reminders 
[2026-04-11 17:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:10] [INFO] Checking activity reminders 
[2026-04-11 17:07:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:13] [INFO] Checking activity reminders 
[2026-04-11 17:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:15] [INFO] Checking activity reminders 
[2026-04-11 17:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:16] [INFO] Checking activity reminders 
[2026-04-11 17:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:29] [INFO] Checking activity reminders 
[2026-04-11 17:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:31] [INFO] Checking activity reminders 
[2026-04-11 17:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:07:59] [INFO] Checking activity reminders 
[2026-04-11 17:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:01] [INFO] Checking activity reminders 
[2026-04-11 17:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:16] [INFO] Checking activity reminders 
[2026-04-11 17:08:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:18] [INFO] Checking activity reminders 
[2026-04-11 17:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:19] [INFO] Checking activity reminders 
[2026-04-11 17:08:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:29] [INFO] Checking activity reminders 
[2026-04-11 17:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:31] [INFO] Checking activity reminders 
[2026-04-11 17:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:49] [INFO] Checking activity reminders 
[2026-04-11 17:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:08:59] [INFO] Checking activity reminders 
[2026-04-11 17:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:01] [INFO] Checking activity reminders 
[2026-04-11 17:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:19] [INFO] Checking activity reminders 
[2026-04-11 17:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:29] [INFO] Checking activity reminders 
[2026-04-11 17:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:31] [INFO] Checking activity reminders 
[2026-04-11 17:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:50] [INFO] Checking activity reminders 
[2026-04-11 17:09:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:09:59] [INFO] Checking activity reminders 
[2026-04-11 17:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:10:01] [INFO] Checking activity reminders 
[2026-04-11 17:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:10:20] [INFO] Checking activity reminders 
[2026-04-11 17:10:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:10:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:10:31] [INFO] Checking activity reminders 
[2026-04-11 17:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:10:50] [INFO] Checking activity reminders 
[2026-04-11 17:10:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:10:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:11:01] [INFO] Checking activity reminders 
[2026-04-11 17:11:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:11:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:11:20] [INFO] Checking activity reminders 
[2026-04-11 17:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:11:31] [INFO] Checking activity reminders 
[2026-04-11 17:11:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:11:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:11:50] [INFO] Checking activity reminders 
[2026-04-11 17:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:01] [INFO] Checking activity reminders 
[2026-04-11 17:12:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:20] [INFO] Checking activity reminders 
[2026-04-11 17:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:31] [INFO] Checking activity reminders 
[2026-04-11 17:12:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:34] [INFO] Checking activity reminders 
[2026-04-11 17:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:36] [INFO] Checking activity reminders 
[2026-04-11 17:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:37] [INFO] Checking activity reminders 
[2026-04-11 17:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:12:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:12:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:01] [INFO] Checking activity reminders 
[2026-04-11 17:13:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:13:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:13:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"19838","deal_id":"local_69d695fb6ddf32.90741086","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:13:08","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 17:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"19838","is_new_deal":false}
[2026-04-11 17:13:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 17:13:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:13:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:13:08] [INFO] getContactPrimaryPhone called {"contact_id":"19838"}
[2026-04-11 17:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:08] [INFO] getContactPrimaryPhone result {"contact_id":"19838","person_found":true,"primary_phone":"9124083274"}
[2026-04-11 17:13:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124083274"}
[2026-04-11 17:13:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124083274","contact_id":"19838","deal_id":"local_69d695fb6ddf32.90741086","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:13:08"}
[2026-04-11 17:13:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","existing_deal_found":true,"existing_contact_id":"19838","existing_title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:13:08"}
[2026-04-11 17:13:08] [INFO] DealController.save validated payments {"deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-11 17:13:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"19838","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 17:13:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d695fb6ddf32.90741086","contact_didar_id":"19838","title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9124083274","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین جلیلیان","existing_deal":"YES","existing_deal_id":"local_69d695fb6ddf32.90741086","existing_deal_status":"Lost","server_time":"2026-04-11 17:13:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 17:13:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d695fb6ddf32.90741086","contact_id":"19838","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124083274 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 17:13:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 17:13:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:11] [INFO] Checking activity reminders 
[2026-04-11 17:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:13:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19838","person_id":"19129"}
[2026-04-11 17:13:31] [INFO] Checking activity reminders 
[2026-04-11 17:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:13:41] [INFO] Checking activity reminders 
[2026-04-11 17:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:14:01] [INFO] Checking activity reminders 
[2026-04-11 17:14:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:14:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:14:11] [INFO] Checking activity reminders 
[2026-04-11 17:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:14:31] [INFO] Checking activity reminders 
[2026-04-11 17:14:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:14:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:14:41] [INFO] Checking activity reminders 
[2026-04-11 17:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:15:01] [INFO] Checking activity reminders 
[2026-04-11 17:15:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:15:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:15:11] [INFO] Checking activity reminders 
[2026-04-11 17:15:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:15:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:15:31] [INFO] Checking activity reminders 
[2026-04-11 17:15:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:15:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:15:35] [INFO] Activity save request {"post_data":{"contact_id":"1151","deal_id":"local_69d689552956a2.36646025","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"براش داخل روبیکا شماره حساب ملت رو فرستادم ","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:15:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"1151","note_was_empty":true}
[2026-04-11 17:15:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"1151","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:35] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:15:35] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:15:35] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:15:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d689552956a2.36646025","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 17:15:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da507f941f18.02458662","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69da507f941f18.02458662"}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:35] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:15:35] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:15:35] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:15:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:15:41] [INFO] Checking activity reminders 
[2026-04-11 17:15:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:15:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:01] [INFO] Checking activity reminders 
[2026-04-11 17:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:12] [INFO] Checking activity reminders 
[2026-04-11 17:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:32] [INFO] Checking activity reminders 
[2026-04-11 17:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:42] [INFO] Checking activity reminders 
[2026-04-11 17:16:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:16:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:52] [INFO] Checking activity reminders 
[2026-04-11 17:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:16:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:17:02] [INFO] Checking activity reminders 
[2026-04-11 17:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:17:12] [INFO] Checking activity reminders 
[2026-04-11 17:17:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:17:22] [INFO] Checking activity reminders 
[2026-04-11 17:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:17:32] [INFO] Checking activity reminders 
[2026-04-11 17:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:17:42] [INFO] Checking activity reminders 
[2026-04-11 17:17:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:17:52] [INFO] Checking activity reminders 
[2026-04-11 17:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:02] [INFO] Checking activity reminders 
[2026-04-11 17:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:12] [INFO] Checking activity reminders 
[2026-04-11 17:18:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:22] [INFO] Checking activity reminders 
[2026-04-11 17:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:32] [INFO] Checking activity reminders 
[2026-04-11 17:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:42] [INFO] Checking activity reminders 
[2026-04-11 17:18:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:18:52] [INFO] Checking activity reminders 
[2026-04-11 17:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:02] [INFO] Checking activity reminders 
[2026-04-11 17:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:12] [INFO] Checking activity reminders 
[2026-04-11 17:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:22] [INFO] Checking activity reminders 
[2026-04-11 17:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:32] [INFO] Checking activity reminders 
[2026-04-11 17:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:42] [INFO] Checking activity reminders 
[2026-04-11 17:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:19:52] [INFO] Checking activity reminders 
[2026-04-11 17:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:02] [INFO] Checking activity reminders 
[2026-04-11 17:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:12] [INFO] Checking activity reminders 
[2026-04-11 17:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:22] [INFO] Checking activity reminders 
[2026-04-11 17:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:32] [INFO] Checking activity reminders 
[2026-04-11 17:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:42] [INFO] Checking activity reminders 
[2026-04-11 17:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:20:52] [INFO] Checking activity reminders 
[2026-04-11 17:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:02] [INFO] Checking activity reminders 
[2026-04-11 17:21:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:13] [INFO] Checking activity reminders 
[2026-04-11 17:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:22] [INFO] Checking activity reminders 
[2026-04-11 17:21:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:32] [INFO] Checking activity reminders 
[2026-04-11 17:21:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1151","deal_id":"local_69d6891941fd89.75492893","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:21:35","session_id":"gk8gb1ab16e5f78vfftjdu9srf"}
[2026-04-11 17:21:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1151","is_new_deal":false}
[2026-04-11 17:21:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 17:21:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:21:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:21:35] [INFO] getContactPrimaryPhone called {"contact_id":"1151"}
[2026-04-11 17:21:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:35] [INFO] getContactPrimaryPhone result {"contact_id":"1151","person_found":true,"primary_phone":"9153120223"}
[2026-04-11 17:21:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153120223"}
[2026-04-11 17:21:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153120223","contact_id":"1151","deal_id":"local_69d6891941fd89.75492893","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 17:21:35"}
[2026-04-11 17:21:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6891941fd89.75492893","contact_id":"1151","existing_deal_found":true,"existing_contact_id":"12385","existing_title":"معامله دوم 9153273834 | کانال VIP با پشتیبانی","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 17:21:35"}
[2026-04-11 17:21:35] [WARNING] Deal save blocked: deal_id does not belong to contact {"deal_id":"local_69d6891941fd89.75492893","incoming_contact_id":"1151","existing_contact_id":"12385","incoming_title":"کانال VIP با پشتیبانی","requested_services":["کانال VIP با پشتیبانی"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 17:21:35"}
[2026-04-11 17:21:43] [INFO] Checking activity reminders 
[2026-04-11 17:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:52] [INFO] Checking activity reminders 
[2026-04-11 17:21:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:21:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:21:55] [INFO] Activity save request {"post_data":{"contact_id":"1151","deal_id":"local_69d6891941fd89.75492893","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ","activity_duration":"2","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:21:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"1151","note_was_empty":true}
[2026-04-11 17:21:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"1151","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:55] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:21:55] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:21:55] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:21:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6891941fd89.75492893","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:21:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da51fb66e4d3.06681730","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69da51fb66e4d3.06681730"}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:21:55] [INFO] Updating virtual stage {"contact_id":"1151","stage_name":"deal_registered","force":false}
[2026-04-11 17:21:55] [INFO] Virtual stage successfully saved {"contact_id":"1151","stage_name":"deal_registered"}
[2026-04-11 17:21:55] [INFO] Virtual stage updated after activity save {"contact_id":"1151"}
[2026-04-11 17:21:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1151","person_id":"17627"}
[2026-04-11 17:22:02] [INFO] Checking activity reminders 
[2026-04-11 17:22:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:22:10] [INFO] Activity save request {"post_data":{"contact_id":"2228","deal_id":"local_69d68c20ad7020.50442352","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کارمند \/ مغازه سوپر مارکت اهواز \/ خانومش ارایشگر هست سالن گرفته \/ \r\nخالی شده سر سالن خانومش \/ پول بیاد دستش اطلاع میده","activity_duration":"15","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:22:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"2228","note_was_empty":true}
[2026-04-11 17:22:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"2228","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:10] [INFO] Updating virtual stage {"contact_id":"2228","stage_name":"deal_registered","force":false}
[2026-04-11 17:22:10] [INFO] Virtual stage successfully saved {"contact_id":"2228","stage_name":"deal_registered"}
[2026-04-11 17:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"2228"}
[2026-04-11 17:22:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68c20ad7020.50442352","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:22:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da520ad617f5.04257921","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69da520ad617f5.04257921"}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:10] [INFO] Updating virtual stage {"contact_id":"2228","stage_name":"deal_registered","force":false}
[2026-04-11 17:22:10] [INFO] Virtual stage successfully saved {"contact_id":"2228","stage_name":"deal_registered"}
[2026-04-11 17:22:10] [INFO] Virtual stage updated after activity save {"contact_id":"2228"}
[2026-04-11 17:22:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2228","person_id":"17892"}
[2026-04-11 17:22:13] [INFO] Checking activity reminders 
[2026-04-11 17:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:22:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:22:22] [INFO] Checking activity reminders 
[2026-04-11 17:22:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:22:43] [INFO] Checking activity reminders 
[2026-04-11 17:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:22:49] [INFO] Checking activity reminders 
[2026-04-11 17:22:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:22:52] [INFO] Checking activity reminders 
[2026-04-11 17:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:13] [INFO] Checking activity reminders 
[2026-04-11 17:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:19] [INFO] Checking activity reminders 
[2026-04-11 17:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:23] [INFO] Checking activity reminders 
[2026-04-11 17:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:43] [INFO] Checking activity reminders 
[2026-04-11 17:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:50] [INFO] Checking activity reminders 
[2026-04-11 17:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:23:53] [INFO] Checking activity reminders 
[2026-04-11 17:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:13] [INFO] Checking activity reminders 
[2026-04-11 17:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:24:20] [INFO] Checking activity reminders 
[2026-04-11 17:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:23] [INFO] Checking activity reminders 
[2026-04-11 17:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:44] [INFO] Checking activity reminders 
[2026-04-11 17:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:45] [INFO] Activity save request {"post_data":{"contact_id":"12385","deal_id":"local_69d6891941fd89.75492893","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"براش پیام گذاشتم که میخواستم در خصوص کانال 405 باهاش صحبت کنم ","activity_duration":"3","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:24:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"12385","note_was_empty":true}
[2026-04-11 17:24:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"12385","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:45] [INFO] Updating virtual stage {"contact_id":"12385","stage_name":"deal_registered","force":false}
[2026-04-11 17:24:45] [INFO] Virtual stage successfully saved {"contact_id":"12385","stage_name":"deal_registered"}
[2026-04-11 17:24:45] [INFO] Virtual stage updated after activity save {"contact_id":"12385"}
[2026-04-11 17:24:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6891941fd89.75492893","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:24:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da52a5932480.69365159","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69da52a5932480.69365159"}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:45] [INFO] Updating virtual stage {"contact_id":"12385","stage_name":"deal_registered","force":false}
[2026-04-11 17:24:45] [INFO] Virtual stage successfully saved {"contact_id":"12385","stage_name":"deal_registered"}
[2026-04-11 17:24:45] [INFO] Virtual stage updated after activity save {"contact_id":"12385"}
[2026-04-11 17:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12385","person_id":"17401"}
[2026-04-11 17:24:50] [INFO] Checking activity reminders 
[2026-04-11 17:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:24:53] [INFO] Checking activity reminders 
[2026-04-11 17:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:14] [INFO] Checking activity reminders 
[2026-04-11 17:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:20] [INFO] Checking activity reminders 
[2026-04-11 17:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:23] [INFO] Checking activity reminders 
[2026-04-11 17:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:25:44] [INFO] Checking activity reminders 
[2026-04-11 17:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:50] [INFO] Checking activity reminders 
[2026-04-11 17:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:25:53] [INFO] Checking activity reminders 
[2026-04-11 17:25:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:25:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:14] [INFO] Checking activity reminders 
[2026-04-11 17:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:20] [INFO] Checking activity reminders 
[2026-04-11 17:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:23] [INFO] Checking activity reminders 
[2026-04-11 17:26:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:33] [INFO] Activity save request {"post_data":{"contact_id":"20967","deal_id":"local_69d68e6b5d83b6.56203123","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:26:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20967","note_was_empty":true}
[2026-04-11 17:26:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"20967","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:33] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-11 17:26:33] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-11 17:26:33] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-11 17:26:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68e6b5d83b6.56203123","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:26:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da53112b70a6.86212381","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69da53112b70a6.86212381"}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:33] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-11 17:26:33] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-11 17:26:33] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-11 17:26:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-11 17:26:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:26:44] [INFO] Checking activity reminders 
[2026-04-11 17:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:50] [INFO] Checking activity reminders 
[2026-04-11 17:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:26:53] [INFO] Checking activity reminders 
[2026-04-11 17:26:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:26:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:14] [INFO] Checking activity reminders 
[2026-04-11 17:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:20] [INFO] Checking activity reminders 
[2026-04-11 17:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:23] [INFO] Checking activity reminders 
[2026-04-11 17:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:44] [INFO] Checking activity reminders 
[2026-04-11 17:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:27:50] [INFO] Checking activity reminders 
[2026-04-11 17:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:27:53] [INFO] Checking activity reminders 
[2026-04-11 17:27:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:27:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:15] [INFO] Checking activity reminders 
[2026-04-11 17:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:20] [INFO] Checking activity reminders 
[2026-04-11 17:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:20] [INFO] Checking activity reminders 
[2026-04-11 17:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:23] [INFO] Checking activity reminders 
[2026-04-11 17:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:24] [INFO] Activity save request {"post_data":{"contact_id":"647","deal_id":"local_69b73475739fc5.85636200","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"گفت من مبلغ 49 تومن رو تیپاکس کردم امروز چکش رو ","activity_duration":"3","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:28:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"647","note_was_empty":true}
[2026-04-11 17:28:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"647","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"with_purchase","force":false}
[2026-04-11 17:28:24] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"with_purchase"}
[2026-04-11 17:28:24] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b73475739fc5.85636200","stage":"اتمام","status_change":"Won"}
[2026-04-11 17:28:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da538060b007.85158376","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69da538060b007.85158376"}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:24] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"with_purchase","force":false}
[2026-04-11 17:28:24] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"with_purchase"}
[2026-04-11 17:28:24] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-11 17:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:28:50] [INFO] Checking activity reminders 
[2026-04-11 17:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:28:53] [INFO] Checking activity reminders 
[2026-04-11 17:28:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:28:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:29:20] [INFO] Checking activity reminders 
[2026-04-11 17:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:29:23] [INFO] Checking activity reminders 
[2026-04-11 17:29:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:29:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:29:50] [INFO] Checking activity reminders 
[2026-04-11 17:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:29:53] [INFO] Checking activity reminders 
[2026-04-11 17:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:30:20] [INFO] Checking activity reminders 
[2026-04-11 17:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:30:23] [INFO] Checking activity reminders 
[2026-04-11 17:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:30:51] [INFO] Checking activity reminders 
[2026-04-11 17:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:30:53] [INFO] Checking activity reminders 
[2026-04-11 17:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:30:57] [INFO] Activity save request {"post_data":{"contact_id":"647","deal_id":"local_69d687a0c2f2c4.68501094","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیر شدم میگه برای فردا سعی میکنم تا 30 درصد مبلغ رو اکی کنم ","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:30:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:30:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:30:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"647","note_was_empty":true}
[2026-04-11 17:30:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"647","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:30:57] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"with_purchase","force":false}
[2026-04-11 17:30:57] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"with_purchase"}
[2026-04-11 17:30:57] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-11 17:30:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d687a0c2f2c4.68501094","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 17:30:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da54194fc906.65316575","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:30:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69da54194fc906.65316575"}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:30:57] [INFO] Updating virtual stage {"contact_id":"647","stage_name":"with_purchase","force":false}
[2026-04-11 17:30:57] [INFO] Virtual stage successfully saved {"contact_id":"647","stage_name":"with_purchase"}
[2026-04-11 17:30:57] [INFO] Virtual stage updated after activity save {"contact_id":"647"}
[2026-04-11 17:30:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-11 17:31:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:31:23] [INFO] Checking activity reminders 
[2026-04-11 17:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:31:38] [INFO] Checking activity reminders 
[2026-04-11 17:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:31:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:31:53] [INFO] Checking activity reminders 
[2026-04-11 17:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:32:23] [INFO] Checking activity reminders 
[2026-04-11 17:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:32:24] [INFO] Checking activity reminders 
[2026-04-11 17:32:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:32:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:32:53] [INFO] Checking activity reminders 
[2026-04-11 17:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:32:54] [INFO] Checking activity reminders 
[2026-04-11 17:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:33:23] [INFO] Checking activity reminders 
[2026-04-11 17:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:33:24] [INFO] Checking activity reminders 
[2026-04-11 17:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:33:54] [INFO] Checking activity reminders 
[2026-04-11 17:33:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:33:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:33:54] [INFO] Checking activity reminders 
[2026-04-11 17:33:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:33:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:33:54] [INFO] Activity save request {"post_data":{"contact_id":"4786","deal_id":"local_69b988fda51064.12687406","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:33:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:33:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:33:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"4786","note_was_empty":true}
[2026-04-11 17:33:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"4786","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:33:54] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 17:33:54] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 17:33:54] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 17:33:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b988fda51064.12687406","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:33:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da54cab53ec7.52358273","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:33:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69da54cab53ec7.52358273"}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:33:54] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 17:33:54] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 17:33:54] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 17:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:24] [INFO] Checking activity reminders 
[2026-04-11 17:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:34:24] [INFO] Checking activity reminders 
[2026-04-11 17:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:34:26] [INFO] Activity save request {"post_data":{"contact_id":"9100","deal_id":"local_69d68b72934699.58813154","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"20 گرم طلا \/ 1سورن \/ 1 ال 90 \/ 1 کوییک \/ \r\nنقدینگی 100 ت \r\nفعلا شرای طنداره میگه ماشین معامله میکنه نمیتونه فعلا نقد کنه \/ پدرش مریضه \/ \r\nمدرک کارشناسی از افراش پیگیری کنه \r\nفعلا شرای طنداره اطلاع میده ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:34:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9100","note_was_empty":true}
[2026-04-11 17:34:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"9100","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:26] [INFO] Updating virtual stage {"contact_id":"9100","stage_name":"deal_registered","force":false}
[2026-04-11 17:34:26] [INFO] Virtual stage successfully saved {"contact_id":"9100","stage_name":"deal_registered"}
[2026-04-11 17:34:26] [INFO] Virtual stage updated after activity save {"contact_id":"9100"}
[2026-04-11 17:34:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68b72934699.58813154","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:34:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da54eab4ac74.98446738","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69da54eab4ac74.98446738"}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:26] [INFO] Updating virtual stage {"contact_id":"9100","stage_name":"deal_registered","force":false}
[2026-04-11 17:34:26] [INFO] Virtual stage successfully saved {"contact_id":"9100","stage_name":"deal_registered"}
[2026-04-11 17:34:26] [INFO] Virtual stage updated after activity save {"contact_id":"9100"}
[2026-04-11 17:34:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9100","person_id":"17831"}
[2026-04-11 17:34:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:34:43] [INFO] Activity save request {"post_data":{"contact_id":"4786","deal_id":"local_69b988fda51064.12687406","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"براش پیام گذاشتم که جهت کانال vip 405 باهاش تماس گرفتم پاسخگو نبوده ","activity_duration":"3","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:34:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"4786","note_was_empty":true}
[2026-04-11 17:34:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"4786","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:43] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 17:34:43] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 17:34:43] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 17:34:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b988fda51064.12687406","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:34:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da54fba8a177.50913730","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69da54fba8a177.50913730"}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:43] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 17:34:43] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 17:34:43] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 17:34:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 17:34:54] [INFO] Checking activity reminders 
[2026-04-11 17:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:34:54] [INFO] Checking activity reminders 
[2026-04-11 17:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:35:24] [INFO] Checking activity reminders 
[2026-04-11 17:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:35:24] [INFO] Checking activity reminders 
[2026-04-11 17:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:35:54] [INFO] Checking activity reminders 
[2026-04-11 17:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:35:54] [INFO] Checking activity reminders 
[2026-04-11 17:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:36:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:36:24] [INFO] Checking activity reminders 
[2026-04-11 17:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:36:49] [INFO] Checking activity reminders 
[2026-04-11 17:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:36:54] [INFO] Checking activity reminders 
[2026-04-11 17:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:37:19] [INFO] Checking activity reminders 
[2026-04-11 17:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:37:24] [INFO] Checking activity reminders 
[2026-04-11 17:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:37:49] [INFO] Checking activity reminders 
[2026-04-11 17:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:37:54] [INFO] Checking activity reminders 
[2026-04-11 17:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:38:08] [INFO] Activity save request {"post_data":{"contact_id":"21137","deal_id":"local_69d68b402bd515.67603793","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دستش بند بود 1 ساعت دیگه تماس ","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:38:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:38:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:38:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21137","note_was_empty":true}
[2026-04-11 17:38:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"21137","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:09] [INFO] Updating virtual stage {"contact_id":"21137","stage_name":"deal_registered","force":false}
[2026-04-11 17:38:09] [INFO] Virtual stage successfully saved {"contact_id":"21137","stage_name":"deal_registered"}
[2026-04-11 17:38:09] [INFO] Virtual stage updated after activity save {"contact_id":"21137"}
[2026-04-11 17:38:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68b402bd515.67603793","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:38:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da55c9014d28.79417686","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69da55c9014d28.79417686"}
[2026-04-11 17:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:09] [INFO] Updating virtual stage {"contact_id":"21137","stage_name":"deal_registered","force":false}
[2026-04-11 17:38:09] [INFO] Virtual stage successfully saved {"contact_id":"21137","stage_name":"deal_registered"}
[2026-04-11 17:38:09] [INFO] Virtual stage updated after activity save {"contact_id":"21137"}
[2026-04-11 17:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-11 17:38:14] [INFO] Activity save request {"post_data":{"contact_id":"7337","deal_id":"local_69d68728bc23c9.29333586","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تماسگرفتم جهت اینکه ببینم با داداشش مشورت کرد اکی شد برای واریزی یا نه که گفت متاسفانه چون کسبو کارمون ثل قبل نیست فعلا نمیتونم ورود بزنم برای کانال و خب سرمایه ای هم ندارم که بتونم باهاش اصلا سرمایه گذاری کنم چون تو این مدت همش از جیب خوردیم ","activity_duration":"3","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_purchase_intent","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:38:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"7337","note_was_empty":true}
[2026-04-11 17:38:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"7337","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Updating virtual stage {"contact_id":"7337","stage_name":"deal_registered","force":false}
[2026-04-11 17:38:14] [INFO] Virtual stage successfully saved {"contact_id":"7337","stage_name":"deal_registered"}
[2026-04-11 17:38:14] [INFO] Virtual stage updated after activity save {"contact_id":"7337"}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68728bc23c9.29333586","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-11 17:38:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da55ce2021a3.36699487","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69da55ce2021a3.36699487"}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:14] [INFO] Updating virtual stage {"contact_id":"7337","stage_name":"deal_registered","force":false}
[2026-04-11 17:38:14] [INFO] Virtual stage successfully saved {"contact_id":"7337","stage_name":"deal_registered"}
[2026-04-11 17:38:14] [INFO] Virtual stage updated after activity save {"contact_id":"7337"}
[2026-04-11 17:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7337","person_id":"13966"}
[2026-04-11 17:38:19] [INFO] Checking activity reminders 
[2026-04-11 17:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:38:24] [INFO] Checking activity reminders 
[2026-04-11 17:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:38:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:38:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:38:54] [INFO] Checking activity reminders 
[2026-04-11 17:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:39:13] [INFO] Checking activity reminders 
[2026-04-11 17:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:39:24] [INFO] Checking activity reminders 
[2026-04-11 17:39:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:39:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:39:43] [INFO] Checking activity reminders 
[2026-04-11 17:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:39:54] [INFO] Checking activity reminders 
[2026-04-11 17:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:40:13] [INFO] Checking activity reminders 
[2026-04-11 17:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:40:25] [INFO] Checking activity reminders 
[2026-04-11 17:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:40:44] [INFO] Checking activity reminders 
[2026-04-11 17:40:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:40:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:40:55] [INFO] Checking activity reminders 
[2026-04-11 17:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:41:14] [INFO] Checking activity reminders 
[2026-04-11 17:41:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:41:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:41:25] [INFO] Checking activity reminders 
[2026-04-11 17:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:41:44] [INFO] Checking activity reminders 
[2026-04-11 17:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:41:55] [INFO] Checking activity reminders 
[2026-04-11 17:41:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:41:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:42:14] [INFO] Checking activity reminders 
[2026-04-11 17:42:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:42:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:42:25] [INFO] Checking activity reminders 
[2026-04-11 17:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:42:44] [INFO] Checking activity reminders 
[2026-04-11 17:42:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:42:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:42:55] [INFO] Checking activity reminders 
[2026-04-11 17:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:43:14] [INFO] Checking activity reminders 
[2026-04-11 17:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:43:25] [INFO] Checking activity reminders 
[2026-04-11 17:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:43:44] [INFO] Checking activity reminders 
[2026-04-11 17:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:43:55] [INFO] Checking activity reminders 
[2026-04-11 17:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:44:14] [INFO] Checking activity reminders 
[2026-04-11 17:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:44:25] [INFO] Checking activity reminders 
[2026-04-11 17:44:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:44:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:44:44] [INFO] Checking activity reminders 
[2026-04-11 17:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:44:55] [INFO] Checking activity reminders 
[2026-04-11 17:44:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:44:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:45:02] [INFO] Activity save request {"post_data":{"contact_id":"local_69d75837d1b549.28151894","deal_id":"local_69d75837de51c","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من 2 تومن 2 تومن میتونم واریزی داشته باشم چون الان مرز بسته شده ما کار نمیکنیم همش داریم تو جنگ از جیب میخوریم درنهایت 3 ماهه تسویه کنم گفتم شما باید 30 درصد مبلغ رو بزنید که بتونیم شمارو عضو کانال کنیم میگه فعلا ندارم ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ناموفق","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"no_financial_ability","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:45:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"local_69d75837d1b549.28151894","note_was_empty":true}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Updating virtual stage {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered","force":false}
[2026-04-11 17:45:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered"}
[2026-04-11 17:45:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d75837d1b549.28151894"}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d75837de51c","stage":"معامله ناموفق","status_change":"Lost"}
[2026-04-11 17:45:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5766da9404.03165813","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5766da9404.03165813"}
[2026-04-11 17:45:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:02] [INFO] Updating virtual stage {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered","force":false}
[2026-04-11 17:45:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69d75837d1b549.28151894","stage_name":"deal_registered"}
[2026-04-11 17:45:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d75837d1b549.28151894"}
[2026-04-11 17:45:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d75837d1b549.28151894","person_id":"22092"}
[2026-04-11 17:45:14] [INFO] Checking activity reminders 
[2026-04-11 17:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:45:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 17:45:25] [INFO] Checking activity reminders 
[2026-04-11 17:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:45:40] [INFO] Activity save request {"post_data":{"contact_id":"8372","deal_id":"local_69d68b0a13dea2.15705069","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"35 گرم طلا \/  زمین خریده 144 متر ارزش تقریبا 3200 \/ \r\nدانشجو هست 30 سال سن داره \/ \r\nبرج 6 به بعد میاد پول باید بیاد دستش ","activity_duration":"20","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:45:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"8372","note_was_empty":true}
[2026-04-11 17:45:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"8372","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:40] [INFO] Updating virtual stage {"contact_id":"8372","stage_name":"deal_registered","force":false}
[2026-04-11 17:45:40] [INFO] Virtual stage successfully saved {"contact_id":"8372","stage_name":"deal_registered"}
[2026-04-11 17:45:40] [INFO] Virtual stage updated after activity save {"contact_id":"8372"}
[2026-04-11 17:45:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68b0a13dea2.15705069","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:45:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da578c8c80e6.18411161","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69da578c8c80e6.18411161"}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:40] [INFO] Updating virtual stage {"contact_id":"8372","stage_name":"deal_registered","force":false}
[2026-04-11 17:45:40] [INFO] Virtual stage successfully saved {"contact_id":"8372","stage_name":"deal_registered"}
[2026-04-11 17:45:40] [INFO] Virtual stage updated after activity save {"contact_id":"8372"}
[2026-04-11 17:45:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:45:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:45:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:45:55] [INFO] Checking activity reminders 
[2026-04-11 17:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:45:55] [INFO] Checking activity reminders 
[2026-04-11 17:45:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:45:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:46:06] [INFO] Activity save request {"post_data":{"contact_id":"7587","deal_id":"local_69d687a0c2f2c4.68501094","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من فردااحتمالا بتونم تا 30 درصد مبلغو اکی کنم جهت واریزی ","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 17:46:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"7587","note_was_empty":true}
[2026-04-11 17:46:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"7587","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:06] [INFO] Updating virtual stage {"contact_id":"7587","stage_name":"deal_registered","force":false}
[2026-04-11 17:46:06] [INFO] Virtual stage successfully saved {"contact_id":"7587","stage_name":"deal_registered"}
[2026-04-11 17:46:06] [INFO] Virtual stage updated after activity save {"contact_id":"7587"}
[2026-04-11 17:46:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d687a0c2f2c4.68501094","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 17:46:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da57a674cc61.84771561","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69da57a674cc61.84771561"}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:06] [INFO] Updating virtual stage {"contact_id":"7587","stage_name":"deal_registered","force":false}
[2026-04-11 17:46:06] [INFO] Virtual stage successfully saved {"contact_id":"7587","stage_name":"deal_registered"}
[2026-04-11 17:46:06] [INFO] Virtual stage updated after activity save {"contact_id":"7587"}
[2026-04-11 17:46:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7587","person_id":"17431"}
[2026-04-11 17:46:25] [INFO] Checking activity reminders 
[2026-04-11 17:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:46:25] [INFO] Checking activity reminders 
[2026-04-11 17:46:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:46:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:46:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8372","person_id":"14289"}
[2026-04-11 17:46:55] [INFO] Checking activity reminders 
[2026-04-11 17:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:47:25] [INFO] Checking activity reminders 
[2026-04-11 17:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:47:44] [INFO] Checking activity reminders 
[2026-04-11 17:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:47:55] [INFO] Checking activity reminders 
[2026-04-11 17:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:48:14] [INFO] Checking activity reminders 
[2026-04-11 17:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:48:26] [INFO] Checking activity reminders 
[2026-04-11 17:48:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:48:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:48:44] [INFO] Checking activity reminders 
[2026-04-11 17:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:48:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 17:48:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14050","deal_id":"local_69d691d813ebd5.21103994","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:48:48","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 17:48:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 17:48:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14050","is_new_deal":false}
[2026-04-11 17:48:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 17:48:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:48:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:48:48] [INFO] getContactPrimaryPhone called {"contact_id":"14050"}
[2026-04-11 17:48:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 17:48:48] [INFO] getContactPrimaryPhone result {"contact_id":"14050","person_found":true,"primary_phone":"9362755495"}
[2026-04-11 17:48:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9362755495"}
[2026-04-11 17:48:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9362755495","contact_id":"14050","deal_id":"local_69d691d813ebd5.21103994","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:48:48"}
[2026-04-11 17:48:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d691d813ebd5.21103994","contact_id":"14050","existing_deal_found":true,"existing_contact_id":"14050","existing_title":"معامله سوم 9362755495 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:48:48"}
[2026-04-11 17:48:48] [INFO] DealController.save validated payments {"deal_id":"local_69d691d813ebd5.21103994","contact_id":"14050","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-11 17:48:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"14050","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 17:48:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d691d813ebd5.21103994","contact_didar_id":"14050","title":"معامله سوم 9362755495 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9362755495","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"دارابی","existing_deal":"YES","existing_deal_id":"local_69d691d813ebd5.21103994","existing_deal_status":"Pending","server_time":"2026-04-11 17:48:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 17:48:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 17:48:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d691d813ebd5.21103994","contact_id":"14050","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9362755495 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 17:48:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 17:48:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 17:48:54] [INFO] Checking activity reminders 
[2026-04-11 17:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:48:56] [INFO] Checking activity reminders 
[2026-04-11 17:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:49:24] [INFO] Checking activity reminders 
[2026-04-11 17:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:49:26] [INFO] Checking activity reminders 
[2026-04-11 17:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:49:29] [INFO] Activity save request {"post_data":{"contact_id":"16840","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در سال 404 بیعانه کارشناسی داشته \r\nنتونسته پرداخت کنه \r\nدر کانال 404 نبوده \r\nشرایط مالی اکی نیست","activity_duration":"6","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:49:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:49:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:49:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:49:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:49:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16840","note_was_empty":true}
[2026-04-11 17:49:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"16840","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 17:49:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5871dd6658.27981250","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:49:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:49:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5871dd6658.27981250"}
[2026-04-11 17:49:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:49:29] [INFO] Updating virtual stage {"contact_id":"16840","stage_name":"deal_registered","force":false}
[2026-04-11 17:49:29] [INFO] Virtual stage successfully saved {"contact_id":"16840","stage_name":"deal_registered"}
[2026-04-11 17:49:29] [INFO] Virtual stage updated after activity save {"contact_id":"16840"}
[2026-04-11 17:49:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:49:55] [INFO] Checking activity reminders 
[2026-04-11 17:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:49:56] [INFO] Checking activity reminders 
[2026-04-11 17:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:50:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16840","deal_id":"local_69d690326e86c9.92353471","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 17:50:14","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 17:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:50:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16840","is_new_deal":false}
[2026-04-11 17:50:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 17:50:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:50:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 17:50:14] [INFO] getContactPrimaryPhone called {"contact_id":"16840"}
[2026-04-11 17:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:50:14] [INFO] getContactPrimaryPhone result {"contact_id":"16840","person_found":true,"primary_phone":"9309955262"}
[2026-04-11 17:50:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9309955262"}
[2026-04-11 17:50:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9309955262","contact_id":"16840","deal_id":"local_69d690326e86c9.92353471","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:50:14"}
[2026-04-11 17:50:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d690326e86c9.92353471","contact_id":"16840","existing_deal_found":true,"existing_contact_id":"16840","existing_title":"معامله دوم 9309955262 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 17:50:14"}
[2026-04-11 17:50:14] [INFO] DealController.save validated payments {"deal_id":"local_69d690326e86c9.92353471","contact_id":"16840","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-11 17:50:14] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16840","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 17:50:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d690326e86c9.92353471","contact_didar_id":"16840","title":"معامله دوم 9309955262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9309955262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدرضا حسن زاده دهشیبی","existing_deal":"YES","existing_deal_id":"local_69d690326e86c9.92353471","existing_deal_status":"Pending","server_time":"2026-04-11 17:50:14","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 17:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:50:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d690326e86c9.92353471","contact_id":"16840","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9309955262 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 17:50:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 17:50:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 17:50:18] [INFO] Checking activity reminders 
[2026-04-11 17:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:50:26] [INFO] Checking activity reminders 
[2026-04-11 17:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:50:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 17:50:48] [INFO] Checking activity reminders 
[2026-04-11 17:50:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:50:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:50:56] [INFO] Checking activity reminders 
[2026-04-11 17:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:51:18] [INFO] Checking activity reminders 
[2026-04-11 17:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:51:26] [INFO] Checking activity reminders 
[2026-04-11 17:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:51:28] [INFO] Checking activity reminders 
[2026-04-11 17:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:51:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 17:51:56] [INFO] Checking activity reminders 
[2026-04-11 17:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:51:56] [INFO] Checking activity reminders 
[2026-04-11 17:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:52:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:52:26] [INFO] Checking activity reminders 
[2026-04-11 17:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:52:27] [INFO] Checking activity reminders 
[2026-04-11 17:52:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:52:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:52:56] [INFO] Checking activity reminders 
[2026-04-11 17:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:52:57] [INFO] Checking activity reminders 
[2026-04-11 17:52:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:52:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:53:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:53:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:53:26] [INFO] Checking activity reminders 
[2026-04-11 17:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:53:27] [INFO] Checking activity reminders 
[2026-04-11 17:53:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:53:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:53:56] [INFO] Checking activity reminders 
[2026-04-11 17:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:53:59] [INFO] Checking activity reminders 
[2026-04-11 17:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:54:12] [INFO] Activity save request {"post_data":{"contact_id":"5525","deal_id":"local_6954e3778d99c3.75044026","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"با خواهرش صحبت کردم \r\nاقای خاشعی سنگاپور \/ کشتیرانی باربری \r\nحالش خوبه \/ فقط تماس تلفنی نمیشه داشت \r\nدر صورت حضور در ایران تماس مجدد ","activity_duration":"5","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:54:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:54:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5525","note_was_empty":true}
[2026-04-11 17:54:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"5525","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 17:54:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:13] [INFO] Updating virtual stage {"contact_id":"5525","stage_name":"deal_registered","force":false}
[2026-04-11 17:54:13] [INFO] Virtual stage successfully saved {"contact_id":"5525","stage_name":"deal_registered"}
[2026-04-11 17:54:13] [INFO] Virtual stage updated after activity save {"contact_id":"5525"}
[2026-04-11 17:54:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6954e3778d99c3.75044026","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 17:54:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da598d01b2a9.64686264","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:54:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69da598d01b2a9.64686264"}
[2026-04-11 17:54:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:13] [INFO] Updating virtual stage {"contact_id":"5525","stage_name":"deal_registered","force":false}
[2026-04-11 17:54:13] [INFO] Virtual stage successfully saved {"contact_id":"5525","stage_name":"deal_registered"}
[2026-04-11 17:54:13] [INFO] Virtual stage updated after activity save {"contact_id":"5525"}
[2026-04-11 17:54:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5525","person_id":"16876"}
[2026-04-11 17:54:26] [INFO] Checking activity reminders 
[2026-04-11 17:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:54:29] [INFO] Checking activity reminders 
[2026-04-11 17:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:54:35] [INFO] Lead update received {"contact_id":"local_69d673b991e925.63859145","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 17:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:54:35] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d673b991e925.63859145"}
[2026-04-11 17:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:54:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:54:43] [INFO] Checking activity reminders 
[2026-04-11 17:54:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:54:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:54:56] [INFO] Checking activity reminders 
[2026-04-11 17:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:55:13] [INFO] Checking activity reminders 
[2026-04-11 17:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:55:26] [INFO] Checking activity reminders 
[2026-04-11 17:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:55:26] [INFO] Checking activity reminders 
[2026-04-11 17:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:55:56] [INFO] Checking activity reminders 
[2026-04-11 17:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:55:56] [INFO] Checking activity reminders 
[2026-04-11 17:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:56:26] [INFO] Checking activity reminders 
[2026-04-11 17:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:56:29] [INFO] Checking activity reminders 
[2026-04-11 17:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:56:57] [INFO] Checking activity reminders 
[2026-04-11 17:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:56:59] [INFO] Checking activity reminders 
[2026-04-11 17:56:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:56:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:57:23] [INFO] Activity save request {"post_data":{"contact_id":"local_69d673b991e925.63859145","deal_id":"local_69d673b99593a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرکت سازه فولادی داره \/ المان اقامت داره \/ دکترا المان خونده\/ \r\nبه خاط جنگ و اعتراضات شرکت فعالیتی نداشته \/ بورس با کسی کار میکنه بیستر کالا میگیره \/ زمین زیاد داره \/ سرمایه داره \/ \r\nشهیدی معرفی کرده ما رو \/ کانال قدوم اول بعد مشاوره کاری دوست داره دشاته باشه \r\nگفت 2جای دیگه رو معرفی کردن با اونا صحبت کنم نتیجه اطلاع میدم بهتون ","activity_duration":"45","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 17:57:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d673b991e925.63859145","note_was_empty":true}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:23] [INFO] Updating virtual stage {"contact_id":"local_69d673b991e925.63859145","stage_name":"new","force":false}
[2026-04-11 17:57:23] [INFO] Virtual stage successfully saved {"contact_id":"local_69d673b991e925.63859145","stage_name":"new"}
[2026-04-11 17:57:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d673b991e925.63859145"}
[2026-04-11 17:57:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d673b99593a","stage":"تماس پیگیری","status_change":null}
[2026-04-11 17:57:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5a4ba352d3.84773669","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5a4ba352d3.84773669"}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:23] [INFO] Updating virtual stage {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered","force":false}
[2026-04-11 17:57:23] [INFO] Virtual stage successfully saved {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered"}
[2026-04-11 17:57:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d673b991e925.63859145"}
[2026-04-11 17:57:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 17:57:27] [INFO] Checking activity reminders 
[2026-04-11 17:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:57:29] [INFO] Checking activity reminders 
[2026-04-11 17:57:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:57:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:57:57] [INFO] Checking activity reminders 
[2026-04-11 17:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:57:59] [INFO] Checking activity reminders 
[2026-04-11 17:57:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:57:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:58:01] [INFO] Checking activity reminders 
[2026-04-11 17:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:58:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 17:58:27] [INFO] Checking activity reminders 
[2026-04-11 17:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:58:31] [INFO] Checking activity reminders 
[2026-04-11 17:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:58:57] [INFO] Checking activity reminders 
[2026-04-11 17:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:59:01] [INFO] Checking activity reminders 
[2026-04-11 17:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:59:27] [INFO] Checking activity reminders 
[2026-04-11 17:59:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:59:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:59:31] [INFO] Checking activity reminders 
[2026-04-11 17:59:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:59:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 17:59:57] [INFO] Checking activity reminders 
[2026-04-11 17:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 17:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:00:01] [INFO] Checking activity reminders 
[2026-04-11 18:00:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:00:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:00:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20836","deal_id":"local_69d62025382af5.17031649","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:00:50","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 18:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 18:00:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20836","is_new_deal":false}
[2026-04-11 18:00:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 18:00:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:00:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:00:50] [INFO] getContactPrimaryPhone called {"contact_id":"20836"}
[2026-04-11 18:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 18:00:50] [INFO] getContactPrimaryPhone result {"contact_id":"20836","person_found":true,"primary_phone":"9184009213"}
[2026-04-11 18:00:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9184009213"}
[2026-04-11 18:00:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9184009213","contact_id":"20836","deal_id":"local_69d62025382af5.17031649","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:00:50"}
[2026-04-11 18:00:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d62025382af5.17031649","contact_id":"20836","existing_deal_found":true,"existing_contact_id":"20836","existing_title":"معامله دوم 9184009213 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:00:50"}
[2026-04-11 18:00:50] [INFO] DealController.save validated payments {"deal_id":"local_69d62025382af5.17031649","contact_id":"20836","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-11 18:00:50] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20836","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:00:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d62025382af5.17031649","contact_didar_id":"20836","title":"معامله دوم 9184009213 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9184009213","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هاوژین عبداله زاده","existing_deal":"YES","existing_deal_id":"local_69d62025382af5.17031649","existing_deal_status":"Pending","server_time":"2026-04-11 18:00:50","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 18:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 18:00:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d62025382af5.17031649","contact_id":"20836","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9184009213 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 18:00:50","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:00:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20836","person_id":"4221"}
[2026-04-11 18:01:34] [INFO] Checking activity reminders 
[2026-04-11 18:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:02:04] [INFO] Checking activity reminders 
[2026-04-11 18:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:02:34] [INFO] Checking activity reminders 
[2026-04-11 18:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:03:04] [INFO] Checking activity reminders 
[2026-04-11 18:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:03:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:03:34] [INFO] Checking activity reminders 
[2026-04-11 18:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:04:04] [INFO] Checking activity reminders 
[2026-04-11 18:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:04:27] [INFO] Checking activity reminders 
[2026-04-11 18:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:04:34] [INFO] Checking activity reminders 
[2026-04-11 18:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:04:57] [INFO] Checking activity reminders 
[2026-04-11 18:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:05:04] [INFO] Checking activity reminders 
[2026-04-11 18:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:05:27] [INFO] Checking activity reminders 
[2026-04-11 18:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:05:34] [INFO] Checking activity reminders 
[2026-04-11 18:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:05:57] [INFO] Checking activity reminders 
[2026-04-11 18:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:06:04] [INFO] Checking activity reminders 
[2026-04-11 18:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:06:27] [INFO] Checking activity reminders 
[2026-04-11 18:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:06:34] [INFO] Checking activity reminders 
[2026-04-11 18:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:06:57] [INFO] Checking activity reminders 
[2026-04-11 18:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:07:04] [INFO] Checking activity reminders 
[2026-04-11 18:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:07:27] [INFO] Checking activity reminders 
[2026-04-11 18:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:07:34] [INFO] Checking activity reminders 
[2026-04-11 18:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:07:58] [INFO] Checking activity reminders 
[2026-04-11 18:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:08:05] [INFO] Checking activity reminders 
[2026-04-11 18:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:08:28] [INFO] Checking activity reminders 
[2026-04-11 18:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:08:35] [INFO] Checking activity reminders 
[2026-04-11 18:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:08:58] [INFO] Checking activity reminders 
[2026-04-11 18:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:09:05] [INFO] Checking activity reminders 
[2026-04-11 18:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:09:28] [INFO] Checking activity reminders 
[2026-04-11 18:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:09:35] [INFO] Checking activity reminders 
[2026-04-11 18:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:09:58] [INFO] Checking activity reminders 
[2026-04-11 18:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:10:05] [INFO] Checking activity reminders 
[2026-04-11 18:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:10:28] [INFO] Checking activity reminders 
[2026-04-11 18:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:10:35] [INFO] Checking activity reminders 
[2026-04-11 18:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:10:58] [INFO] Checking activity reminders 
[2026-04-11 18:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:11:05] [INFO] Checking activity reminders 
[2026-04-11 18:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:11:28] [INFO] Checking activity reminders 
[2026-04-11 18:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:11:34] [INFO] Activity save request {"post_data":{"contact_id":"local_69d673b991e925.63859145","deal_id":"local_69d673b99593a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه 79 ت عدد درشتی هست \/ با شهیدی هم صحبت کرده گفته در میاری تو ی هفته \/ با اینکه انقدر پولداره اما زورش میاد پول بده \/ گفتم اوکی 6ماهه 39ت انجام بدین مشاوره بگیرن استفاده از خدمات داشته باشین رضایت داشتین ادامه میدیم \r\nهمش میگه روک حرف بزنم گرون میگین و ال و بل \/ دید دادم سوال کردم گفتم شما اگر بخوایی انجام بدی مبلغ کم رو انجام میدی \/","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:11:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d673b991e925.63859145","note_was_empty":true}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:34] [INFO] Updating virtual stage {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered","force":false}
[2026-04-11 18:11:34] [INFO] Virtual stage successfully saved {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered"}
[2026-04-11 18:11:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d673b991e925.63859145"}
[2026-04-11 18:11:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d673b99593a","stage":"تماس پیگیری","status_change":null}
[2026-04-11 18:11:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5d9e914215.25020256","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5d9e914215.25020256"}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:34] [INFO] Updating virtual stage {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered","force":false}
[2026-04-11 18:11:34] [INFO] Virtual stage successfully saved {"contact_id":"local_69d673b991e925.63859145","stage_name":"deal_registered"}
[2026-04-11 18:11:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d673b991e925.63859145"}
[2026-04-11 18:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d673b991e925.63859145","person_id":"22045"}
[2026-04-11 18:11:35] [INFO] Checking activity reminders 
[2026-04-11 18:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:11:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12529","deal_id":"local_69d4db6591f6e8.25434338","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:11:48","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 18:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:11:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12529","is_new_deal":false}
[2026-04-11 18:11:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 18:11:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:11:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:11:48] [INFO] getContactPrimaryPhone called {"contact_id":"12529"}
[2026-04-11 18:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:11:48] [INFO] getContactPrimaryPhone result {"contact_id":"12529","person_found":true,"primary_phone":"9155199715"}
[2026-04-11 18:11:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155199715"}
[2026-04-11 18:11:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155199715","contact_id":"12529","deal_id":"local_69d4db6591f6e8.25434338","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:11:48"}
[2026-04-11 18:11:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4db6591f6e8.25434338","contact_id":"12529","existing_deal_found":true,"existing_contact_id":"12529","existing_title":"معامله چهارم 9155199715 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:11:48"}
[2026-04-11 18:11:48] [INFO] DealController.save validated payments {"deal_id":"local_69d4db6591f6e8.25434338","contact_id":"12529","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 18:11:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12529","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:11:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4db6591f6e8.25434338","contact_didar_id":"12529","title":"معامله چهارم 9155199715 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9155199715","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کاظمی","existing_deal":"YES","existing_deal_id":"local_69d4db6591f6e8.25434338","existing_deal_status":"Pending","server_time":"2026-04-11 18:11:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 18:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:11:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4db6591f6e8.25434338","contact_id":"12529","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9155199715 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 18:11:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:11:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:11:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:11:58] [INFO] Checking activity reminders 
[2026-04-11 18:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:12:04] [INFO] Activity save request {"post_data":{"contact_id":"12529","deal_id":"local_69d4db6591f6e8.25434338","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:12:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12529","note_was_empty":true}
[2026-04-11 18:12:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"12529","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:04] [INFO] Updating virtual stage {"contact_id":"12529","stage_name":"deal_registered","force":false}
[2026-04-11 18:12:04] [INFO] Virtual stage successfully saved {"contact_id":"12529","stage_name":"deal_registered"}
[2026-04-11 18:12:04] [INFO] Virtual stage updated after activity save {"contact_id":"12529"}
[2026-04-11 18:12:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4db6591f6e8.25434338","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 18:12:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5dbc98bcc0.76510615","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5dbc98bcc0.76510615"}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:04] [INFO] Updating virtual stage {"contact_id":"12529","stage_name":"deal_registered","force":false}
[2026-04-11 18:12:04] [INFO] Virtual stage successfully saved {"contact_id":"12529","stage_name":"deal_registered"}
[2026-04-11 18:12:04] [INFO] Virtual stage updated after activity save {"contact_id":"12529"}
[2026-04-11 18:12:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12529","person_id":"13952"}
[2026-04-11 18:12:05] [INFO] Checking activity reminders 
[2026-04-11 18:12:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:12:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:12:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:12:28] [INFO] Checking activity reminders 
[2026-04-11 18:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:12:35] [INFO] Checking activity reminders 
[2026-04-11 18:12:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:12:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:12:36] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1013","deal_id":"local_69d690e884e3a9.38962337","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:12:36","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 18:12:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:12:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1013","is_new_deal":false}
[2026-04-11 18:12:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 18:12:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:12:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:12:36] [INFO] getContactPrimaryPhone called {"contact_id":"1013"}
[2026-04-11 18:12:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:12:36] [INFO] getContactPrimaryPhone result {"contact_id":"1013","person_found":true,"primary_phone":"9337446707"}
[2026-04-11 18:12:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9337446707"}
[2026-04-11 18:12:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9337446707","contact_id":"1013","deal_id":"local_69d690e884e3a9.38962337","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:12:36"}
[2026-04-11 18:12:36] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d690e884e3a9.38962337","contact_id":"1013","existing_deal_found":true,"existing_contact_id":"1013","existing_title":"معامله دوم 9337446707 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:12:36"}
[2026-04-11 18:12:36] [INFO] DealController.save validated payments {"deal_id":"local_69d690e884e3a9.38962337","contact_id":"1013","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 18:12:36] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1013","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:12:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d690e884e3a9.38962337","contact_didar_id":"1013","title":"معامله دوم 9337446707 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9337446707","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ساتکی","existing_deal":"YES","existing_deal_id":"local_69d690e884e3a9.38962337","existing_deal_status":"Pending","server_time":"2026-04-11 18:12:36","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 18:12:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:12:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d690e884e3a9.38962337","contact_id":"1013","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9337446707 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 18:12:36","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:12:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:03] [INFO] Checking activity reminders 
[2026-04-11 18:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:13:05] [INFO] Checking activity reminders 
[2026-04-11 18:13:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:13:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:13:07] [INFO] Activity save request {"post_data":{"contact_id":"1013","deal_id":"local_69d690e884e3a9.38962337","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خط 912 گفت اشتباهه \r\n933 رد تماس \r\nپیام در بله و پ\r\nیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:13:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1013","note_was_empty":true}
[2026-04-11 18:13:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"1013","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:07] [INFO] Updating virtual stage {"contact_id":"1013","stage_name":"deal_registered","force":false}
[2026-04-11 18:13:07] [INFO] Virtual stage successfully saved {"contact_id":"1013","stage_name":"deal_registered"}
[2026-04-11 18:13:07] [INFO] Virtual stage updated after activity save {"contact_id":"1013"}
[2026-04-11 18:13:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d690e884e3a9.38962337","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 18:13:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5dfb882d72.94155735","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5dfb882d72.94155735"}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:07] [INFO] Updating virtual stage {"contact_id":"1013","stage_name":"deal_registered","force":false}
[2026-04-11 18:13:07] [INFO] Virtual stage successfully saved {"contact_id":"1013","stage_name":"deal_registered"}
[2026-04-11 18:13:07] [INFO] Virtual stage updated after activity save {"contact_id":"1013"}
[2026-04-11 18:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1013","person_id":"13868"}
[2026-04-11 18:13:33] [INFO] Checking activity reminders 
[2026-04-11 18:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:13:36] [INFO] Checking activity reminders 
[2026-04-11 18:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:14:03] [INFO] Activity save request {"post_data":{"contact_id":"20504","deal_id":"local_69d223288a6e58.42310111","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیام فعلا معرفی کردم عکسالعمش رو ببینم \/ هدف تمدید کانال","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:14:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20504","note_was_empty":true}
[2026-04-11 18:14:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"20504","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:03] [INFO] Updating virtual stage {"contact_id":"20504","stage_name":"deal_registered","force":false}
[2026-04-11 18:14:03] [INFO] Virtual stage successfully saved {"contact_id":"20504","stage_name":"deal_registered"}
[2026-04-11 18:14:03] [INFO] Virtual stage updated after activity save {"contact_id":"20504"}
[2026-04-11 18:14:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d223288a6e58.42310111","stage":"تماس پیگیری","status_change":null}
[2026-04-11 18:14:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5e33d37e95.32317223","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5e33d37e95.32317223"}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:03] [INFO] Updating virtual stage {"contact_id":"20504","stage_name":"deal_registered","force":false}
[2026-04-11 18:14:03] [INFO] Virtual stage successfully saved {"contact_id":"20504","stage_name":"deal_registered"}
[2026-04-11 18:14:03] [INFO] Virtual stage updated after activity save {"contact_id":"20504"}
[2026-04-11 18:14:03] [INFO] Checking activity reminders 
[2026-04-11 18:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:14:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20504","person_id":"11772"}
[2026-04-11 18:14:06] [INFO] Checking activity reminders 
[2026-04-11 18:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:14:36] [INFO] Checking activity reminders 
[2026-04-11 18:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:14:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-11 18:15:06] [INFO] Checking activity reminders 
[2026-04-11 18:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:15:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 18:15:36] [INFO] Checking activity reminders 
[2026-04-11 18:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:02] [INFO] Checking activity reminders 
[2026-04-11 18:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-11 18:16:06] [INFO] Checking activity reminders 
[2026-04-11 18:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:09] [INFO] Checking activity reminders 
[2026-04-11 18:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-11 18:16:32] [INFO] Checking activity reminders 
[2026-04-11 18:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:35] [INFO] Checking activity reminders 
[2026-04-11 18:16:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:37] [INFO] Checking activity reminders 
[2026-04-11 18:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:16:40] [INFO] Checking activity reminders 
[2026-04-11 18:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:17:02] [INFO] Checking activity reminders 
[2026-04-11 18:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:17:02] [INFO] Checking activity reminders 
[2026-04-11 18:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:17:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:17:20","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 18:17:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3481","is_new_deal":false}
[2026-04-11 18:17:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:17:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:17:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:17:20] [INFO] getContactPrimaryPhone called {"contact_id":"3481"}
[2026-04-11 18:17:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:20] [INFO] getContactPrimaryPhone result {"contact_id":"3481","person_found":true,"primary_phone":"9174582804"}
[2026-04-11 18:17:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9174582804"}
[2026-04-11 18:17:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9174582804","contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:17:20"}
[2026-04-11 18:17:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","existing_deal_found":true,"existing_contact_id":"3481","existing_title":"معامله دوم 9174582804 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:17:20"}
[2026-04-11 18:17:20] [INFO] DealController.save validated payments {"deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-11 18:17:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3481","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:17:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbb0c62ffbc6.46672277","contact_didar_id":"3481","title":"معامله دوم 9174582804 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9174582804","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"بیژن صفرپور","existing_deal":"YES","existing_deal_id":"local_69bbb0c62ffbc6.46672277","existing_deal_status":"Pending","server_time":"2026-04-11 18:17:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 18:17:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbb0c62ffbc6.46672277","contact_id":"3481","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9174582804 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-11 18:17:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:17:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:32] [INFO] Checking activity reminders 
[2026-04-11 18:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:17:32] [INFO] Checking activity reminders 
[2026-04-11 18:17:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:17:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:17:48] [INFO] Activity save request {"post_data":{"contact_id":"3481","deal_id":"local_69bbb0c62ffbc6.46672277","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:17:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3481","note_was_empty":true}
[2026-04-11 18:17:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"3481","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:48] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-04-11 18:17:48] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-04-11 18:17:48] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-04-11 18:17:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbb0c62ffbc6.46672277","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 18:17:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5f141144b5.65727841","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5f141144b5.65727841"}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:17:48] [INFO] Updating virtual stage {"contact_id":"3481","stage_name":"deal_registered","force":false}
[2026-04-11 18:17:48] [INFO] Virtual stage successfully saved {"contact_id":"3481","stage_name":"deal_registered"}
[2026-04-11 18:17:48] [INFO] Virtual stage updated after activity save {"contact_id":"3481"}
[2026-04-11 18:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3481","person_id":"3140"}
[2026-04-11 18:18:02] [INFO] Checking activity reminders 
[2026-04-11 18:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:18:02] [INFO] Checking activity reminders 
[2026-04-11 18:18:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:18:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:18:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:18:32] [INFO] Checking activity reminders 
[2026-04-11 18:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:18:32] [INFO] Checking activity reminders 
[2026-04-11 18:18:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:18:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:19:02] [INFO] Checking activity reminders 
[2026-04-11 18:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:19:02] [INFO] Checking activity reminders 
[2026-04-11 18:19:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:19:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:19:32] [INFO] Checking activity reminders 
[2026-04-11 18:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:19:32] [INFO] Checking activity reminders 
[2026-04-11 18:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:02] [INFO] Checking activity reminders 
[2026-04-11 18:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:02] [INFO] Checking activity reminders 
[2026-04-11 18:20:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:32] [INFO] Checking activity reminders 
[2026-04-11 18:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:32] [INFO] Checking activity reminders 
[2026-04-11 18:20:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:41] [INFO] Activity save request {"post_data":{"contact_id":"2689","deal_id":"local_69b724b4222536.03516675","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\nپیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:20:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2689","note_was_empty":true}
[2026-04-11 18:20:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"2689","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:41] [INFO] Updating virtual stage {"contact_id":"2689","stage_name":"deal_registered","force":false}
[2026-04-11 18:20:41] [INFO] Virtual stage successfully saved {"contact_id":"2689","stage_name":"deal_registered"}
[2026-04-11 18:20:41] [INFO] Virtual stage updated after activity save {"contact_id":"2689"}
[2026-04-11 18:20:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b724b4222536.03516675","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-11 18:20:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da5fc1541d42.82771841","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69da5fc1541d42.82771841"}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:41] [INFO] Updating virtual stage {"contact_id":"2689","stage_name":"deal_registered","force":false}
[2026-04-11 18:20:41] [INFO] Virtual stage successfully saved {"contact_id":"2689","stage_name":"deal_registered"}
[2026-04-11 18:20:41] [INFO] Virtual stage updated after activity save {"contact_id":"2689"}
[2026-04-11 18:20:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2689","person_id":"10431"}
[2026-04-11 18:20:52] [INFO] Checking activity reminders 
[2026-04-11 18:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:54] [INFO] Checking activity reminders 
[2026-04-11 18:20:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:56] [INFO] Checking activity reminders 
[2026-04-11 18:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:20:59] [INFO] Checking activity reminders 
[2026-04-11 18:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:21:02] [INFO] Checking activity reminders 
[2026-04-11 18:21:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:21:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:21:29] [INFO] Checking activity reminders 
[2026-04-11 18:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:21:33] [INFO] Checking activity reminders 
[2026-04-11 18:21:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:21:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:21:59] [INFO] Checking activity reminders 
[2026-04-11 18:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:22:03] [INFO] Checking activity reminders 
[2026-04-11 18:22:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:22:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:22:12] [INFO] Checking activity reminders 
[2026-04-11 18:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:22:33] [INFO] Checking activity reminders 
[2026-04-11 18:22:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:22:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:22:42] [INFO] Checking activity reminders 
[2026-04-11 18:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:22:43] [INFO] Checking activity reminders 
[2026-04-11 18:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:23:03] [INFO] Checking activity reminders 
[2026-04-11 18:23:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:23:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:23:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:23:13] [INFO] Checking activity reminders 
[2026-04-11 18:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:23:33] [INFO] Checking activity reminders 
[2026-04-11 18:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:23:43] [INFO] Checking activity reminders 
[2026-04-11 18:23:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:23:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:24:03] [INFO] Checking activity reminders 
[2026-04-11 18:24:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:24:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:24:13] [INFO] Checking activity reminders 
[2026-04-11 18:24:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:24:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:24:33] [INFO] Checking activity reminders 
[2026-04-11 18:24:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:24:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:24:43] [INFO] Checking activity reminders 
[2026-04-11 18:24:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:24:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:25:03] [INFO] Checking activity reminders 
[2026-04-11 18:25:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:25:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:25:14] [INFO] Checking activity reminders 
[2026-04-11 18:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:25:33] [INFO] Checking activity reminders 
[2026-04-11 18:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:25:44] [INFO] Checking activity reminders 
[2026-04-11 18:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:26:03] [INFO] Checking activity reminders 
[2026-04-11 18:26:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:26:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:26:14] [INFO] Checking activity reminders 
[2026-04-11 18:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:26:33] [INFO] Checking activity reminders 
[2026-04-11 18:26:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:26:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:26:44] [INFO] Checking activity reminders 
[2026-04-11 18:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:27:03] [INFO] Checking activity reminders 
[2026-04-11 18:27:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:27:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:27:14] [INFO] Checking activity reminders 
[2026-04-11 18:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:27:33] [INFO] Checking activity reminders 
[2026-04-11 18:27:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:27:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:27:44] [INFO] Checking activity reminders 
[2026-04-11 18:27:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:27:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:28:03] [INFO] Checking activity reminders 
[2026-04-11 18:28:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:28:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:28:14] [INFO] Checking activity reminders 
[2026-04-11 18:28:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:28:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:28:34] [INFO] Checking activity reminders 
[2026-04-11 18:28:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:28:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:28:44] [INFO] Checking activity reminders 
[2026-04-11 18:28:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:28:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:29:14] [INFO] Checking activity reminders 
[2026-04-11 18:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:29:44] [INFO] Checking activity reminders 
[2026-04-11 18:29:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:29:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:30:15] [INFO] Checking activity reminders 
[2026-04-11 18:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:30:45] [INFO] Checking activity reminders 
[2026-04-11 18:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:31:15] [INFO] Checking activity reminders 
[2026-04-11 18:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:31:45] [INFO] Checking activity reminders 
[2026-04-11 18:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:32:15] [INFO] Checking activity reminders 
[2026-04-11 18:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:32:45] [INFO] Checking activity reminders 
[2026-04-11 18:32:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:32:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:33:15] [INFO] Checking activity reminders 
[2026-04-11 18:33:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:33:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:33:45] [INFO] Checking activity reminders 
[2026-04-11 18:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:34:15] [INFO] Checking activity reminders 
[2026-04-11 18:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:34:45] [INFO] Checking activity reminders 
[2026-04-11 18:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:35:16] [INFO] Checking activity reminders 
[2026-04-11 18:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:35:46] [INFO] Checking activity reminders 
[2026-04-11 18:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:36:16] [INFO] Checking activity reminders 
[2026-04-11 18:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:36:46] [INFO] Checking activity reminders 
[2026-04-11 18:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:37:16] [INFO] Checking activity reminders 
[2026-04-11 18:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:37:46] [INFO] Checking activity reminders 
[2026-04-11 18:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:38:04] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:04] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"check_reminders"}
[2026-04-11 18:38:04] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_products"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:06] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:08] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_products"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"get_deals"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:09] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:15] [WARNING] Auth check failed - not authenticated {"session_id":"gk8gb1ab16e5f78vfftjdu9srf","session_keys":[],"action":"log_client_event"}
[2026-04-11 18:38:15] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-11 18:38:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 18:38:16] [INFO] Checking activity reminders 
[2026-04-11 18:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:38:45] [INFO] Checking activity reminders 
[2026-04-11 18:38:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:38:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:38:46] [INFO] Checking activity reminders 
[2026-04-11 18:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:38:50] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"4786","deal_id":"local_69b988fda51064.12687406","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:38:50","session_id":"gk8gb1ab16e5f78vfftjdu9srf"}
[2026-04-11 18:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:38:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"4786","is_new_deal":false}
[2026-04-11 18:38:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:38:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:38:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-11 18:38:50] [INFO] getContactPrimaryPhone called {"contact_id":"4786"}
[2026-04-11 18:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:38:50] [INFO] getContactPrimaryPhone result {"contact_id":"4786","person_found":true,"primary_phone":"9141021021"}
[2026-04-11 18:38:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141021021"}
[2026-04-11 18:38:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141021021","contact_id":"4786","deal_id":"local_69b988fda51064.12687406","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 18:38:50"}
[2026-04-11 18:38:50] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b988fda51064.12687406","contact_id":"4786","existing_deal_found":true,"existing_contact_id":"4786","existing_title":"معامله دوم 9141021021","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","server_time":"2026-04-11 18:38:50"}
[2026-04-11 18:38:50] [INFO] DealController.save validated payments {"deal_id":"local_69b988fda51064.12687406","contact_id":"4786","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-11 18:38:50] [INFO] DealController.save validating permissions {"current_user_id":"local_3e2fc1c5b672c4f3","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_id":"4786","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:38:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b988fda51064.12687406","contact_didar_id":"4786","title":"معامله دوم 9141021021 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9141021021","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","contact_owner_id":"local_3e2fc1c5b672c4f3","contact_name":"وحیدمحمدزاده وحیدمحمدزاده","existing_deal":"YES","existing_deal_id":"local_69b988fda51064.12687406","existing_deal_status":"Pending","server_time":"2026-04-11 18:38:50","session_data":{"didar_id":"local_3e2fc1c5b672c4f3","name":"شایسته 2","user_id":"1714"}}
[2026-04-11 18:38:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:38:50] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b988fda51064.12687406","contact_id":"4786","contact_owner_id":"local_3e2fc1c5b672c4f3","user_id":"local_3e2fc1c5b672c4f3","user_name":"شایسته 2","deal_title":"معامله دوم 9141021021 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-11 18:38:50","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:39:15] [INFO] Checking activity reminders 
[2026-04-11 18:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:39:16] [INFO] Checking activity reminders 
[2026-04-11 18:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:39:46] [INFO] Checking activity reminders 
[2026-04-11 18:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:39:46] [INFO] Checking activity reminders 
[2026-04-11 18:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:16] [INFO] Checking activity reminders 
[2026-04-11 18:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:22] [INFO] Checking activity reminders 
[2026-04-11 18:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:22] [INFO] Checking activity reminders 
[2026-04-11 18:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:24] [INFO] Checking activity reminders 
[2026-04-11 18:40:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:27] [INFO] Checking activity reminders 
[2026-04-11 18:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:37] [INFO] Checking activity reminders 
[2026-04-11 18:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:39] [INFO] Checking activity reminders 
[2026-04-11 18:40:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:40:52] [INFO] Checking activity reminders 
[2026-04-11 18:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:41:08] [INFO] Activity save request {"post_data":{"contact_id":"4786","deal_id":"local_69b988fda51064.12687406","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"باهاش تماس گرفتم میگه من خیلی شماره گذاشتم هیچکی باهام تماس نمیگرفت گفت من فکر میکردم دوره ی پیش بینی 405 رایگانه کامل پرزنتش کردم برای کانال گفت پس من یه مبلغی میزنم اسممو رزرو کنید بااین مبلغ 27 تومن تا سر برج به 30 درصد میرسونم واریزیمو و نهایتا یک ماهه تسویه میکنم ","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-11 18:41:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"local_3e2fc1c5b672c4f3","database_didar_user_id":"local_3e2fc1c5b672c4f3","user_email":"shayeste2@hanafi.ir","user_name":"خانم شایسته 2","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شایسته 2","contact_id":"4786","note_was_empty":true}
[2026-04-11 18:41:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"4786","owner_id":"local_3e2fc1c5b672c4f3"}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:08] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 18:41:08] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 18:41:08] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 18:41:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b988fda51064.12687406","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-11 18:41:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da648c947d55.58237895","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69da648c947d55.58237895"}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:08] [INFO] Updating virtual stage {"contact_id":"4786","stage_name":"deal_registered","force":false}
[2026-04-11 18:41:08] [INFO] Virtual stage successfully saved {"contact_id":"4786","stage_name":"deal_registered"}
[2026-04-11 18:41:08] [INFO] Virtual stage updated after activity save {"contact_id":"4786"}
[2026-04-11 18:41:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4786","person_id":"18002"}
[2026-04-11 18:41:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:41:10] [INFO] Checking activity reminders 
[2026-04-11 18:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:41:22] [INFO] Checking activity reminders 
[2026-04-11 18:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:41:40] [INFO] Checking activity reminders 
[2026-04-11 18:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:41:52] [INFO] Checking activity reminders 
[2026-04-11 18:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:42:10] [INFO] Checking activity reminders 
[2026-04-11 18:42:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:42:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:42:21] [INFO] Activity save request {"post_data":{"contact_id":"14922","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فقط در طلای فیزیکی سرمایه گذاری \r\nاز نوسانات طلا و عیار استفاده نکرده \r\nخیلی چونه میزنه \r\n6 ماهه بدون پشتیبانی میگه با 15 وارد بشم \/  ","activity_duration":"14","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:42:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:42:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:42:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"14922","note_was_empty":true}
[2026-04-11 18:42:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"14922","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:42:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da64d5272972.06082350","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:42:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69da64d5272972.06082350"}
[2026-04-11 18:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:42:21] [INFO] Updating virtual stage {"contact_id":"14922","stage_name":"deal_registered","force":false}
[2026-04-11 18:42:21] [INFO] Virtual stage successfully saved {"contact_id":"14922","stage_name":"deal_registered"}
[2026-04-11 18:42:21] [INFO] Virtual stage updated after activity save {"contact_id":"14922"}
[2026-04-11 18:42:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14922","person_id":"13017"}
[2026-04-11 18:42:22] [INFO] Checking activity reminders 
[2026-04-11 18:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:42:25] [INFO] Checking activity reminders 
[2026-04-11 18:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:42:52] [INFO] Checking activity reminders 
[2026-04-11 18:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:42:55] [INFO] Checking activity reminders 
[2026-04-11 18:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:43:07] [INFO] Activity save request {"post_data":{"contact_id":"21015","deal_id":"local_695a6db5951480.18845986","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای 6 ماهه پرزنت شد \r\nمشورت با همسرش جهت عضویت ","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 18:43:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21015","note_was_empty":true}
[2026-04-11 18:43:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"21015","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:07] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-11 18:43:07] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-11 18:43:07] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-11 18:43:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6db5951480.18845986","stage":"تماس پیگیری","status_change":null}
[2026-04-11 18:43:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da6503206f66.81451466","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69da6503206f66.81451466"}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:07] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-11 18:43:07] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-11 18:43:07] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-11 18:43:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-11 18:43:14] [INFO] Checking activity reminders 
[2026-04-11 18:43:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:43:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:43:15] [INFO] Checking activity reminders 
[2026-04-11 18:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:43:17] [INFO] Checking activity reminders 
[2026-04-11 18:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:43:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15018","deal_id":"local_69d694f57bf0f9.35772456","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 18:43:35","session_id":"nog0aoipbl1rmsv85veu77u107"}
[2026-04-11 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 18:43:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15018","is_new_deal":false}
[2026-04-11 18:43:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 18:43:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:43:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 18:43:35] [INFO] getContactPrimaryPhone called {"contact_id":"15018"}
[2026-04-11 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 18:43:35] [INFO] getContactPrimaryPhone result {"contact_id":"15018","person_found":true,"primary_phone":"9355598877"}
[2026-04-11 18:43:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9355598877"}
[2026-04-11 18:43:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9355598877","contact_id":"15018","deal_id":"local_69d694f57bf0f9.35772456","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:43:35"}
[2026-04-11 18:43:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d694f57bf0f9.35772456","contact_id":"15018","existing_deal_found":true,"existing_contact_id":"15018","existing_title":"معامله دوم 9355598877 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 18:43:35"}
[2026-04-11 18:43:35] [INFO] DealController.save validated payments {"deal_id":"local_69d694f57bf0f9.35772456","contact_id":"15018","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-11 18:43:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15018","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 18:43:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d694f57bf0f9.35772456","contact_didar_id":"15018","title":"معامله دوم 9355598877 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9355598877","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی غلامی","existing_deal":"YES","existing_deal_id":"local_69d694f57bf0f9.35772456","existing_deal_status":"Pending","server_time":"2026-04-11 18:43:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 18:43:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d694f57bf0f9.35772456","contact_id":"15018","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9355598877 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-11 18:43:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-11 18:43:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15018","person_id":"13798"}
[2026-04-11 18:43:47] [INFO] Checking activity reminders 
[2026-04-11 18:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:44:15] [INFO] Checking activity reminders 
[2026-04-11 18:44:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:44:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:45:08] [INFO] Checking activity reminders 
[2026-04-11 18:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:45:38] [INFO] Checking activity reminders 
[2026-04-11 18:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:46:08] [INFO] Checking activity reminders 
[2026-04-11 18:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:46:38] [INFO] Checking activity reminders 
[2026-04-11 18:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 18:46:54] [INFO] Checking activity reminders 
[2026-04-11 18:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 18:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"check_reminders"}
[2026-04-11 19:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 19:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 19:18:51] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 19:18:52] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 19:19:08] [WARNING] Auth check failed - not authenticated {"session_id":"1td3h5j4ak45i9jplkloda2iqs","session_keys":[],"action":"log_client_event"}
[2026-04-11 19:19:08] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-11 19:19:08] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-11 19:19:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 19:19:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 19:19:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 19:19:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 19:19:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 19:19:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7110","person_id":"14050"}
[2026-04-11 19:19:39] [INFO] Checking activity reminders 
[2026-04-11 19:19:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:19:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:19:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 19:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 19:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14050","person_id":"8234"}
[2026-04-11 19:20:38] [INFO] Checking activity reminders 
[2026-04-11 19:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 19:20:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 19:21:08] [INFO] Checking activity reminders 
[2026-04-11 19:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:21:19] [INFO] Checking activity reminders 
[2026-04-11 19:21:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:21:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:22:32] [INFO] Checking activity reminders 
[2026-04-11 19:22:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:22:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:28:15] [INFO] Checking activity reminders 
[2026-04-11 19:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:28:22] [INFO] Checking activity reminders 
[2026-04-11 19:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:28:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16840","person_id":"1368"}
[2026-04-11 19:29:36] [INFO] Checking activity reminders 
[2026-04-11 19:29:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:29:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:29:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21140","person_id":"14395"}
[2026-04-11 19:35:43] [INFO] Checking activity reminders 
[2026-04-11 19:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:36:31] [INFO] Checking activity reminders 
[2026-04-11 19:36:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:36:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:37:01] [INFO] Checking activity reminders 
[2026-04-11 19:37:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:37:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:37:04] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9139680900","09139680900"]}
[2026-04-11 19:37:04] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9139680900","09139680900"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-11 19:37:04] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9139680900","full_name":"لید جدید"}
[2026-04-11 19:37:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-11 19:37:04] [INFO] Notification created {"notification_id":"642","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-11 19:50:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 19:50:07] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 19:50:07] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 19:50:07] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 19:50:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-11 19:51:47] [INFO] Checking activity reminders 
[2026-04-11 19:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:52:18] [INFO] Checking activity reminders 
[2026-04-11 19:52:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:52:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:52:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-11 19:54:06] [INFO] Checking activity reminders 
[2026-04-11 19:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-11 19:54:21] [INFO] Checking activity reminders 
[2026-04-11 19:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:54:58] [INFO] Checking activity reminders 
[2026-04-11 19:54:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:54:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:55:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8092","person_id":"3456"}
[2026-04-11 19:55:35] [INFO] Checking activity reminders 
[2026-04-11 19:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:55:52] [INFO] Checking activity reminders 
[2026-04-11 19:55:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:55:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:56:19] [INFO] Checking activity reminders 
[2026-04-11 19:56:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:56:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:56:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1743","person_id":"14287"}
[2026-04-11 19:56:51] [INFO] Checking activity reminders 
[2026-04-11 19:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:56:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-04-11 19:57:19] [INFO] Lead update received {"contact_id":"2022","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 19:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-04-11 19:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-04-11 19:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-04-11 19:57:19] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2022"}
[2026-04-11 19:57:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2022","person_id":"14616"}
[2026-04-11 19:57:21] [INFO] Checking activity reminders 
[2026-04-11 19:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:57:43] [INFO] Checking activity reminders 
[2026-04-11 19:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:57:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5166","person_id":"10337"}
[2026-04-11 19:58:41] [INFO] Checking activity reminders 
[2026-04-11 19:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:58:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"832","person_id":"7626"}
[2026-04-11 19:59:38] [INFO] Checking activity reminders 
[2026-04-11 19:59:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:59:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:59:50] [INFO] Checking activity reminders 
[2026-04-11 19:59:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 19:59:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 19:59:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17153","person_id":"1799"}
[2026-04-11 20:00:07] [INFO] Lead update received {"contact_id":"17153","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17153","person_id":"1799"}
[2026-04-11 20:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17153","person_id":"1799"}
[2026-04-11 20:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17153","person_id":"1799"}
[2026-04-11 20:00:07] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17153"}
[2026-04-11 20:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17153","person_id":"1799"}
[2026-04-11 20:00:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-11 20:00:54] [INFO] Checking activity reminders 
[2026-04-11 20:00:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:00:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:01:20] [INFO] Lead update received {"contact_id":"2382","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-11 20:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-11 20:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-11 20:01:20] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"2382"}
[2026-04-11 20:01:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2382","person_id":"1606"}
[2026-04-11 20:01:41] [INFO] Checking activity reminders 
[2026-04-11 20:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:01:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-11 20:02:02] [INFO] Checking activity reminders 
[2026-04-11 20:02:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:02:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:02:09] [INFO] Lead update received {"contact_id":"3218","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:02:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-11 20:02:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-11 20:02:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-11 20:02:10] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"3218"}
[2026-04-11 20:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-11 20:02:33] [INFO] Checking activity reminders 
[2026-04-11 20:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:02:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-04-11 20:03:03] [INFO] Checking activity reminders 
[2026-04-11 20:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13081","person_id":"15148"}
[2026-04-11 20:03:33] [INFO] Checking activity reminders 
[2026-04-11 20:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:03:53] [INFO] Checking activity reminders 
[2026-04-11 20:03:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:03:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:04:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-11 20:04:13] [INFO] Lead update received {"contact_id":"14964","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:04:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-11 20:04:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-11 20:04:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-11 20:04:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"14964"}
[2026-04-11 20:04:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14964","person_id":"5044"}
[2026-04-11 20:04:30] [INFO] Checking activity reminders 
[2026-04-11 20:04:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:04:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:04:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-11 20:04:46] [INFO] Lead update received {"contact_id":"6266","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:04:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-11 20:04:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-11 20:04:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-11 20:04:46] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6266"}
[2026-04-11 20:04:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6266","person_id":"13873"}
[2026-04-11 20:05:48] [INFO] Checking activity reminders 
[2026-04-11 20:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:05:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-11 20:06:03] [INFO] Lead update received {"contact_id":"15563","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-11 20:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-11 20:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-11 20:06:03] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15563"}
[2026-04-11 20:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15563","person_id":"10637"}
[2026-04-11 20:06:23] [INFO] Checking activity reminders 
[2026-04-11 20:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:06:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:06:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:06:53] [INFO] Checking activity reminders 
[2026-04-11 20:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:06:59] [INFO] Lead update received {"contact_id":"6949","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:06:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:06:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:06:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:06:59] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6949"}
[2026-04-11 20:07:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6949","person_id":"11539"}
[2026-04-11 20:07:17] [INFO] Checking activity reminders 
[2026-04-11 20:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:07:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9004","person_id":"10605"}
[2026-04-11 20:12:20] [INFO] Checking activity reminders 
[2026-04-11 20:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:12:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1972","person_id":"2433"}
[2026-04-11 20:13:31] [INFO] Checking activity reminders 
[2026-04-11 20:13:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:13:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:13:43] [INFO] Lead update received {"contact_id":"1972","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-11 20:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1972","person_id":"2433"}
[2026-04-11 20:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1972","person_id":"2433"}
[2026-04-11 20:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1972","person_id":"2433"}
[2026-04-11 20:13:43] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1972"}
[2026-04-11 20:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1972","person_id":"2433"}
[2026-04-11 20:36:55] [WARNING] Auth check failed - not authenticated {"session_id":"77tpmns0a92oq4bgtkfborne5v","session_keys":[],"action":"log_client_event"}
[2026-04-11 20:36:55] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-11 20:36:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 20:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-11 20:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-11 20:37:31] [INFO] Checking activity reminders 
[2026-04-11 20:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:37:37] [INFO] Checking activity reminders 
[2026-04-11 20:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:38:07] [INFO] Checking activity reminders 
[2026-04-11 20:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:38:37] [INFO] Checking activity reminders 
[2026-04-11 20:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:38:43] [INFO] Activity save request {"post_data":{"contact_id":"3907","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال بلاخره عضو شد واریز ۷۹ت ، ۲۴۰۰ نقد هست \r\nارسال سبد سرمایه برای استاد","activity_duration":"10","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-11 20:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:38:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-11 20:38:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-11 20:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:38:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3907","note_was_empty":true}
[2026-04-11 20:38:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"3907","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-11 20:38:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69da801b8f6b68.04461823","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-11 20:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:38:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69da801b8f6b68.04461823"}
[2026-04-11 20:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:38:43] [INFO] Updating virtual stage {"contact_id":"3907","stage_name":"deal_registered","force":false}
[2026-04-11 20:38:43] [INFO] Virtual stage successfully saved {"contact_id":"3907","stage_name":"deal_registered"}
[2026-04-11 20:38:43] [INFO] Virtual stage updated after activity save {"contact_id":"3907"}
[2026-04-11 20:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:54:47] [INFO] Checking activity reminders 
[2026-04-11 20:54:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:54:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:55:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:55:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:55:06] [INFO] generateDealTitle result {"contact_id":"3907","person_name":"سجاد سیرجانی","mobile":"9129159131","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9129159131"}
[2026-04-11 20:55:17] [INFO] Checking activity reminders 
[2026-04-11 20:55:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:55:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:55:48] [INFO] Checking activity reminders 
[2026-04-11 20:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:56:18] [INFO] Checking activity reminders 
[2026-04-11 20:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:56:48] [INFO] Checking activity reminders 
[2026-04-11 20:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:57:46] [INFO] Checking activity reminders 
[2026-04-11 20:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:58:27] [INFO] Checking activity reminders 
[2026-04-11 20:58:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:58:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:58:58] [INFO] Checking activity reminders 
[2026-04-11 20:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 20:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 20:59:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3907","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 20:59:06","session_id":"77tpmns0a92oq4bgtkfborne5v"}
[2026-04-11 20:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:59:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3907","is_new_deal":true}
[2026-04-11 20:59:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 20:59:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 20:59:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 20:59:06] [INFO] getContactPrimaryPhone called {"contact_id":"3907"}
[2026-04-11 20:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:59:06] [INFO] getContactPrimaryPhone result {"contact_id":"3907","person_found":true,"primary_phone":"9129159131"}
[2026-04-11 20:59:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129159131"}
[2026-04-11 20:59:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129159131","contact_id":"3907","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 20:59:06"}
[2026-04-11 20:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:59:06] [INFO] generateDealTitle result {"contact_id":"3907","person_name":"سجاد سیرجانی","mobile":"9129159131","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9129159131"}
[2026-04-11 20:59:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3907","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 20:59:06] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"3907","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 20:59:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3907","title":"معامله دوم 9129159131 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9129159131","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":70000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سجاد سیرجانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-11 20:59:06","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-11 20:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 20:59:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-11 20:59:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3907","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9129159131 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":70000000,"server_time":"2026-04-11 20:59:06","ip_address":"204.18.206.42","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-11 20:59:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:14:06] [WARNING] Auth check failed - not authenticated {"session_id":"phiii51a79du8skabh1dmnrrru","session_keys":[],"action":"log_client_event"}
[2026-04-11 21:14:06] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-11 21:14:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 21:14:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 21:14:37] [INFO] Checking activity reminders 
[2026-04-11 21:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:15:07] [INFO] Checking activity reminders 
[2026-04-11 21:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:15:22] [INFO] Checking activity reminders 
[2026-04-11 21:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:15:36] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 21:15:36","session_id":"phiii51a79du8skabh1dmnrrru"}
[2026-04-11 21:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 21:15:36] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-11 21:15:36] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 21:15:36] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 21:15:36] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 21:15:36] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-11 21:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 21:15:36] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-11 21:15:36] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-11 21:15:36] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 21:15:36"}
[2026-04-11 21:15:36] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-11 21:15:36"}
[2026-04-11 21:15:36] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":2,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-11 21:15:36] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 21:15:36] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":72000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-11 21:15:36","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-11 21:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 21:15:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":72000000,"server_time":"2026-04-11 21:15:36","ip_address":"5.113.57.26","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-11 21:15:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-11 21:18:37] [INFO] Checking activity reminders 
[2026-04-11 21:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:39:15] [WARNING] Auth check failed - not authenticated {"session_id":"v15geamh5l7j0om24us8c2t5q6","session_keys":[],"action":"log_client_event"}
[2026-04-11 21:39:16] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-11 21:39:16] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 21:39:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:39:46] [INFO] Checking activity reminders 
[2026-04-11 21:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:40:02] [INFO] Checking activity reminders 
[2026-04-11 21:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:40:32] [INFO] Checking activity reminders 
[2026-04-11 21:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 21:40:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3907","deal_id":"local_69da84e21cbd44.03023468","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-11 21:40:56","session_id":"v15geamh5l7j0om24us8c2t5q6"}
[2026-04-11 21:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:40:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3907","is_new_deal":false}
[2026-04-11 21:40:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-11 21:40:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 21:40:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-11 21:40:56] [INFO] getContactPrimaryPhone called {"contact_id":"3907"}
[2026-04-11 21:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:40:56] [INFO] getContactPrimaryPhone result {"contact_id":"3907","person_found":true,"primary_phone":"9129159131"}
[2026-04-11 21:40:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129159131"}
[2026-04-11 21:40:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129159131","contact_id":"3907","deal_id":"local_69da84e21cbd44.03023468","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 21:40:56"}
[2026-04-11 21:40:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69da84e21cbd44.03023468","contact_id":"3907","existing_deal_found":true,"existing_contact_id":"3907","existing_title":"معامله دوم 9129159131 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-11 21:40:56"}
[2026-04-11 21:40:56] [INFO] DealController.save validated payments {"deal_id":"local_69da84e21cbd44.03023468","contact_id":"3907","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-11 21:40:56] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"3907","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-11 21:40:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69da84e21cbd44.03023468","contact_didar_id":"3907","title":"معامله دوم 9129159131 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9129159131","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"سجاد سیرجانی","existing_deal":"YES","existing_deal_id":"local_69da84e21cbd44.03023468","existing_deal_status":"Pending","server_time":"2026-04-11 21:40:56","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-11 21:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:40:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69da84e21cbd44.03023468","contact_id":"3907","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9129159131 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-11 21:40:56","ip_address":"204.18.206.42","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-11 21:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-11 21:41:03] [INFO] Checking activity reminders 
[2026-04-11 21:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 21:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 22:56:43] [WARNING] Auth check failed - not authenticated {"session_id":"ttsvndscifsstc4epjkt25a9ak","session_keys":[],"action":"log_client_event"}
[2026-04-11 22:56:43] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":false}
[2026-04-11 22:56:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-11 22:56:44] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 22:56:44] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 22:56:44] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 22:56:50] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 22:56:50] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 22:56:50] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 22:57:11] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-11 22:57:11] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-11 22:57:11] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-11 22:57:15] [INFO] Checking activity reminders 
[2026-04-11 22:57:15] [INFO] Found due reminders {"count":1,"reminders":[{"id":"192","activity_didar_id":"local_activity_69d7770f4d7620.83627486","reminder_time":"2026-04-11 22:00:00","reminder_sent":"0","reminder_offset_minutes":"720","created_at":"2026-04-09 13:23:19","owner_didar_id":"local_3534c8d92b81789f","title":"فعالیت","due_date":"2026-04-12 10:00:00","contact_didar_id":"local_69d7769031eb00.28419193"}]}
[2026-04-11 22:57:15] [INFO] Processing reminder {"reminder_id":"192","activity_id":"local_activity_69d7770f4d7620.83627486","owner_id":"local_3534c8d92b81789f","reminder_time":"2026-04-11 22:00:00","due_date":"2026-04-12 10:00:00"}
[2026-04-11 22:57:15] [INFO] Notification created {"notification_id":"643","user_id":"local_3534c8d92b81789f","type":"activity_reminder","show_popup":true}
[2026-04-11 22:57:15] [INFO] Reminder processed successfully {"reminder_id":"192","notification_id":"643"}
[2026-04-11 22:57:15] [INFO] Finished checking reminders {"notifications_created":1}
[2026-04-11 22:57:49] [INFO] Checking activity reminders 
[2026-04-11 22:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 22:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-11 22:58:19] [INFO] Checking activity reminders 
[2026-04-11 22:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-11 22:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:09:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 10:09:46] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-12 10:09:46] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-12 10:09:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 10:09:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 10:09:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 10:09:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 10:10:18] [INFO] Checking activity reminders 
[2026-04-12 10:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:10:53] [INFO] Checking activity reminders 
[2026-04-12 10:10:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:10:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:11:08] [INFO] Checking activity reminders 
[2026-04-12 10:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:11:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 10:11:38] [INFO] Checking activity reminders 
[2026-04-12 10:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 10:12:23] [INFO] Checking activity reminders 
[2026-04-12 10:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:12:29] [INFO] Checking activity reminders 
[2026-04-12 10:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:12:43] [INFO] Checking activity reminders 
[2026-04-12 10:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:14:33] [INFO] Checking activity reminders 
[2026-04-12 10:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:14:46] [INFO] Checking activity reminders 
[2026-04-12 10:14:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:14:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:14:54] [INFO] Checking activity reminders 
[2026-04-12 10:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:14:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-12 10:15:54] [INFO] Checking activity reminders 
[2026-04-12 10:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:16:14] [INFO] Checking activity reminders 
[2026-04-12 10:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:16:21] [INFO] Checking activity reminders 
[2026-04-12 10:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:20:16] [INFO] Checking activity reminders 
[2026-04-12 10:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:25:14] [WARNING] Auth check failed - not authenticated {"session_id":"lcolfh2i756nmne53eolicd5ut","session_keys":[],"action":"log_client_event"}
[2026-04-12 10:25:14] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-12 10:25:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 10:25:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:25:45] [INFO] Checking activity reminders 
[2026-04-12 10:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:26:15] [INFO] Checking activity reminders 
[2026-04-12 10:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:26:45] [INFO] Checking activity reminders 
[2026-04-12 10:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:27:15] [INFO] Checking activity reminders 
[2026-04-12 10:27:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:27:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:27:23] [INFO] Checking activity reminders 
[2026-04-12 10:27:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:27:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:27:45] [INFO] Checking activity reminders 
[2026-04-12 10:27:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:27:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:27:47] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9380336815","09380336815"]}
[2026-04-12 10:27:47] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9380336815","09380336815"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-12 10:27:47] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9380336815","full_name":"لید جدید"}
[2026-04-12 10:27:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 10:27:47] [INFO] Notification created {"notification_id":"644","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-12 10:28:15] [INFO] Checking activity reminders 
[2026-04-12 10:28:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:28:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:28:45] [INFO] Checking activity reminders 
[2026-04-12 10:28:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:28:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:28:51] [INFO] Checking activity reminders 
[2026-04-12 10:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:29:14] [INFO] Checking activity reminders 
[2026-04-12 10:29:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:29:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:29:15] [INFO] Checking activity reminders 
[2026-04-12 10:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:29:45] [INFO] Checking activity reminders 
[2026-04-12 10:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:29:57] [INFO] Checking activity reminders 
[2026-04-12 10:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:30:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:30:15] [INFO] Checking activity reminders 
[2026-04-12 10:30:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:30:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:30:45] [INFO] Checking activity reminders 
[2026-04-12 10:30:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:30:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:30:58] [INFO] Checking activity reminders 
[2026-04-12 10:30:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:30:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:31:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 10:31:15] [INFO] Checking activity reminders 
[2026-04-12 10:31:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:31:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:31:22] [INFO] Checking activity reminders 
[2026-04-12 10:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:31:45] [INFO] Checking activity reminders 
[2026-04-12 10:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:32:16] [INFO] Checking activity reminders 
[2026-04-12 10:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:32:46] [INFO] Checking activity reminders 
[2026-04-12 10:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:33:16] [INFO] Checking activity reminders 
[2026-04-12 10:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:33:46] [INFO] Checking activity reminders 
[2026-04-12 10:33:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:33:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:34:16] [INFO] Checking activity reminders 
[2026-04-12 10:34:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:34:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:34:46] [INFO] Checking activity reminders 
[2026-04-12 10:34:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:34:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:35:16] [INFO] Checking activity reminders 
[2026-04-12 10:35:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:35:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:35:46] [INFO] Checking activity reminders 
[2026-04-12 10:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:36:16] [INFO] Checking activity reminders 
[2026-04-12 10:36:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:36:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:36:46] [INFO] Checking activity reminders 
[2026-04-12 10:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:37:16] [INFO] Checking activity reminders 
[2026-04-12 10:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:37:47] [INFO] Checking activity reminders 
[2026-04-12 10:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:38:17] [INFO] Checking activity reminders 
[2026-04-12 10:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:38:47] [INFO] Checking activity reminders 
[2026-04-12 10:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:39:17] [INFO] Checking activity reminders 
[2026-04-12 10:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:39:47] [INFO] Checking activity reminders 
[2026-04-12 10:39:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:39:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:40:17] [INFO] Checking activity reminders 
[2026-04-12 10:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:40:47] [INFO] Checking activity reminders 
[2026-04-12 10:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:41:17] [INFO] Checking activity reminders 
[2026-04-12 10:41:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:41:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:41:47] [INFO] Checking activity reminders 
[2026-04-12 10:41:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:41:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:42:17] [INFO] Checking activity reminders 
[2026-04-12 10:42:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:42:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:42:47] [INFO] Checking activity reminders 
[2026-04-12 10:42:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:42:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:43:18] [INFO] Checking activity reminders 
[2026-04-12 10:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:43:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:43:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:43:39] [INFO] generateDealTitle result {"contact_id":"14836","person_name":"دهقانیان","mobile":"9175031106","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175031106"}
[2026-04-12 10:43:48] [INFO] Checking activity reminders 
[2026-04-12 10:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:44:06] [INFO] Activity save request {"post_data":{"contact_id":"14836","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"5بیعانه زد برای کانال تسویه چند رو زدیگه ","activity_duration":"15","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 10:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 10:44:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 10:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14836","note_was_empty":true}
[2026-04-12 10:44:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"14836","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 10:44:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db463e0eccd5.36737773","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 10:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69db463e0eccd5.36737773"}
[2026-04-12 10:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:06] [INFO] Updating virtual stage {"contact_id":"14836","stage_name":"deal_registered","force":false}
[2026-04-12 10:44:06] [INFO] Virtual stage successfully saved {"contact_id":"14836","stage_name":"deal_registered"}
[2026-04-12 10:44:06] [INFO] Virtual stage updated after activity save {"contact_id":"14836"}
[2026-04-12 10:44:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:44:10] [INFO] generateDealTitle result {"contact_id":"14836","person_name":"دهقانیان","mobile":"9175031106","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175031106"}
[2026-04-12 10:44:18] [INFO] Checking activity reminders 
[2026-04-12 10:44:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:44:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:44:48] [INFO] Checking activity reminders 
[2026-04-12 10:44:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:44:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:45:18] [INFO] Checking activity reminders 
[2026-04-12 10:45:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:45:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:45:48] [INFO] Checking activity reminders 
[2026-04-12 10:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:46:18] [INFO] Checking activity reminders 
[2026-04-12 10:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:46:48] [INFO] Checking activity reminders 
[2026-04-12 10:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:47:18] [INFO] Checking activity reminders 
[2026-04-12 10:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:47:48] [INFO] Checking activity reminders 
[2026-04-12 10:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:48:18] [INFO] Checking activity reminders 
[2026-04-12 10:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:48:48] [INFO] Checking activity reminders 
[2026-04-12 10:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:49:18] [INFO] Checking activity reminders 
[2026-04-12 10:49:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:49:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:49:48] [INFO] Checking activity reminders 
[2026-04-12 10:49:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:49:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:50:18] [INFO] Checking activity reminders 
[2026-04-12 10:50:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:50:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:50:49] [INFO] Checking activity reminders 
[2026-04-12 10:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:51:19] [INFO] Checking activity reminders 
[2026-04-12 10:51:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:51:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:51:49] [INFO] Checking activity reminders 
[2026-04-12 10:51:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:51:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:52:19] [INFO] Checking activity reminders 
[2026-04-12 10:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:52:49] [INFO] Checking activity reminders 
[2026-04-12 10:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:53:13] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14836","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 10:53:13","session_id":"lcolfh2i756nmne53eolicd5ut"}
[2026-04-12 10:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:53:13] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14836","is_new_deal":true}
[2026-04-12 10:53:13] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 10:53:13] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 10:53:13] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 10:53:13] [INFO] getContactPrimaryPhone called {"contact_id":"14836"}
[2026-04-12 10:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:53:13] [INFO] getContactPrimaryPhone result {"contact_id":"14836","person_found":true,"primary_phone":"9175031106"}
[2026-04-12 10:53:13] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175031106"}
[2026-04-12 10:53:13] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175031106","contact_id":"14836","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-12 10:53:13"}
[2026-04-12 10:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:53:13] [INFO] generateDealTitle result {"contact_id":"14836","person_name":"دهقانیان","mobile":"9175031106","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175031106"}
[2026-04-12 10:53:13] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14836","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-12 10:53:13] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14836","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 10:53:13] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14836","title":"معامله دوم 9175031106 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9175031106","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":5000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"دهقانیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 10:53:13","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-12 10:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:53:13] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 10:53:13] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14836","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9175031106 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":5000000,"server_time":"2026-04-12 10:53:13","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 10:53:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14836","person_id":"3117"}
[2026-04-12 10:53:19] [INFO] Checking activity reminders 
[2026-04-12 10:53:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:53:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:53:49] [INFO] Checking activity reminders 
[2026-04-12 10:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:54:19] [INFO] Checking activity reminders 
[2026-04-12 10:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:55:01] [INFO] Checking activity reminders 
[2026-04-12 10:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:55:31] [INFO] Checking activity reminders 
[2026-04-12 10:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:56:01] [INFO] Checking activity reminders 
[2026-04-12 10:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:56:32] [INFO] Checking activity reminders 
[2026-04-12 10:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:57:02] [INFO] Checking activity reminders 
[2026-04-12 10:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:57:32] [INFO] Checking activity reminders 
[2026-04-12 10:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:58:02] [INFO] Checking activity reminders 
[2026-04-12 10:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:58:32] [INFO] Checking activity reminders 
[2026-04-12 10:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:59:02] [INFO] Checking activity reminders 
[2026-04-12 10:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 10:59:32] [INFO] Checking activity reminders 
[2026-04-12 10:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 10:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:00:02] [INFO] Checking activity reminders 
[2026-04-12 11:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:00:32] [INFO] Checking activity reminders 
[2026-04-12 11:00:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:00:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:01:02] [INFO] Checking activity reminders 
[2026-04-12 11:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:01:32] [INFO] Checking activity reminders 
[2026-04-12 11:01:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:01:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:02:03] [INFO] Checking activity reminders 
[2026-04-12 11:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:02:33] [INFO] Checking activity reminders 
[2026-04-12 11:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:03:03] [INFO] Checking activity reminders 
[2026-04-12 11:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:04:59] [INFO] Checking activity reminders 
[2026-04-12 11:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:05:29] [INFO] Checking activity reminders 
[2026-04-12 11:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:05:59] [INFO] Checking activity reminders 
[2026-04-12 11:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:06:29] [INFO] Checking activity reminders 
[2026-04-12 11:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:06:59] [INFO] Checking activity reminders 
[2026-04-12 11:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:07:30] [INFO] Checking activity reminders 
[2026-04-12 11:07:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:07:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:08:00] [INFO] Checking activity reminders 
[2026-04-12 11:08:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:08:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:08:30] [INFO] Checking activity reminders 
[2026-04-12 11:08:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:08:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:09:00] [INFO] Checking activity reminders 
[2026-04-12 11:09:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:09:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:09:30] [INFO] Checking activity reminders 
[2026-04-12 11:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:10:00] [INFO] Checking activity reminders 
[2026-04-12 11:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:10:16] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 11:10:17] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-12 11:10:17] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 11:10:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 11:10:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 11:10:30] [INFO] Checking activity reminders 
[2026-04-12 11:10:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:10:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:10:49] [INFO] Checking activity reminders 
[2026-04-12 11:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:11:00] [INFO] Checking activity reminders 
[2026-04-12 11:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:11:20] [INFO] Checking activity reminders 
[2026-04-12 11:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:11:30] [INFO] Checking activity reminders 
[2026-04-12 11:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:11:50] [INFO] Checking activity reminders 
[2026-04-12 11:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:12:00] [INFO] Checking activity reminders 
[2026-04-12 11:12:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:12:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:12:20] [INFO] Checking activity reminders 
[2026-04-12 11:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:12:30] [INFO] Checking activity reminders 
[2026-04-12 11:12:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:12:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:12:50] [INFO] Checking activity reminders 
[2026-04-12 11:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:12:53] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 11:12:53","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 11:12:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:12:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-12 11:12:53] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 11:12:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 11:12:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 11:12:53] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-12 11:12:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:12:53] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-12 11:12:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-12 11:12:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 11:12:53"}
[2026-04-12 11:12:53] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 11:12:53"}
[2026-04-12 11:12:53] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-12 11:12:53] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 11:12:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-12 11:12:53","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 11:12:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:12:53] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 11:12:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 11:12:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:00] [INFO] Checking activity reminders 
[2026-04-12 11:13:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:13:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:13:02] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 11:13:02","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:02] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13256","is_new_deal":false}
[2026-04-12 11:13:02] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 11:13:02] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 11:13:02] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 11:13:02] [INFO] getContactPrimaryPhone called {"contact_id":"13256"}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:02] [INFO] getContactPrimaryPhone result {"contact_id":"13256","person_found":true,"primary_phone":"9182563283"}
[2026-04-12 11:13:02] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9182563283"}
[2026-04-12 11:13:02] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9182563283","contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 11:13:02"}
[2026-04-12 11:13:02] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","existing_deal_found":true,"existing_contact_id":"13256","existing_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 11:13:02"}
[2026-04-12 11:13:02] [INFO] DealController.save validated payments {"deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 11:13:02] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13256","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 11:13:02] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7fc8c85ff31.51322513","contact_didar_id":"13256","title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9182563283","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ارین صادقی","existing_deal":"YES","existing_deal_id":"local_69b7fc8c85ff31.51322513","existing_deal_status":"Pending","server_time":"2026-04-12 11:13:02","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:02] [INFO] Deal success processed {"contact_id":"13256","person_name":"ارین صادقی","products_count":1}
[2026-04-12 11:13:02] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7fc8c85ff31.51322513","contact_id":"13256","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9182563283 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 11:13:02","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:02] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"with_purchase","force":true}
[2026-04-12 11:13:02] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"with_purchase"}
[2026-04-12 11:13:02] [INFO] Moved contact out of kariz after successful deal {"contact_id":"13256","deal_id":"local_69b7fc8c85ff31.51322513","target_stage":"with_purchase"}
[2026-04-12 11:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 11:13:20] [INFO] Checking activity reminders 
[2026-04-12 11:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:13:30] [INFO] Checking activity reminders 
[2026-04-12 11:13:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:13:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:13:50] [INFO] Checking activity reminders 
[2026-04-12 11:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:14:00] [INFO] Checking activity reminders 
[2026-04-12 11:14:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:14:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:14:20] [INFO] Checking activity reminders 
[2026-04-12 11:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:14:30] [INFO] Checking activity reminders 
[2026-04-12 11:14:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:14:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:14:50] [INFO] Checking activity reminders 
[2026-04-12 11:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:15:00] [INFO] Checking activity reminders 
[2026-04-12 11:15:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:15:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:15:20] [INFO] Checking activity reminders 
[2026-04-12 11:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:15:30] [INFO] Checking activity reminders 
[2026-04-12 11:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:15:50] [INFO] Checking activity reminders 
[2026-04-12 11:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:16:01] [INFO] Checking activity reminders 
[2026-04-12 11:16:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:16:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:16:21] [INFO] Checking activity reminders 
[2026-04-12 11:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:16:31] [INFO] Checking activity reminders 
[2026-04-12 11:16:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:16:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:16:37] [INFO] Checking activity reminders 
[2026-04-12 11:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:16:39] [INFO] Checking activity reminders 
[2026-04-12 11:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:17:01] [INFO] Checking activity reminders 
[2026-04-12 11:17:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:17:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:17:09] [INFO] Checking activity reminders 
[2026-04-12 11:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:17:31] [INFO] Checking activity reminders 
[2026-04-12 11:17:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:17:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:17:39] [INFO] Checking activity reminders 
[2026-04-12 11:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:18:01] [INFO] Checking activity reminders 
[2026-04-12 11:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:18:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:18:09] [INFO] Checking activity reminders 
[2026-04-12 11:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:18:31] [INFO] Checking activity reminders 
[2026-04-12 11:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:18:39] [INFO] Checking activity reminders 
[2026-04-12 11:18:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:18:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:19:01] [INFO] Checking activity reminders 
[2026-04-12 11:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:19:09] [INFO] Checking activity reminders 
[2026-04-12 11:19:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:19:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:19:31] [INFO] Checking activity reminders 
[2026-04-12 11:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:19:40] [INFO] Checking activity reminders 
[2026-04-12 11:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:20:01] [INFO] Checking activity reminders 
[2026-04-12 11:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:20:31] [INFO] Checking activity reminders 
[2026-04-12 11:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:21:01] [INFO] Checking activity reminders 
[2026-04-12 11:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:21:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 11:21:30] [INFO] Checking activity reminders 
[2026-04-12 11:21:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:21:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:21:31] [INFO] Checking activity reminders 
[2026-04-12 11:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:22:00] [INFO] Checking activity reminders 
[2026-04-12 11:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:22:01] [INFO] Checking activity reminders 
[2026-04-12 11:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:22:24] [INFO] Activity save request {"post_data":{"contact_id":"3218","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"کانال 405 هست تسویه بوده \/cip هست \r\nاومده بود شرکت با اقای سهرابی صحبت کرده \/ 400 تو سود بوده \r\nتماس گرفت گفت با داراب موضوعی نداره نمیدونسته هست سی ای پی و اینا\r\nگفتم انتقال میدم","activity_duration":"5","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:22:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:22:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:22:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:22:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:22:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3218","note_was_empty":true}
[2026-04-12 11:22:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"3218","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 11:22:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db4f38560596.60809499","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:22:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:22:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69db4f38560596.60809499"}
[2026-04-12 11:22:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:22:24] [INFO] Updating virtual stage {"contact_id":"3218","stage_name":"deal_registered","force":false}
[2026-04-12 11:22:24] [INFO] Virtual stage successfully saved {"contact_id":"3218","stage_name":"deal_registered"}
[2026-04-12 11:22:24] [INFO] Virtual stage updated after activity save {"contact_id":"3218"}
[2026-04-12 11:22:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 11:22:30] [INFO] Checking activity reminders 
[2026-04-12 11:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:22:31] [INFO] Checking activity reminders 
[2026-04-12 11:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:23:00] [INFO] Checking activity reminders 
[2026-04-12 11:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:23:01] [INFO] Checking activity reminders 
[2026-04-12 11:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:23:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:23:30] [INFO] Checking activity reminders 
[2026-04-12 11:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:23:32] [INFO] Checking activity reminders 
[2026-04-12 11:23:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:23:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:24:00] [INFO] Checking activity reminders 
[2026-04-12 11:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:24:02] [INFO] Checking activity reminders 
[2026-04-12 11:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:24:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:24:30] [INFO] Checking activity reminders 
[2026-04-12 11:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:24:32] [INFO] Checking activity reminders 
[2026-04-12 11:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:25:01] [INFO] Checking activity reminders 
[2026-04-12 11:25:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:25:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:25:02] [INFO] Checking activity reminders 
[2026-04-12 11:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:25:31] [INFO] Checking activity reminders 
[2026-04-12 11:25:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:25:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:25:32] [INFO] Checking activity reminders 
[2026-04-12 11:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:26:01] [INFO] Checking activity reminders 
[2026-04-12 11:26:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:26:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:26:02] [INFO] Checking activity reminders 
[2026-04-12 11:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:26:31] [INFO] Checking activity reminders 
[2026-04-12 11:26:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:26:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:26:32] [INFO] Checking activity reminders 
[2026-04-12 11:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:27:01] [INFO] Checking activity reminders 
[2026-04-12 11:27:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:27:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:27:02] [INFO] Checking activity reminders 
[2026-04-12 11:27:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:27:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:27:31] [INFO] Checking activity reminders 
[2026-04-12 11:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:27:32] [INFO] Checking activity reminders 
[2026-04-12 11:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:28:01] [INFO] Checking activity reminders 
[2026-04-12 11:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:28:02] [INFO] Checking activity reminders 
[2026-04-12 11:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:28:31] [INFO] Checking activity reminders 
[2026-04-12 11:28:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:28:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:28:32] [INFO] Checking activity reminders 
[2026-04-12 11:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:29:02] [INFO] Checking activity reminders 
[2026-04-12 11:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:29:02] [INFO] Checking activity reminders 
[2026-04-12 11:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:29:32] [INFO] Checking activity reminders 
[2026-04-12 11:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:29:32] [INFO] Checking activity reminders 
[2026-04-12 11:29:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:29:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:30:02] [INFO] Checking activity reminders 
[2026-04-12 11:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:30:02] [INFO] Checking activity reminders 
[2026-04-12 11:30:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:30:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:30:32] [INFO] Checking activity reminders 
[2026-04-12 11:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:30:32] [INFO] Checking activity reminders 
[2026-04-12 11:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:31:02] [INFO] Checking activity reminders 
[2026-04-12 11:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:31:02] [INFO] Checking activity reminders 
[2026-04-12 11:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:31:32] [INFO] Checking activity reminders 
[2026-04-12 11:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:31:32] [INFO] Checking activity reminders 
[2026-04-12 11:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:32:02] [INFO] Checking activity reminders 
[2026-04-12 11:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:32:02] [INFO] Checking activity reminders 
[2026-04-12 11:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:32:32] [INFO] Checking activity reminders 
[2026-04-12 11:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:32:49] [INFO] Checking activity reminders 
[2026-04-12 11:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:33:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989cd6c8e23f3.32254992","person_id":"21637"}
[2026-04-12 11:33:02] [INFO] Checking activity reminders 
[2026-04-12 11:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:33:13] [INFO] Checking activity reminders 
[2026-04-12 11:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:33:33] [INFO] Checking activity reminders 
[2026-04-12 11:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:34:03] [INFO] Checking activity reminders 
[2026-04-12 11:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:34:20] [INFO] Checking activity reminders 
[2026-04-12 11:34:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:34:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:34:33] [INFO] Checking activity reminders 
[2026-04-12 11:34:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:34:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:34:50] [INFO] Checking activity reminders 
[2026-04-12 11:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:35:03] [INFO] Checking activity reminders 
[2026-04-12 11:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:35:17] [INFO] Activity save request {"post_data":{"contact_id":"21015","deal_id":"local_695a6db5951480.18845986","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"منتظر دوستشه که با هم تهیه کنند ولی یک نفر در گرووه باشه \r\nدر غیر این صورت خودش به تنهایی 6 ماهه 27 میاد ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:17] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:35:17] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:17] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21015","note_was_empty":true}
[2026-04-12 11:35:17] [INFO] Didar write disabled; saving activity locally {"contact_id":"21015","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:17] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-12 11:35:17] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-12 11:35:17] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-12 11:35:17] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6db5951480.18845986","stage":"تماس پیگیری","status_change":null}
[2026-04-12 11:35:17] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db523d7c4757.31878496","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:17] [INFO] Activity saved successfully {"activity_id":"local_activity_69db523d7c4757.31878496"}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:17] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-12 11:35:17] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-12 11:35:17] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-12 11:35:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-12 11:35:20] [INFO] Checking activity reminders 
[2026-04-12 11:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:35:33] [INFO] Checking activity reminders 
[2026-04-12 11:35:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:35:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:35:50] [INFO] Checking activity reminders 
[2026-04-12 11:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:36:21] [INFO] Checking activity reminders 
[2026-04-12 11:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:36:51] [INFO] Checking activity reminders 
[2026-04-12 11:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Activity save request {"post_data":{"contact_id":"20974","deal_id":"local_69d691395fefb5.62385943","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیام","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:37:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20974","note_was_empty":true}
[2026-04-12 11:37:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"20974","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 11:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Updating virtual stage {"contact_id":"20974","stage_name":"deal_registered","force":false}
[2026-04-12 11:37:19] [INFO] Virtual stage successfully saved {"contact_id":"20974","stage_name":"deal_registered"}
[2026-04-12 11:37:19] [INFO] Virtual stage updated after activity save {"contact_id":"20974"}
[2026-04-12 11:37:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d691395fefb5.62385943","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 11:37:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db52b7e04219.70884459","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69db52b7e04219.70884459"}
[2026-04-12 11:37:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:19] [INFO] Updating virtual stage {"contact_id":"20974","stage_name":"deal_registered","force":false}
[2026-04-12 11:37:19] [INFO] Virtual stage successfully saved {"contact_id":"20974","stage_name":"deal_registered"}
[2026-04-12 11:37:19] [INFO] Virtual stage updated after activity save {"contact_id":"20974"}
[2026-04-12 11:37:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20974","person_id":"8065"}
[2026-04-12 11:37:21] [INFO] Checking activity reminders 
[2026-04-12 11:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:37:31] [INFO] Checking activity reminders 
[2026-04-12 11:37:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:37:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:37:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 11:37:51] [INFO] Checking activity reminders 
[2026-04-12 11:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:38:01] [INFO] Checking activity reminders 
[2026-04-12 11:38:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:38:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:38:21] [INFO] Checking activity reminders 
[2026-04-12 11:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:38:31] [INFO] Checking activity reminders 
[2026-04-12 11:38:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:38:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:38:51] [INFO] Checking activity reminders 
[2026-04-12 11:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:39:01] [INFO] Checking activity reminders 
[2026-04-12 11:39:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:39:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:39:21] [INFO] Checking activity reminders 
[2026-04-12 11:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:39:31] [INFO] Checking activity reminders 
[2026-04-12 11:39:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:39:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:39:52] [INFO] Checking activity reminders 
[2026-04-12 11:39:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:39:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:40:01] [INFO] Checking activity reminders 
[2026-04-12 11:40:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:40:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:40:22] [INFO] Checking activity reminders 
[2026-04-12 11:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:40:32] [INFO] Checking activity reminders 
[2026-04-12 11:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:40:52] [INFO] Checking activity reminders 
[2026-04-12 11:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:41:02] [INFO] Checking activity reminders 
[2026-04-12 11:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:41:22] [INFO] Checking activity reminders 
[2026-04-12 11:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:41:32] [INFO] Checking activity reminders 
[2026-04-12 11:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:41:52] [INFO] Checking activity reminders 
[2026-04-12 11:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:42:02] [INFO] Checking activity reminders 
[2026-04-12 11:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:42:22] [INFO] Checking activity reminders 
[2026-04-12 11:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:42:32] [INFO] Checking activity reminders 
[2026-04-12 11:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:42:52] [INFO] Checking activity reminders 
[2026-04-12 11:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:43:02] [INFO] Checking activity reminders 
[2026-04-12 11:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:43:22] [INFO] Checking activity reminders 
[2026-04-12 11:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:43:32] [INFO] Checking activity reminders 
[2026-04-12 11:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:43:52] [INFO] Checking activity reminders 
[2026-04-12 11:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:44:02] [INFO] Checking activity reminders 
[2026-04-12 11:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:44:22] [INFO] Checking activity reminders 
[2026-04-12 11:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:44:32] [INFO] Checking activity reminders 
[2026-04-12 11:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:44:53] [INFO] Checking activity reminders 
[2026-04-12 11:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:45:02] [INFO] Checking activity reminders 
[2026-04-12 11:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:45:23] [INFO] Checking activity reminders 
[2026-04-12 11:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:45:32] [INFO] Checking activity reminders 
[2026-04-12 11:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:45:53] [INFO] Checking activity reminders 
[2026-04-12 11:45:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:45:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:46:02] [INFO] Checking activity reminders 
[2026-04-12 11:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:46:23] [INFO] Checking activity reminders 
[2026-04-12 11:46:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:46:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:46:32] [INFO] Checking activity reminders 
[2026-04-12 11:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:46:53] [INFO] Checking activity reminders 
[2026-04-12 11:46:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:46:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:47:02] [INFO] Checking activity reminders 
[2026-04-12 11:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:47:23] [INFO] Checking activity reminders 
[2026-04-12 11:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:47:32] [INFO] Checking activity reminders 
[2026-04-12 11:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:47:53] [INFO] Checking activity reminders 
[2026-04-12 11:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:48:02] [INFO] Checking activity reminders 
[2026-04-12 11:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:48:23] [INFO] Checking activity reminders 
[2026-04-12 11:48:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:48:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:48:33] [INFO] Checking activity reminders 
[2026-04-12 11:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:48:53] [INFO] Checking activity reminders 
[2026-04-12 11:48:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:48:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:49:03] [INFO] Checking activity reminders 
[2026-04-12 11:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:49:23] [INFO] Checking activity reminders 
[2026-04-12 11:49:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:49:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:49:33] [INFO] Checking activity reminders 
[2026-04-12 11:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:49:53] [INFO] Checking activity reminders 
[2026-04-12 11:49:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:49:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:50:03] [INFO] Checking activity reminders 
[2026-04-12 11:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:50:24] [INFO] Checking activity reminders 
[2026-04-12 11:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:50:33] [INFO] Checking activity reminders 
[2026-04-12 11:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:50:54] [INFO] Checking activity reminders 
[2026-04-12 11:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:51:03] [INFO] Checking activity reminders 
[2026-04-12 11:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:24] [INFO] Checking activity reminders 
[2026-04-12 11:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:51:33] [INFO] Checking activity reminders 
[2026-04-12 11:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:51:41] [INFO] Activity save request {"post_data":{"contact_id":"local_69db426b33a4e0.69599948","deal_id":"local_69db426b4b1ef","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشت خطی عدم پاسخ ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:51:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69db426b33a4e0.69599948","note_was_empty":true}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:41] [INFO] Updating virtual stage {"contact_id":"local_69db426b33a4e0.69599948","stage_name":"new","force":false}
[2026-04-12 11:51:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69db426b33a4e0.69599948","stage_name":"new"}
[2026-04-12 11:51:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69db426b33a4e0.69599948"}
[2026-04-12 11:51:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69db426b4b1ef","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-12 11:51:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db5615280c86.85429893","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69db5615280c86.85429893"}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:41] [INFO] Updating virtual stage {"contact_id":"local_69db426b33a4e0.69599948","stage_name":"deal_registered","force":false}
[2026-04-12 11:51:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69db426b33a4e0.69599948","stage_name":"deal_registered"}
[2026-04-12 11:51:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69db426b33a4e0.69599948"}
[2026-04-12 11:51:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-12 11:51:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:51:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:51:54] [INFO] Checking activity reminders 
[2026-04-12 11:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:52:03] [INFO] Checking activity reminders 
[2026-04-12 11:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:52:23] [INFO] Lead update received {"contact_id":"local_69da71a826f6a2.47991842","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 11:52:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:52:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:52:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-12 11:52:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:52:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:52:24] [INFO] Checking activity reminders 
[2026-04-12 11:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:52:33] [INFO] Checking activity reminders 
[2026-04-12 11:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:52:54] [INFO] Checking activity reminders 
[2026-04-12 11:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:53:03] [INFO] Checking activity reminders 
[2026-04-12 11:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:53:24] [INFO] Checking activity reminders 
[2026-04-12 11:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:53:33] [INFO] Checking activity reminders 
[2026-04-12 11:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:53:54] [INFO] Checking activity reminders 
[2026-04-12 11:53:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:53:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:54:03] [INFO] Checking activity reminders 
[2026-04-12 11:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:54:18] [INFO] Activity save request {"post_data":{"contact_id":"local_69da71a826f6a2.47991842","deal_id":"local_69da71a8333a5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"واتس اپ چک کردم هوش داشته قدیم \/ کارشناسی میخواد تماس ساعت 1:230 تماس","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:54:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69da71a826f6a2.47991842","note_was_empty":true}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:18] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"new","force":false}
[2026-04-12 11:54:18] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"new"}
[2026-04-12 11:54:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-12 11:54:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69da71a8333a5","stage":"تماس پیگیری","status_change":null}
[2026-04-12 11:54:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db56b23c4cc0.92253883","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69db56b23c4cc0.92253883"}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:18] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered","force":false}
[2026-04-12 11:54:18] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered"}
[2026-04-12 11:54:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-12 11:54:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 11:54:24] [INFO] Checking activity reminders 
[2026-04-12 11:54:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:54:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:54:33] [INFO] Checking activity reminders 
[2026-04-12 11:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:54:55] [INFO] Checking activity reminders 
[2026-04-12 11:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:55:03] [INFO] Checking activity reminders 
[2026-04-12 11:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:55:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:55:25] [INFO] Checking activity reminders 
[2026-04-12 11:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:55:33] [INFO] Checking activity reminders 
[2026-04-12 11:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:55:55] [INFO] Checking activity reminders 
[2026-04-12 11:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:56:03] [INFO] Checking activity reminders 
[2026-04-12 11:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:56:25] [INFO] Checking activity reminders 
[2026-04-12 11:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:56:34] [INFO] Checking activity reminders 
[2026-04-12 11:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:56:55] [INFO] Checking activity reminders 
[2026-04-12 11:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:57:04] [INFO] Checking activity reminders 
[2026-04-12 11:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:57:04] [INFO] Activity save request {"post_data":{"contact_id":"21137","deal_id":"local_69d68b402bd515.67603793","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"انتن نداشت اول صحبت قطع شد ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:57:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21137","note_was_empty":true}
[2026-04-12 11:57:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"21137","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:04] [INFO] Updating virtual stage {"contact_id":"21137","stage_name":"deal_registered","force":false}
[2026-04-12 11:57:04] [INFO] Virtual stage successfully saved {"contact_id":"21137","stage_name":"deal_registered"}
[2026-04-12 11:57:04] [INFO] Virtual stage updated after activity save {"contact_id":"21137"}
[2026-04-12 11:57:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68b402bd515.67603793","stage":"تماس پیگیری","status_change":null}
[2026-04-12 11:57:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db57589e0b36.82558924","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69db57589e0b36.82558924"}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:04] [INFO] Updating virtual stage {"contact_id":"21137","stage_name":"deal_registered","force":false}
[2026-04-12 11:57:04] [INFO] Virtual stage successfully saved {"contact_id":"21137","stage_name":"deal_registered"}
[2026-04-12 11:57:04] [INFO] Virtual stage updated after activity save {"contact_id":"21137"}
[2026-04-12 11:57:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21137","person_id":"18313"}
[2026-04-12 11:57:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 11:57:25] [INFO] Checking activity reminders 
[2026-04-12 11:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:57:34] [INFO] Checking activity reminders 
[2026-04-12 11:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:57:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:57:55] [INFO] Checking activity reminders 
[2026-04-12 11:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:58:14] [INFO] Checking activity reminders 
[2026-04-12 11:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:58:14] [INFO] Checking activity reminders 
[2026-04-12 11:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:58:25] [INFO] Checking activity reminders 
[2026-04-12 11:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:58:44] [INFO] Checking activity reminders 
[2026-04-12 11:58:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:58:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:58:55] [INFO] Checking activity reminders 
[2026-04-12 11:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:59:14] [INFO] Checking activity reminders 
[2026-04-12 11:59:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:59:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:59:44] [INFO] Checking activity reminders 
[2026-04-12 11:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 11:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 11:59:50] [INFO] Activity save request {"post_data":{"contact_id":"983","deal_id":"local_69d4bd470a8d20.97501450","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:59:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 11:59:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:59:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"983","note_was_empty":true}
[2026-04-12 11:59:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"983","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:59:50] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-12 11:59:50] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-12 11:59:50] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-12 11:59:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4bd470a8d20.97501450","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 11:59:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db57fe283d39.09864249","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:59:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69db57fe283d39.09864249"}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 11:59:50] [INFO] Updating virtual stage {"contact_id":"983","stage_name":"deal_registered","force":false}
[2026-04-12 11:59:50] [INFO] Virtual stage successfully saved {"contact_id":"983","stage_name":"deal_registered"}
[2026-04-12 11:59:50] [INFO] Virtual stage updated after activity save {"contact_id":"983"}
[2026-04-12 11:59:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"983","person_id":"5161"}
[2026-04-12 12:00:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:14] [INFO] Checking activity reminders 
[2026-04-12 12:00:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:00:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:00:34] [INFO] Activity save request {"post_data":{"contact_id":"14407","deal_id":"local_6954d1b57d97b7.90254046","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ریجکن کرد ارسال پیامک","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 12:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 12:00:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 12:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14407","note_was_empty":true}
[2026-04-12 12:00:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"14407","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 12:00:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:34] [INFO] Updating virtual stage {"contact_id":"14407","stage_name":"deal_registered","force":false}
[2026-04-12 12:00:35] [INFO] Virtual stage successfully saved {"contact_id":"14407","stage_name":"deal_registered"}
[2026-04-12 12:00:35] [INFO] Virtual stage updated after activity save {"contact_id":"14407"}
[2026-04-12 12:00:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6954d1b57d97b7.90254046","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 12:00:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db582aefbd87.41903450","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 12:00:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69db582aefbd87.41903450"}
[2026-04-12 12:00:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:35] [INFO] Updating virtual stage {"contact_id":"14407","stage_name":"deal_registered","force":false}
[2026-04-12 12:00:35] [INFO] Virtual stage successfully saved {"contact_id":"14407","stage_name":"deal_registered"}
[2026-04-12 12:00:35] [INFO] Virtual stage updated after activity save {"contact_id":"14407"}
[2026-04-12 12:00:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14407","person_id":"10113"}
[2026-04-12 12:00:44] [INFO] Checking activity reminders 
[2026-04-12 12:00:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:00:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:01:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:01:14] [INFO] Checking activity reminders 
[2026-04-12 12:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:01:44] [INFO] Checking activity reminders 
[2026-04-12 12:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:02:14] [INFO] Checking activity reminders 
[2026-04-12 12:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:02:44] [INFO] Checking activity reminders 
[2026-04-12 12:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:03:15] [INFO] Checking activity reminders 
[2026-04-12 12:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:03:46] [INFO] Checking activity reminders 
[2026-04-12 12:03:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:03:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:04:16] [INFO] Checking activity reminders 
[2026-04-12 12:04:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:04:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:04:46] [INFO] Checking activity reminders 
[2026-04-12 12:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:05:16] [INFO] Checking activity reminders 
[2026-04-12 12:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:07:12] [INFO] Checking activity reminders 
[2026-04-12 12:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:07:42] [INFO] Checking activity reminders 
[2026-04-12 12:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:08:12] [INFO] Checking activity reminders 
[2026-04-12 12:08:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:08:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:08:42] [INFO] Checking activity reminders 
[2026-04-12 12:08:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:08:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:09:23] [INFO] Checking activity reminders 
[2026-04-12 12:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:09:53] [INFO] Checking activity reminders 
[2026-04-12 12:09:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:09:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:10:23] [INFO] Checking activity reminders 
[2026-04-12 12:10:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:10:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:10:53] [INFO] Checking activity reminders 
[2026-04-12 12:10:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:10:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:11:00] [INFO] Activity save request {"post_data":{"contact_id":"local_69906799a4f776.16151848","deal_id":"local_69906799a86cc","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تماس پیگیری پول نقدش 500 شده 1500 ماشین 207 خریده \/ 7ت بیعانه میزنه تسویه سر برج ","activity_duration":"20","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 12:11:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69906799a4f776.16151848","note_was_empty":true}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:00] [INFO] Updating virtual stage {"contact_id":"local_69906799a4f776.16151848","stage_name":"deal_registered","force":false}
[2026-04-12 12:11:00] [INFO] Virtual stage successfully saved {"contact_id":"local_69906799a4f776.16151848","stage_name":"deal_registered"}
[2026-04-12 12:11:00] [INFO] Virtual stage updated after activity save {"contact_id":"local_69906799a4f776.16151848"}
[2026-04-12 12:11:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69906799a86cc","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 12:11:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db5a9c21b729.34005990","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69db5a9c21b729.34005990"}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:00] [INFO] Updating virtual stage {"contact_id":"local_69906799a4f776.16151848","stage_name":"deal_registered","force":false}
[2026-04-12 12:11:00] [INFO] Virtual stage successfully saved {"contact_id":"local_69906799a4f776.16151848","stage_name":"deal_registered"}
[2026-04-12 12:11:00] [INFO] Virtual stage updated after activity save {"contact_id":"local_69906799a4f776.16151848"}
[2026-04-12 12:11:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69906799a4f776.16151848","person_id":"21666"}
[2026-04-12 12:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:11:17] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:21] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:23] [INFO] Checking activity reminders 
[2026-04-12 12:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:11:32] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:32] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:11:32] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:34] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-12 12:11:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:11:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:11:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-12 12:11:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:12:01] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:12:02] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:12:13] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:12:13] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-12 12:12:13] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-12 12:12:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 12:12:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 12:12:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 12:12:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 12:12:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:12:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:12:44] [INFO] Checking activity reminders 
[2026-04-12 12:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:12:54] [INFO] Lead update received {"contact_id":"5781","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 12:12:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:12:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:12:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:12:54] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5781"}
[2026-04-12 12:12:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5781","person_id":"3656"}
[2026-04-12 12:20:39] [INFO] Checking activity reminders 
[2026-04-12 12:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:21:26] [INFO] Checking activity reminders 
[2026-04-12 12:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:21:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989cd6c8e23f3.32254992","person_id":"21637"}
[2026-04-12 12:21:53] [INFO] Checking activity reminders 
[2026-04-12 12:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:21:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6989cd6c8e23f3.32254992","person_id":"21637"}
[2026-04-12 12:22:00] [INFO] Checking activity reminders 
[2026-04-12 12:22:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:22:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:22:30] [INFO] Checking activity reminders 
[2026-04-12 12:22:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:22:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:22:53] [INFO] Checking activity reminders 
[2026-04-12 12:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:23:00] [INFO] Checking activity reminders 
[2026-04-12 12:23:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:23:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:23:30] [INFO] Checking activity reminders 
[2026-04-12 12:23:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:23:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:24:00] [INFO] Checking activity reminders 
[2026-04-12 12:24:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:24:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:24:30] [INFO] Checking activity reminders 
[2026-04-12 12:24:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:24:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:25:00] [INFO] Checking activity reminders 
[2026-04-12 12:25:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:25:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:25:30] [INFO] Checking activity reminders 
[2026-04-12 12:25:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:25:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:26:00] [INFO] Checking activity reminders 
[2026-04-12 12:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:26:30] [INFO] Checking activity reminders 
[2026-04-12 12:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:27:00] [INFO] Checking activity reminders 
[2026-04-12 12:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:27:30] [INFO] Checking activity reminders 
[2026-04-12 12:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:28:01] [INFO] Checking activity reminders 
[2026-04-12 12:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_products"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:20] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 12:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:22] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:31] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 12:32:32] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-12 12:32:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 12:32:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:33:02] [INFO] Checking activity reminders 
[2026-04-12 12:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:33:32] [INFO] Checking activity reminders 
[2026-04-12 12:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:34:02] [INFO] Checking activity reminders 
[2026-04-12 12:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:34:32] [INFO] Checking activity reminders 
[2026-04-12 12:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:35:01] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 12:35:01","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 12:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:01] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","is_new_deal":false}
[2026-04-12 12:35:01] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:01] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:01] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:01] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_164"}
[2026-04-12 12:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:01] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_164","person_found":true,"primary_phone":"9359171138"}
[2026-04-12 12:35:01] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359171138"}
[2026-04-12 12:35:01] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359171138","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 12:35:01"}
[2026-04-12 12:35:01] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_164","existing_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 12:35:01"}
[2026-04-12 12:35:01] [INFO] DealController.save validated payments {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-12 12:35:01] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_164","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 12:35:01] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6916fef5397.36634608","contact_didar_id":"local_1403_09_26_164","title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9359171138","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد یوسفی","existing_deal":"YES","existing_deal_id":"local_69d6916fef5397.36634608","existing_deal_status":"Pending","server_time":"2026-04-12 12:35:01","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 12:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:01] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-12 12:35:01","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 12:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:02] [INFO] Checking activity reminders 
[2026-04-12 12:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:35:32] [INFO] Checking activity reminders 
[2026-04-12 12:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:35:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 12:35:47","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_1403_09_26_164","is_new_deal":false}
[2026-04-12 12:35:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 12:35:47] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_164"}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:47] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_164","person_found":true,"primary_phone":"9359171138"}
[2026-04-12 12:35:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9359171138"}
[2026-04-12 12:35:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9359171138","contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 12:35:47"}
[2026-04-12 12:35:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_164","existing_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 12:35:47"}
[2026-04-12 12:35:47] [INFO] DealController.save validated payments {"deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 12:35:47] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_164","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 12:35:47] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6916fef5397.36634608","contact_didar_id":"local_1403_09_26_164","title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9359171138","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد یوسفی","existing_deal":"YES","existing_deal_id":"local_69d6916fef5397.36634608","existing_deal_status":"Pending","server_time":"2026-04-12 12:35:47","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:47] [INFO] Deal success processed {"contact_id":"local_1403_09_26_164","person_name":"محمد یوسفی","products_count":1}
[2026-04-12 12:35:47] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6916fef5397.36634608","contact_id":"local_1403_09_26_164","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9359171138 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-12 12:35:47","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:35:47] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_164","stage_name":"with_purchase","force":true}
[2026-04-12 12:35:47] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_164","stage_name":"with_purchase"}
[2026-04-12 12:35:47] [INFO] Moved contact out of kariz after successful deal {"contact_id":"local_1403_09_26_164","deal_id":"local_69d6916fef5397.36634608","target_stage":"with_purchase"}
[2026-04-12 12:35:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 12:36:02] [INFO] Checking activity reminders 
[2026-04-12 12:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:36:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 12:36:24] [INFO] Checking activity reminders 
[2026-04-12 12:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:36:55] [INFO] Checking activity reminders 
[2026-04-12 12:36:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:36:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:37:25] [INFO] Checking activity reminders 
[2026-04-12 12:37:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:37:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:37:55] [INFO] Checking activity reminders 
[2026-04-12 12:37:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:37:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:38:25] [INFO] Checking activity reminders 
[2026-04-12 12:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:38:44] [INFO] Checking activity reminders 
[2026-04-12 12:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:38:55] [INFO] Checking activity reminders 
[2026-04-12 12:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:39:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:39:15] [INFO] Checking activity reminders 
[2026-04-12 12:39:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:39:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:39:25] [INFO] Checking activity reminders 
[2026-04-12 12:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:39:45] [INFO] Checking activity reminders 
[2026-04-12 12:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:39:55] [INFO] Checking activity reminders 
[2026-04-12 12:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:40:15] [INFO] Checking activity reminders 
[2026-04-12 12:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:40:25] [INFO] Checking activity reminders 
[2026-04-12 12:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:40:45] [INFO] Checking activity reminders 
[2026-04-12 12:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:40:56] [INFO] Checking activity reminders 
[2026-04-12 12:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:41:15] [INFO] Checking activity reminders 
[2026-04-12 12:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:41:27] [INFO] Checking activity reminders 
[2026-04-12 12:41:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:41:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:41:32] [INFO] Checking activity reminders 
[2026-04-12 12:41:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:41:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:41:57] [INFO] Checking activity reminders 
[2026-04-12 12:41:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:41:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:42:02] [INFO] Checking activity reminders 
[2026-04-12 12:42:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:42:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:42:27] [INFO] Checking activity reminders 
[2026-04-12 12:42:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:42:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:42:32] [INFO] Checking activity reminders 
[2026-04-12 12:42:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:42:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:42:57] [INFO] Checking activity reminders 
[2026-04-12 12:42:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:42:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:42:59] [INFO] Activity save request {"post_data":{"contact_id":"15497","deal_id":"local_69b5c4f0676861.47881458","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سلام علیک کردیم انتن رفت ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:42:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 12:42:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:42:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15497","note_was_empty":true}
[2026-04-12 12:42:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"15497","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:42:59] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-04-12 12:42:59] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-04-12 12:42:59] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-04-12 12:42:59] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c4f0676861.47881458","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 12:42:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db621b04e6b3.41775326","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:42:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69db621b04e6b3.41775326"}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:42:59] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-04-12 12:42:59] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-04-12 12:42:59] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-04-12 12:42:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 12:43:02] [INFO] Checking activity reminders 
[2026-04-12 12:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:43:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 12:43:27] [INFO] Checking activity reminders 
[2026-04-12 12:43:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:43:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:43:32] [INFO] Checking activity reminders 
[2026-04-12 12:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:43:57] [INFO] Checking activity reminders 
[2026-04-12 12:43:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:43:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:44:02] [INFO] Checking activity reminders 
[2026-04-12 12:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:44:28] [INFO] Checking activity reminders 
[2026-04-12 12:44:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:44:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:44:32] [INFO] Checking activity reminders 
[2026-04-12 12:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:44:58] [INFO] Checking activity reminders 
[2026-04-12 12:44:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:44:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:45:02] [INFO] Checking activity reminders 
[2026-04-12 12:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:45:28] [INFO] Checking activity reminders 
[2026-04-12 12:45:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:45:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:45:32] [INFO] Checking activity reminders 
[2026-04-12 12:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:45:58] [INFO] Checking activity reminders 
[2026-04-12 12:45:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:45:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:46:02] [INFO] Checking activity reminders 
[2026-04-12 12:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:46:28] [INFO] Checking activity reminders 
[2026-04-12 12:46:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:46:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:46:32] [INFO] Checking activity reminders 
[2026-04-12 12:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:46:58] [INFO] Checking activity reminders 
[2026-04-12 12:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:47:02] [INFO] Checking activity reminders 
[2026-04-12 12:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:47:28] [INFO] Checking activity reminders 
[2026-04-12 12:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:47:33] [INFO] Checking activity reminders 
[2026-04-12 12:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:47:59] [INFO] Checking activity reminders 
[2026-04-12 12:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:48:03] [INFO] Checking activity reminders 
[2026-04-12 12:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:48:29] [INFO] Checking activity reminders 
[2026-04-12 12:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:48:33] [INFO] Checking activity reminders 
[2026-04-12 12:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:48:59] [INFO] Checking activity reminders 
[2026-04-12 12:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:49:03] [INFO] Checking activity reminders 
[2026-04-12 12:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:49:29] [INFO] Checking activity reminders 
[2026-04-12 12:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:49:33] [INFO] Checking activity reminders 
[2026-04-12 12:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:49:59] [INFO] Checking activity reminders 
[2026-04-12 12:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:50:03] [INFO] Checking activity reminders 
[2026-04-12 12:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:50:29] [INFO] Checking activity reminders 
[2026-04-12 12:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:50:33] [INFO] Checking activity reminders 
[2026-04-12 12:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:50:59] [INFO] Checking activity reminders 
[2026-04-12 12:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:51:03] [INFO] Checking activity reminders 
[2026-04-12 12:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:51:30] [INFO] Checking activity reminders 
[2026-04-12 12:51:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:51:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:51:33] [INFO] Checking activity reminders 
[2026-04-12 12:51:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:51:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:52:00] [INFO] Checking activity reminders 
[2026-04-12 12:52:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:52:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:52:03] [INFO] Checking activity reminders 
[2026-04-12 12:52:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:52:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:52:30] [INFO] Checking activity reminders 
[2026-04-12 12:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:52:33] [INFO] Checking activity reminders 
[2026-04-12 12:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:53:00] [INFO] Checking activity reminders 
[2026-04-12 12:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:53:03] [INFO] Checking activity reminders 
[2026-04-12 12:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:53:30] [INFO] Checking activity reminders 
[2026-04-12 12:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:53:33] [INFO] Checking activity reminders 
[2026-04-12 12:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:54:01] [INFO] Checking activity reminders 
[2026-04-12 12:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:54:03] [INFO] Checking activity reminders 
[2026-04-12 12:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:54:31] [INFO] Checking activity reminders 
[2026-04-12 12:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:54:33] [INFO] Checking activity reminders 
[2026-04-12 12:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:55:01] [INFO] Checking activity reminders 
[2026-04-12 12:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:55:03] [INFO] Checking activity reminders 
[2026-04-12 12:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:55:31] [INFO] Checking activity reminders 
[2026-04-12 12:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:55:34] [INFO] Checking activity reminders 
[2026-04-12 12:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:56:01] [INFO] Checking activity reminders 
[2026-04-12 12:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:56:04] [INFO] Checking activity reminders 
[2026-04-12 12:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:56:32] [INFO] Checking activity reminders 
[2026-04-12 12:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:56:34] [INFO] Checking activity reminders 
[2026-04-12 12:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:57:02] [INFO] Checking activity reminders 
[2026-04-12 12:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:57:04] [INFO] Checking activity reminders 
[2026-04-12 12:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:57:32] [INFO] Checking activity reminders 
[2026-04-12 12:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:57:34] [INFO] Checking activity reminders 
[2026-04-12 12:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:58:02] [INFO] Checking activity reminders 
[2026-04-12 12:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:58:04] [INFO] Checking activity reminders 
[2026-04-12 12:58:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:58:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:58:32] [INFO] Checking activity reminders 
[2026-04-12 12:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:58:34] [INFO] Checking activity reminders 
[2026-04-12 12:58:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:58:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:59:02] [INFO] Checking activity reminders 
[2026-04-12 12:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:59:04] [INFO] Checking activity reminders 
[2026-04-12 12:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:59:32] [INFO] Checking activity reminders 
[2026-04-12 12:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 12:59:34] [INFO] Checking activity reminders 
[2026-04-12 12:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 12:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:00:03] [INFO] Checking activity reminders 
[2026-04-12 13:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:00:04] [INFO] Checking activity reminders 
[2026-04-12 13:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:00:33] [INFO] Checking activity reminders 
[2026-04-12 13:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:00:34] [INFO] Checking activity reminders 
[2026-04-12 13:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:01:03] [INFO] Checking activity reminders 
[2026-04-12 13:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:01:04] [INFO] Checking activity reminders 
[2026-04-12 13:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:01:06] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-12 13:01:06] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:06] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:28] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 13:01:28] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-12 13:01:28] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-12 13:01:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 13:01:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 13:01:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 13:01:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 13:01:33] [INFO] Checking activity reminders 
[2026-04-12 13:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:01:34] [INFO] Checking activity reminders 
[2026-04-12 13:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:01:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 13:01:59] [INFO] Checking activity reminders 
[2026-04-12 13:01:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:01:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:02:03] [INFO] Checking activity reminders 
[2026-04-12 13:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:02:04] [INFO] Checking activity reminders 
[2026-04-12 13:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:02:33] [INFO] Checking activity reminders 
[2026-04-12 13:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:02:34] [INFO] Checking activity reminders 
[2026-04-12 13:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:03:04] [INFO] Checking activity reminders 
[2026-04-12 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:03:04] [INFO] Checking activity reminders 
[2026-04-12 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:03:34] [INFO] Checking activity reminders 
[2026-04-12 13:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:03:35] [INFO] Checking activity reminders 
[2026-04-12 13:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:04:02] [INFO] Activity save request {"post_data":{"contact_id":"6754","deal_id":"local_6942a221e2f862.47832460","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال مجدد کارت کانال بزنه دوشنبه تا ساعت10  گفت میخوام باشم فقط یا کامل نقد یا چک 30 روزه مبلغ","activity_duration":"20","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:04:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6754","note_was_empty":true}
[2026-04-12 13:04:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"6754","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:02] [INFO] Updating virtual stage {"contact_id":"6754","stage_name":"deal_registered","force":false}
[2026-04-12 13:04:02] [INFO] Virtual stage successfully saved {"contact_id":"6754","stage_name":"deal_registered"}
[2026-04-12 13:04:02] [INFO] Virtual stage updated after activity save {"contact_id":"6754"}
[2026-04-12 13:04:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6942a221e2f862.47832460","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:04:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db670a2889a1.03204546","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69db670a2889a1.03204546"}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:02] [INFO] Updating virtual stage {"contact_id":"6754","stage_name":"deal_registered","force":false}
[2026-04-12 13:04:02] [INFO] Virtual stage successfully saved {"contact_id":"6754","stage_name":"deal_registered"}
[2026-04-12 13:04:02] [INFO] Virtual stage updated after activity save {"contact_id":"6754"}
[2026-04-12 13:04:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-12 13:04:04] [INFO] Checking activity reminders 
[2026-04-12 13:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:04:05] [INFO] Checking activity reminders 
[2026-04-12 13:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:04:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:04:34] [INFO] Checking activity reminders 
[2026-04-12 13:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:04:35] [INFO] Checking activity reminders 
[2026-04-12 13:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:05:04] [INFO] Checking activity reminders 
[2026-04-12 13:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:05:05] [INFO] Checking activity reminders 
[2026-04-12 13:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:05:34] [INFO] Checking activity reminders 
[2026-04-12 13:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:05:35] [INFO] Checking activity reminders 
[2026-04-12 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:06:04] [INFO] Checking activity reminders 
[2026-04-12 13:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:06:05] [INFO] Checking activity reminders 
[2026-04-12 13:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:06:34] [INFO] Checking activity reminders 
[2026-04-12 13:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:06:35] [INFO] Checking activity reminders 
[2026-04-12 13:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:07:05] [INFO] Checking activity reminders 
[2026-04-12 13:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:07:05] [INFO] Checking activity reminders 
[2026-04-12 13:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:07:35] [INFO] Checking activity reminders 
[2026-04-12 13:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:07:35] [INFO] Checking activity reminders 
[2026-04-12 13:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:07:45] [INFO] Activity save request {"post_data":{"contact_id":"21415","deal_id":"local_69d22400afcc19.74863539","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت 6ماهه 39ت میزنه \/ تمدید شهریور ","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:07:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:07:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:07:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21415","note_was_empty":true}
[2026-04-12 13:07:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"21415","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:07:45] [INFO] Updating virtual stage {"contact_id":"21415","stage_name":"deal_registered","force":false}
[2026-04-12 13:07:45] [INFO] Virtual stage successfully saved {"contact_id":"21415","stage_name":"deal_registered"}
[2026-04-12 13:07:45] [INFO] Virtual stage updated after activity save {"contact_id":"21415"}
[2026-04-12 13:07:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d22400afcc19.74863539","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:07:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db67e9299cb0.84506568","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:07:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69db67e9299cb0.84506568"}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:07:45] [INFO] Updating virtual stage {"contact_id":"21415","stage_name":"deal_registered","force":false}
[2026-04-12 13:07:45] [INFO] Virtual stage successfully saved {"contact_id":"21415","stage_name":"deal_registered"}
[2026-04-12 13:07:45] [INFO] Virtual stage updated after activity save {"contact_id":"21415"}
[2026-04-12 13:07:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:08:05] [INFO] Checking activity reminders 
[2026-04-12 13:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:08:05] [INFO] Checking activity reminders 
[2026-04-12 13:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:08:35] [INFO] Checking activity reminders 
[2026-04-12 13:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:08:36] [INFO] Checking activity reminders 
[2026-04-12 13:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:09:05] [INFO] Checking activity reminders 
[2026-04-12 13:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:09:06] [INFO] Checking activity reminders 
[2026-04-12 13:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:09:35] [INFO] Checking activity reminders 
[2026-04-12 13:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:09:36] [INFO] Checking activity reminders 
[2026-04-12 13:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:10:05] [INFO] Checking activity reminders 
[2026-04-12 13:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:10:06] [INFO] Checking activity reminders 
[2026-04-12 13:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:10:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:10:36] [INFO] Checking activity reminders 
[2026-04-12 13:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:10:36] [INFO] Checking activity reminders 
[2026-04-12 13:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:11:06] [INFO] Checking activity reminders 
[2026-04-12 13:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:11:06] [INFO] Checking activity reminders 
[2026-04-12 13:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:11:36] [INFO] Checking activity reminders 
[2026-04-12 13:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:11:37] [INFO] Checking activity reminders 
[2026-04-12 13:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:12:06] [INFO] Checking activity reminders 
[2026-04-12 13:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:12:07] [INFO] Checking activity reminders 
[2026-04-12 13:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:12:36] [INFO] Checking activity reminders 
[2026-04-12 13:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:12:37] [INFO] Checking activity reminders 
[2026-04-12 13:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:13:06] [INFO] Checking activity reminders 
[2026-04-12 13:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:13:07] [INFO] Checking activity reminders 
[2026-04-12 13:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:13:36] [INFO] Checking activity reminders 
[2026-04-12 13:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:13:37] [INFO] Checking activity reminders 
[2026-04-12 13:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:13:50] [INFO] Activity save request {"post_data":{"contact_id":"7779","deal_id":"local_69552759d43991.60732473","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خودش که پارسال تصمیم گرفت یکم صبر کنه\/ \r\nتماس پیگیری میگه دوستش رحیمی دعوا کرده چرا کارشناسی یاد نگرفته پارسال صحبت کردم باهاش پیچید الان هوش کارشناسی 15ت خبر بده واریز کنه \r\nکانال خود زرزا هم بزنم","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:13:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:13:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:13:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7779","note_was_empty":true}
[2026-04-12 13:13:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"7779","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:13:50] [INFO] Updating virtual stage {"contact_id":"7779","stage_name":"deal_registered","force":false}
[2026-04-12 13:13:50] [INFO] Virtual stage successfully saved {"contact_id":"7779","stage_name":"deal_registered"}
[2026-04-12 13:13:50] [INFO] Virtual stage updated after activity save {"contact_id":"7779"}
[2026-04-12 13:13:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69552759d43991.60732473","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:13:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6956a2fbd4.09513546","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:13:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6956a2fbd4.09513546"}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:13:50] [INFO] Updating virtual stage {"contact_id":"7779","stage_name":"deal_registered","force":false}
[2026-04-12 13:13:50] [INFO] Virtual stage successfully saved {"contact_id":"7779","stage_name":"deal_registered"}
[2026-04-12 13:13:50] [INFO] Virtual stage updated after activity save {"contact_id":"7779"}
[2026-04-12 13:13:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 13:14:06] [INFO] Checking activity reminders 
[2026-04-12 13:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:14:07] [INFO] Checking activity reminders 
[2026-04-12 13:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:14:36] [INFO] Checking activity reminders 
[2026-04-12 13:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:14:37] [INFO] Checking activity reminders 
[2026-04-12 13:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:06] [INFO] Checking activity reminders 
[2026-04-12 13:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:07] [INFO] Checking activity reminders 
[2026-04-12 13:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:36] [INFO] Checking activity reminders 
[2026-04-12 13:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:38] [INFO] Checking activity reminders 
[2026-04-12 13:15:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:53] [INFO] Checking activity reminders 
[2026-04-12 13:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:54] [INFO] Checking activity reminders 
[2026-04-12 13:15:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:15:56] [INFO] Checking activity reminders 
[2026-04-12 13:15:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:15:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:16:06] [INFO] Checking activity reminders 
[2026-04-12 13:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:16:26] [INFO] Checking activity reminders 
[2026-04-12 13:16:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:16:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:16:36] [INFO] Checking activity reminders 
[2026-04-12 13:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:16:56] [INFO] Checking activity reminders 
[2026-04-12 13:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:17:07] [INFO] Checking activity reminders 
[2026-04-12 13:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:17:26] [INFO] Checking activity reminders 
[2026-04-12 13:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:17:37] [INFO] Checking activity reminders 
[2026-04-12 13:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:17:57] [INFO] Checking activity reminders 
[2026-04-12 13:17:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:17:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:18:07] [INFO] Checking activity reminders 
[2026-04-12 13:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:18:27] [INFO] Checking activity reminders 
[2026-04-12 13:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:18:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:18:37] [INFO] Checking activity reminders 
[2026-04-12 13:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:18:58] [INFO] Checking activity reminders 
[2026-04-12 13:18:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:18:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:19:07] [INFO] Checking activity reminders 
[2026-04-12 13:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:19:29] [INFO] Checking activity reminders 
[2026-04-12 13:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:19:32] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21415","deal_id":"local_69d22400afcc19.74863539","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:19:32","session_id":"lcolfh2i756nmne53eolicd5ut"}
[2026-04-12 13:19:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:19:32] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21415","is_new_deal":false}
[2026-04-12 13:19:32] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 13:19:32] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 13:19:32] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 13:19:32] [INFO] getContactPrimaryPhone called {"contact_id":"21415"}
[2026-04-12 13:19:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:19:32] [INFO] getContactPrimaryPhone result {"contact_id":"21415","person_found":true,"primary_phone":"9170808282"}
[2026-04-12 13:19:32] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9170808282"}
[2026-04-12 13:19:32] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9170808282","contact_id":"21415","deal_id":"local_69d22400afcc19.74863539","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-12 13:19:32"}
[2026-04-12 13:19:32] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d22400afcc19.74863539","contact_id":"21415","existing_deal_found":true,"existing_contact_id":"21415","existing_title":"معامله دوم 9170808282 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-12 13:19:32"}
[2026-04-12 13:19:32] [INFO] DealController.save validated payments {"deal_id":"local_69d22400afcc19.74863539","contact_id":"21415","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-12 13:19:32] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21415","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 13:19:32] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d22400afcc19.74863539","contact_didar_id":"21415","title":"معامله دوم 9170808282 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9170808282","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"راسخ راسخ","existing_deal":"YES","existing_deal_id":"local_69d22400afcc19.74863539","existing_deal_status":"Pending","server_time":"2026-04-12 13:19:32","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-12 13:19:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:19:32] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d22400afcc19.74863539","contact_id":"21415","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9170808282 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-12 13:19:32","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:19:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:19:37] [INFO] Checking activity reminders 
[2026-04-12 13:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:19:59] [INFO] Checking activity reminders 
[2026-04-12 13:19:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:19:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:20:07] [INFO] Checking activity reminders 
[2026-04-12 13:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:20:29] [INFO] Checking activity reminders 
[2026-04-12 13:20:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:20:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:20:37] [INFO] Checking activity reminders 
[2026-04-12 13:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:20:44] [INFO] Checking activity reminders 
[2026-04-12 13:20:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:20:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:20:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_164","person_id":"21239"}
[2026-04-12 13:20:59] [INFO] Checking activity reminders 
[2026-04-12 13:20:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:20:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:21:07] [INFO] Checking activity reminders 
[2026-04-12 13:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:21:14] [INFO] Checking activity reminders 
[2026-04-12 13:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:21:21] [INFO] Activity save request {"post_data":{"contact_id":"3907","deal_id":"local_69da84e21cbd44.03023468","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":" کانال عضو شد","activity_duration":"3","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:21:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3907","note_was_empty":true}
[2026-04-12 13:21:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"3907","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:21] [INFO] Updating virtual stage {"contact_id":"3907","stage_name":"deal_registered","force":false}
[2026-04-12 13:21:21] [INFO] Virtual stage successfully saved {"contact_id":"3907","stage_name":"deal_registered"}
[2026-04-12 13:21:21] [INFO] Virtual stage updated after activity save {"contact_id":"3907"}
[2026-04-12 13:21:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69da84e21cbd44.03023468","stage":"برگزاری دوره","status_change":null}
[2026-04-12 13:21:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6b19de7f50.46816048","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6b19de7f50.46816048"}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:21] [INFO] Updating virtual stage {"contact_id":"3907","stage_name":"deal_registered","force":false}
[2026-04-12 13:21:21] [INFO] Virtual stage successfully saved {"contact_id":"3907","stage_name":"deal_registered"}
[2026-04-12 13:21:21] [INFO] Virtual stage updated after activity save {"contact_id":"3907"}
[2026-04-12 13:21:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3907","person_id":"19676"}
[2026-04-12 13:21:29] [INFO] Checking activity reminders 
[2026-04-12 13:21:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:21:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:21:37] [INFO] Checking activity reminders 
[2026-04-12 13:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:21:59] [INFO] Checking activity reminders 
[2026-04-12 13:21:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:21:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:22:14] [INFO] Checking activity reminders 
[2026-04-12 13:22:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:22:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:22:29] [INFO] Checking activity reminders 
[2026-04-12 13:22:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:22:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:22:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:22:44] [INFO] Checking activity reminders 
[2026-04-12 13:22:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:22:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:22:59] [INFO] Checking activity reminders 
[2026-04-12 13:22:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:22:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:23:14] [INFO] Checking activity reminders 
[2026-04-12 13:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:23:27] [INFO] Activity save request {"post_data":{"contact_id":"11224","deal_id":"local_69bd03f8b5e821.80397397","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"30 ت واریز کرده مانده داره","activity_duration":"3","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:23:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11224","note_was_empty":true}
[2026-04-12 13:23:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"11224","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:27] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-04-12 13:23:27] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-04-12 13:23:27] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-04-12 13:23:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bd03f8b5e821.80397397","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-12 13:23:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6b975ede97.67287640","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6b975ede97.67287640"}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:27] [INFO] Updating virtual stage {"contact_id":"11224","stage_name":"deal_registered","force":false}
[2026-04-12 13:23:27] [INFO] Virtual stage successfully saved {"contact_id":"11224","stage_name":"deal_registered"}
[2026-04-12 13:23:27] [INFO] Virtual stage updated after activity save {"contact_id":"11224"}
[2026-04-12 13:23:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:29] [INFO] Checking activity reminders 
[2026-04-12 13:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:23:44] [INFO] Checking activity reminders 
[2026-04-12 13:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:23:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:23:59] [INFO] Checking activity reminders 
[2026-04-12 13:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:23:59] [INFO] Checking activity reminders 
[2026-04-12 13:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:24:04] [INFO] Checking activity reminders 
[2026-04-12 13:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:24:29] [INFO] Checking activity reminders 
[2026-04-12 13:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:24:34] [INFO] Checking activity reminders 
[2026-04-12 13:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:24:59] [INFO] Checking activity reminders 
[2026-04-12 13:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:25:20] [INFO] Checking activity reminders 
[2026-04-12 13:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:25:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:25:29] [INFO] Checking activity reminders 
[2026-04-12 13:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:25:50] [INFO] Checking activity reminders 
[2026-04-12 13:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:26:00] [INFO] Checking activity reminders 
[2026-04-12 13:26:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:26:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:26:20] [INFO] Checking activity reminders 
[2026-04-12 13:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:26:30] [INFO] Checking activity reminders 
[2026-04-12 13:26:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:26:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:26:50] [INFO] Checking activity reminders 
[2026-04-12 13:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:27:00] [INFO] Checking activity reminders 
[2026-04-12 13:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:27:20] [INFO] Checking activity reminders 
[2026-04-12 13:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:27:30] [INFO] Checking activity reminders 
[2026-04-12 13:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:27:46] [INFO] Activity save request {"post_data":{"contact_id":"local_69b5c26679f016.87637904","deal_id":"local_69b5c2667a9cb","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"سر مراسم هی میگفت میزنم  نزد\/ امروز پیگیری عدم پاسخ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:27:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69b5c26679f016.87637904","note_was_empty":true}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:46] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-04-12 13:27:46] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-04-12 13:27:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-04-12 13:27:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c2667a9cb","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:27:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6c9ad63817.51176980","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6c9ad63817.51176980"}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:46] [INFO] Updating virtual stage {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered","force":false}
[2026-04-12 13:27:46] [INFO] Virtual stage successfully saved {"contact_id":"local_69b5c26679f016.87637904","stage_name":"deal_registered"}
[2026-04-12 13:27:46] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b5c26679f016.87637904"}
[2026-04-12 13:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b5c26679f016.87637904","person_id":"21853"}
[2026-04-12 13:27:50] [INFO] Checking activity reminders 
[2026-04-12 13:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:28:00] [INFO] Checking activity reminders 
[2026-04-12 13:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:28:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 13:28:21] [INFO] Checking activity reminders 
[2026-04-12 13:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:28:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:28:30] [INFO] Checking activity reminders 
[2026-04-12 13:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:28:42] [INFO] Checking activity reminders 
[2026-04-12 13:28:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:28:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:28:51] [INFO] Checking activity reminders 
[2026-04-12 13:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:29:00] [INFO] Checking activity reminders 
[2026-04-12 13:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:29:26] [INFO] Checking activity reminders 
[2026-04-12 13:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:29:30] [INFO] Checking activity reminders 
[2026-04-12 13:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:30:01] [INFO] Checking activity reminders 
[2026-04-12 13:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:30:01] [INFO] Checking activity reminders 
[2026-04-12 13:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:30:31] [INFO] Checking activity reminders 
[2026-04-12 13:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:30:31] [INFO] Checking activity reminders 
[2026-04-12 13:30:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:30:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:31:01] [INFO] Checking activity reminders 
[2026-04-12 13:31:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:31:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:31:02] [INFO] Checking activity reminders 
[2026-04-12 13:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:31:31] [INFO] Checking activity reminders 
[2026-04-12 13:31:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:31:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:31:32] [INFO] Checking activity reminders 
[2026-04-12 13:31:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:31:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:31:37] [INFO] Activity save request {"post_data":{"contact_id":"1726","deal_id":"local_69d0a8a4dad1d0.23974740","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:31:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1726","note_was_empty":true}
[2026-04-12 13:31:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"1726","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:37] [INFO] Updating virtual stage {"contact_id":"1726","stage_name":"deal_registered","force":false}
[2026-04-12 13:31:37] [INFO] Virtual stage successfully saved {"contact_id":"1726","stage_name":"deal_registered"}
[2026-04-12 13:31:37] [INFO] Virtual stage updated after activity save {"contact_id":"1726"}
[2026-04-12 13:31:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a8a4dad1d0.23974740","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:31:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6d81ce7607.33608335","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6d81ce7607.33608335"}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:37] [INFO] Updating virtual stage {"contact_id":"1726","stage_name":"deal_registered","force":false}
[2026-04-12 13:31:37] [INFO] Virtual stage successfully saved {"contact_id":"1726","stage_name":"deal_registered"}
[2026-04-12 13:31:37] [INFO] Virtual stage updated after activity save {"contact_id":"1726"}
[2026-04-12 13:31:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1726","person_id":"13970"}
[2026-04-12 13:31:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:32:01] [INFO] Checking activity reminders 
[2026-04-12 13:32:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:32:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:32:02] [INFO] Checking activity reminders 
[2026-04-12 13:32:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:32:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:32:32] [INFO] Checking activity reminders 
[2026-04-12 13:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:32:32] [INFO] Checking activity reminders 
[2026-04-12 13:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:02] [INFO] Checking activity reminders 
[2026-04-12 13:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:02] [INFO] Checking activity reminders 
[2026-04-12 13:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:32] [INFO] Checking activity reminders 
[2026-04-12 13:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:32] [INFO] Checking activity reminders 
[2026-04-12 13:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:33] [INFO] Checking activity reminders 
[2026-04-12 13:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:33:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:34:02] [INFO] Checking activity reminders 
[2026-04-12 13:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:03] [INFO] Checking activity reminders 
[2026-04-12 13:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:03] [INFO] Checking activity reminders 
[2026-04-12 13:34:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:28] [INFO] Activity save request {"post_data":{"contact_id":"local_695cc29f3af4e6.80623237","deal_id":"local_695cc29f3c537","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"خاموش ارسال پیامک پیگیری","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:34:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_695cc29f3af4e6.80623237","note_was_empty":true}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:28] [INFO] Updating virtual stage {"contact_id":"local_695cc29f3af4e6.80623237","stage_name":"deal_registered","force":false}
[2026-04-12 13:34:28] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc29f3af4e6.80623237","stage_name":"deal_registered"}
[2026-04-12 13:34:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc29f3af4e6.80623237"}
[2026-04-12 13:34:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cc29f3c537","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:34:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6e2c4cff16.75565338","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6e2c4cff16.75565338"}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:28] [INFO] Updating virtual stage {"contact_id":"local_695cc29f3af4e6.80623237","stage_name":"deal_registered","force":false}
[2026-04-12 13:34:28] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc29f3af4e6.80623237","stage_name":"deal_registered"}
[2026-04-12 13:34:28] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc29f3af4e6.80623237"}
[2026-04-12 13:34:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc29f3af4e6.80623237","person_id":"21533"}
[2026-04-12 13:34:32] [INFO] Checking activity reminders 
[2026-04-12 13:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:33] [INFO] Checking activity reminders 
[2026-04-12 13:34:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:34] [INFO] Checking activity reminders 
[2026-04-12 13:34:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:34:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:34:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:34:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:01] [INFO] Deal reactivation requested {"deal_id":"local_695d199adc53d4.54626037","old_status":"Won","old_stage":"اتمام","new_stage":"پیگیری مانده حساب","reason":""}
[2026-04-12 13:35:01] [INFO] Deal successfully reactivated {"deal_id":"local_695d199adc53d4.54626037","new_stage":"پیگیری مانده حساب","reason":""}
[2026-04-12 13:35:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:35:02] [INFO] Checking activity reminders 
[2026-04-12 13:35:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:03] [INFO] Checking activity reminders 
[2026-04-12 13:35:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:14] [INFO] Checking activity reminders 
[2026-04-12 13:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:32] [INFO] Checking activity reminders 
[2026-04-12 13:35:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:33] [INFO] Checking activity reminders 
[2026-04-12 13:35:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:35:39","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-12 13:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:35:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12168","is_new_deal":false}
[2026-04-12 13:35:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 13:35:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:35:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:35:39] [INFO] getContactPrimaryPhone called {"contact_id":"12168"}
[2026-04-12 13:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:35:39] [INFO] getContactPrimaryPhone result {"contact_id":"12168","person_found":true,"primary_phone":"9146335212"}
[2026-04-12 13:35:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146335212"}
[2026-04-12 13:35:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146335212","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-12 13:35:39"}
[2026-04-12 13:35:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","existing_deal_found":true,"existing_contact_id":"12168","existing_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-12 13:35:39"}
[2026-04-12 13:35:39] [INFO] DealController.save validated payments {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-12 13:35:39] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12168","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-12 13:35:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d199adc53d4.54626037","contact_didar_id":"12168","title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9146335212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی عسگری","existing_deal":"YES","existing_deal_id":"local_695d199adc53d4.54626037","existing_deal_status":"Pending","server_time":"2026-04-12 13:35:39","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-12 13:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:35:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-12 13:35:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:35:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:35:41] [INFO] Activity save request {"post_data":{"contact_id":"15497","deal_id":"local_69b5c4f0676861.47881458","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مجدد تماس عدم پاسخ ","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:35:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15497","note_was_empty":true}
[2026-04-12 13:35:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"15497","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:41] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-04-12 13:35:41] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-04-12 13:35:41] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-04-12 13:35:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b5c4f0676861.47881458","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:35:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6e7536e334.80904182","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6e7536e334.80904182"}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:41] [INFO] Updating virtual stage {"contact_id":"15497","stage_name":"deal_registered","force":false}
[2026-04-12 13:35:41] [INFO] Virtual stage successfully saved {"contact_id":"15497","stage_name":"deal_registered"}
[2026-04-12 13:35:41] [INFO] Virtual stage updated after activity save {"contact_id":"15497"}
[2026-04-12 13:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15497","person_id":"2872"}
[2026-04-12 13:35:45] [INFO] Checking activity reminders 
[2026-04-12 13:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:35:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:36:00] [INFO] Checking activity reminders 
[2026-04-12 13:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:02] [INFO] Checking activity reminders 
[2026-04-12 13:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:03] [INFO] Checking activity reminders 
[2026-04-12 13:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:36:19] [INFO] Checking activity reminders 
[2026-04-12 13:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:32] [INFO] Checking activity reminders 
[2026-04-12 13:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:33] [INFO] Checking activity reminders 
[2026-04-12 13:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:36:56] [INFO] Checking activity reminders 
[2026-04-12 13:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:02] [INFO] Checking activity reminders 
[2026-04-12 13:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:03] [INFO] Checking activity reminders 
[2026-04-12 13:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:32] [INFO] Checking activity reminders 
[2026-04-12 13:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:34] [INFO] Checking activity reminders 
[2026-04-12 13:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:43] [INFO] Checking activity reminders 
[2026-04-12 13:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:37:51] [INFO] Checking activity reminders 
[2026-04-12 13:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:38:02] [INFO] Checking activity reminders 
[2026-04-12 13:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:38:04] [INFO] Checking activity reminders 
[2026-04-12 13:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:38:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:38:35] [INFO] Checking activity reminders 
[2026-04-12 13:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:38:37] [INFO] Checking activity reminders 
[2026-04-12 13:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:05] [INFO] Checking activity reminders 
[2026-04-12 13:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:07] [INFO] Activity save request {"post_data":{"contact_id":"5381","deal_id":"local_69c7e9d396caa6.54005764","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"باشگاه بود ساعت 4 تماس ","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:39:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5381","note_was_empty":true}
[2026-04-12 13:39:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"5381","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Updating virtual stage {"contact_id":"5381","stage_name":"deal_registered","force":false}
[2026-04-12 13:39:07] [INFO] Virtual stage successfully saved {"contact_id":"5381","stage_name":"deal_registered"}
[2026-04-12 13:39:07] [INFO] Virtual stage updated after activity save {"contact_id":"5381"}
[2026-04-12 13:39:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7e9d396caa6.54005764","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 13:39:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db6f437e06a7.70558516","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69db6f437e06a7.70558516"}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Updating virtual stage {"contact_id":"5381","stage_name":"deal_registered","force":false}
[2026-04-12 13:39:07] [INFO] Virtual stage successfully saved {"contact_id":"5381","stage_name":"deal_registered"}
[2026-04-12 13:39:07] [INFO] Virtual stage updated after activity save {"contact_id":"5381"}
[2026-04-12 13:39:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5381","person_id":"13953"}
[2026-04-12 13:39:07] [INFO] Checking activity reminders 
[2026-04-12 13:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 13:39:32] [INFO] Checking activity reminders 
[2026-04-12 13:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:35] [INFO] Checking activity reminders 
[2026-04-12 13:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:54] [INFO] Checking activity reminders 
[2026-04-12 13:39:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:39:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:39:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 13:40:02] [INFO] Checking activity reminders 
[2026-04-12 13:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:40:05] [INFO] Checking activity reminders 
[2026-04-12 13:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:40:17] [INFO] Checking activity reminders 
[2026-04-12 13:40:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:40:32] [INFO] Checking activity reminders 
[2026-04-12 13:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:40:35] [INFO] Checking activity reminders 
[2026-04-12 13:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:40:47] [INFO] Checking activity reminders 
[2026-04-12 13:40:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:40:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:41:03] [INFO] Checking activity reminders 
[2026-04-12 13:41:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:41:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:41:05] [INFO] Checking activity reminders 
[2026-04-12 13:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:41:33] [INFO] Checking activity reminders 
[2026-04-12 13:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:41:36] [INFO] Checking activity reminders 
[2026-04-12 13:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:42:03] [INFO] Checking activity reminders 
[2026-04-12 13:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:42:07] [INFO] Checking activity reminders 
[2026-04-12 13:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:42:33] [INFO] Checking activity reminders 
[2026-04-12 13:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:42:37] [INFO] Checking activity reminders 
[2026-04-12 13:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:43:03] [INFO] Checking activity reminders 
[2026-04-12 13:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:43:07] [INFO] Checking activity reminders 
[2026-04-12 13:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:43:33] [INFO] Checking activity reminders 
[2026-04-12 13:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:43:37] [INFO] Checking activity reminders 
[2026-04-12 13:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:44:03] [INFO] Checking activity reminders 
[2026-04-12 13:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:44:07] [INFO] Checking activity reminders 
[2026-04-12 13:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:44:33] [INFO] Checking activity reminders 
[2026-04-12 13:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:44:37] [INFO] Checking activity reminders 
[2026-04-12 13:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:45:03] [INFO] Checking activity reminders 
[2026-04-12 13:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:45:07] [INFO] Checking activity reminders 
[2026-04-12 13:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:45:33] [INFO] Checking activity reminders 
[2026-04-12 13:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:45:37] [INFO] Checking activity reminders 
[2026-04-12 13:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:46:03] [INFO] Checking activity reminders 
[2026-04-12 13:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:46:08] [INFO] Checking activity reminders 
[2026-04-12 13:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:46:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15077","deal_id":"18426","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:46:20","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 13:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15077","is_new_deal":false}
[2026-04-12 13:46:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 13:46:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:46:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:46:20] [INFO] getContactPrimaryPhone called {"contact_id":"15077"}
[2026-04-12 13:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:20] [INFO] getContactPrimaryPhone result {"contact_id":"15077","person_found":true,"primary_phone":"9387711305"}
[2026-04-12 13:46:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387711305"}
[2026-04-12 13:46:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387711305","contact_id":"15077","deal_id":"18426","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:46:20"}
[2026-04-12 13:46:20] [INFO] DealController.save existing deal lookup {"deal_id":"18426","contact_id":"15077","existing_deal_found":true,"existing_contact_id":"15077","existing_title":"معامله مهدی سلیمی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:46:20"}
[2026-04-12 13:46:20] [INFO] DealController.save validated payments {"deal_id":"18426","contact_id":"15077","payments_count":4,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 13:46:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15077","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 13:46:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18426","contact_didar_id":"15077","title":"معامله مهدی سلیمی | کانال VIP با پشتیبانی","base_title_used":"معامله مهدی سلیمی","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی سلیمی","existing_deal":"YES","existing_deal_id":"18426","existing_deal_status":"Pending","server_time":"2026-04-12 13:46:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 13:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:20] [INFO] Deal success processed {"contact_id":"15077","person_name":"مهدی سلیمی","products_count":1}
[2026-04-12 13:46:20] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18426","product_ids":[23]}
[2026-04-12 13:46:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18426","contact_id":"15077","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله مهدی سلیمی | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 13:46:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:46:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:20] [INFO] Updating virtual stage {"contact_id":"15077","stage_name":"with_purchase","force":true}
[2026-04-12 13:46:20] [INFO] Virtual stage successfully saved {"contact_id":"15077","stage_name":"with_purchase"}
[2026-04-12 13:46:20] [INFO] Moved contact out of kariz after successful deal {"contact_id":"15077","deal_id":"18426","target_stage":"with_purchase"}
[2026-04-12 13:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:46:25] [INFO] generateDealTitle result {"contact_id":"15077","person_name":"مهدی سلیمی","mobile":"9387711305","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9387711305"}
[2026-04-12 13:46:33] [INFO] Checking activity reminders 
[2026-04-12 13:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:46:38] [INFO] Checking activity reminders 
[2026-04-12 13:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:47:01] [INFO] Checking activity reminders 
[2026-04-12 13:47:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:47:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:47:03] [INFO] Checking activity reminders 
[2026-04-12 13:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:47:08] [INFO] Checking activity reminders 
[2026-04-12 13:47:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:47:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:47:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"بودجه بندی","contact_id":"15077","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:47:28","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"15077","is_new_deal":true}
[2026-04-12 13:47:28] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-12 13:47:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-12 13:47:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-12 13:47:28] [INFO] getContactPrimaryPhone called {"contact_id":"15077"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [INFO] getContactPrimaryPhone result {"contact_id":"15077","person_found":true,"primary_phone":"9387711305"}
[2026-04-12 13:47:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9387711305"}
[2026-04-12 13:47:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9387711305","contact_id":"15077","deal_id":"","is_new_deal":true,"incoming_title":"بودجه بندی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:47:28"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [INFO] generateDealTitle result {"contact_id":"15077","person_name":"مهدی سلیمی","mobile":"9387711305","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9387711305"}
[2026-04-12 13:47:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15077","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 13:47:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15077","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 13:47:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15077","title":"معامله سوم 9387711305 | بودجه بندی","base_title_used":"معامله سوم 9387711305","services_text":"بودجه بندی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":7000000,"payment_amount":7000000,"payments_present":true,"requested_services":["بودجه بندی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی سلیمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 13:47:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [INFO] Deal success processed {"contact_id":"15077","person_name":"مهدی سلیمی","products_count":1}
[2026-04-12 13:47:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 13:47:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15077","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9387711305 | بودجه بندی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":7000000,"payment_amount":7000000,"server_time":"2026-04-12 13:47:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:28] [INFO] Updating virtual stage {"contact_id":"15077","stage_name":"with_purchase","force":true}
[2026-04-12 13:47:28] [INFO] Virtual stage successfully saved {"contact_id":"15077","stage_name":"with_purchase"}
[2026-04-12 13:47:28] [INFO] Moved contact out of kariz after successful deal {"contact_id":"15077","deal_id":"","target_stage":"with_purchase"}
[2026-04-12 13:47:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:34] [INFO] Checking activity reminders 
[2026-04-12 13:47:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:47:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:47:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15077","person_id":"6598"}
[2026-04-12 13:47:34] [INFO] generateDealTitle result {"contact_id":"15077","person_name":"مهدی سلیمی","mobile":"9387711305","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9387711305"}
[2026-04-12 13:47:38] [INFO] Checking activity reminders 
[2026-04-12 13:47:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:47:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:04] [INFO] Checking activity reminders 
[2026-04-12 13:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:04] [INFO] Checking activity reminders 
[2026-04-12 13:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:07] [INFO] Checking activity reminders 
[2026-04-12 13:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:08] [INFO] Checking activity reminders 
[2026-04-12 13:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:10] [INFO] Checking activity reminders 
[2026-04-12 13:48:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:27] [INFO] Checking activity reminders 
[2026-04-12 13:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:34] [INFO] Checking activity reminders 
[2026-04-12 13:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:48:57] [INFO] Checking activity reminders 
[2026-04-12 13:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:49:04] [INFO] Checking activity reminders 
[2026-04-12 13:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:49:27] [INFO] Checking activity reminders 
[2026-04-12 13:49:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:49:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:49:34] [INFO] Checking activity reminders 
[2026-04-12 13:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:49:45] [INFO] Checking activity reminders 
[2026-04-12 13:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:49:57] [INFO] Checking activity reminders 
[2026-04-12 13:49:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:49:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:50:04] [INFO] Checking activity reminders 
[2026-04-12 13:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:50:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21415","person_id":"2823"}
[2026-04-12 13:50:15] [INFO] Checking activity reminders 
[2026-04-12 13:50:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:50:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:50:18] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:50:18","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:18] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12168","is_new_deal":false}
[2026-04-12 13:50:18] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:18] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:18] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:18] [INFO] getContactPrimaryPhone called {"contact_id":"12168"}
[2026-04-12 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:18] [INFO] getContactPrimaryPhone result {"contact_id":"12168","person_found":true,"primary_phone":"9146335212"}
[2026-04-12 13:50:18] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146335212"}
[2026-04-12 13:50:18] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146335212","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:50:18"}
[2026-04-12 13:50:18] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","existing_deal_found":true,"existing_contact_id":"12168","existing_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:50:18"}
[2026-04-12 13:50:18] [INFO] DealController.save validated payments {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-12 13:50:18] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12168","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 13:50:18] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d199adc53d4.54626037","contact_didar_id":"12168","title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9146335212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی عسگری","existing_deal":"YES","existing_deal_id":"local_695d199adc53d4.54626037","existing_deal_status":"Pending","server_time":"2026-04-12 13:50:18","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:18] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 13:50:18","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:50:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 13:50:26","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12168","is_new_deal":false}
[2026-04-12 13:50:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 13:50:27] [INFO] getContactPrimaryPhone called {"contact_id":"12168"}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:27] [INFO] getContactPrimaryPhone result {"contact_id":"12168","person_found":true,"primary_phone":"9146335212"}
[2026-04-12 13:50:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9146335212"}
[2026-04-12 13:50:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9146335212","contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:50:27"}
[2026-04-12 13:50:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","existing_deal_found":true,"existing_contact_id":"12168","existing_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 13:50:27"}
[2026-04-12 13:50:27] [INFO] DealController.save validated payments {"deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 13:50:27] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12168","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 13:50:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695d199adc53d4.54626037","contact_didar_id":"12168","title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9146335212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مصطفی عسگری","existing_deal":"YES","existing_deal_id":"local_695d199adc53d4.54626037","existing_deal_status":"Pending","server_time":"2026-04-12 13:50:27","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:27] [INFO] Deal success processed {"contact_id":"12168","person_name":"مصطفی عسگری","products_count":1}
[2026-04-12 13:50:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695d199adc53d4.54626037","contact_id":"12168","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9146335212 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 13:50:27","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:27] [INFO] Updating virtual stage {"contact_id":"12168","stage_name":"with_purchase","force":true}
[2026-04-12 13:50:27] [INFO] Virtual stage successfully saved {"contact_id":"12168","stage_name":"with_purchase"}
[2026-04-12 13:50:27] [INFO] Moved contact out of kariz after successful deal {"contact_id":"12168","deal_id":"local_695d199adc53d4.54626037","target_stage":"with_purchase"}
[2026-04-12 13:50:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:28] [INFO] Checking activity reminders 
[2026-04-12 13:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:50:34] [INFO] Checking activity reminders 
[2026-04-12 13:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:50:57] [INFO] Activity save request {"post_data":{"contact_id":"12168","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"چک 69 میلیونی عودت \/ برای خانم افراش \r\nعکس چک در میزیتو ارسال شد ","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 13:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 13:50:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 13:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12168","note_was_empty":true}
[2026-04-12 13:50:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"12168","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 13:50:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db7209757e99.10797062","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 13:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69db7209757e99.10797062"}
[2026-04-12 13:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:57] [INFO] Updating virtual stage {"contact_id":"12168","stage_name":"with_purchase","force":false}
[2026-04-12 13:50:57] [INFO] Virtual stage successfully saved {"contact_id":"12168","stage_name":"with_purchase"}
[2026-04-12 13:50:57] [INFO] Virtual stage updated after activity save {"contact_id":"12168"}
[2026-04-12 13:50:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12168","person_id":"18146"}
[2026-04-12 13:50:58] [INFO] Checking activity reminders 
[2026-04-12 13:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:51:04] [INFO] Checking activity reminders 
[2026-04-12 13:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:51:28] [INFO] Checking activity reminders 
[2026-04-12 13:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:51:34] [INFO] Checking activity reminders 
[2026-04-12 13:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:51:59] [INFO] Checking activity reminders 
[2026-04-12 13:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:52:04] [INFO] Checking activity reminders 
[2026-04-12 13:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:52:11] [INFO] Checking activity reminders 
[2026-04-12 13:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:52:29] [INFO] Checking activity reminders 
[2026-04-12 13:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:52:34] [INFO] Checking activity reminders 
[2026-04-12 13:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:53:00] [INFO] Checking activity reminders 
[2026-04-12 13:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:53:04] [INFO] Checking activity reminders 
[2026-04-12 13:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:53:30] [INFO] Checking activity reminders 
[2026-04-12 13:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:53:34] [INFO] Checking activity reminders 
[2026-04-12 13:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:54:00] [INFO] Checking activity reminders 
[2026-04-12 13:54:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:54:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:54:04] [INFO] Checking activity reminders 
[2026-04-12 13:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:54:31] [INFO] Checking activity reminders 
[2026-04-12 13:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:54:34] [INFO] Checking activity reminders 
[2026-04-12 13:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:55:01] [INFO] Checking activity reminders 
[2026-04-12 13:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:55:05] [INFO] Checking activity reminders 
[2026-04-12 13:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:55:31] [INFO] Checking activity reminders 
[2026-04-12 13:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:55:35] [INFO] Checking activity reminders 
[2026-04-12 13:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:56:01] [INFO] Checking activity reminders 
[2026-04-12 13:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:56:05] [INFO] Checking activity reminders 
[2026-04-12 13:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:56:31] [INFO] Checking activity reminders 
[2026-04-12 13:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:56:35] [INFO] Checking activity reminders 
[2026-04-12 13:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:57:01] [INFO] Checking activity reminders 
[2026-04-12 13:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:57:05] [INFO] Checking activity reminders 
[2026-04-12 13:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:57:32] [INFO] Checking activity reminders 
[2026-04-12 13:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:57:35] [INFO] Checking activity reminders 
[2026-04-12 13:57:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:57:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:58:02] [INFO] Checking activity reminders 
[2026-04-12 13:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:58:05] [INFO] Checking activity reminders 
[2026-04-12 13:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:58:32] [INFO] Checking activity reminders 
[2026-04-12 13:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:58:35] [INFO] Checking activity reminders 
[2026-04-12 13:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:59:02] [INFO] Checking activity reminders 
[2026-04-12 13:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:59:05] [INFO] Checking activity reminders 
[2026-04-12 13:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:59:33] [INFO] Checking activity reminders 
[2026-04-12 13:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 13:59:35] [INFO] Checking activity reminders 
[2026-04-12 13:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 13:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:00:03] [INFO] Checking activity reminders 
[2026-04-12 14:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:00:05] [INFO] Checking activity reminders 
[2026-04-12 14:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:00:33] [INFO] Checking activity reminders 
[2026-04-12 14:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:00:35] [INFO] Checking activity reminders 
[2026-04-12 14:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:01:03] [INFO] Checking activity reminders 
[2026-04-12 14:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:01:05] [INFO] Checking activity reminders 
[2026-04-12 14:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:01:34] [INFO] Checking activity reminders 
[2026-04-12 14:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:01:35] [INFO] Checking activity reminders 
[2026-04-12 14:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:02:04] [INFO] Checking activity reminders 
[2026-04-12 14:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:02:05] [INFO] Checking activity reminders 
[2026-04-12 14:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:02:34] [INFO] Checking activity reminders 
[2026-04-12 14:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:02:36] [INFO] Checking activity reminders 
[2026-04-12 14:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:03:05] [INFO] Checking activity reminders 
[2026-04-12 14:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:03:06] [INFO] Checking activity reminders 
[2026-04-12 14:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:03:35] [INFO] Checking activity reminders 
[2026-04-12 14:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:03:36] [INFO] Checking activity reminders 
[2026-04-12 14:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:03:50] [INFO] Activity save request {"post_data":{"contact_id":"local_69da71a826f6a2.47991842","deal_id":"local_69da71a8333a5","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میبد یزد \/ کارمند فولاد \/ کارشناسی میخواد \r\nحمید شریف الدینی شوروتی \r\nکد ملی : 4480071156\r\nتاریخ تولد : 1373\/3\/16\r\nارسال ش کارت 15ت امرزو بزنه تخفیف استفاده کنه \r\nخیلی سوال میکنه \/ ","activity_duration":"25","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 14:03:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69da71a826f6a2.47991842","note_was_empty":true}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:50] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered","force":false}
[2026-04-12 14:03:50] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered"}
[2026-04-12 14:03:50] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-12 14:03:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69da71a8333a5","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 14:03:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db750e372dc7.10595107","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69db750e372dc7.10595107"}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:50] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered","force":false}
[2026-04-12 14:03:50] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered"}
[2026-04-12 14:03:50] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-12 14:03:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-12 14:03:56] [INFO] Checking activity reminders 
[2026-04-12 14:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:05] [INFO] Checking activity reminders 
[2026-04-12 14:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:26] [INFO] Checking activity reminders 
[2026-04-12 14:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:35] [INFO] Checking activity reminders 
[2026-04-12 14:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:48] [INFO] Checking activity reminders 
[2026-04-12 14:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:50] [INFO] Checking activity reminders 
[2026-04-12 14:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:53] [INFO] Checking activity reminders 
[2026-04-12 14:04:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:55] [INFO] Checking activity reminders 
[2026-04-12 14:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:04:57] [INFO] Checking activity reminders 
[2026-04-12 14:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:05:25] [INFO] Checking activity reminders 
[2026-04-12 14:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:05:27] [INFO] Checking activity reminders 
[2026-04-12 14:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:05:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 14:05:55] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 14:05:57] [INFO] Checking activity reminders 
[2026-04-12 14:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:06:25] [INFO] Checking activity reminders 
[2026-04-12 14:06:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:06:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:06:27] [INFO] Checking activity reminders 
[2026-04-12 14:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:06:56] [INFO] Checking activity reminders 
[2026-04-12 14:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:06:57] [INFO] Checking activity reminders 
[2026-04-12 14:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:07:26] [INFO] Checking activity reminders 
[2026-04-12 14:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:07:27] [INFO] Checking activity reminders 
[2026-04-12 14:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:07:57] [INFO] Checking activity reminders 
[2026-04-12 14:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:08:02] [INFO] Checking activity reminders 
[2026-04-12 14:08:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:08:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:08:27] [INFO] Checking activity reminders 
[2026-04-12 14:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:08:32] [INFO] Checking activity reminders 
[2026-04-12 14:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:08:57] [INFO] Checking activity reminders 
[2026-04-12 14:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:09:03] [INFO] Checking activity reminders 
[2026-04-12 14:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:09:27] [INFO] Checking activity reminders 
[2026-04-12 14:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:09:33] [INFO] Checking activity reminders 
[2026-04-12 14:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:09:57] [INFO] Checking activity reminders 
[2026-04-12 14:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:10:03] [INFO] Checking activity reminders 
[2026-04-12 14:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:10:27] [INFO] Checking activity reminders 
[2026-04-12 14:10:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:10:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:10:33] [INFO] Checking activity reminders 
[2026-04-12 14:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:10:58] [INFO] Checking activity reminders 
[2026-04-12 14:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:11:03] [INFO] Checking activity reminders 
[2026-04-12 14:11:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:11:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:11:28] [INFO] Checking activity reminders 
[2026-04-12 14:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:11:33] [INFO] Checking activity reminders 
[2026-04-12 14:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:11:58] [INFO] Checking activity reminders 
[2026-04-12 14:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:12:03] [INFO] Checking activity reminders 
[2026-04-12 14:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:12:28] [INFO] Checking activity reminders 
[2026-04-12 14:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:12:33] [INFO] Checking activity reminders 
[2026-04-12 14:12:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:12:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:12:58] [INFO] Checking activity reminders 
[2026-04-12 14:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:13:03] [INFO] Checking activity reminders 
[2026-04-12 14:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:13:29] [INFO] Checking activity reminders 
[2026-04-12 14:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:13:33] [INFO] Checking activity reminders 
[2026-04-12 14:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:13:59] [INFO] Checking activity reminders 
[2026-04-12 14:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:14:29] [INFO] Checking activity reminders 
[2026-04-12 14:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:14:59] [INFO] Checking activity reminders 
[2026-04-12 14:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:15:29] [INFO] Checking activity reminders 
[2026-04-12 14:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:15:59] [INFO] Checking activity reminders 
[2026-04-12 14:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:16:29] [INFO] Checking activity reminders 
[2026-04-12 14:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:17:00] [INFO] Checking activity reminders 
[2026-04-12 14:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:17:17] [INFO] Checking activity reminders 
[2026-04-12 14:17:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:17:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:17:30] [INFO] Checking activity reminders 
[2026-04-12 14:17:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:17:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:18:00] [INFO] Checking activity reminders 
[2026-04-12 14:18:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:18:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:18:30] [INFO] Checking activity reminders 
[2026-04-12 14:18:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:18:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:19:00] [INFO] Checking activity reminders 
[2026-04-12 14:19:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:19:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:19:30] [INFO] Checking activity reminders 
[2026-04-12 14:19:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:19:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:20:00] [INFO] Checking activity reminders 
[2026-04-12 14:20:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:20:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:20:30] [INFO] Checking activity reminders 
[2026-04-12 14:20:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:20:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:21:00] [INFO] Checking activity reminders 
[2026-04-12 14:21:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:21:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:21:31] [INFO] Checking activity reminders 
[2026-04-12 14:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:21:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-12 14:21:49] [INFO] Checking activity reminders 
[2026-04-12 14:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:22:20] [INFO] Checking activity reminders 
[2026-04-12 14:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:22:50] [INFO] Checking activity reminders 
[2026-04-12 14:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:23:20] [INFO] Checking activity reminders 
[2026-04-12 14:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:23:50] [INFO] Checking activity reminders 
[2026-04-12 14:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:24:20] [INFO] Checking activity reminders 
[2026-04-12 14:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:24:51] [INFO] Checking activity reminders 
[2026-04-12 14:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:25:21] [INFO] Checking activity reminders 
[2026-04-12 14:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:25:51] [INFO] Checking activity reminders 
[2026-04-12 14:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:26:21] [INFO] Checking activity reminders 
[2026-04-12 14:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:26:49] [INFO] Checking activity reminders 
[2026-04-12 14:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:26:51] [INFO] Checking activity reminders 
[2026-04-12 14:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:27:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 14:27:19] [INFO] Checking activity reminders 
[2026-04-12 14:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:27:21] [INFO] Checking activity reminders 
[2026-04-12 14:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:27:49] [INFO] Checking activity reminders 
[2026-04-12 14:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:27:51] [INFO] Checking activity reminders 
[2026-04-12 14:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:28:20] [INFO] Checking activity reminders 
[2026-04-12 14:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:28:21] [INFO] Checking activity reminders 
[2026-04-12 14:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:28:50] [INFO] Checking activity reminders 
[2026-04-12 14:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:28:52] [INFO] Checking activity reminders 
[2026-04-12 14:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:29:20] [INFO] Checking activity reminders 
[2026-04-12 14:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:29:22] [INFO] Checking activity reminders 
[2026-04-12 14:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:29:51] [INFO] Checking activity reminders 
[2026-04-12 14:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:29:52] [INFO] Checking activity reminders 
[2026-04-12 14:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:30:21] [INFO] Checking activity reminders 
[2026-04-12 14:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:30:22] [INFO] Checking activity reminders 
[2026-04-12 14:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:30:51] [INFO] Checking activity reminders 
[2026-04-12 14:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:30:53] [INFO] Checking activity reminders 
[2026-04-12 14:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:31:22] [INFO] Checking activity reminders 
[2026-04-12 14:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:31:24] [INFO] Checking activity reminders 
[2026-04-12 14:31:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:31:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:31:52] [INFO] Checking activity reminders 
[2026-04-12 14:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:32:22] [INFO] Checking activity reminders 
[2026-04-12 14:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:32:52] [INFO] Checking activity reminders 
[2026-04-12 14:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:33:23] [INFO] Checking activity reminders 
[2026-04-12 14:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:33:53] [INFO] Checking activity reminders 
[2026-04-12 14:33:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:33:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:34:23] [INFO] Checking activity reminders 
[2026-04-12 14:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:34:54] [INFO] Checking activity reminders 
[2026-04-12 14:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:35:25] [INFO] Checking activity reminders 
[2026-04-12 14:35:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:35:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:35:56] [INFO] Checking activity reminders 
[2026-04-12 14:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:36:26] [INFO] Checking activity reminders 
[2026-04-12 14:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:36:56] [INFO] Checking activity reminders 
[2026-04-12 14:36:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:36:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:37:26] [INFO] Checking activity reminders 
[2026-04-12 14:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:37:56] [INFO] Checking activity reminders 
[2026-04-12 14:37:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:37:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:38:26] [INFO] Checking activity reminders 
[2026-04-12 14:38:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:38:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:38:57] [INFO] Checking activity reminders 
[2026-04-12 14:38:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:38:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:39:27] [INFO] Checking activity reminders 
[2026-04-12 14:39:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:39:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:39:57] [INFO] Checking activity reminders 
[2026-04-12 14:39:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:39:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:40:27] [INFO] Checking activity reminders 
[2026-04-12 14:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:40:58] [INFO] Checking activity reminders 
[2026-04-12 14:40:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:40:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:41:28] [INFO] Checking activity reminders 
[2026-04-12 14:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:41:59] [INFO] Checking activity reminders 
[2026-04-12 14:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:42:29] [INFO] Checking activity reminders 
[2026-04-12 14:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:42:59] [INFO] Checking activity reminders 
[2026-04-12 14:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:43:29] [INFO] Checking activity reminders 
[2026-04-12 14:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:43:59] [INFO] Checking activity reminders 
[2026-04-12 14:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:44:30] [INFO] Checking activity reminders 
[2026-04-12 14:44:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:44:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:45:00] [INFO] Checking activity reminders 
[2026-04-12 14:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:45:30] [INFO] Checking activity reminders 
[2026-04-12 14:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:46:00] [INFO] Checking activity reminders 
[2026-04-12 14:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:46:30] [INFO] Checking activity reminders 
[2026-04-12 14:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:47:02] [INFO] Checking activity reminders 
[2026-04-12 14:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:47:32] [INFO] Checking activity reminders 
[2026-04-12 14:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:48:02] [INFO] Checking activity reminders 
[2026-04-12 14:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:48:32] [INFO] Checking activity reminders 
[2026-04-12 14:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:49:03] [INFO] Checking activity reminders 
[2026-04-12 14:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:49:33] [INFO] Checking activity reminders 
[2026-04-12 14:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:50:03] [INFO] Checking activity reminders 
[2026-04-12 14:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:50:33] [INFO] Checking activity reminders 
[2026-04-12 14:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:51:04] [INFO] Checking activity reminders 
[2026-04-12 14:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:51:34] [INFO] Checking activity reminders 
[2026-04-12 14:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:52:05] [INFO] Checking activity reminders 
[2026-04-12 14:52:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:52:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:52:35] [INFO] Checking activity reminders 
[2026-04-12 14:52:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:52:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:53:05] [INFO] Checking activity reminders 
[2026-04-12 14:53:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:53:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:53:35] [INFO] Checking activity reminders 
[2026-04-12 14:53:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:53:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:54:06] [INFO] Checking activity reminders 
[2026-04-12 14:54:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:54:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:54:36] [INFO] Checking activity reminders 
[2026-04-12 14:54:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:54:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:55:10] [INFO] Checking activity reminders 
[2026-04-12 14:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:55:32] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-12 14:55:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 14:55:40] [INFO] Checking activity reminders 
[2026-04-12 14:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:56:02] [INFO] Checking activity reminders 
[2026-04-12 14:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:56:10] [INFO] Checking activity reminders 
[2026-04-12 14:56:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:56:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:56:32] [INFO] Checking activity reminders 
[2026-04-12 14:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:56:40] [INFO] Checking activity reminders 
[2026-04-12 14:56:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:56:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:57:10] [INFO] Checking activity reminders 
[2026-04-12 14:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:57:40] [INFO] Checking activity reminders 
[2026-04-12 14:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:58:10] [INFO] Checking activity reminders 
[2026-04-12 14:58:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:58:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:58:39] [INFO] Checking activity reminders 
[2026-04-12 14:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:58:40] [INFO] Checking activity reminders 
[2026-04-12 14:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:59:09] [INFO] Checking activity reminders 
[2026-04-12 14:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:59:11] [INFO] Checking activity reminders 
[2026-04-12 14:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:59:39] [INFO] Checking activity reminders 
[2026-04-12 14:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 14:59:41] [INFO] Checking activity reminders 
[2026-04-12 14:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 14:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:00:09] [INFO] Checking activity reminders 
[2026-04-12 15:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:00:11] [INFO] Checking activity reminders 
[2026-04-12 15:00:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:00:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:00:39] [INFO] Checking activity reminders 
[2026-04-12 15:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:00:41] [INFO] Checking activity reminders 
[2026-04-12 15:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:01:09] [INFO] Checking activity reminders 
[2026-04-12 15:01:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:01:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:01:11] [INFO] Checking activity reminders 
[2026-04-12 15:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:01:39] [INFO] Checking activity reminders 
[2026-04-12 15:01:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:01:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:01:41] [INFO] Checking activity reminders 
[2026-04-12 15:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:02:09] [INFO] Checking activity reminders 
[2026-04-12 15:02:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:02:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:02:11] [INFO] Checking activity reminders 
[2026-04-12 15:02:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:02:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:02:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:02:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:02:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:02:39] [INFO] Checking activity reminders 
[2026-04-12 15:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:02:46] [INFO] Checking activity reminders 
[2026-04-12 15:02:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:02:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:03:09] [INFO] Checking activity reminders 
[2026-04-12 15:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:03:09] [INFO] Checking activity reminders 
[2026-04-12 15:03:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:03:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:03:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:03:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:03:27] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:03:38] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:03:38] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:03:38] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:03:39] [INFO] Checking activity reminders 
[2026-04-12 15:03:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:03:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:03:40] [INFO] Checking activity reminders 
[2026-04-12 15:03:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:03:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:03:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:03:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:03:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:04:10] [INFO] Checking activity reminders 
[2026-04-12 15:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:04:10] [INFO] Checking activity reminders 
[2026-04-12 15:04:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:04:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:04:40] [INFO] Checking activity reminders 
[2026-04-12 15:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:04:40] [INFO] Checking activity reminders 
[2026-04-12 15:04:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:04:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:04:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:04:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:04:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:05:10] [INFO] Checking activity reminders 
[2026-04-12 15:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:05:10] [INFO] Checking activity reminders 
[2026-04-12 15:05:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:05:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:05:40] [INFO] Checking activity reminders 
[2026-04-12 15:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:05:40] [INFO] Checking activity reminders 
[2026-04-12 15:05:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:05:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:06:10] [INFO] Checking activity reminders 
[2026-04-12 15:06:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:06:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:06:40] [INFO] Checking activity reminders 
[2026-04-12 15:06:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:06:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:07:03] [INFO] Checking activity reminders 
[2026-04-12 15:07:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:07:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:07:10] [INFO] Checking activity reminders 
[2026-04-12 15:07:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:07:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:07:40] [INFO] Checking activity reminders 
[2026-04-12 15:07:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:07:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:08:10] [INFO] Checking activity reminders 
[2026-04-12 15:08:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:08:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:08:40] [INFO] Checking activity reminders 
[2026-04-12 15:08:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:08:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:09:10] [INFO] Checking activity reminders 
[2026-04-12 15:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:09:41] [INFO] Checking activity reminders 
[2026-04-12 15:09:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:09:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:09:41] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:09:41] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:09:41] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:10:11] [INFO] Checking activity reminders 
[2026-04-12 15:10:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:10:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:10:41] [INFO] Checking activity reminders 
[2026-04-12 15:10:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:10:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:11:11] [INFO] Checking activity reminders 
[2026-04-12 15:11:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:11:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:11:41] [INFO] Checking activity reminders 
[2026-04-12 15:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"save_activity"}
[2026-04-12 15:11:42] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:44] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:50] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:50] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"check_reminders"}
[2026-04-12 15:11:50] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:52] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:56] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:11:56] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 15:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:00] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 15:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:08] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:08] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:08] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 15:12:08] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:08] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_deals"}
[2026-04-12 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:09] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:11] [INFO] Checking activity reminders 
[2026-04-12 15:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:12:12] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:12] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:12] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-12 15:12:12] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:21] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:25] [WARNING] Auth check failed - not authenticated {"session_id":"shj0gdadl05ddggcbvja28msuo","session_keys":[],"action":"log_client_event"}
[2026-04-12 15:12:26] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-12 15:12:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 15:12:29] [INFO] Checking activity reminders 
[2026-04-12 15:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:12:41] [INFO] Checking activity reminders 
[2026-04-12 15:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:12:41] [INFO] Activity save request {"post_data":{"contact_id":"2078","deal_id":"local_69d695612b3f22.02031521","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nقطع کرد و بعد هم ریجکت ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:12:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2078","note_was_empty":true}
[2026-04-12 15:12:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"2078","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:41] [INFO] Updating virtual stage {"contact_id":"2078","stage_name":"deal_registered","force":false}
[2026-04-12 15:12:41] [INFO] Virtual stage successfully saved {"contact_id":"2078","stage_name":"deal_registered"}
[2026-04-12 15:12:41] [INFO] Virtual stage updated after activity save {"contact_id":"2078"}
[2026-04-12 15:12:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d695612b3f22.02031521","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:12:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db8531f0b893.09763885","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69db8531f0b893.09763885"}
[2026-04-12 15:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:41] [INFO] Updating virtual stage {"contact_id":"2078","stage_name":"deal_registered","force":false}
[2026-04-12 15:12:41] [INFO] Virtual stage successfully saved {"contact_id":"2078","stage_name":"deal_registered"}
[2026-04-12 15:12:41] [INFO] Virtual stage updated after activity save {"contact_id":"2078"}
[2026-04-12 15:12:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2078","person_id":"17486"}
[2026-04-12 15:12:58] [INFO] Checking activity reminders 
[2026-04-12 15:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:13:11] [INFO] Checking activity reminders 
[2026-04-12 15:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:13:41] [INFO] Checking activity reminders 
[2026-04-12 15:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:13:55] [INFO] Checking activity reminders 
[2026-04-12 15:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:14:02] [INFO] Checking activity reminders 
[2026-04-12 15:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:14:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:11] [INFO] Checking activity reminders 
[2026-04-12 15:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:14:27] [INFO] Activity save request {"post_data":{"contact_id":"9112","deal_id":"local_69d224b65a5116.94553415","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\n","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:14:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9112","note_was_empty":true}
[2026-04-12 15:14:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"9112","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:27] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-12 15:14:27] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-12 15:14:27] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-12 15:14:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224b65a5116.94553415","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:14:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db859b1b31c2.11398023","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69db859b1b31c2.11398023"}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:27] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-12 15:14:27] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-12 15:14:27] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-12 15:14:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 15:14:32] [INFO] Checking activity reminders 
[2026-04-12 15:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:14:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:41] [INFO] Checking activity reminders 
[2026-04-12 15:14:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:14:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:14:44] [INFO] Activity save request {"post_data":{"contact_id":"20971","deal_id":"local_69d4a8b07a4067.06131327","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:14:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20971","note_was_empty":true}
[2026-04-12 15:14:44] [INFO] Didar write disabled; saving activity locally {"contact_id":"20971","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:44] [INFO] Updating virtual stage {"contact_id":"20971","stage_name":"deal_registered","force":false}
[2026-04-12 15:14:44] [INFO] Virtual stage successfully saved {"contact_id":"20971","stage_name":"deal_registered"}
[2026-04-12 15:14:44] [INFO] Virtual stage updated after activity save {"contact_id":"20971"}
[2026-04-12 15:14:44] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4a8b07a4067.06131327","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:14:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db85ac856679.18203073","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69db85ac856679.18203073"}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:44] [INFO] Updating virtual stage {"contact_id":"20971","stage_name":"deal_registered","force":false}
[2026-04-12 15:14:44] [INFO] Virtual stage successfully saved {"contact_id":"20971","stage_name":"deal_registered"}
[2026-04-12 15:14:44] [INFO] Virtual stage updated after activity save {"contact_id":"20971"}
[2026-04-12 15:14:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20971","person_id":"18170"}
[2026-04-12 15:14:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:15:02] [INFO] Checking activity reminders 
[2026-04-12 15:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:15:29] [INFO] Checking activity reminders 
[2026-04-12 15:15:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:15:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:15:59] [INFO] Checking activity reminders 
[2026-04-12 15:15:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:15:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:16:29] [INFO] Checking activity reminders 
[2026-04-12 15:16:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:16:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:16:59] [INFO] Checking activity reminders 
[2026-04-12 15:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:17:29] [INFO] Checking activity reminders 
[2026-04-12 15:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:17:33] [INFO] Checking activity reminders 
[2026-04-12 15:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:17:35] [INFO] Checking activity reminders 
[2026-04-12 15:17:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:17:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:17:36] [INFO] Checking activity reminders 
[2026-04-12 15:17:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:17:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:17:37] [INFO] Checking activity reminders 
[2026-04-12 15:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:18:01] [INFO] Checking activity reminders 
[2026-04-12 15:18:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:18:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:18:07] [INFO] Checking activity reminders 
[2026-04-12 15:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:18:15] [INFO] Activity save request {"post_data":{"contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا حساب هاش مسدود \r\nخیلی دوست داره در کانال باشه \r\nچک برگشتی داره \r\nمجدد پیگیری ","activity_duration":"2","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:18:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20964","note_was_empty":true}
[2026-04-12 15:18:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"20964","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:15] [INFO] Updating virtual stage {"contact_id":"20964","stage_name":"deal_registered","force":false}
[2026-04-12 15:18:15] [INFO] Virtual stage successfully saved {"contact_id":"20964","stage_name":"deal_registered"}
[2026-04-12 15:18:15] [INFO] Virtual stage updated after activity save {"contact_id":"20964"}
[2026-04-12 15:18:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20f919ca7c5.52921816","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:18:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db867f7821e0.78126273","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69db867f7821e0.78126273"}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:15] [INFO] Updating virtual stage {"contact_id":"20964","stage_name":"deal_registered","force":false}
[2026-04-12 15:18:15] [INFO] Virtual stage successfully saved {"contact_id":"20964","stage_name":"deal_registered"}
[2026-04-12 15:18:15] [INFO] Virtual stage updated after activity save {"contact_id":"20964"}
[2026-04-12 15:18:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7779","person_id":"14337"}
[2026-04-12 15:18:31] [INFO] Checking activity reminders 
[2026-04-12 15:18:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:18:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:18:38] [INFO] Checking activity reminders 
[2026-04-12 15:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:18:52] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبانی","contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:18:52","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:52] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبانی","contact_id":"20964","is_new_deal":false}
[2026-04-12 15:18:52] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبانی"}
[2026-04-12 15:18:52] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-04-12 15:18:52] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبانی"}
[2026-04-12 15:18:52] [INFO] getContactPrimaryPhone called {"contact_id":"20964"}
[2026-04-12 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:52] [INFO] getContactPrimaryPhone result {"contact_id":"20964","person_found":true,"primary_phone":"9133748289"}
[2026-04-12 15:18:52] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133748289"}
[2026-04-12 15:18:52] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133748289","contact_id":"20964","deal_id":"local_69d20f919ca7c5.52921816","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:18:52"}
[2026-04-12 15:18:52] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","existing_deal_found":true,"existing_contact_id":"20964","existing_title":"معامله دوم 9133748289 | کانال VIP بدون پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:18:52"}
[2026-04-12 15:18:52] [INFO] DealController.save validated payments {"deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 15:18:52] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20964","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:18:52] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f919ca7c5.52921816","contact_didar_id":"20964","title":"معامله دوم 9133748289 | کانال VIP بدون پشتیبانی","base_title_used":"معامله دوم 9133748289","services_text":"کانال VIP بدون پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن گل افتاب","existing_deal":"YES","existing_deal_id":"local_69d20f919ca7c5.52921816","existing_deal_status":"Pending","server_time":"2026-04-12 15:18:52","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:18:52] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f919ca7c5.52921816","contact_id":"20964","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9133748289 | کانال VIP بدون پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-12 15:18:52","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:18:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20964","person_id":"16770"}
[2026-04-12 15:19:01] [INFO] Checking activity reminders 
[2026-04-12 15:19:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:19:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:19:08] [INFO] Checking activity reminders 
[2026-04-12 15:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:19:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:22] [INFO] generateDealTitle result {"contact_id":"11719","person_name":"منوچهری","mobile":"9124961374","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124961374"}
[2026-04-12 15:19:31] [INFO] Checking activity reminders 
[2026-04-12 15:19:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:19:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:19:38] [INFO] Checking activity reminders 
[2026-04-12 15:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:19:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11719","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:19:44","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11719","is_new_deal":true}
[2026-04-12 15:19:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:19:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:19:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:19:44] [INFO] getContactPrimaryPhone called {"contact_id":"11719"}
[2026-04-12 15:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:44] [INFO] getContactPrimaryPhone result {"contact_id":"11719","person_found":true,"primary_phone":"9124961374"}
[2026-04-12 15:19:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124961374"}
[2026-04-12 15:19:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124961374","contact_id":"11719","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:19:44"}
[2026-04-12 15:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:44] [INFO] generateDealTitle result {"contact_id":"11719","person_name":"منوچهری","mobile":"9124961374","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9124961374"}
[2026-04-12 15:19:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"11719","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-12 15:19:44] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11719","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:19:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"11719","title":"معامله دوم 9124961374 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9124961374","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"منوچهری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 15:19:44","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:19:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:19:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 15:19:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"11719","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9124961374 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-12 15:19:44","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:20:01] [INFO] Checking activity reminders 
[2026-04-12 15:20:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:20:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:20:08] [INFO] Checking activity reminders 
[2026-04-12 15:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:20:31] [INFO] Checking activity reminders 
[2026-04-12 15:20:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:20:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:20:38] [INFO] Checking activity reminders 
[2026-04-12 15:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:21:01] [INFO] Checking activity reminders 
[2026-04-12 15:21:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:21:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:21:09] [INFO] Checking activity reminders 
[2026-04-12 15:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:21:31] [INFO] Checking activity reminders 
[2026-04-12 15:21:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:21:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:21:39] [INFO] Checking activity reminders 
[2026-04-12 15:21:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:21:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:22:01] [INFO] Checking activity reminders 
[2026-04-12 15:22:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:22:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:22:10] [INFO] Checking activity reminders 
[2026-04-12 15:22:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:22:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:22:31] [INFO] Checking activity reminders 
[2026-04-12 15:22:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:22:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:22:40] [INFO] Checking activity reminders 
[2026-04-12 15:22:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:22:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:22:50] [INFO] Activity save request {"post_data":{"contact_id":"11719","deal_id":"local_69db86d8dc6b82.46383571","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خانمش بارداره \/ هزینه هاش بالاست \r\nمیگه دوست دارم تو کانال باشم ولی چالش مالی دارم و هزینه هام بالاست \r\nپرزنت 6 ماهه \r\nارسال شماره کارت \/ بیعانه واریز رزرو \r\nبعد از تسویه وارد کانال بشه ","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:22:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:22:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:22:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11719","note_was_empty":true}
[2026-04-12 15:22:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"11719","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:22:50] [INFO] Updating virtual stage {"contact_id":"11719","stage_name":"deal_registered","force":false}
[2026-04-12 15:22:50] [INFO] Virtual stage successfully saved {"contact_id":"11719","stage_name":"deal_registered"}
[2026-04-12 15:22:50] [INFO] Virtual stage updated after activity save {"contact_id":"11719"}
[2026-04-12 15:22:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69db86d8dc6b82.46383571","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:22:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db8792ab0889.74775143","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:22:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69db8792ab0889.74775143"}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:22:50] [INFO] Updating virtual stage {"contact_id":"11719","stage_name":"deal_registered","force":false}
[2026-04-12 15:22:50] [INFO] Virtual stage successfully saved {"contact_id":"11719","stage_name":"deal_registered"}
[2026-04-12 15:22:50] [INFO] Virtual stage updated after activity save {"contact_id":"11719"}
[2026-04-12 15:22:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11719","person_id":"18558"}
[2026-04-12 15:23:01] [INFO] Checking activity reminders 
[2026-04-12 15:23:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:23:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:23:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:23:10] [INFO] Checking activity reminders 
[2026-04-12 15:23:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:23:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:23:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:23:15] [INFO] generateDealTitle result {"contact_id":"1888","person_name":"حسین محمدیان","mobile":"9125905003","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125905003"}
[2026-04-12 15:23:32] [INFO] Checking activity reminders 
[2026-04-12 15:23:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:23:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:23:40] [INFO] Checking activity reminders 
[2026-04-12 15:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:24:02] [INFO] Checking activity reminders 
[2026-04-12 15:24:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:24:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:24:11] [INFO] Checking activity reminders 
[2026-04-12 15:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:24:32] [INFO] Checking activity reminders 
[2026-04-12 15:24:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:24:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:24:41] [INFO] Checking activity reminders 
[2026-04-12 15:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:25:02] [INFO] Checking activity reminders 
[2026-04-12 15:25:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:25:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:25:11] [INFO] Checking activity reminders 
[2026-04-12 15:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:25:32] [INFO] Checking activity reminders 
[2026-04-12 15:25:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:25:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:25:41] [INFO] Checking activity reminders 
[2026-04-12 15:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:26:02] [INFO] Checking activity reminders 
[2026-04-12 15:26:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:26:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:26:12] [INFO] Checking activity reminders 
[2026-04-12 15:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:26:32] [INFO] Checking activity reminders 
[2026-04-12 15:26:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:26:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:26:42] [INFO] Checking activity reminders 
[2026-04-12 15:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:27:02] [INFO] Checking activity reminders 
[2026-04-12 15:27:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:27:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:27:12] [INFO] Checking activity reminders 
[2026-04-12 15:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:27:32] [INFO] Checking activity reminders 
[2026-04-12 15:27:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:27:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:27:42] [INFO] Checking activity reminders 
[2026-04-12 15:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:27:53] [INFO] DealController.save start {"is_new":true,"incoming_title":"CIP","contact_id":"1888","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:27:53","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"CIP","contact_id":"1888","is_new_deal":true}
[2026-04-12 15:27:53] [INFO] extractPhoneFromDealTitle called {"input_title":"CIP"}
[2026-04-12 15:27:53] [INFO] extractPhoneFromDealTitle processing {"title_part":"CIP"}
[2026-04-12 15:27:53] [INFO] extractPhoneFromDealTitle no match found {"title_part":"CIP"}
[2026-04-12 15:27:53] [INFO] getContactPrimaryPhone called {"contact_id":"1888"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [INFO] getContactPrimaryPhone result {"contact_id":"1888","person_found":true,"primary_phone":"9125905003"}
[2026-04-12 15:27:53] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125905003"}
[2026-04-12 15:27:53] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125905003","contact_id":"1888","deal_id":"","is_new_deal":true,"incoming_title":"CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:27:53"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [INFO] generateDealTitle result {"contact_id":"1888","person_name":"حسین محمدیان","mobile":"9125905003","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9125905003"}
[2026-04-12 15:27:53] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1888","payments_count":3,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 15:27:53] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1888","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:27:53] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1888","title":"معامله دوم 9125905003 | CIP","base_title_used":"معامله دوم 9125905003","services_text":"CIP","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":200000000,"payment_amount":200000000,"payments_present":true,"requested_services":["CIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین محمدیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 15:27:53","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [INFO] Deal success processed {"contact_id":"1888","person_name":"حسین محمدیان","products_count":1}
[2026-04-12 15:27:53] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 15:27:53] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1888","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9125905003 | CIP","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":200000000,"payment_amount":200000000,"server_time":"2026-04-12 15:27:53","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:27:53] [INFO] Updating virtual stage {"contact_id":"1888","stage_name":"with_purchase","force":true}
[2026-04-12 15:27:53] [INFO] Virtual stage successfully saved {"contact_id":"1888","stage_name":"with_purchase"}
[2026-04-12 15:27:53] [INFO] Moved contact out of kariz after successful deal {"contact_id":"1888","deal_id":"","target_stage":"with_purchase"}
[2026-04-12 15:27:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:02] [INFO] Checking activity reminders 
[2026-04-12 15:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:05] [INFO] generateDealTitle result {"contact_id":"1888","person_name":"حسین محمدیان","mobile":"9125905003","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9125905003"}
[2026-04-12 15:28:13] [INFO] Checking activity reminders 
[2026-04-12 15:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:28:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:28:23] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1888","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:28:23","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:28:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1888","is_new_deal":true}
[2026-04-12 15:28:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 15:28:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 15:28:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 15:28:23] [INFO] getContactPrimaryPhone called {"contact_id":"1888"}
[2026-04-12 15:28:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:23] [INFO] getContactPrimaryPhone result {"contact_id":"1888","person_found":true,"primary_phone":"9125905003"}
[2026-04-12 15:28:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125905003"}
[2026-04-12 15:28:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125905003","contact_id":"1888","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:28:23"}
[2026-04-12 15:28:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:23] [INFO] generateDealTitle result {"contact_id":"1888","person_name":"حسین محمدیان","mobile":"9125905003","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9125905003"}
[2026-04-12 15:28:23] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1888","payments_count":0,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-12 15:28:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1888","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:28:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1888","title":"معامله سوم 9125905003 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9125905003","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین محمدیان","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 15:28:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:28:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:23] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 15:28:23] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1888","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9125905003 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 15:28:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:28:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:28:32] [INFO] Checking activity reminders 
[2026-04-12 15:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:28:43] [INFO] Checking activity reminders 
[2026-04-12 15:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:29:02] [INFO] Checking activity reminders 
[2026-04-12 15:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:29:13] [INFO] Checking activity reminders 
[2026-04-12 15:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:29:33] [INFO] Checking activity reminders 
[2026-04-12 15:29:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:29:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:29:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1888","deal_id":"local_69db88df9e7e10.14953028","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:29:40","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:29:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1888","is_new_deal":false}
[2026-04-12 15:29:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 15:29:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 15:29:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 15:29:40] [INFO] getContactPrimaryPhone called {"contact_id":"1888"}
[2026-04-12 15:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:29:40] [INFO] getContactPrimaryPhone result {"contact_id":"1888","person_found":true,"primary_phone":"9125905003"}
[2026-04-12 15:29:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125905003"}
[2026-04-12 15:29:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125905003","contact_id":"1888","deal_id":"local_69db88df9e7e10.14953028","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:29:40"}
[2026-04-12 15:29:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69db88df9e7e10.14953028","contact_id":"1888","existing_deal_found":true,"existing_contact_id":"1888","existing_title":"معامله سوم 9125905003 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:29:40"}
[2026-04-12 15:29:40] [INFO] DealController.save validated payments {"deal_id":"local_69db88df9e7e10.14953028","contact_id":"1888","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-12 15:29:40] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1888","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:29:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69db88df9e7e10.14953028","contact_didar_id":"1888","title":"معامله سوم 9125905003 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9125905003","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":38000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین محمدیان","existing_deal":"YES","existing_deal_id":"local_69db88df9e7e10.14953028","existing_deal_status":"Pending","server_time":"2026-04-12 15:29:40","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:29:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69db88df9e7e10.14953028","contact_id":"1888","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9125905003 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":38000000,"server_time":"2026-04-12 15:29:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:29:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:29:43] [INFO] Checking activity reminders 
[2026-04-12 15:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:30:03] [INFO] Checking activity reminders 
[2026-04-12 15:30:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:30:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:30:13] [INFO] Checking activity reminders 
[2026-04-12 15:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:30:33] [INFO] Checking activity reminders 
[2026-04-12 15:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:30:43] [INFO] Checking activity reminders 
[2026-04-12 15:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:31:02] [INFO] Activity save request {"post_data":{"contact_id":"1888","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"50 هزار دلار \r\nنیم کیلو طلا \r\nخودرو 2008 فروخته \r\nملک و غازه در پیامبر \r\n1.5 در بورس دست استاد \r\n3-4 نقد ","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:31:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:31:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:31:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1888","note_was_empty":true}
[2026-04-12 15:31:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"1888","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:31:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db897e401d01.83316959","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:31:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69db897e401d01.83316959"}
[2026-04-12 15:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:31:02] [INFO] Updating virtual stage {"contact_id":"1888","stage_name":"deal_registered","force":false}
[2026-04-12 15:31:02] [INFO] Virtual stage successfully saved {"contact_id":"1888","stage_name":"deal_registered"}
[2026-04-12 15:31:02] [INFO] Virtual stage updated after activity save {"contact_id":"1888"}
[2026-04-12 15:31:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1888","person_id":"18862"}
[2026-04-12 15:31:03] [INFO] Checking activity reminders 
[2026-04-12 15:31:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:31:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:31:13] [INFO] Checking activity reminders 
[2026-04-12 15:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:31:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:25] [INFO] generateDealTitle result {"contact_id":"917","person_name":"کریمی پور","mobile":"9139568275","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9139568275"}
[2026-04-12 15:31:33] [INFO] Checking activity reminders 
[2026-04-12 15:31:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:31:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:31:43] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"917","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 15:31:43","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 15:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"917","is_new_deal":true}
[2026-04-12 15:31:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:31:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:31:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 15:31:43] [INFO] getContactPrimaryPhone called {"contact_id":"917"}
[2026-04-12 15:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:43] [INFO] getContactPrimaryPhone result {"contact_id":"917","person_found":true,"primary_phone":"9139568275"}
[2026-04-12 15:31:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139568275"}
[2026-04-12 15:31:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139568275","contact_id":"917","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 15:31:43"}
[2026-04-12 15:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:43] [INFO] generateDealTitle result {"contact_id":"917","person_name":"کریمی پور","mobile":"9139568275","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9139568275"}
[2026-04-12 15:31:43] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"917","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-12 15:31:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"917","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 15:31:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"917","title":"معامله چهارم 9139568275 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9139568275","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کریمی پور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 15:31:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 15:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:43] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 15:31:43] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"917","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9139568275 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-12 15:31:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 15:31:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:31:44] [INFO] Checking activity reminders 
[2026-04-12 15:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:32:03] [INFO] Checking activity reminders 
[2026-04-12 15:32:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:32:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:32:14] [INFO] Checking activity reminders 
[2026-04-12 15:32:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:32:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:32:33] [INFO] Checking activity reminders 
[2026-04-12 15:32:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:32:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:32:43] [INFO] Activity save request {"post_data":{"contact_id":"local_69d224ec2390d8.74455270","deal_id":"local_69d224ec295e1","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"همش بیزی  پیامک پیگیری \/ فکر کنم خط بلاک کرده بیزی با خط 903 زنگ زدم بر میداره صحبت نمیکنه","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:32:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d224ec2390d8.74455270","note_was_empty":true}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:43] [INFO] Updating virtual stage {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered","force":false}
[2026-04-12 15:32:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered"}
[2026-04-12 15:32:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224ec2390d8.74455270"}
[2026-04-12 15:32:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224ec295e1","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:32:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db89e38ee778.03897999","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69db89e38ee778.03897999"}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:43] [INFO] Updating virtual stage {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered","force":false}
[2026-04-12 15:32:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69d224ec2390d8.74455270","stage_name":"deal_registered"}
[2026-04-12 15:32:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d224ec2390d8.74455270"}
[2026-04-12 15:32:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224ec2390d8.74455270","person_id":"21980"}
[2026-04-12 15:32:44] [INFO] Checking activity reminders 
[2026-04-12 15:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:33:03] [INFO] Checking activity reminders 
[2026-04-12 15:33:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:33:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:33:14] [INFO] Checking activity reminders 
[2026-04-12 15:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:33:21] [INFO] Activity save request {"post_data":{"contact_id":"917","deal_id":"local_69db89a73658d7.41273694","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سیرجان \r\nچاپخانه \r\nخیلی چالش مالی و چک و نیرو \r\nبرای ورد به کانال هزینه اش به دلیل مسدود بودن حساب نمیتونه \r\nبهش گفتم بده مشتری برات جابجا کنه \r\nارسال شماره شبا تجارت \/ تا فردا واریز ","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:33:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"917","note_was_empty":true}
[2026-04-12 15:33:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"917","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:21] [INFO] Updating virtual stage {"contact_id":"917","stage_name":"deal_registered","force":false}
[2026-04-12 15:33:21] [INFO] Virtual stage successfully saved {"contact_id":"917","stage_name":"deal_registered"}
[2026-04-12 15:33:21] [INFO] Virtual stage updated after activity save {"contact_id":"917"}
[2026-04-12 15:33:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69db89a73658d7.41273694","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:33:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db8a09ae9f70.37435698","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69db8a09ae9f70.37435698"}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:21] [INFO] Updating virtual stage {"contact_id":"917","stage_name":"deal_registered","force":false}
[2026-04-12 15:33:21] [INFO] Virtual stage successfully saved {"contact_id":"917","stage_name":"deal_registered"}
[2026-04-12 15:33:21] [INFO] Virtual stage updated after activity save {"contact_id":"917"}
[2026-04-12 15:33:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-12 15:33:33] [INFO] Checking activity reminders 
[2026-04-12 15:33:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:33:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:33:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:33:44] [INFO] Checking activity reminders 
[2026-04-12 15:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:34:04] [INFO] Checking activity reminders 
[2026-04-12 15:34:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:34:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:34:14] [INFO] Checking activity reminders 
[2026-04-12 15:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:34:34] [INFO] Checking activity reminders 
[2026-04-12 15:34:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:34:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:34:45] [INFO] Checking activity reminders 
[2026-04-12 15:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:35:04] [INFO] Checking activity reminders 
[2026-04-12 15:35:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:35:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:35:15] [INFO] Checking activity reminders 
[2026-04-12 15:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:35:34] [INFO] Checking activity reminders 
[2026-04-12 15:35:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:35:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:35:45] [INFO] Checking activity reminders 
[2026-04-12 15:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:36:04] [INFO] Checking activity reminders 
[2026-04-12 15:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:36:11] [INFO] Checking activity reminders 
[2026-04-12 15:36:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:36:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:36:34] [INFO] Checking activity reminders 
[2026-04-12 15:36:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:36:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:36:41] [INFO] Checking activity reminders 
[2026-04-12 15:36:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:36:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:02] [INFO] Checking activity reminders 
[2026-04-12 15:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:04] [INFO] Checking activity reminders 
[2026-04-12 15:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:04] [INFO] Checking activity reminders 
[2026-04-12 15:37:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:05] [INFO] Checking activity reminders 
[2026-04-12 15:37:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:34] [INFO] Checking activity reminders 
[2026-04-12 15:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:37:35] [INFO] Checking activity reminders 
[2026-04-12 15:37:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:37:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:38:04] [INFO] Checking activity reminders 
[2026-04-12 15:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:38:05] [INFO] Checking activity reminders 
[2026-04-12 15:38:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:38:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:38:34] [INFO] Checking activity reminders 
[2026-04-12 15:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:38:35] [INFO] Checking activity reminders 
[2026-04-12 15:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:39:04] [INFO] Checking activity reminders 
[2026-04-12 15:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:39:05] [INFO] Checking activity reminders 
[2026-04-12 15:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:39:34] [INFO] Checking activity reminders 
[2026-04-12 15:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:39:35] [INFO] Checking activity reminders 
[2026-04-12 15:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:40:05] [INFO] Checking activity reminders 
[2026-04-12 15:40:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:40:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:40:06] [INFO] Checking activity reminders 
[2026-04-12 15:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:40:35] [INFO] Checking activity reminders 
[2026-04-12 15:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:40:36] [INFO] Checking activity reminders 
[2026-04-12 15:40:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:40:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:41:05] [INFO] Checking activity reminders 
[2026-04-12 15:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:41:06] [INFO] Checking activity reminders 
[2026-04-12 15:41:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:41:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:41:34] [INFO] Checking activity reminders 
[2026-04-12 15:41:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:41:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:41:35] [INFO] Checking activity reminders 
[2026-04-12 15:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:42:04] [INFO] Checking activity reminders 
[2026-04-12 15:42:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:42:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:42:05] [INFO] Checking activity reminders 
[2026-04-12 15:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:42:35] [INFO] Checking activity reminders 
[2026-04-12 15:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:42:35] [INFO] Checking activity reminders 
[2026-04-12 15:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:05] [INFO] Checking activity reminders 
[2026-04-12 15:43:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:05] [INFO] Checking activity reminders 
[2026-04-12 15:43:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:15] [INFO] Checking activity reminders 
[2026-04-12 15:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:17] [INFO] Checking activity reminders 
[2026-04-12 15:43:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:35] [INFO] Checking activity reminders 
[2026-04-12 15:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:43:47] [INFO] Checking activity reminders 
[2026-04-12 15:43:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:43:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:44:05] [INFO] Checking activity reminders 
[2026-04-12 15:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:44:17] [INFO] Checking activity reminders 
[2026-04-12 15:44:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:44:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:44:35] [INFO] Checking activity reminders 
[2026-04-12 15:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:44:47] [INFO] Checking activity reminders 
[2026-04-12 15:44:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:44:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:45:05] [INFO] Checking activity reminders 
[2026-04-12 15:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:45:17] [INFO] Checking activity reminders 
[2026-04-12 15:45:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:45:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:45:35] [INFO] Checking activity reminders 
[2026-04-12 15:45:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:45:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:45:48] [INFO] Checking activity reminders 
[2026-04-12 15:45:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:45:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:46:05] [INFO] Checking activity reminders 
[2026-04-12 15:46:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:46:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:46:18] [INFO] Checking activity reminders 
[2026-04-12 15:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:46:35] [INFO] Checking activity reminders 
[2026-04-12 15:46:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:46:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:46:48] [INFO] Checking activity reminders 
[2026-04-12 15:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:47:06] [INFO] Checking activity reminders 
[2026-04-12 15:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:47:13] [INFO] Activity save request {"post_data":{"contact_id":"20948","deal_id":"local_69d4da62000db2.97020551","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مجدد پیگیری کردم\r\nهمش میگه الان واریز میکنم \r\nپیام در بله و پیامک ارسال شد \r\n","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:47:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20948","note_was_empty":true}
[2026-04-12 15:47:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"20948","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:13] [INFO] Updating virtual stage {"contact_id":"20948","stage_name":"deal_registered","force":false}
[2026-04-12 15:47:13] [INFO] Virtual stage successfully saved {"contact_id":"20948","stage_name":"deal_registered"}
[2026-04-12 15:47:13] [INFO] Virtual stage updated after activity save {"contact_id":"20948"}
[2026-04-12 15:47:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da62000db2.97020551","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 15:47:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db8d491ab459.34867460","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69db8d491ab459.34867460"}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:13] [INFO] Updating virtual stage {"contact_id":"20948","stage_name":"deal_registered","force":false}
[2026-04-12 15:47:13] [INFO] Virtual stage successfully saved {"contact_id":"20948","stage_name":"deal_registered"}
[2026-04-12 15:47:13] [INFO] Virtual stage updated after activity save {"contact_id":"20948"}
[2026-04-12 15:47:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20948","person_id":"17657"}
[2026-04-12 15:47:18] [INFO] Checking activity reminders 
[2026-04-12 15:47:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:47:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:47:36] [INFO] Checking activity reminders 
[2026-04-12 15:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:47:48] [INFO] Checking activity reminders 
[2026-04-12 15:47:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:47:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:48:06] [INFO] Checking activity reminders 
[2026-04-12 15:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:48:18] [INFO] Checking activity reminders 
[2026-04-12 15:48:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:48:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:48:36] [INFO] Checking activity reminders 
[2026-04-12 15:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:48:48] [INFO] Checking activity reminders 
[2026-04-12 15:48:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:48:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:49:06] [INFO] Checking activity reminders 
[2026-04-12 15:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:49:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 15:49:19] [INFO] Checking activity reminders 
[2026-04-12 15:49:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:49:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:49:36] [INFO] Checking activity reminders 
[2026-04-12 15:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:49:49] [INFO] Checking activity reminders 
[2026-04-12 15:49:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:49:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:50:06] [INFO] Checking activity reminders 
[2026-04-12 15:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:50:19] [INFO] Checking activity reminders 
[2026-04-12 15:50:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:50:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:50:36] [INFO] Checking activity reminders 
[2026-04-12 15:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:50:49] [INFO] Checking activity reminders 
[2026-04-12 15:50:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:50:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:51:06] [INFO] Checking activity reminders 
[2026-04-12 15:51:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:51:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:51:20] [INFO] Checking activity reminders 
[2026-04-12 15:51:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:51:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:51:36] [INFO] Checking activity reminders 
[2026-04-12 15:51:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:51:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:51:50] [INFO] Checking activity reminders 
[2026-04-12 15:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:52:06] [INFO] Checking activity reminders 
[2026-04-12 15:52:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:52:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:52:20] [INFO] Checking activity reminders 
[2026-04-12 15:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:52:36] [INFO] Checking activity reminders 
[2026-04-12 15:52:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:52:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:52:50] [INFO] Checking activity reminders 
[2026-04-12 15:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:53:06] [INFO] Checking activity reminders 
[2026-04-12 15:53:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:53:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:53:21] [INFO] Checking activity reminders 
[2026-04-12 15:53:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:53:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:53:37] [INFO] Checking activity reminders 
[2026-04-12 15:53:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:53:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:53:51] [INFO] Checking activity reminders 
[2026-04-12 15:53:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:53:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:54:07] [INFO] Checking activity reminders 
[2026-04-12 15:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:54:37] [INFO] Checking activity reminders 
[2026-04-12 15:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:55:07] [INFO] Checking activity reminders 
[2026-04-12 15:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:55:37] [INFO] Checking activity reminders 
[2026-04-12 15:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:56:07] [INFO] Checking activity reminders 
[2026-04-12 15:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:56:37] [INFO] Checking activity reminders 
[2026-04-12 15:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:57:07] [INFO] Checking activity reminders 
[2026-04-12 15:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:57:22] [INFO] Activity save request {"post_data":{"contact_id":"3068","deal_id":"local_699982392b0572.34485161","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"12تا 207 صفر خریده \/ 2تا هیما اس 7\/ 1عدد اسپرتج 2025\/ \r\nهمین خوبه یا تغییر بده ارسال برای استاد","activity_duration":"10","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 15:57:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"3068","note_was_empty":true}
[2026-04-12 15:57:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"3068","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:22] [INFO] Updating virtual stage {"contact_id":"3068","stage_name":"deal_registered","force":false}
[2026-04-12 15:57:22] [INFO] Virtual stage successfully saved {"contact_id":"3068","stage_name":"deal_registered"}
[2026-04-12 15:57:22] [INFO] Virtual stage updated after activity save {"contact_id":"3068"}
[2026-04-12 15:57:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699982392b0572.34485161","stage":"برگزاری دوره","status_change":null}
[2026-04-12 15:57:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db8faa6d6c07.91985940","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69db8faa6d6c07.91985940"}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:22] [INFO] Updating virtual stage {"contact_id":"3068","stage_name":"deal_registered","force":false}
[2026-04-12 15:57:22] [INFO] Virtual stage successfully saved {"contact_id":"3068","stage_name":"deal_registered"}
[2026-04-12 15:57:22] [INFO] Virtual stage updated after activity save {"contact_id":"3068"}
[2026-04-12 15:57:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3068","person_id":"2371"}
[2026-04-12 15:57:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 15:57:37] [INFO] Checking activity reminders 
[2026-04-12 15:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:58:07] [INFO] Checking activity reminders 
[2026-04-12 15:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:58:37] [INFO] Checking activity reminders 
[2026-04-12 15:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:59:07] [INFO] Checking activity reminders 
[2026-04-12 15:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:59:37] [INFO] Checking activity reminders 
[2026-04-12 15:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:59:44] [INFO] Checking activity reminders 
[2026-04-12 15:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 15:59:46] [INFO] Checking activity reminders 
[2026-04-12 15:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 15:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:00:08] [INFO] Checking activity reminders 
[2026-04-12 16:00:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:00:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:00:16] [INFO] Checking activity reminders 
[2026-04-12 16:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:00:18] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:00:18] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-12 16:00:18] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-12 16:00:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 16:00:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 16:00:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 16:00:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 16:00:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20694","person_id":"7006"}
[2026-04-12 16:00:38] [INFO] Checking activity reminders 
[2026-04-12 16:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:00:46] [INFO] Checking activity reminders 
[2026-04-12 16:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:00:49] [INFO] Checking activity reminders 
[2026-04-12 16:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:08] [INFO] Checking activity reminders 
[2026-04-12 16:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:16] [INFO] Checking activity reminders 
[2026-04-12 16:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:18] [INFO] Activity save request {"post_data":{"contact_id":"12676","deal_id":"local_69b72416ecc7d1.09562998","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برداشت محصول نخود از هفته ی اینده داره \r\nتسویه میکنه \r\n","activity_duration":"6","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:01:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12676","note_was_empty":true}
[2026-04-12 16:01:18] [INFO] Didar write disabled; saving activity locally {"contact_id":"12676","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:18] [INFO] Updating virtual stage {"contact_id":"12676","stage_name":"deal_registered","force":false}
[2026-04-12 16:01:18] [INFO] Virtual stage successfully saved {"contact_id":"12676","stage_name":"deal_registered"}
[2026-04-12 16:01:18] [INFO] Virtual stage updated after activity save {"contact_id":"12676"}
[2026-04-12 16:01:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72416ecc7d1.09562998","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-12 16:01:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db9096d2ed68.00150000","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69db9096d2ed68.00150000"}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:18] [INFO] Updating virtual stage {"contact_id":"12676","stage_name":"deal_registered","force":false}
[2026-04-12 16:01:18] [INFO] Virtual stage successfully saved {"contact_id":"12676","stage_name":"deal_registered"}
[2026-04-12 16:01:18] [INFO] Virtual stage updated after activity save {"contact_id":"12676"}
[2026-04-12 16:01:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12676","person_id":"11719"}
[2026-04-12 16:01:20] [INFO] Checking activity reminders 
[2026-04-12 16:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:01:38] [INFO] Checking activity reminders 
[2026-04-12 16:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:47] [INFO] Checking activity reminders 
[2026-04-12 16:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:50] [INFO] Checking activity reminders 
[2026-04-12 16:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:01:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:02:01] [INFO] Activity save request {"post_data":{"contact_id":"3042","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشتیبانی کانال و خرید دلار کاغذی \r\nارجاع به کاشانی ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:02:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:02:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:02:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:02:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:02:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3042","note_was_empty":true}
[2026-04-12 16:02:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"3042","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:02:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db90c182ea07.99889527","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:02:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:02:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69db90c182ea07.99889527"}
[2026-04-12 16:02:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:02:01] [INFO] Updating virtual stage {"contact_id":"3042","stage_name":"with_purchase","force":false}
[2026-04-12 16:02:01] [INFO] Virtual stage successfully saved {"contact_id":"3042","stage_name":"with_purchase"}
[2026-04-12 16:02:01] [INFO] Virtual stage updated after activity save {"contact_id":"3042"}
[2026-04-12 16:02:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3042","person_id":"236"}
[2026-04-12 16:02:08] [INFO] Checking activity reminders 
[2026-04-12 16:02:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:02:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:02:08] [INFO] Lead update received {"contact_id":"local_69d223e1cebb36.28765061","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 16:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:02:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 16:02:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:02:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:17] [INFO] Checking activity reminders 
[2026-04-12 16:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:02:20] [INFO] Checking activity reminders 
[2026-04-12 16:02:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:02:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:02:38] [INFO] Activity save request {"post_data":{"contact_id":"8159","deal_id":"local_695e50dbe85ac2.05306469","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:02:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8159","note_was_empty":true}
[2026-04-12 16:02:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"8159","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:38] [INFO] Updating virtual stage {"contact_id":"8159","stage_name":"deal_registered","force":false}
[2026-04-12 16:02:38] [INFO] Virtual stage successfully saved {"contact_id":"8159","stage_name":"deal_registered"}
[2026-04-12 16:02:38] [INFO] Virtual stage updated after activity save {"contact_id":"8159"}
[2026-04-12 16:02:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695e50dbe85ac2.05306469","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-12 16:02:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db90e66bf218.52376533","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69db90e66bf218.52376533"}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:38] [INFO] Updating virtual stage {"contact_id":"8159","stage_name":"deal_registered","force":false}
[2026-04-12 16:02:38] [INFO] Virtual stage successfully saved {"contact_id":"8159","stage_name":"deal_registered"}
[2026-04-12 16:02:38] [INFO] Virtual stage updated after activity save {"contact_id":"8159"}
[2026-04-12 16:02:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8159","person_id":"16720"}
[2026-04-12 16:02:47] [INFO] Checking activity reminders 
[2026-04-12 16:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:02:50] [INFO] Checking activity reminders 
[2026-04-12 16:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:03:16] [INFO] Checking activity reminders 
[2026-04-12 16:03:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:03:17] [INFO] Checking activity reminders 
[2026-04-12 16:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:03:20] [INFO] Checking activity reminders 
[2026-04-12 16:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:03:47] [INFO] Checking activity reminders 
[2026-04-12 16:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:03:50] [INFO] Checking activity reminders 
[2026-04-12 16:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:03:50] [INFO] Checking activity reminders 
[2026-04-12 16:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:18] [INFO] Checking activity reminders 
[2026-04-12 16:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:20] [INFO] Checking activity reminders 
[2026-04-12 16:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:20] [INFO] Checking activity reminders 
[2026-04-12 16:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:48] [INFO] Checking activity reminders 
[2026-04-12 16:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:50] [INFO] Checking activity reminders 
[2026-04-12 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:04:50] [INFO] Checking activity reminders 
[2026-04-12 16:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:15] [INFO] Activity save request {"post_data":{"contact_id":"7806","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"جهت ارسال فیزیک چک پیگیری \r\n1 هفته ست کسالت داره \/ شهرستان \/ تعدیل نیرو \r\nچک داده به اقوامش که پست کنه ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:05:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:05:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:05:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:05:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:05:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7806","note_was_empty":true}
[2026-04-12 16:05:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"7806","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:05:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db91836ac755.51679386","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:05:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:05:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69db91836ac755.51679386"}
[2026-04-12 16:05:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:05:15] [INFO] Updating virtual stage {"contact_id":"7806","stage_name":"with_purchase","force":false}
[2026-04-12 16:05:15] [INFO] Virtual stage successfully saved {"contact_id":"7806","stage_name":"with_purchase"}
[2026-04-12 16:05:15] [INFO] Virtual stage updated after activity save {"contact_id":"7806"}
[2026-04-12 16:05:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7806","person_id":"13841"}
[2026-04-12 16:05:18] [INFO] Checking activity reminders 
[2026-04-12 16:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:20] [INFO] Checking activity reminders 
[2026-04-12 16:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:21] [INFO] Checking activity reminders 
[2026-04-12 16:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:05:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3360","deal_id":"local_69b533eb614698.79634681","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:05:42","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:05:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3360","is_new_deal":false}
[2026-04-12 16:05:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 16:05:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:05:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:05:42] [INFO] getContactPrimaryPhone called {"contact_id":"3360"}
[2026-04-12 16:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:05:42] [INFO] getContactPrimaryPhone result {"contact_id":"3360","person_found":true,"primary_phone":"9052054153"}
[2026-04-12 16:05:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9052054153"}
[2026-04-12 16:05:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9052054153","contact_id":"3360","deal_id":"local_69b533eb614698.79634681","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:05:42"}
[2026-04-12 16:05:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b533eb614698.79634681","contact_id":"3360","existing_deal_found":true,"existing_contact_id":"3360","existing_title":"معامله سوم 9052054153 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:05:42"}
[2026-04-12 16:05:42] [INFO] DealController.save validated payments {"deal_id":"local_69b533eb614698.79634681","contact_id":"3360","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-12 16:05:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3360","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:05:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b533eb614698.79634681","contact_didar_id":"3360","title":"معامله سوم 9052054153 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9052054153","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یلقی","existing_deal":"YES","existing_deal_id":"local_69b533eb614698.79634681","existing_deal_status":"Pending","server_time":"2026-04-12 16:05:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:05:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b533eb614698.79634681","contact_id":"3360","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9052054153 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 16:05:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:05:48] [INFO] Checking activity reminders 
[2026-04-12 16:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:50] [INFO] Checking activity reminders 
[2026-04-12 16:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:05:51] [INFO] Checking activity reminders 
[2026-04-12 16:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:18] [INFO] Checking activity reminders 
[2026-04-12 16:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:20] [INFO] Checking activity reminders 
[2026-04-12 16:06:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:21] [INFO] Checking activity reminders 
[2026-04-12 16:06:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:21] [INFO] Activity save request {"post_data":{"contact_id":"3360","deal_id":"local_69b533eb614698.79634681","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:06:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3360","note_was_empty":true}
[2026-04-12 16:06:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"3360","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:21] [INFO] Updating virtual stage {"contact_id":"3360","stage_name":"deal_registered","force":false}
[2026-04-12 16:06:21] [INFO] Virtual stage successfully saved {"contact_id":"3360","stage_name":"deal_registered"}
[2026-04-12 16:06:21] [INFO] Virtual stage updated after activity save {"contact_id":"3360"}
[2026-04-12 16:06:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b533eb614698.79634681","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-12 16:06:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db91c5662b42.03691604","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69db91c5662b42.03691604"}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:21] [INFO] Updating virtual stage {"contact_id":"3360","stage_name":"deal_registered","force":false}
[2026-04-12 16:06:21] [INFO] Virtual stage successfully saved {"contact_id":"3360","stage_name":"deal_registered"}
[2026-04-12 16:06:21] [INFO] Virtual stage updated after activity save {"contact_id":"3360"}
[2026-04-12 16:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3360","person_id":"15667"}
[2026-04-12 16:06:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:48] [INFO] Checking activity reminders 
[2026-04-12 16:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:50] [INFO] Checking activity reminders 
[2026-04-12 16:06:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:51] [INFO] Checking activity reminders 
[2026-04-12 16:06:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:06:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:06:58] [INFO] Activity save request {"post_data":{"contact_id":"7992","deal_id":"local_69d4dbda85c419.62616226","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیام در بله و پیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:06:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7992","note_was_empty":true}
[2026-04-12 16:06:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"7992","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:58] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-12 16:06:58] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-12 16:06:58] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-12 16:06:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dbda85c419.62616226","stage":"تماس پیگیری","status_change":null}
[2026-04-12 16:06:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db91ea0c28f3.98948903","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69db91ea0c28f3.98948903"}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:06:58] [INFO] Updating virtual stage {"contact_id":"7992","stage_name":"deal_registered","force":false}
[2026-04-12 16:06:58] [INFO] Virtual stage successfully saved {"contact_id":"7992","stage_name":"deal_registered"}
[2026-04-12 16:06:58] [INFO] Virtual stage updated after activity save {"contact_id":"7992"}
[2026-04-12 16:06:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7992","person_id":"3348"}
[2026-04-12 16:07:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:18] [INFO] Checking activity reminders 
[2026-04-12 16:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:07:20] [INFO] Checking activity reminders 
[2026-04-12 16:07:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:07:21] [INFO] Checking activity reminders 
[2026-04-12 16:07:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:07:31] [INFO] Activity save request {"post_data":{"contact_id":"9112","deal_id":"local_69d224b65a5116.94553415","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:31] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:07:31] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:31] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9112","note_was_empty":true}
[2026-04-12 16:07:31] [INFO] Didar write disabled; saving activity locally {"contact_id":"9112","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:31] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-12 16:07:31] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-12 16:07:31] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-12 16:07:31] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224b65a5116.94553415","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:07:31] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db920be9ff98.57935910","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:31] [INFO] Activity saved successfully {"activity_id":"local_activity_69db920be9ff98.57935910"}
[2026-04-12 16:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:31] [INFO] Updating virtual stage {"contact_id":"9112","stage_name":"deal_registered","force":false}
[2026-04-12 16:07:31] [INFO] Virtual stage successfully saved {"contact_id":"9112","stage_name":"deal_registered"}
[2026-04-12 16:07:31] [INFO] Virtual stage updated after activity save {"contact_id":"9112"}
[2026-04-12 16:07:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9112","person_id":"3432"}
[2026-04-12 16:07:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:07:48] [INFO] Checking activity reminders 
[2026-04-12 16:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:07:50] [INFO] Checking activity reminders 
[2026-04-12 16:07:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:07:51] [INFO] Checking activity reminders 
[2026-04-12 16:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:03] [INFO] Lead update received {"contact_id":"857","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 16:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:08:03] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"857"}
[2026-04-12 16:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:08:18] [INFO] Checking activity reminders 
[2026-04-12 16:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:21] [INFO] Checking activity reminders 
[2026-04-12 16:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:21] [INFO] Checking activity reminders 
[2026-04-12 16:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:48] [INFO] Checking activity reminders 
[2026-04-12 16:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:51] [INFO] Checking activity reminders 
[2026-04-12 16:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:08:51] [INFO] Checking activity reminders 
[2026-04-12 16:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:19] [INFO] Checking activity reminders 
[2026-04-12 16:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:21] [INFO] Checking activity reminders 
[2026-04-12 16:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:22] [INFO] Checking activity reminders 
[2026-04-12 16:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:29] [INFO] Activity save request {"post_data":{"contact_id":"857","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای عضویت در کانال حساب هاش مسدود \r\nنتونسته وصول مطالبات داشته باشه \r\nپرزنت 6 ماهه \r\nارسال پیام مجدد در بله ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:09:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:09:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:09:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"857","note_was_empty":true}
[2026-04-12 16:09:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"857","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:09:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db928190c275.05723646","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:09:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69db928190c275.05723646"}
[2026-04-12 16:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:09:29] [INFO] Updating virtual stage {"contact_id":"857","stage_name":"deal_registered","force":false}
[2026-04-12 16:09:29] [INFO] Virtual stage successfully saved {"contact_id":"857","stage_name":"deal_registered"}
[2026-04-12 16:09:29] [INFO] Virtual stage updated after activity save {"contact_id":"857"}
[2026-04-12 16:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"857","person_id":"18131"}
[2026-04-12 16:09:49] [INFO] Checking activity reminders 
[2026-04-12 16:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:51] [INFO] Checking activity reminders 
[2026-04-12 16:09:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:52] [INFO] Checking activity reminders 
[2026-04-12 16:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:56] [INFO] Checking activity reminders 
[2026-04-12 16:09:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:57] [INFO] Checking activity reminders 
[2026-04-12 16:09:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:09:59] [INFO] Checking activity reminders 
[2026-04-12 16:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:00] [INFO] Checking activity reminders 
[2026-04-12 16:10:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:02] [INFO] Checking activity reminders 
[2026-04-12 16:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:10:21] [INFO] Checking activity reminders 
[2026-04-12 16:10:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:22] [INFO] Checking activity reminders 
[2026-04-12 16:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:32] [INFO] Checking activity reminders 
[2026-04-12 16:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:51] [INFO] Checking activity reminders 
[2026-04-12 16:10:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:10:52] [INFO] Checking activity reminders 
[2026-04-12 16:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:11:02] [INFO] Checking activity reminders 
[2026-04-12 16:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:11:21] [INFO] Checking activity reminders 
[2026-04-12 16:11:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:11:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:11:22] [INFO] Checking activity reminders 
[2026-04-12 16:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:11:32] [INFO] Checking activity reminders 
[2026-04-12 16:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:11:49] [INFO] Activity save request {"post_data":{"contact_id":"1569","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال 405 تماس \r\nگفت در حال حاضر شرایط عضویت ندارم در جلسات با استاد اطلاعات میگیرم \r\nدر پروژه و مغازه سرمایه گذاری داشتم \r\nدر صورت سرمایه مازاد تماس و تمدید \r\n6 ماهه 39\r\n1 ساله 54","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:11:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:11:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:11:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1569","note_was_empty":true}
[2026-04-12 16:11:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"1569","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:11:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db930d63ac71.51847607","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:11:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69db930d63ac71.51847607"}
[2026-04-12 16:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:11:49] [INFO] Updating virtual stage {"contact_id":"1569","stage_name":"deal_registered","force":false}
[2026-04-12 16:11:49] [INFO] Virtual stage successfully saved {"contact_id":"1569","stage_name":"deal_registered"}
[2026-04-12 16:11:49] [INFO] Virtual stage updated after activity save {"contact_id":"1569"}
[2026-04-12 16:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1569","person_id":"11868"}
[2026-04-12 16:11:51] [INFO] Checking activity reminders 
[2026-04-12 16:11:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:11:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:12:02] [INFO] Checking activity reminders 
[2026-04-12 16:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:12:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:12:21] [INFO] Checking activity reminders 
[2026-04-12 16:12:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:12:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:12:32] [INFO] Checking activity reminders 
[2026-04-12 16:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:12:51] [INFO] Checking activity reminders 
[2026-04-12 16:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:13:02] [INFO] Checking activity reminders 
[2026-04-12 16:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:13:21] [INFO] Checking activity reminders 
[2026-04-12 16:13:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:13:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:13:30] [INFO] Activity save request {"post_data":{"contact_id":"1748","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای کانال 405 شرایط 6 ماهه اطلاع دادم میگه در کانال های دیگه با عدد 10 م اطلاعات میدن \r\nدر صورت تمایل تماس \/ مشورت با برادرش \r\nاولین دنبال کننده برادرم بوده بهشون میگم ","activity_duration":"9","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:13:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:13:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:13:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:13:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:13:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1748","note_was_empty":true}
[2026-04-12 16:13:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"1748","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:13:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db937271d729.25099476","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:13:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:13:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69db937271d729.25099476"}
[2026-04-12 16:13:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:13:30] [INFO] Updating virtual stage {"contact_id":"1748","stage_name":"deal_registered","force":false}
[2026-04-12 16:13:30] [INFO] Virtual stage successfully saved {"contact_id":"1748","stage_name":"deal_registered"}
[2026-04-12 16:13:30] [INFO] Virtual stage updated after activity save {"contact_id":"1748"}
[2026-04-12 16:13:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1748","person_id":"5847"}
[2026-04-12 16:13:32] [INFO] Checking activity reminders 
[2026-04-12 16:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:13:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:13:52] [INFO] Checking activity reminders 
[2026-04-12 16:13:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:13:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:13:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"88","deal_id":"local_69d6206a229041.44776372","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:13:59","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:13:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:13:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"88","is_new_deal":false}
[2026-04-12 16:13:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 16:13:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:13:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:13:59] [INFO] getContactPrimaryPhone called {"contact_id":"88"}
[2026-04-12 16:13:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:13:59] [INFO] getContactPrimaryPhone result {"contact_id":"88","person_found":true,"primary_phone":"9213968015"}
[2026-04-12 16:13:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9213968015"}
[2026-04-12 16:13:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9213968015","contact_id":"88","deal_id":"local_69d6206a229041.44776372","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:13:59"}
[2026-04-12 16:13:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6206a229041.44776372","contact_id":"88","existing_deal_found":true,"existing_contact_id":"88","existing_title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:13:59"}
[2026-04-12 16:13:59] [INFO] DealController.save validated payments {"deal_id":"local_69d6206a229041.44776372","contact_id":"88","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-12 16:13:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"88","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:13:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6206a229041.44776372","contact_didar_id":"88","title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9213968015","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قمری","existing_deal":"YES","existing_deal_id":"local_69d6206a229041.44776372","existing_deal_status":"Pending","server_time":"2026-04-12 16:13:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:13:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:13:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6206a229041.44776372","contact_id":"88","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9213968015 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 16:13:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:13:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:03] [INFO] Checking activity reminders 
[2026-04-12 16:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:14:13] [INFO] Activity save request {"post_data":{"contact_id":"88","deal_id":"local_69d6206a229041.44776372","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:14:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"88","note_was_empty":true}
[2026-04-12 16:14:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"88","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:13] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-12 16:14:13] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-12 16:14:13] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-12 16:14:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6206a229041.44776372","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-12 16:14:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db939d026ff8.63766087","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69db939d026ff8.63766087"}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:13] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-12 16:14:13] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-12 16:14:13] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-12 16:14:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-12 16:14:22] [INFO] Checking activity reminders 
[2026-04-12 16:14:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:14:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:33] [INFO] Checking activity reminders 
[2026-04-12 16:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:14:49] [INFO] Activity save request {"post_data":{"contact_id":"11748","deal_id":"local_695a6d59b71887.16010531","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:14:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11748","note_was_empty":true}
[2026-04-12 16:14:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"11748","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:49] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-12 16:14:49] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-12 16:14:49] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-12 16:14:49] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6d59b71887.16010531","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:14:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db93c1785869.76299234","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69db93c1785869.76299234"}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:49] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-12 16:14:49] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-12 16:14:49] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-12 16:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:14:52] [INFO] Checking activity reminders 
[2026-04-12 16:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:15:03] [INFO] Checking activity reminders 
[2026-04-12 16:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:15:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"11748","deal_id":"local_695a6d59b71887.16010531","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:15:08","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:15:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"11748","is_new_deal":false}
[2026-04-12 16:15:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 16:15:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 16:15:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 16:15:08] [INFO] getContactPrimaryPhone called {"contact_id":"11748"}
[2026-04-12 16:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:15:08] [INFO] getContactPrimaryPhone result {"contact_id":"11748","person_found":true,"primary_phone":"9131409757"}
[2026-04-12 16:15:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131409757"}
[2026-04-12 16:15:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131409757","contact_id":"11748","deal_id":"local_695a6d59b71887.16010531","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:15:08"}
[2026-04-12 16:15:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6d59b71887.16010531","contact_id":"11748","existing_deal_found":true,"existing_contact_id":"11748","existing_title":"معامله سوم 9131409757 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:15:08"}
[2026-04-12 16:15:08] [INFO] DealController.save validated payments {"deal_id":"local_695a6d59b71887.16010531","contact_id":"11748","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-12 16:15:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11748","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:15:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6d59b71887.16010531","contact_didar_id":"11748","title":"معامله سوم 9131409757 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9131409757","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین ضیاء","existing_deal":"YES","existing_deal_id":"local_695a6d59b71887.16010531","existing_deal_status":"Pending","server_time":"2026-04-12 16:15:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:15:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6d59b71887.16010531","contact_id":"11748","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9131409757 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-12 16:15:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:15:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-12 16:15:22] [INFO] Checking activity reminders 
[2026-04-12 16:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:15:33] [INFO] Checking activity reminders 
[2026-04-12 16:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:15:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:15:52] [INFO] Checking activity reminders 
[2026-04-12 16:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:16:03] [INFO] Checking activity reminders 
[2026-04-12 16:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:16:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"21285","deal_id":"18367","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:16:15","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:16:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"21285","is_new_deal":false}
[2026-04-12 16:16:15] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-12 16:16:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-12 16:16:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-12 16:16:15] [INFO] getContactPrimaryPhone called {"contact_id":"21285"}
[2026-04-12 16:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:16:15] [INFO] getContactPrimaryPhone result {"contact_id":"21285","person_found":true,"primary_phone":"9392766741"}
[2026-04-12 16:16:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9392766741"}
[2026-04-12 16:16:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9392766741","contact_id":"21285","deal_id":"18367","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:16:15"}
[2026-04-12 16:16:15] [INFO] DealController.save existing deal lookup {"deal_id":"18367","contact_id":"21285","existing_deal_found":true,"existing_contact_id":"21285","existing_title":"معامله پوریا حق بین","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:16:15"}
[2026-04-12 16:16:15] [INFO] DealController.save validated payments {"deal_id":"18367","contact_id":"21285","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-12 16:16:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21285","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:16:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"18367","contact_didar_id":"21285","title":"معامله پوریا حق بین | هوش خودرو","base_title_used":"معامله پوریا حق بین","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":7900000,"payment_amount":0,"payments_present":false,"requested_services":["هوش خودرو"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"پوریا حق بین","existing_deal":"YES","existing_deal_id":"18367","existing_deal_status":"Pending","server_time":"2026-04-12 16:16:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:16:15] [INFO] ensureDealProductsFromText: products synced {"deal_id":"18367","product_ids":[2]}
[2026-04-12 16:16:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"18367","contact_id":"21285","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله پوریا حق بین | هوش خودرو","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":7900000,"payment_amount":0,"server_time":"2026-04-12 16:16:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:16:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:16:22] [INFO] Checking activity reminders 
[2026-04-12 16:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:16:33] [INFO] Checking activity reminders 
[2026-04-12 16:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:16:52] [INFO] Checking activity reminders 
[2026-04-12 16:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:17:03] [INFO] Checking activity reminders 
[2026-04-12 16:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:17:22] [INFO] Checking activity reminders 
[2026-04-12 16:17:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:17:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:17:28] [INFO] Activity save request {"post_data":{"contact_id":"21285","deal_id":"18367","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:17:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21285","note_was_empty":true}
[2026-04-12 16:17:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"21285","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:28] [INFO] Updating virtual stage {"contact_id":"21285","stage_name":"deal_registered","force":false}
[2026-04-12 16:17:28] [INFO] Virtual stage successfully saved {"contact_id":"21285","stage_name":"deal_registered"}
[2026-04-12 16:17:28] [INFO] Virtual stage updated after activity save {"contact_id":"21285"}
[2026-04-12 16:17:28] [INFO] Pipeline stage updated after activity save {"deal_id":"18367","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:17:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db94602fe9c1.98910371","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69db94602fe9c1.98910371"}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:28] [INFO] Updating virtual stage {"contact_id":"21285","stage_name":"deal_registered","force":false}
[2026-04-12 16:17:28] [INFO] Virtual stage successfully saved {"contact_id":"21285","stage_name":"deal_registered"}
[2026-04-12 16:17:28] [INFO] Virtual stage updated after activity save {"contact_id":"21285"}
[2026-04-12 16:17:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21285","person_id":"5603"}
[2026-04-12 16:17:33] [INFO] Checking activity reminders 
[2026-04-12 16:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:17:52] [INFO] Checking activity reminders 
[2026-04-12 16:17:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:17:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:17:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:03] [INFO] Checking activity reminders 
[2026-04-12 16:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:18:05] [INFO] Checking activity reminders 
[2026-04-12 16:18:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:18:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:18:22] [INFO] Checking activity reminders 
[2026-04-12 16:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:18:28] [INFO] Activity save request {"post_data":{"contact_id":"793","deal_id":"local_69d6952e13e1b5.58385565","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مطب دکتر بود شرایط صحبت نداشت \r\n","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:18:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"793","note_was_empty":true}
[2026-04-12 16:18:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"793","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:28] [INFO] Updating virtual stage {"contact_id":"793","stage_name":"deal_registered","force":false}
[2026-04-12 16:18:28] [INFO] Virtual stage successfully saved {"contact_id":"793","stage_name":"deal_registered"}
[2026-04-12 16:18:28] [INFO] Virtual stage updated after activity save {"contact_id":"793"}
[2026-04-12 16:18:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6952e13e1b5.58385565","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:18:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db949c96e2d0.63477990","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69db949c96e2d0.63477990"}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:28] [INFO] Updating virtual stage {"contact_id":"793","stage_name":"deal_registered","force":false}
[2026-04-12 16:18:28] [INFO] Virtual stage successfully saved {"contact_id":"793","stage_name":"deal_registered"}
[2026-04-12 16:18:28] [INFO] Virtual stage updated after activity save {"contact_id":"793"}
[2026-04-12 16:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"793","person_id":"8657"}
[2026-04-12 16:18:33] [INFO] Checking activity reminders 
[2026-04-12 16:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:18:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:18:52] [INFO] Checking activity reminders 
[2026-04-12 16:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:19:04] [INFO] Checking activity reminders 
[2026-04-12 16:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:19:08] [INFO] Activity save request {"post_data":{"contact_id":"local_69d223e1cebb36.28765061","deal_id":"local_69d223e1d80cc","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"250 گرم طلا \/ ملک مصرف داره \/ سرمایه ملک واحد 4میلیارد 80متر داده اجاره \/ \r\nمجرد \/ ماشین مصرف کوییک \/ \r\nزمین داشته فروخته تبدیل کرده به طلا \/ نقد \/ دانشجو 25 سالشه \/ امیر صیادی \r\nملک ویلایی کرمانشاه 14 میلیارد دست مستاجر برای  خانواده \/ \r\nارسال ش کارت کانال 79ت \/ سال 402 کانال بوده \/ 30درصد بزنه تسویه چند روز دیگه ","activity_duration":"20","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:19:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d223e1cebb36.28765061","note_was_empty":true}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:08] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered","force":false}
[2026-04-12 16:19:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered"}
[2026-04-12 16:19:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 16:19:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d223e1d80cc","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:19:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db94c4174917.15415464","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69db94c4174917.15415464"}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:08] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered","force":false}
[2026-04-12 16:19:08] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered"}
[2026-04-12 16:19:08] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 16:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:09] [INFO] Activity save request {"post_data":{"contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال شبا خانم فاطمه عباسی ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:19:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69b7d9a7ab9697.18146949","note_was_empty":true}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:09] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered","force":false}
[2026-04-12 16:19:09] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered"}
[2026-04-12 16:19:09] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-04-12 16:19:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7d9a7b670a","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-12 16:19:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db94c5c8b128.67768621","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69db94c5c8b128.67768621"}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:09] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered","force":false}
[2026-04-12 16:19:09] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"deal_registered"}
[2026-04-12 16:19:09] [INFO] Virtual stage updated after activity save {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-04-12 16:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 16:19:23] [INFO] Checking activity reminders 
[2026-04-12 16:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:19:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:19:34] [INFO] Checking activity reminders 
[2026-04-12 16:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:19:52] [INFO] Lead update received {"contact_id":"local_69d223e1cebb36.28765061","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 16:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:52] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 16:19:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 16:19:53] [INFO] Checking activity reminders 
[2026-04-12 16:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:20:01] [INFO] Activity save request {"post_data":{"contact_id":"13256","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عضو کانال نشده بود \r\nپیگیری و ارسال فرم برای پشتیبانی استاد ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:20:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:20:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:20:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13256","note_was_empty":true}
[2026-04-12 16:20:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"13256","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:20:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db94f9611cc3.61851245","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:20:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69db94f9611cc3.61851245"}
[2026-04-12 16:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:20:01] [INFO] Updating virtual stage {"contact_id":"13256","stage_name":"with_purchase","force":false}
[2026-04-12 16:20:01] [INFO] Virtual stage successfully saved {"contact_id":"13256","stage_name":"with_purchase"}
[2026-04-12 16:20:01] [INFO] Virtual stage updated after activity save {"contact_id":"13256"}
[2026-04-12 16:20:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13256","person_id":"5037"}
[2026-04-12 16:20:04] [INFO] Checking activity reminders 
[2026-04-12 16:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:20:23] [INFO] Checking activity reminders 
[2026-04-12 16:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:20:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:20:34] [INFO] Checking activity reminders 
[2026-04-12 16:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:20:53] [INFO] Checking activity reminders 
[2026-04-12 16:20:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:20:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:21:04] [INFO] Checking activity reminders 
[2026-04-12 16:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:21:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:21:23] [INFO] Checking activity reminders 
[2026-04-12 16:21:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:21:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:21:34] [INFO] Checking activity reminders 
[2026-04-12 16:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:21:53] [INFO] Checking activity reminders 
[2026-04-12 16:21:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:21:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:22:04] [INFO] Checking activity reminders 
[2026-04-12 16:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:22:13] [INFO] Activity save request {"post_data":{"contact_id":"17008","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال \r\nدر مورد خودرو ثبت نامی سوال داشت \r\nپول پس نمیده \/میگه 1.200 واریز ولوو بهت تا 1 هفته بدیم \r\nترس از دست دادن پولشو داره ","activity_duration":"9","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:22:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:22:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:22:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:22:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:22:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17008","note_was_empty":true}
[2026-04-12 16:22:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"17008","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:22:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db957d9c0115.78056493","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:22:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:22:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69db957d9c0115.78056493"}
[2026-04-12 16:22:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:22:13] [INFO] Updating virtual stage {"contact_id":"17008","stage_name":"with_purchase","force":false}
[2026-04-12 16:22:13] [INFO] Virtual stage successfully saved {"contact_id":"17008","stage_name":"with_purchase"}
[2026-04-12 16:22:13] [INFO] Virtual stage updated after activity save {"contact_id":"17008"}
[2026-04-12 16:22:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17008","person_id":"19517"}
[2026-04-12 16:22:23] [INFO] Checking activity reminders 
[2026-04-12 16:22:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:22:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:22:34] [INFO] Checking activity reminders 
[2026-04-12 16:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:22:53] [INFO] Checking activity reminders 
[2026-04-12 16:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:23:04] [INFO] Checking activity reminders 
[2026-04-12 16:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:23:23] [INFO] Checking activity reminders 
[2026-04-12 16:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:23:34] [INFO] Checking activity reminders 
[2026-04-12 16:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:23:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:23:53] [INFO] Checking activity reminders 
[2026-04-12 16:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:24:04] [INFO] Checking activity reminders 
[2026-04-12 16:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:24:23] [INFO] Checking activity reminders 
[2026-04-12 16:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:24:34] [INFO] Checking activity reminders 
[2026-04-12 16:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:24:53] [INFO] Checking activity reminders 
[2026-04-12 16:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:25:05] [INFO] Checking activity reminders 
[2026-04-12 16:25:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:25:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:25:07] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 16:25:07] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:25:07] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:25:21] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:25:22] [WARNING] Login attempt failed - wrong password {"user_id":"10","identifier":"خانم  بردبار"}
[2026-04-12 16:25:23] [INFO] Checking activity reminders 
[2026-04-12 16:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:25:28] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:25:29] [INFO] User logged in {"user_id":"10","email":"hanaficars.academy5@gmail.com","role":"agent","via_master":false}
[2026-04-12 16:25:35] [INFO] Checking activity reminders 
[2026-04-12 16:25:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:25:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:25:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 16:25:54] [INFO] Checking activity reminders 
[2026-04-12 16:25:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:25:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:05] [INFO] Checking activity reminders 
[2026-04-12 16:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:07] [INFO] Checking activity reminders 
[2026-04-12 16:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:24] [INFO] Checking activity reminders 
[2026-04-12 16:26:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:26] [INFO] Checking activity reminders 
[2026-04-12 16:26:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:29] [INFO] Checking activity reminders 
[2026-04-12 16:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:35] [INFO] Checking activity reminders 
[2026-04-12 16:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 16:26:40] [INFO] Checking activity reminders 
[2026-04-12 16:26:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:41] [INFO] Checking activity reminders 
[2026-04-12 16:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:43] [INFO] Checking activity reminders 
[2026-04-12 16:26:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:45] [INFO] Checking activity reminders 
[2026-04-12 16:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:46] [INFO] Checking activity reminders 
[2026-04-12 16:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:54] [INFO] Checking activity reminders 
[2026-04-12 16:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:26:54] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 16:27:01] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 16:27:01] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-12 16:27:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 16:27:05] [INFO] Checking activity reminders 
[2026-04-12 16:27:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:27:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:27:24] [INFO] Checking activity reminders 
[2026-04-12 16:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:27:31] [INFO] Checking activity reminders 
[2026-04-12 16:27:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:27:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:27:35] [INFO] Checking activity reminders 
[2026-04-12 16:27:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:27:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:27:54] [INFO] Checking activity reminders 
[2026-04-12 16:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:01] [INFO] Checking activity reminders 
[2026-04-12 16:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:05] [INFO] Checking activity reminders 
[2026-04-12 16:28:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:24] [INFO] Checking activity reminders 
[2026-04-12 16:28:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:30] [INFO] Checking activity reminders 
[2026-04-12 16:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:35] [INFO] Checking activity reminders 
[2026-04-12 16:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:28:54] [INFO] Checking activity reminders 
[2026-04-12 16:28:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:28:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:29:01] [INFO] Checking activity reminders 
[2026-04-12 16:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:29:05] [INFO] Checking activity reminders 
[2026-04-12 16:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:29:24] [INFO] Checking activity reminders 
[2026-04-12 16:29:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:29:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:29:35] [INFO] Checking activity reminders 
[2026-04-12 16:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:29:54] [INFO] Checking activity reminders 
[2026-04-12 16:29:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:29:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:30:05] [INFO] Checking activity reminders 
[2026-04-12 16:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:30:05] [INFO] Checking activity reminders 
[2026-04-12 16:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:30:35] [INFO] Checking activity reminders 
[2026-04-12 16:30:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:30:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:30:42] [INFO] Checking activity reminders 
[2026-04-12 16:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:31:06] [INFO] Checking activity reminders 
[2026-04-12 16:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:31:36] [INFO] Checking activity reminders 
[2026-04-12 16:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:32:06] [INFO] Checking activity reminders 
[2026-04-12 16:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:32:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:32:36] [INFO] Checking activity reminders 
[2026-04-12 16:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:33:06] [INFO] Checking activity reminders 
[2026-04-12 16:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:33:36] [INFO] Checking activity reminders 
[2026-04-12 16:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:33:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1388","deal_id":"local_69d691f9b701b1.78595372","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:33:39","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:33:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1388","is_new_deal":false}
[2026-04-12 16:33:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 16:33:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:33:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:33:39] [INFO] getContactPrimaryPhone called {"contact_id":"1388"}
[2026-04-12 16:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:33:39] [INFO] getContactPrimaryPhone result {"contact_id":"1388","person_found":true,"primary_phone":"9155585826"}
[2026-04-12 16:33:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9155585826"}
[2026-04-12 16:33:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9155585826","contact_id":"1388","deal_id":"local_69d691f9b701b1.78595372","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:33:39"}
[2026-04-12 16:33:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d691f9b701b1.78595372","contact_id":"1388","existing_deal_found":true,"existing_contact_id":"1388","existing_title":"معامله سوم 9155585826 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:33:39"}
[2026-04-12 16:33:39] [INFO] DealController.save validated payments {"deal_id":"local_69d691f9b701b1.78595372","contact_id":"1388","payments_count":0,"status":"lost","pipeline_stage":"معامله جدید"}
[2026-04-12 16:33:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1388","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:33:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d691f9b701b1.78595372","contact_didar_id":"1388","title":"معامله سوم 9155585826 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9155585826","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"هادی مهدویان مهر","existing_deal":"YES","existing_deal_id":"local_69d691f9b701b1.78595372","existing_deal_status":"Pending","server_time":"2026-04-12 16:33:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:33:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d691f9b701b1.78595372","contact_id":"1388","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9155585826 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 16:33:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:33:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1388","person_id":"6979"}
[2026-04-12 16:34:06] [INFO] Checking activity reminders 
[2026-04-12 16:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:34:36] [INFO] Checking activity reminders 
[2026-04-12 16:34:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:34:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:34:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:35:06] [INFO] Checking activity reminders 
[2026-04-12 16:35:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:35:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:35:37] [INFO] Checking activity reminders 
[2026-04-12 16:35:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:35:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:36:07] [INFO] Checking activity reminders 
[2026-04-12 16:36:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:36:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:36:07] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13665","deal_id":"local_69b72bee5a3a19.06156210","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:36:07","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:07] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13665","is_new_deal":false}
[2026-04-12 16:36:07] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 16:36:07] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:36:07] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:36:07] [INFO] getContactPrimaryPhone called {"contact_id":"13665"}
[2026-04-12 16:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:07] [INFO] getContactPrimaryPhone result {"contact_id":"13665","person_found":true,"primary_phone":"9119910327"}
[2026-04-12 16:36:07] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9119910327"}
[2026-04-12 16:36:07] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9119910327","contact_id":"13665","deal_id":"local_69b72bee5a3a19.06156210","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:36:07"}
[2026-04-12 16:36:07] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b72bee5a3a19.06156210","contact_id":"13665","existing_deal_found":true,"existing_contact_id":"13665","existing_title":"معامله دوم 9119910327 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:36:07"}
[2026-04-12 16:36:07] [INFO] DealController.save validated payments {"deal_id":"local_69b72bee5a3a19.06156210","contact_id":"13665","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 16:36:07] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"13665","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:36:07] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b72bee5a3a19.06156210","contact_didar_id":"13665","title":"معامله دوم 9119910327 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9119910327","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حامد کلانتریان","existing_deal":"YES","existing_deal_id":"local_69b72bee5a3a19.06156210","existing_deal_status":"Pending","server_time":"2026-04-12 16:36:07","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:07] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b72bee5a3a19.06156210","contact_id":"13665","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9119910327 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 16:36:07","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:36:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:37] [INFO] Checking activity reminders 
[2026-04-12 16:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:36:38] [INFO] Activity save request {"post_data":{"contact_id":"13665","deal_id":"local_69b72bee5a3a19.06156210","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"همکارش جواب داد هر 2 تا خط \r\nمیگه جا گذاشته در نمایشگاه ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:36:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"13665","note_was_empty":true}
[2026-04-12 16:36:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"13665","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:38] [INFO] Updating virtual stage {"contact_id":"13665","stage_name":"deal_registered","force":false}
[2026-04-12 16:36:38] [INFO] Virtual stage successfully saved {"contact_id":"13665","stage_name":"deal_registered"}
[2026-04-12 16:36:38] [INFO] Virtual stage updated after activity save {"contact_id":"13665"}
[2026-04-12 16:36:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72bee5a3a19.06156210","stage":"تماس پیگیری","status_change":null}
[2026-04-12 16:36:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db98deb04a10.96368010","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69db98deb04a10.96368010"}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:36:38] [INFO] Updating virtual stage {"contact_id":"13665","stage_name":"deal_registered","force":false}
[2026-04-12 16:36:38] [INFO] Virtual stage successfully saved {"contact_id":"13665","stage_name":"deal_registered"}
[2026-04-12 16:36:38] [INFO] Virtual stage updated after activity save {"contact_id":"13665"}
[2026-04-12 16:36:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13665","person_id":"10437"}
[2026-04-12 16:37:07] [INFO] Checking activity reminders 
[2026-04-12 16:37:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:37:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:37:37] [INFO] Checking activity reminders 
[2026-04-12 16:37:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:37:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:37:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:07] [INFO] Checking activity reminders 
[2026-04-12 16:38:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:38:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:38:37] [INFO] Checking activity reminders 
[2026-04-12 16:38:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:38:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:38:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 16:38:45","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 16:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5552","is_new_deal":false}
[2026-04-12 16:38:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 16:38:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:38:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 16:38:45] [INFO] getContactPrimaryPhone called {"contact_id":"5552"}
[2026-04-12 16:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:45] [INFO] getContactPrimaryPhone result {"contact_id":"5552","person_found":true,"primary_phone":"9133547605"}
[2026-04-12 16:38:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133547605"}
[2026-04-12 16:38:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133547605","contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:38:45"}
[2026-04-12 16:38:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","existing_deal_found":true,"existing_contact_id":"5552","existing_title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 16:38:45"}
[2026-04-12 16:38:45] [INFO] DealController.save validated payments {"deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-12 16:38:45] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5552","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 16:38:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f6b20c894.83343045","contact_didar_id":"5552","title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9133547605","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کلانتری","existing_deal":"YES","existing_deal_id":"local_69d20f6b20c894.83343045","existing_deal_status":"Pending","server_time":"2026-04-12 16:38:45","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 16:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f6b20c894.83343045","contact_id":"5552","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9133547605 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 16:38:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 16:38:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Activity save request {"post_data":{"contact_id":"5552","deal_id":"local_69d20f6b20c894.83343045","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:38:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5552","note_was_empty":true}
[2026-04-12 16:38:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"5552","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Updating virtual stage {"contact_id":"5552","stage_name":"deal_registered","force":false}
[2026-04-12 16:38:54] [INFO] Virtual stage successfully saved {"contact_id":"5552","stage_name":"deal_registered"}
[2026-04-12 16:38:54] [INFO] Virtual stage updated after activity save {"contact_id":"5552"}
[2026-04-12 16:38:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20f6b20c894.83343045","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-12 16:38:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db99667ba657.77044822","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69db99667ba657.77044822"}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:38:54] [INFO] Updating virtual stage {"contact_id":"5552","stage_name":"deal_registered","force":false}
[2026-04-12 16:38:54] [INFO] Virtual stage successfully saved {"contact_id":"5552","stage_name":"deal_registered"}
[2026-04-12 16:38:54] [INFO] Virtual stage updated after activity save {"contact_id":"5552"}
[2026-04-12 16:38:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5552","person_id":"14004"}
[2026-04-12 16:39:07] [INFO] Checking activity reminders 
[2026-04-12 16:39:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:39:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:39:37] [INFO] Checking activity reminders 
[2026-04-12 16:39:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:39:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:40:07] [INFO] Checking activity reminders 
[2026-04-12 16:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:40:38] [INFO] Checking activity reminders 
[2026-04-12 16:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:41:08] [INFO] Checking activity reminders 
[2026-04-12 16:41:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:41:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:41:38] [INFO] Checking activity reminders 
[2026-04-12 16:41:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:41:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:42:08] [INFO] Checking activity reminders 
[2026-04-12 16:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:42:38] [INFO] Checking activity reminders 
[2026-04-12 16:42:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:42:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:43:08] [INFO] Checking activity reminders 
[2026-04-12 16:43:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:43:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:43:38] [INFO] Checking activity reminders 
[2026-04-12 16:43:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:43:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:44:08] [INFO] Checking activity reminders 
[2026-04-12 16:44:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:44:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:44:38] [INFO] Checking activity reminders 
[2026-04-12 16:44:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:44:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:45:08] [INFO] Checking activity reminders 
[2026-04-12 16:45:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:45:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:45:38] [INFO] Checking activity reminders 
[2026-04-12 16:45:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:45:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:45:42] [INFO] Checking activity reminders 
[2026-04-12 16:45:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:45:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:46:03] [INFO] Activity save request {"post_data":{"contact_id":"15908","deal_id":"local_69d68d50048f76.91757978","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت واریز 6ماهه الان","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:46:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15908","note_was_empty":true}
[2026-04-12 16:46:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"15908","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:03] [INFO] Updating virtual stage {"contact_id":"15908","stage_name":"deal_registered","force":false}
[2026-04-12 16:46:03] [INFO] Virtual stage successfully saved {"contact_id":"15908","stage_name":"deal_registered"}
[2026-04-12 16:46:03] [INFO] Virtual stage updated after activity save {"contact_id":"15908"}
[2026-04-12 16:46:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68d50048f76.91757978","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 16:46:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db9b138daae4.87952563","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69db9b138daae4.87952563"}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:03] [INFO] Updating virtual stage {"contact_id":"15908","stage_name":"deal_registered","force":false}
[2026-04-12 16:46:03] [INFO] Virtual stage successfully saved {"contact_id":"15908","stage_name":"deal_registered"}
[2026-04-12 16:46:03] [INFO] Virtual stage updated after activity save {"contact_id":"15908"}
[2026-04-12 16:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-12 16:46:09] [INFO] Checking activity reminders 
[2026-04-12 16:46:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:46:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:46:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:46:12] [INFO] Checking activity reminders 
[2026-04-12 16:46:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:46:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:46:32] [INFO] Lead update received {"contact_id":"702","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 16:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:46:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"702"}
[2026-04-12 16:46:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:46:39] [INFO] Checking activity reminders 
[2026-04-12 16:46:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:46:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:46:42] [INFO] Checking activity reminders 
[2026-04-12 16:46:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:46:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:47:09] [INFO] Checking activity reminders 
[2026-04-12 16:47:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:47:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:47:12] [INFO] Checking activity reminders 
[2026-04-12 16:47:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:47:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:47:20] [INFO] Activity save request {"post_data":{"contact_id":"702","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"کانال چندین بار در این یک هفته پشتیبانی \/ شماره مادرش دسترسی دادیم بله چالش داشت \/ 9129634090 خط مادرش","activity_duration":"50","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 16:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:47:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 16:47:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 16:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:47:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"702","note_was_empty":true}
[2026-04-12 16:47:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"702","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 16:47:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69db9b6059cb30.03011329","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 16:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:47:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69db9b6059cb30.03011329"}
[2026-04-12 16:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:47:20] [INFO] Updating virtual stage {"contact_id":"702","stage_name":"deal_registered","force":false}
[2026-04-12 16:47:20] [INFO] Virtual stage successfully saved {"contact_id":"702","stage_name":"deal_registered"}
[2026-04-12 16:47:20] [INFO] Virtual stage updated after activity save {"contact_id":"702"}
[2026-04-12 16:47:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"702","person_id":"20169"}
[2026-04-12 16:47:39] [INFO] Checking activity reminders 
[2026-04-12 16:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:47:42] [INFO] Checking activity reminders 
[2026-04-12 16:47:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:47:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:48:09] [INFO] Checking activity reminders 
[2026-04-12 16:48:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:48:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:48:39] [INFO] Checking activity reminders 
[2026-04-12 16:48:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:48:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:49:09] [INFO] Checking activity reminders 
[2026-04-12 16:49:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:49:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:49:39] [INFO] Checking activity reminders 
[2026-04-12 16:49:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:49:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:50:09] [INFO] Checking activity reminders 
[2026-04-12 16:50:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:50:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:50:39] [INFO] Checking activity reminders 
[2026-04-12 16:50:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:50:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:51:09] [INFO] Checking activity reminders 
[2026-04-12 16:51:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:51:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:51:40] [INFO] Checking activity reminders 
[2026-04-12 16:51:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:51:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:52:10] [INFO] Checking activity reminders 
[2026-04-12 16:52:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:52:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:52:40] [INFO] Checking activity reminders 
[2026-04-12 16:52:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:52:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:53:08] [INFO] Checking activity reminders 
[2026-04-12 16:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:53:10] [INFO] Checking activity reminders 
[2026-04-12 16:53:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:53:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:53:38] [INFO] Checking activity reminders 
[2026-04-12 16:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:53:40] [INFO] Checking activity reminders 
[2026-04-12 16:53:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:53:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:54:10] [INFO] Checking activity reminders 
[2026-04-12 16:54:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:54:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:54:40] [INFO] Checking activity reminders 
[2026-04-12 16:54:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:54:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:55:10] [INFO] Checking activity reminders 
[2026-04-12 16:55:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:55:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:55:14] [INFO] Checking activity reminders 
[2026-04-12 16:55:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:55:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:55:40] [INFO] Checking activity reminders 
[2026-04-12 16:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:56:11] [INFO] Checking activity reminders 
[2026-04-12 16:56:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:56:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:56:41] [INFO] Checking activity reminders 
[2026-04-12 16:56:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:56:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:57:11] [INFO] Checking activity reminders 
[2026-04-12 16:57:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:57:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:57:18] [INFO] Checking activity reminders 
[2026-04-12 16:57:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:57:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:57:22] [INFO] Checking activity reminders 
[2026-04-12 16:57:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:57:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:57:41] [INFO] Checking activity reminders 
[2026-04-12 16:57:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:57:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:57:52] [INFO] Checking activity reminders 
[2026-04-12 16:57:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:57:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:58:11] [INFO] Checking activity reminders 
[2026-04-12 16:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:58:41] [INFO] Checking activity reminders 
[2026-04-12 16:58:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:58:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:59:04] [INFO] Checking activity reminders 
[2026-04-12 16:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:59:11] [INFO] Checking activity reminders 
[2026-04-12 16:59:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:59:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:59:34] [INFO] Checking activity reminders 
[2026-04-12 16:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:59:41] [INFO] Checking activity reminders 
[2026-04-12 16:59:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:59:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 16:59:49] [INFO] Checking activity reminders 
[2026-04-12 16:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 16:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:00:04] [INFO] Checking activity reminders 
[2026-04-12 17:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:00:11] [INFO] Checking activity reminders 
[2026-04-12 17:00:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:00:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:00:34] [INFO] Checking activity reminders 
[2026-04-12 17:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:00:41] [INFO] Checking activity reminders 
[2026-04-12 17:00:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:00:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:01:04] [INFO] Checking activity reminders 
[2026-04-12 17:01:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:01:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:01:11] [INFO] Checking activity reminders 
[2026-04-12 17:01:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:01:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:01:35] [INFO] Checking activity reminders 
[2026-04-12 17:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:01:42] [INFO] Checking activity reminders 
[2026-04-12 17:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:02:05] [INFO] Checking activity reminders 
[2026-04-12 17:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:02:12] [INFO] Checking activity reminders 
[2026-04-12 17:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:02:35] [INFO] Checking activity reminders 
[2026-04-12 17:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:02:42] [INFO] Checking activity reminders 
[2026-04-12 17:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:03:05] [INFO] Checking activity reminders 
[2026-04-12 17:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:03:12] [INFO] Checking activity reminders 
[2026-04-12 17:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:03:35] [INFO] Checking activity reminders 
[2026-04-12 17:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:03:42] [INFO] Checking activity reminders 
[2026-04-12 17:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:04:05] [INFO] Checking activity reminders 
[2026-04-12 17:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:04:12] [INFO] Checking activity reminders 
[2026-04-12 17:04:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:04:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:04:35] [INFO] Checking activity reminders 
[2026-04-12 17:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:04:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:04:42] [INFO] Checking activity reminders 
[2026-04-12 17:04:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:04:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:05:05] [INFO] Checking activity reminders 
[2026-04-12 17:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:05:12] [INFO] Checking activity reminders 
[2026-04-12 17:05:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:05:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:05:36] [INFO] Checking activity reminders 
[2026-04-12 17:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:05:42] [INFO] Checking activity reminders 
[2026-04-12 17:05:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:05:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:06:06] [INFO] Checking activity reminders 
[2026-04-12 17:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:06:12] [INFO] Checking activity reminders 
[2026-04-12 17:06:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:06:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:06:36] [INFO] Checking activity reminders 
[2026-04-12 17:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:06:42] [INFO] Checking activity reminders 
[2026-04-12 17:06:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:06:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:07:06] [INFO] Checking activity reminders 
[2026-04-12 17:07:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:07:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:07:12] [INFO] Checking activity reminders 
[2026-04-12 17:07:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:07:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:07:36] [INFO] Checking activity reminders 
[2026-04-12 17:07:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:07:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:07:42] [INFO] Checking activity reminders 
[2026-04-12 17:07:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:07:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:08:06] [INFO] Checking activity reminders 
[2026-04-12 17:08:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:08:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:08:13] [INFO] Checking activity reminders 
[2026-04-12 17:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:08:36] [INFO] Checking activity reminders 
[2026-04-12 17:08:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:08:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:08:43] [INFO] Checking activity reminders 
[2026-04-12 17:08:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:08:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:09:06] [INFO] Checking activity reminders 
[2026-04-12 17:09:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:09:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:09:13] [INFO] Checking activity reminders 
[2026-04-12 17:09:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:09:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:09:36] [INFO] Checking activity reminders 
[2026-04-12 17:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:09:43] [INFO] Checking activity reminders 
[2026-04-12 17:09:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:09:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:10:06] [INFO] Checking activity reminders 
[2026-04-12 17:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:10:13] [INFO] Checking activity reminders 
[2026-04-12 17:10:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:10:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:10:36] [INFO] Checking activity reminders 
[2026-04-12 17:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:10:43] [INFO] Checking activity reminders 
[2026-04-12 17:10:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:10:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:11:06] [INFO] Checking activity reminders 
[2026-04-12 17:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:11:13] [INFO] Checking activity reminders 
[2026-04-12 17:11:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:11:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:11:36] [INFO] Checking activity reminders 
[2026-04-12 17:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:11:43] [INFO] Checking activity reminders 
[2026-04-12 17:11:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:11:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:11:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:07] [INFO] Checking activity reminders 
[2026-04-12 17:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:12:13] [INFO] Checking activity reminders 
[2026-04-12 17:12:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:12:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:12:37] [INFO] Checking activity reminders 
[2026-04-12 17:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:12:41] [INFO] Activity save request {"post_data":{"contact_id":"local_69d223e1cebb36.28765061","deal_id":"local_69d223e1d80cc","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"اوسکول میگه زیاده مبلغ 15بیشتر نمیدم \/ مشاوره هم گفتم 40ت هست تخفیف بگیرم نهایتا 25ت \r\nنمیاود هزینه کنه میخواد با کمترین استفاده کنه \r\n","activity_duration":"20","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:12:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69d223e1cebb36.28765061","note_was_empty":true}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:41] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered","force":false}
[2026-04-12 17:12:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered"}
[2026-04-12 17:12:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 17:12:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d223e1d80cc","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 17:12:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba151b21d55.03506823","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba151b21d55.03506823"}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:41] [INFO] Updating virtual stage {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered","force":false}
[2026-04-12 17:12:41] [INFO] Virtual stage successfully saved {"contact_id":"local_69d223e1cebb36.28765061","stage_name":"deal_registered"}
[2026-04-12 17:12:41] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d223e1cebb36.28765061"}
[2026-04-12 17:12:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-12 17:12:43] [INFO] Checking activity reminders 
[2026-04-12 17:12:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:12:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:13:07] [INFO] Checking activity reminders 
[2026-04-12 17:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:13:13] [INFO] Checking activity reminders 
[2026-04-12 17:13:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:13:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:13:24] [INFO] Activity save request {"post_data":{"contact_id":"17403","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در مورد cip  قبلا توضیح داده شد \/ 1.500 میخواست نقد طلا بفروشه که استاد تایید نکرد \r\nمجدد برای عضویت در کانال تماس گرفتم میگه الان سرمایه گذاری در کارش انجام شده و شریک داره در صورت ازاد شدن سرمایه تماس میگیره برای کانال \r\nپرزنت 6 ماهه \r\n21 دقیقه مشاوره در مورد بحران جنگ \r\nمیگه کلا دلسرد شدم نمیتونم تمرکز داشته باشم ","activity_duration":"21","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:13:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:13:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:13:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"17403","note_was_empty":true}
[2026-04-12 17:13:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"17403","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 17:13:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba17cbd63a6.79840301","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:13:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba17cbd63a6.79840301"}
[2026-04-12 17:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:13:24] [INFO] Updating virtual stage {"contact_id":"17403","stage_name":"deal_registered","force":false}
[2026-04-12 17:13:24] [INFO] Virtual stage successfully saved {"contact_id":"17403","stage_name":"deal_registered"}
[2026-04-12 17:13:24] [INFO] Virtual stage updated after activity save {"contact_id":"17403"}
[2026-04-12 17:13:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17403","person_id":"17949"}
[2026-04-12 17:13:37] [INFO] Checking activity reminders 
[2026-04-12 17:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:13:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:13:44] [INFO] Checking activity reminders 
[2026-04-12 17:13:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:13:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:14:07] [INFO] Checking activity reminders 
[2026-04-12 17:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:14:14] [INFO] Checking activity reminders 
[2026-04-12 17:14:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:14:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:14:37] [INFO] Checking activity reminders 
[2026-04-12 17:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:14:44] [INFO] Checking activity reminders 
[2026-04-12 17:14:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:14:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:15:07] [INFO] Checking activity reminders 
[2026-04-12 17:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:15:14] [INFO] Checking activity reminders 
[2026-04-12 17:15:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:15:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:15:36] [INFO] Lead update received {"contact_id":"1738","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 17:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:15:36] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1738"}
[2026-04-12 17:15:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:15:37] [INFO] Checking activity reminders 
[2026-04-12 17:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:15:44] [INFO] Checking activity reminders 
[2026-04-12 17:15:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:15:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:15:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:16:07] [INFO] Checking activity reminders 
[2026-04-12 17:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:16:14] [INFO] Checking activity reminders 
[2026-04-12 17:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:16:37] [INFO] Checking activity reminders 
[2026-04-12 17:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:16:44] [INFO] Checking activity reminders 
[2026-04-12 17:16:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:16:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:17:07] [INFO] Checking activity reminders 
[2026-04-12 17:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:17:14] [INFO] Checking activity reminders 
[2026-04-12 17:17:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:17:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:17:14] [INFO] Activity save request {"post_data":{"contact_id":"1738","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"25 فقره چک برگشتی داره \r\nدقیقا پشت مغازه اش در جنگ حمله شد \r\nکسب و کارش کلا تعطیل شد \r\nپرزنت 6 ماهه \r\nدر صورت تاییید خودش تماس \r\nپرزنت 6 ماهه کانال \r\nارسال کانال عمومی در بله ","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:17:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:17:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:17:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1738","note_was_empty":true}
[2026-04-12 17:17:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"1738","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 17:17:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba262e8a3e8.55422826","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:17:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba262e8a3e8.55422826"}
[2026-04-12 17:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:17:14] [INFO] Updating virtual stage {"contact_id":"1738","stage_name":"with_purchase","force":false}
[2026-04-12 17:17:14] [INFO] Virtual stage successfully saved {"contact_id":"1738","stage_name":"with_purchase"}
[2026-04-12 17:17:14] [INFO] Virtual stage updated after activity save {"contact_id":"1738"}
[2026-04-12 17:17:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1738","person_id":"2502"}
[2026-04-12 17:17:37] [INFO] Checking activity reminders 
[2026-04-12 17:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:17:44] [INFO] Checking activity reminders 
[2026-04-12 17:17:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:17:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:17:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:18:07] [INFO] Checking activity reminders 
[2026-04-12 17:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:18:14] [INFO] Checking activity reminders 
[2026-04-12 17:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:18:38] [INFO] Checking activity reminders 
[2026-04-12 17:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:18:44] [INFO] Checking activity reminders 
[2026-04-12 17:18:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:18:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:19:08] [INFO] Checking activity reminders 
[2026-04-12 17:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:19:14] [INFO] Checking activity reminders 
[2026-04-12 17:19:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:19:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:19:38] [INFO] Checking activity reminders 
[2026-04-12 17:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:19:45] [INFO] Checking activity reminders 
[2026-04-12 17:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:20:08] [INFO] Checking activity reminders 
[2026-04-12 17:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:20:15] [INFO] Checking activity reminders 
[2026-04-12 17:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:20:38] [INFO] Checking activity reminders 
[2026-04-12 17:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:20:45] [INFO] Checking activity reminders 
[2026-04-12 17:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:21:15] [INFO] Checking activity reminders 
[2026-04-12 17:21:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:21:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:21:45] [INFO] Checking activity reminders 
[2026-04-12 17:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:22:15] [INFO] Checking activity reminders 
[2026-04-12 17:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:22:45] [INFO] Checking activity reminders 
[2026-04-12 17:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:23:15] [INFO] Checking activity reminders 
[2026-04-12 17:23:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:23:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:23:40] [INFO] Checking activity reminders 
[2026-04-12 17:23:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:23:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:23:45] [INFO] Checking activity reminders 
[2026-04-12 17:23:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:23:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:24:15] [INFO] Checking activity reminders 
[2026-04-12 17:24:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:24:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:24:45] [INFO] Checking activity reminders 
[2026-04-12 17:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:25:15] [INFO] Checking activity reminders 
[2026-04-12 17:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:25:46] [INFO] Checking activity reminders 
[2026-04-12 17:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:26:16] [INFO] Checking activity reminders 
[2026-04-12 17:26:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:26:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:26:46] [INFO] Checking activity reminders 
[2026-04-12 17:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:27:16] [INFO] Checking activity reminders 
[2026-04-12 17:27:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:27:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:27:46] [INFO] Checking activity reminders 
[2026-04-12 17:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:28:16] [INFO] Checking activity reminders 
[2026-04-12 17:28:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:28:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:28:46] [INFO] Checking activity reminders 
[2026-04-12 17:28:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:28:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:29:16] [INFO] Checking activity reminders 
[2026-04-12 17:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:29:46] [INFO] Checking activity reminders 
[2026-04-12 17:29:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:29:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:30:16] [INFO] Checking activity reminders 
[2026-04-12 17:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:30:47] [INFO] Checking activity reminders 
[2026-04-12 17:30:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:30:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:31:17] [INFO] Checking activity reminders 
[2026-04-12 17:31:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:31:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:31:47] [INFO] Checking activity reminders 
[2026-04-12 17:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:32:17] [INFO] Checking activity reminders 
[2026-04-12 17:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:32:47] [INFO] Checking activity reminders 
[2026-04-12 17:32:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:32:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:33:12] [INFO] Checking activity reminders 
[2026-04-12 17:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:33:17] [INFO] Checking activity reminders 
[2026-04-12 17:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:33:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:33:47] [INFO] Checking activity reminders 
[2026-04-12 17:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:34:17] [INFO] Checking activity reminders 
[2026-04-12 17:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:34:17] [INFO] Checking activity reminders 
[2026-04-12 17:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:34:47] [INFO] Checking activity reminders 
[2026-04-12 17:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:34:47] [INFO] Checking activity reminders 
[2026-04-12 17:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:35:03] [INFO] Activity save request {"post_data":{"contact_id":"5334","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"39ت تسویه 6ماهه هست","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:35:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:35:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:35:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"5334","note_was_empty":true}
[2026-04-12 17:35:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"5334","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 17:35:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba68f221aa1.97945756","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:35:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba68f221aa1.97945756"}
[2026-04-12 17:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:35:03] [INFO] Updating virtual stage {"contact_id":"5334","stage_name":"deal_registered","force":false}
[2026-04-12 17:35:03] [INFO] Virtual stage successfully saved {"contact_id":"5334","stage_name":"deal_registered"}
[2026-04-12 17:35:03] [INFO] Virtual stage updated after activity save {"contact_id":"5334"}
[2026-04-12 17:35:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5334","person_id":"14038"}
[2026-04-12 17:35:17] [INFO] Checking activity reminders 
[2026-04-12 17:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:35:17] [INFO] Checking activity reminders 
[2026-04-12 17:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:35:47] [INFO] Checking activity reminders 
[2026-04-12 17:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:36:17] [INFO] Checking activity reminders 
[2026-04-12 17:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:36:48] [INFO] Checking activity reminders 
[2026-04-12 17:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:37:18] [INFO] Checking activity reminders 
[2026-04-12 17:37:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:37:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:37:28] [INFO] Checking activity reminders 
[2026-04-12 17:37:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:37:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:37:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9650","person_id":"1444"}
[2026-04-12 17:37:48] [INFO] Checking activity reminders 
[2026-04-12 17:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:37:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_6987227c338ff3.15760851","deal_id":"local_69874b4e3c0352.80502383","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 17:37:48","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 17:37:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:37:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_6987227c338ff3.15760851","is_new_deal":false}
[2026-04-12 17:37:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 17:37:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 17:37:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-12 17:37:48] [INFO] getContactPrimaryPhone called {"contact_id":"local_6987227c338ff3.15760851"}
[2026-04-12 17:37:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:37:48] [INFO] getContactPrimaryPhone result {"contact_id":"local_6987227c338ff3.15760851","person_found":true,"primary_phone":"9210460713"}
[2026-04-12 17:37:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9210460713"}
[2026-04-12 17:37:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9210460713","contact_id":"local_6987227c338ff3.15760851","deal_id":"local_69874b4e3c0352.80502383","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 17:37:48"}
[2026-04-12 17:37:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69874b4e3c0352.80502383","contact_id":"local_6987227c338ff3.15760851","existing_deal_found":true,"existing_contact_id":"local_6987227c338ff3.15760851","existing_title":"معامله دوم 9210460713 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 17:37:48"}
[2026-04-12 17:37:48] [INFO] DealController.save validated payments {"deal_id":"local_69874b4e3c0352.80502383","contact_id":"local_6987227c338ff3.15760851","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 17:37:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_6987227c338ff3.15760851","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 17:37:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69874b4e3c0352.80502383","contact_didar_id":"local_6987227c338ff3.15760851","title":"معامله دوم 9210460713 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9210460713","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیرهادی اقدم","existing_deal":"YES","existing_deal_id":"local_69874b4e3c0352.80502383","existing_deal_status":"Pending","server_time":"2026-04-12 17:37:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 17:37:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:37:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69874b4e3c0352.80502383","contact_id":"local_6987227c338ff3.15760851","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9210460713 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-12 17:37:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 17:37:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:38:18] [INFO] Checking activity reminders 
[2026-04-12 17:38:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:38:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:38:35] [INFO] Checking activity reminders 
[2026-04-12 17:38:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:38:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:38:48] [INFO] Checking activity reminders 
[2026-04-12 17:38:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:38:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:39:18] [INFO] Checking activity reminders 
[2026-04-12 17:39:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:39:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:39:30] [INFO] Checking activity reminders 
[2026-04-12 17:39:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:39:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:39:48] [INFO] Checking activity reminders 
[2026-04-12 17:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:40:00] [INFO] Checking activity reminders 
[2026-04-12 17:40:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:40:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-12 17:40:18] [INFO] Checking activity reminders 
[2026-04-12 17:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:40:23] [INFO] Activity save request {"post_data":{"contact_id":"local_6987227c338ff3.15760851","deal_id":"local_69874b4e3c0352.80502383","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در کانال پرواز 5 میلیون اشتراک 3 اهه دریافت کرده \r\nاصلا رضایت نداشت \r\nمیگه ربات بود \/ پشتیبانی و تماس نداشت \r\nپرزنت 6 ماهه و خدمات پشتیبانی و کانال اموزشی vip  بهش گفتم \r\nپیامک ارسال شد \r\nدرصورت تایید حضور اطلاع میده ","activity_duration":"17","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:40:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_6987227c338ff3.15760851","note_was_empty":true}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:23] [INFO] Updating virtual stage {"contact_id":"local_6987227c338ff3.15760851","stage_name":"deal_registered","force":false}
[2026-04-12 17:40:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6987227c338ff3.15760851","stage_name":"deal_registered"}
[2026-04-12 17:40:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6987227c338ff3.15760851"}
[2026-04-12 17:40:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69874b4e3c0352.80502383","stage":"تماس پیگیری","status_change":null}
[2026-04-12 17:40:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba7cf085837.74438176","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba7cf085837.74438176"}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:23] [INFO] Updating virtual stage {"contact_id":"local_6987227c338ff3.15760851","stage_name":"deal_registered","force":false}
[2026-04-12 17:40:23] [INFO] Virtual stage successfully saved {"contact_id":"local_6987227c338ff3.15760851","stage_name":"deal_registered"}
[2026-04-12 17:40:23] [INFO] Virtual stage updated after activity save {"contact_id":"local_6987227c338ff3.15760851"}
[2026-04-12 17:40:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_6987227c338ff3.15760851","person_id":"21583"}
[2026-04-12 17:40:29] [INFO] Checking activity reminders 
[2026-04-12 17:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:40:48] [INFO] Checking activity reminders 
[2026-04-12 17:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:41:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:41:18] [INFO] Checking activity reminders 
[2026-04-12 17:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:41:48] [INFO] Checking activity reminders 
[2026-04-12 17:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:42:18] [INFO] Checking activity reminders 
[2026-04-12 17:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:42:34] [INFO] Checking activity reminders 
[2026-04-12 17:42:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:42:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:42:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-12 17:42:49] [INFO] Checking activity reminders 
[2026-04-12 17:42:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:42:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:42:52] [INFO] Activity save request {"post_data":{"contact_id":"4373","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\nپیام در بله ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 17:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:42:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 17:42:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 17:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:42:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4373","note_was_empty":true}
[2026-04-12 17:42:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"4373","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 17:42:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dba864a81cd7.59366825","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 17:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:42:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69dba864a81cd7.59366825"}
[2026-04-12 17:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:42:52] [INFO] Updating virtual stage {"contact_id":"4373","stage_name":"deal_registered","force":false}
[2026-04-12 17:42:52] [INFO] Virtual stage successfully saved {"contact_id":"4373","stage_name":"deal_registered"}
[2026-04-12 17:42:52] [INFO] Virtual stage updated after activity save {"contact_id":"4373"}
[2026-04-12 17:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4373","person_id":"13987"}
[2026-04-12 17:43:19] [INFO] Checking activity reminders 
[2026-04-12 17:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:43:49] [INFO] Checking activity reminders 
[2026-04-12 17:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:44:19] [INFO] Checking activity reminders 
[2026-04-12 17:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:44:49] [INFO] Checking activity reminders 
[2026-04-12 17:44:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:44:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:45:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 17:45:19] [INFO] Checking activity reminders 
[2026-04-12 17:45:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:45:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:45:49] [INFO] Checking activity reminders 
[2026-04-12 17:45:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:45:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:46:19] [INFO] Checking activity reminders 
[2026-04-12 17:46:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:46:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:46:49] [INFO] Checking activity reminders 
[2026-04-12 17:46:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:46:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:47:19] [INFO] Checking activity reminders 
[2026-04-12 17:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:47:49] [INFO] Checking activity reminders 
[2026-04-12 17:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:48:19] [INFO] Checking activity reminders 
[2026-04-12 17:48:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:48:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:48:40] [INFO] Checking activity reminders 
[2026-04-12 17:48:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:48:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:48:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-12 17:48:50] [INFO] Checking activity reminders 
[2026-04-12 17:48:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:48:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:49:20] [INFO] Checking activity reminders 
[2026-04-12 17:49:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:49:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:49:33] [INFO] Checking activity reminders 
[2026-04-12 17:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:49:50] [INFO] Checking activity reminders 
[2026-04-12 17:49:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:49:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:50:04] [INFO] Checking activity reminders 
[2026-04-12 17:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:50:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8967","person_id":"19677"}
[2026-04-12 17:50:20] [INFO] Checking activity reminders 
[2026-04-12 17:50:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:50:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:50:50] [INFO] Checking activity reminders 
[2026-04-12 17:50:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:50:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:51:20] [INFO] Checking activity reminders 
[2026-04-12 17:51:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:51:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:51:50] [INFO] Checking activity reminders 
[2026-04-12 17:51:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:51:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:52:20] [INFO] Checking activity reminders 
[2026-04-12 17:52:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:52:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:52:49] [INFO] Checking activity reminders 
[2026-04-12 17:52:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:52:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:52:50] [INFO] Checking activity reminders 
[2026-04-12 17:52:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:52:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:53:20] [INFO] Checking activity reminders 
[2026-04-12 17:53:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:53:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:53:50] [INFO] Checking activity reminders 
[2026-04-12 17:53:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:53:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:53:59] [INFO] Checking activity reminders 
[2026-04-12 17:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:54:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-12 17:54:21] [INFO] Checking activity reminders 
[2026-04-12 17:54:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:54:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:54:29] [INFO] Checking activity reminders 
[2026-04-12 17:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:54:45] [INFO] Checking activity reminders 
[2026-04-12 17:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:54:51] [INFO] Checking activity reminders 
[2026-04-12 17:54:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:54:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:55:21] [INFO] Checking activity reminders 
[2026-04-12 17:55:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:55:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:55:27] [INFO] Checking activity reminders 
[2026-04-12 17:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:55:51] [INFO] Checking activity reminders 
[2026-04-12 17:55:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:55:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:56:21] [INFO] Checking activity reminders 
[2026-04-12 17:56:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:56:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:56:51] [INFO] Checking activity reminders 
[2026-04-12 17:56:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:56:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:57:21] [INFO] Checking activity reminders 
[2026-04-12 17:57:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:57:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:57:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 17:57:51] [INFO] Checking activity reminders 
[2026-04-12 17:57:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:57:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:58:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-12 17:58:21] [INFO] Checking activity reminders 
[2026-04-12 17:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:58:25] [INFO] Checking activity reminders 
[2026-04-12 17:58:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:58:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-12 17:58:51] [INFO] Lead update received {"contact_id":"9532","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-12 17:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-12 17:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-12 17:58:51] [DEBUG] findByPhone: Found person {"phones":["9913102532"],"found_id":"21979","found_didar_id":"local_69d224d8e7aef7.68866400","found_name":"میلاد حسینی"}
[2026-04-12 17:58:51] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9913102532","found_didar_id":"local_69d224d8e7aef7.68866400","found_local_id":"21979","found_name":"میلاد حسینی"}
[2026-04-12 17:58:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 17:58:51] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9913102532","found_id":"21979","found_didar_id":"local_69d224d8e7aef7.68866400","exclude_id":6324,"exclude_didar_id":"9532"}
[2026-04-12 17:58:51] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای میلاد حسینی (مسئول: خانم توانا) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-12 17:58:51] [INFO] Checking activity reminders 
[2026-04-12 17:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:58:55] [INFO] Checking activity reminders 
[2026-04-12 17:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:59:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-12 17:59:21] [INFO] Checking activity reminders 
[2026-04-12 17:59:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:59:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:59:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 17:59:25] [INFO] Checking activity reminders 
[2026-04-12 17:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:59:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 17:59:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-12 17:59:30] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-12 17:59:51] [INFO] Checking activity reminders 
[2026-04-12 17:59:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:59:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 17:59:56] [INFO] Checking activity reminders 
[2026-04-12 17:59:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 17:59:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:00:22] [INFO] Checking activity reminders 
[2026-04-12 18:00:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:00:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:00:26] [INFO] Checking activity reminders 
[2026-04-12 18:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:00:52] [INFO] Checking activity reminders 
[2026-04-12 18:00:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:00:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:00:56] [INFO] Checking activity reminders 
[2026-04-12 18:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:16] [INFO] Checking activity reminders 
[2026-04-12 18:01:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:18] [INFO] Checking activity reminders 
[2026-04-12 18:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:19] [INFO] Checking activity reminders 
[2026-04-12 18:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:21] [INFO] Checking activity reminders 
[2026-04-12 18:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:26] [INFO] Checking activity reminders 
[2026-04-12 18:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:26] [INFO] Checking activity reminders 
[2026-04-12 18:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:30] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 18:01:56] [INFO] Checking activity reminders 
[2026-04-12 18:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:01:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:02:00] [INFO] Checking activity reminders 
[2026-04-12 18:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:02:26] [INFO] Checking activity reminders 
[2026-04-12 18:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:02:30] [INFO] Checking activity reminders 
[2026-04-12 18:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:02:56] [INFO] Checking activity reminders 
[2026-04-12 18:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:03:00] [INFO] Checking activity reminders 
[2026-04-12 18:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:03:26] [INFO] Checking activity reminders 
[2026-04-12 18:03:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:03:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:03:30] [INFO] Checking activity reminders 
[2026-04-12 18:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:03:56] [INFO] Checking activity reminders 
[2026-04-12 18:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:04:01] [INFO] Checking activity reminders 
[2026-04-12 18:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:04:26] [INFO] Checking activity reminders 
[2026-04-12 18:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:04:31] [INFO] Checking activity reminders 
[2026-04-12 18:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:04:56] [INFO] Checking activity reminders 
[2026-04-12 18:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:05:01] [INFO] Checking activity reminders 
[2026-04-12 18:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:05:26] [INFO] Checking activity reminders 
[2026-04-12 18:05:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:05:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:05:31] [INFO] Checking activity reminders 
[2026-04-12 18:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:06:01] [INFO] Checking activity reminders 
[2026-04-12 18:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:06:31] [INFO] Checking activity reminders 
[2026-04-12 18:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:07:01] [INFO] Checking activity reminders 
[2026-04-12 18:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:07:31] [INFO] Checking activity reminders 
[2026-04-12 18:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:08:01] [INFO] Checking activity reminders 
[2026-04-12 18:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:08:15] [INFO] Checking activity reminders 
[2026-04-12 18:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:08:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-12 18:08:31] [INFO] Checking activity reminders 
[2026-04-12 18:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:08:45] [INFO] Checking activity reminders 
[2026-04-12 18:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:08:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:08:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:08:52] [INFO] generateDealTitle result {"contact_id":"1330","person_name":"عرفان عباسی","mobile":"9153840873","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153840873"}
[2026-04-12 18:09:01] [INFO] Checking activity reminders 
[2026-04-12 18:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:09:08] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1330","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 18:09:08","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:09:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"1330","is_new_deal":true}
[2026-04-12 18:09:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:09:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:09:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:09:08] [INFO] getContactPrimaryPhone called {"contact_id":"1330"}
[2026-04-12 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:09:08] [INFO] getContactPrimaryPhone result {"contact_id":"1330","person_found":true,"primary_phone":"9153840873"}
[2026-04-12 18:09:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153840873"}
[2026-04-12 18:09:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153840873","contact_id":"1330","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 18:09:08"}
[2026-04-12 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:09:08] [INFO] generateDealTitle result {"contact_id":"1330","person_name":"عرفان عباسی","mobile":"9153840873","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9153840873"}
[2026-04-12 18:09:08] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"1330","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 18:09:08] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1330","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 18:09:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"1330","title":"معامله دوم 9153840873 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9153840873","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"عرفان عباسی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 18:09:08","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:09:08] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 18:09:08] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"1330","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9153840873 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-12 18:09:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 18:09:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:09:24] [INFO] Checking activity reminders 
[2026-04-12 18:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:09:32] [INFO] Checking activity reminders 
[2026-04-12 18:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:09:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:09:54] [INFO] Checking activity reminders 
[2026-04-12 18:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:10:02] [INFO] Checking activity reminders 
[2026-04-12 18:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:10:24] [INFO] Checking activity reminders 
[2026-04-12 18:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:10:32] [INFO] Checking activity reminders 
[2026-04-12 18:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:10:54] [INFO] Checking activity reminders 
[2026-04-12 18:10:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:10:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:11:02] [INFO] Checking activity reminders 
[2026-04-12 18:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:11:02] [INFO] Activity save request {"post_data":{"contact_id":"1330","deal_id":"local_69dbae8cd1c7b2.33220353","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه ماشین فروختم اسفند404 طلای 19 میلیونی خریدم طمع کردم \r\nالان چیکار کنم شما مشورت بدید \/ بهش گفتم من اجازه و تخصص ندارم \r\nپرزنت 6 ماهه با پشتیبانی 39\r\nبدون پشتیبانی 27\r\nپیامک ارسال ","activity_duration":"7","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:11:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1330","note_was_empty":true}
[2026-04-12 18:11:02] [INFO] Didar write disabled; saving activity locally {"contact_id":"1330","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:02] [INFO] Updating virtual stage {"contact_id":"1330","stage_name":"deal_registered","force":false}
[2026-04-12 18:11:02] [INFO] Virtual stage successfully saved {"contact_id":"1330","stage_name":"deal_registered"}
[2026-04-12 18:11:02] [INFO] Virtual stage updated after activity save {"contact_id":"1330"}
[2026-04-12 18:11:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dbae8cd1c7b2.33220353","stage":"تماس پیگیری","status_change":null}
[2026-04-12 18:11:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbaefebaaf13.96953328","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbaefebaaf13.96953328"}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:02] [INFO] Updating virtual stage {"contact_id":"1330","stage_name":"deal_registered","force":false}
[2026-04-12 18:11:02] [INFO] Virtual stage successfully saved {"contact_id":"1330","stage_name":"deal_registered"}
[2026-04-12 18:11:02] [INFO] Virtual stage updated after activity save {"contact_id":"1330"}
[2026-04-12 18:11:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1330","person_id":"17491"}
[2026-04-12 18:11:24] [INFO] Checking activity reminders 
[2026-04-12 18:11:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:11:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:11:32] [INFO] Checking activity reminders 
[2026-04-12 18:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:11:54] [INFO] Checking activity reminders 
[2026-04-12 18:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:12:02] [INFO] Checking activity reminders 
[2026-04-12 18:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:12:24] [INFO] Checking activity reminders 
[2026-04-12 18:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:12:32] [INFO] Checking activity reminders 
[2026-04-12 18:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:12:54] [INFO] Checking activity reminders 
[2026-04-12 18:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:13:02] [INFO] Checking activity reminders 
[2026-04-12 18:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:13:24] [INFO] Checking activity reminders 
[2026-04-12 18:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:13:32] [INFO] Checking activity reminders 
[2026-04-12 18:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:13:54] [INFO] Checking activity reminders 
[2026-04-12 18:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:14:02] [INFO] Checking activity reminders 
[2026-04-12 18:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:14:24] [INFO] Checking activity reminders 
[2026-04-12 18:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:14:33] [INFO] Checking activity reminders 
[2026-04-12 18:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:14:55] [INFO] Checking activity reminders 
[2026-04-12 18:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:15:03] [INFO] Checking activity reminders 
[2026-04-12 18:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:15:25] [INFO] Checking activity reminders 
[2026-04-12 18:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:15:33] [INFO] Checking activity reminders 
[2026-04-12 18:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:15:55] [INFO] Checking activity reminders 
[2026-04-12 18:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:16:03] [INFO] Checking activity reminders 
[2026-04-12 18:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:16:25] [INFO] Checking activity reminders 
[2026-04-12 18:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:16:33] [INFO] Checking activity reminders 
[2026-04-12 18:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:16:55] [INFO] Checking activity reminders 
[2026-04-12 18:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:17:03] [INFO] Checking activity reminders 
[2026-04-12 18:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:17:25] [INFO] Checking activity reminders 
[2026-04-12 18:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:17:33] [INFO] Checking activity reminders 
[2026-04-12 18:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:17:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:17:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:17:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:17:55] [INFO] Checking activity reminders 
[2026-04-12 18:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:18:03] [INFO] Checking activity reminders 
[2026-04-12 18:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:18:25] [INFO] Checking activity reminders 
[2026-04-12 18:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:18:33] [INFO] Checking activity reminders 
[2026-04-12 18:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:18:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:18:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:18:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:18:55] [INFO] Checking activity reminders 
[2026-04-12 18:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:19:03] [INFO] Checking activity reminders 
[2026-04-12 18:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:19:26] [INFO] Checking activity reminders 
[2026-04-12 18:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:19:33] [INFO] Checking activity reminders 
[2026-04-12 18:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:19:56] [INFO] Checking activity reminders 
[2026-04-12 18:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:20:04] [INFO] Checking activity reminders 
[2026-04-12 18:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:20:26] [INFO] Checking activity reminders 
[2026-04-12 18:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:20:34] [INFO] Checking activity reminders 
[2026-04-12 18:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:20:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:20:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:20:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:20:56] [INFO] Checking activity reminders 
[2026-04-12 18:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:21:04] [INFO] Checking activity reminders 
[2026-04-12 18:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:21:26] [INFO] Checking activity reminders 
[2026-04-12 18:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:21:34] [INFO] Checking activity reminders 
[2026-04-12 18:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:21:54] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:21:56] [INFO] Checking activity reminders 
[2026-04-12 18:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:21:59] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:22:04] [INFO] Checking activity reminders 
[2026-04-12 18:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:22:22] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:22:22] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-12 18:22:22] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-12 18:22:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 18:22:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 18:22:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 18:22:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 18:22:26] [INFO] Checking activity reminders 
[2026-04-12 18:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:22:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 18:22:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 18:22:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 18:22:34] [INFO] Checking activity reminders 
[2026-04-12 18:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:22:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-12 18:22:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-12 18:22:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-12 18:22:53] [INFO] Checking activity reminders 
[2026-04-12 18:22:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:22:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:22:56] [INFO] Checking activity reminders 
[2026-04-12 18:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:04] [INFO] Checking activity reminders 
[2026-04-12 18:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:23] [INFO] Checking activity reminders 
[2026-04-12 18:23:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:26] [INFO] Checking activity reminders 
[2026-04-12 18:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:34] [INFO] Checking activity reminders 
[2026-04-12 18:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:23:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:23:46] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:23:49] [INFO] Checking activity reminders 
[2026-04-12 18:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:53] [INFO] Checking activity reminders 
[2026-04-12 18:23:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:23:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:23:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:23:53] [INFO] generateDealTitle result {"contact_id":"12515","person_name":"محمدپور","mobile":"9396464807","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9396464807"}
[2026-04-12 18:23:56] [INFO] Checking activity reminders 
[2026-04-12 18:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:19] [INFO] Checking activity reminders 
[2026-04-12 18:24:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:23] [INFO] Checking activity reminders 
[2026-04-12 18:24:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:26] [INFO] Checking activity reminders 
[2026-04-12 18:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:49] [INFO] Checking activity reminders 
[2026-04-12 18:24:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:54] [INFO] Checking activity reminders 
[2026-04-12 18:24:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:24:56] [INFO] Checking activity reminders 
[2026-04-12 18:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:03] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:06] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-12 18:25:19] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:19] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-12 18:25:19] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-12 18:25:19] [INFO] Checking activity reminders 
[2026-04-12 18:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:24] [INFO] Checking activity reminders 
[2026-04-12 18:25:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:26] [INFO] Checking activity reminders 
[2026-04-12 18:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:50] [INFO] Checking activity reminders 
[2026-04-12 18:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:54] [INFO] Checking activity reminders 
[2026-04-12 18:25:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:25:56] [INFO] Checking activity reminders 
[2026-04-12 18:25:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:25:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:20] [INFO] Checking activity reminders 
[2026-04-12 18:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12515","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 18:26:22","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:26:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12515","is_new_deal":true}
[2026-04-12 18:26:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:26:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:26:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 18:26:22] [INFO] getContactPrimaryPhone called {"contact_id":"12515"}
[2026-04-12 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:26:22] [INFO] getContactPrimaryPhone result {"contact_id":"12515","person_found":true,"primary_phone":"9396464807"}
[2026-04-12 18:26:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396464807"}
[2026-04-12 18:26:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396464807","contact_id":"12515","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 18:26:22"}
[2026-04-12 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:26:22] [INFO] generateDealTitle result {"contact_id":"12515","person_name":"محمدپور","mobile":"9396464807","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9396464807"}
[2026-04-12 18:26:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"12515","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 18:26:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12515","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 18:26:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"12515","title":"معامله سوم 9396464807 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9396464807","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدپور","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 18:26:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:26:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 18:26:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"12515","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9396464807 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-12 18:26:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:26:24] [INFO] Checking activity reminders 
[2026-04-12 18:26:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:27] [INFO] Checking activity reminders 
[2026-04-12 18:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:50] [INFO] Checking activity reminders 
[2026-04-12 18:26:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:54] [INFO] Checking activity reminders 
[2026-04-12 18:26:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:26:57] [INFO] Checking activity reminders 
[2026-04-12 18:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:20] [INFO] Checking activity reminders 
[2026-04-12 18:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:24] [INFO] Checking activity reminders 
[2026-04-12 18:27:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:27] [INFO] Checking activity reminders 
[2026-04-12 18:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:50] [INFO] Checking activity reminders 
[2026-04-12 18:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:54] [INFO] Checking activity reminders 
[2026-04-12 18:27:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:27:57] [INFO] Checking activity reminders 
[2026-04-12 18:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:28:20] [INFO] Checking activity reminders 
[2026-04-12 18:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:28:27] [INFO] Checking activity reminders 
[2026-04-12 18:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:28:50] [INFO] Checking activity reminders 
[2026-04-12 18:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:28:57] [INFO] Checking activity reminders 
[2026-04-12 18:28:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:28:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:29:20] [INFO] Checking activity reminders 
[2026-04-12 18:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:29:27] [INFO] Checking activity reminders 
[2026-04-12 18:29:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:29:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:29:50] [INFO] Checking activity reminders 
[2026-04-12 18:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:29:57] [INFO] Checking activity reminders 
[2026-04-12 18:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:30:20] [INFO] Checking activity reminders 
[2026-04-12 18:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:30:27] [INFO] Checking activity reminders 
[2026-04-12 18:30:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:30:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:30:51] [INFO] Checking activity reminders 
[2026-04-12 18:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:30:57] [INFO] Checking activity reminders 
[2026-04-12 18:30:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:30:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:31:21] [INFO] Checking activity reminders 
[2026-04-12 18:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:31:27] [INFO] Checking activity reminders 
[2026-04-12 18:31:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:31:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:31:51] [INFO] Checking activity reminders 
[2026-04-12 18:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:31:57] [INFO] Checking activity reminders 
[2026-04-12 18:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:32:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:21] [INFO] Checking activity reminders 
[2026-04-12 18:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:32:27] [INFO] Checking activity reminders 
[2026-04-12 18:32:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:32:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:32:32] [INFO] Activity save request {"post_data":{"contact_id":"1850","deal_id":"local_69d224856d6d87.15261957","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت 6ماهه 5 بیعانه بزنه تسویه 2اردیبهشت به بعد","activity_duration":"20","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:32:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1850","note_was_empty":true}
[2026-04-12 18:32:32] [INFO] Didar write disabled; saving activity locally {"contact_id":"1850","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:32] [INFO] Updating virtual stage {"contact_id":"1850","stage_name":"deal_registered","force":false}
[2026-04-12 18:32:32] [INFO] Virtual stage successfully saved {"contact_id":"1850","stage_name":"deal_registered"}
[2026-04-12 18:32:32] [INFO] Virtual stage updated after activity save {"contact_id":"1850"}
[2026-04-12 18:32:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d224856d6d87.15261957","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-12 18:32:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb4081abce6.33051342","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb4081abce6.33051342"}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:32] [INFO] Updating virtual stage {"contact_id":"1850","stage_name":"deal_registered","force":false}
[2026-04-12 18:32:32] [INFO] Virtual stage successfully saved {"contact_id":"1850","stage_name":"deal_registered"}
[2026-04-12 18:32:32] [INFO] Virtual stage updated after activity save {"contact_id":"1850"}
[2026-04-12 18:32:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-12 18:32:51] [INFO] Checking activity reminders 
[2026-04-12 18:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:33:21] [INFO] Checking activity reminders 
[2026-04-12 18:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:33:51] [INFO] Checking activity reminders 
[2026-04-12 18:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:34:21] [INFO] Checking activity reminders 
[2026-04-12 18:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:34:51] [INFO] Checking activity reminders 
[2026-04-12 18:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:35:22] [INFO] Checking activity reminders 
[2026-04-12 18:35:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:35:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:35:52] [INFO] Checking activity reminders 
[2026-04-12 18:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:36:22] [INFO] Checking activity reminders 
[2026-04-12 18:36:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:36:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:36:52] [INFO] Checking activity reminders 
[2026-04-12 18:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:37:22] [INFO] Checking activity reminders 
[2026-04-12 18:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:37:52] [INFO] Checking activity reminders 
[2026-04-12 18:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:38:22] [INFO] Checking activity reminders 
[2026-04-12 18:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:38:52] [INFO] Checking activity reminders 
[2026-04-12 18:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:39:04] [INFO] Activity save request {"post_data":{"contact_id":"12515","deal_id":"local_69dbb2969a88c1.79662552","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شوشتر \r\nاداره 2 تا بمب خورده \r\nدر کانال یکساله دیگه ای با 1.800 هست \r\nدوست داره در کانال استاد باشه فقط از تحلیل استاد خوشش میاد \r\n3 تا بچه داره \/ هزینه هاش بالاست \r\nمیگه در 3 مرحله پرداخت کنم \/ 6 ماهه نقد هست \r\nاگر استاد قبول کنه در 2 مرحله واریز ","activity_duration":"15","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:39:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12515","note_was_empty":true}
[2026-04-12 18:39:04] [INFO] Didar write disabled; saving activity locally {"contact_id":"12515","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:04] [INFO] Updating virtual stage {"contact_id":"12515","stage_name":"deal_registered","force":false}
[2026-04-12 18:39:04] [INFO] Virtual stage successfully saved {"contact_id":"12515","stage_name":"deal_registered"}
[2026-04-12 18:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"12515"}
[2026-04-12 18:39:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dbb2969a88c1.79662552","stage":"تماس پیگیری","status_change":null}
[2026-04-12 18:39:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb59090deb3.24643139","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb59090deb3.24643139"}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:04] [INFO] Updating virtual stage {"contact_id":"12515","stage_name":"deal_registered","force":false}
[2026-04-12 18:39:04] [INFO] Virtual stage successfully saved {"contact_id":"12515","stage_name":"deal_registered"}
[2026-04-12 18:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"12515"}
[2026-04-12 18:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-12 18:39:10] [INFO] Checking activity reminders 
[2026-04-12 18:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:39:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:39:40] [INFO] Checking activity reminders 
[2026-04-12 18:39:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:39:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:40:10] [INFO] Checking activity reminders 
[2026-04-12 18:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:40:14] [INFO] Activity save request {"post_data":{"contact_id":"3377","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در مورد دستگاه کارشناسی uv  دار سوال \/ منسوخ شده \r\nپشتیبانی هوش و کارشناسی ","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:40:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:40:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:40:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3377","note_was_empty":true}
[2026-04-12 18:40:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"3377","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 18:40:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb5d6356cc4.82286672","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:40:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb5d6356cc4.82286672"}
[2026-04-12 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:40:14] [INFO] Updating virtual stage {"contact_id":"3377","stage_name":"deal_registered","force":false}
[2026-04-12 18:40:14] [INFO] Virtual stage successfully saved {"contact_id":"3377","stage_name":"deal_registered"}
[2026-04-12 18:40:14] [INFO] Virtual stage updated after activity save {"contact_id":"3377"}
[2026-04-12 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3377","person_id":"13722"}
[2026-04-12 18:40:40] [INFO] Checking activity reminders 
[2026-04-12 18:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:41:10] [INFO] Checking activity reminders 
[2026-04-12 18:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:43:26] [INFO] Checking activity reminders 
[2026-04-12 18:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:43:31] [INFO] Checking activity reminders 
[2026-04-12 18:43:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:43:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:43:35] [INFO] Checking activity reminders 
[2026-04-12 18:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:44:05] [INFO] Checking activity reminders 
[2026-04-12 18:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:44:23] [INFO] Activity save request {"post_data":{"contact_id":"20999","deal_id":"local_69d696299605e9.41542921","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در دسترس نیست \r\nپیامک","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:23] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:44:23] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:23] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20999","note_was_empty":true}
[2026-04-12 18:44:23] [INFO] Didar write disabled; saving activity locally {"contact_id":"20999","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 18:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:23] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-12 18:44:23] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-12 18:44:23] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-12 18:44:23] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d696299605e9.41542921","stage":"تماس پیگیری","status_change":null}
[2026-04-12 18:44:23] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb6cfb18588.10159022","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:23] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb6cfb18588.10159022"}
[2026-04-12 18:44:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:23] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-12 18:44:23] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-12 18:44:23] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-12 18:44:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-12 18:44:35] [INFO] Checking activity reminders 
[2026-04-12 18:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:45:05] [INFO] Checking activity reminders 
[2026-04-12 18:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:45:36] [INFO] Checking activity reminders 
[2026-04-12 18:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:45:37] [INFO] Checking activity reminders 
[2026-04-12 18:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:45:51] [INFO] Checking activity reminders 
[2026-04-12 18:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:45:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-12 18:45:54] [INFO] Checking activity reminders 
[2026-04-12 18:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:04] [INFO] Checking activity reminders 
[2026-04-12 18:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:07] [INFO] Checking activity reminders 
[2026-04-12 18:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:16] [INFO] Checking activity reminders 
[2026-04-12 18:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:18] [INFO] Checking activity reminders 
[2026-04-12 18:46:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:45] [INFO] Activity save request {"post_data":{"contact_id":"8941","deal_id":"local_69d691b3ab4a09.58993210","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:46:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8941","note_was_empty":true}
[2026-04-12 18:46:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"8941","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-12 18:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:45] [INFO] Updating virtual stage {"contact_id":"8941","stage_name":"deal_registered","force":false}
[2026-04-12 18:46:45] [INFO] Virtual stage successfully saved {"contact_id":"8941","stage_name":"deal_registered"}
[2026-04-12 18:46:45] [INFO] Virtual stage updated after activity save {"contact_id":"8941"}
[2026-04-12 18:46:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d691b3ab4a09.58993210","stage":"تماس پیگیری","status_change":null}
[2026-04-12 18:46:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb75ddc8749.13288188","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb75ddc8749.13288188"}
[2026-04-12 18:46:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:45] [INFO] Updating virtual stage {"contact_id":"8941","stage_name":"deal_registered","force":false}
[2026-04-12 18:46:45] [INFO] Virtual stage successfully saved {"contact_id":"8941","stage_name":"deal_registered"}
[2026-04-12 18:46:45] [INFO] Virtual stage updated after activity save {"contact_id":"8941"}
[2026-04-12 18:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8941","person_id":"14030"}
[2026-04-12 18:46:48] [INFO] Checking activity reminders 
[2026-04-12 18:46:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:50] [INFO] Checking activity reminders 
[2026-04-12 18:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:46:59] [INFO] Checking activity reminders 
[2026-04-12 18:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:47:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:29] [INFO] Checking activity reminders 
[2026-04-12 18:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:47:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69870f7363fff9.61964412","deal_id":"local_69885635936d66.27779342","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 18:47:31","session_id":"shj0gdadl05ddggcbvja28msuo"}
[2026-04-12 18:47:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69870f7363fff9.61964412","is_new_deal":false}
[2026-04-12 18:47:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 18:47:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 18:47:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 18:47:31] [INFO] getContactPrimaryPhone called {"contact_id":"local_69870f7363fff9.61964412"}
[2026-04-12 18:47:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:31] [INFO] getContactPrimaryPhone result {"contact_id":"local_69870f7363fff9.61964412","person_found":true,"primary_phone":"9131919847"}
[2026-04-12 18:47:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131919847"}
[2026-04-12 18:47:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131919847","contact_id":"local_69870f7363fff9.61964412","deal_id":"local_69885635936d66.27779342","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 18:47:31"}
[2026-04-12 18:47:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69885635936d66.27779342","contact_id":"local_69870f7363fff9.61964412","existing_deal_found":true,"existing_contact_id":"local_69870f7363fff9.61964412","existing_title":"معامله دوم 9131919847 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 18:47:31"}
[2026-04-12 18:47:31] [INFO] DealController.save validated payments {"deal_id":"local_69885635936d66.27779342","contact_id":"local_69870f7363fff9.61964412","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-12 18:47:31] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69870f7363fff9.61964412","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 18:47:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69885635936d66.27779342","contact_didar_id":"local_69870f7363fff9.61964412","title":"معامله دوم 9131919847 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9131919847","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"شایان آبشاهی","existing_deal":"YES","existing_deal_id":"local_69885635936d66.27779342","existing_deal_status":"Pending","server_time":"2026-04-12 18:47:31","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 18:47:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69885635936d66.27779342","contact_id":"local_69870f7363fff9.61964412","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9131919847 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-12 18:47:31","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-12 18:47:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Activity save request {"post_data":{"contact_id":"local_69870f7363fff9.61964412","deal_id":"local_69885635936d66.27779342","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-12 18:47:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69870f7363fff9.61964412","note_was_empty":true}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Updating virtual stage {"contact_id":"local_69870f7363fff9.61964412","stage_name":"deal_registered","force":false}
[2026-04-12 18:47:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69870f7363fff9.61964412","stage_name":"deal_registered"}
[2026-04-12 18:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69870f7363fff9.61964412"}
[2026-04-12 18:47:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69885635936d66.27779342","stage":"تماس پیگیری","status_change":null}
[2026-04-12 18:47:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dbb799bae957.54690924","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69dbb799bae957.54690924"}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:45] [INFO] Updating virtual stage {"contact_id":"local_69870f7363fff9.61964412","stage_name":"deal_registered","force":false}
[2026-04-12 18:47:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69870f7363fff9.61964412","stage_name":"deal_registered"}
[2026-04-12 18:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69870f7363fff9.61964412"}
[2026-04-12 18:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69870f7363fff9.61964412","person_id":"21568"}
[2026-04-12 18:47:49] [INFO] Checking activity reminders 
[2026-04-12 18:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:47:55] [INFO] Checking activity reminders 
[2026-04-12 18:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:48:25] [INFO] Checking activity reminders 
[2026-04-12 18:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:48:56] [INFO] Checking activity reminders 
[2026-04-12 18:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:49:26] [INFO] Checking activity reminders 
[2026-04-12 18:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:49:56] [INFO] Checking activity reminders 
[2026-04-12 18:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:50:26] [INFO] Checking activity reminders 
[2026-04-12 18:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:50:56] [INFO] Checking activity reminders 
[2026-04-12 18:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:51:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-12 18:51:26] [INFO] Checking activity reminders 
[2026-04-12 18:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:51:41] [INFO] Checking activity reminders 
[2026-04-12 18:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:51:48] [INFO] Checking activity reminders 
[2026-04-12 18:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:52:18] [INFO] Checking activity reminders 
[2026-04-12 18:52:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:52:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:52:48] [INFO] Checking activity reminders 
[2026-04-12 18:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:53:18] [INFO] Checking activity reminders 
[2026-04-12 18:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:53:45] [INFO] Checking activity reminders 
[2026-04-12 18:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:53:47] [INFO] Checking activity reminders 
[2026-04-12 18:53:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:53:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:53:49] [INFO] Checking activity reminders 
[2026-04-12 18:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:54:19] [INFO] Checking activity reminders 
[2026-04-12 18:54:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:54:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:54:50] [INFO] Checking activity reminders 
[2026-04-12 18:54:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:54:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:55:20] [INFO] Checking activity reminders 
[2026-04-12 18:55:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:55:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:55:50] [INFO] Checking activity reminders 
[2026-04-12 18:55:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:55:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:56:20] [INFO] Checking activity reminders 
[2026-04-12 18:56:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:56:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:56:50] [INFO] Checking activity reminders 
[2026-04-12 18:56:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:56:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:57:20] [INFO] Checking activity reminders 
[2026-04-12 18:57:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:57:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 18:57:50] [INFO] Checking activity reminders 
[2026-04-12 18:57:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 18:57:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:01:05] [INFO] Checking activity reminders 
[2026-04-12 19:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:01:35] [INFO] Checking activity reminders 
[2026-04-12 19:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:02:05] [INFO] Checking activity reminders 
[2026-04-12 19:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:02:35] [INFO] Checking activity reminders 
[2026-04-12 19:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:03:05] [INFO] Checking activity reminders 
[2026-04-12 19:03:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:03:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:03:35] [INFO] Checking activity reminders 
[2026-04-12 19:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:04:06] [INFO] Checking activity reminders 
[2026-04-12 19:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:04:36] [INFO] Checking activity reminders 
[2026-04-12 19:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:04:46] [INFO] Checking activity reminders 
[2026-04-12 19:04:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:04:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:04:48] [INFO] Checking activity reminders 
[2026-04-12 19:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:04:57] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 19:05:27] [INFO] Checking activity reminders 
[2026-04-12 19:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:05:57] [INFO] Checking activity reminders 
[2026-04-12 19:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:06:27] [INFO] Checking activity reminders 
[2026-04-12 19:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:07:44] [INFO] Checking activity reminders 
[2026-04-12 19:07:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:07:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:08:14] [INFO] Checking activity reminders 
[2026-04-12 19:08:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:08:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:08:44] [INFO] Checking activity reminders 
[2026-04-12 19:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:09:14] [INFO] Checking activity reminders 
[2026-04-12 19:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:10:02] [INFO] Checking activity reminders 
[2026-04-12 19:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:10:32] [INFO] Checking activity reminders 
[2026-04-12 19:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:11:02] [INFO] Checking activity reminders 
[2026-04-12 19:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:11:33] [INFO] Checking activity reminders 
[2026-04-12 19:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:22:09] [INFO] Checking activity reminders 
[2026-04-12 19:22:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:22:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:23:16] [INFO] Checking activity reminders 
[2026-04-12 19:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:23:19] [INFO] Checking activity reminders 
[2026-04-12 19:23:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:23:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 19:23:21] [INFO] Checking activity reminders 
[2026-04-12 19:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 19:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:27:19] [WARNING] Auth check failed - not authenticated {"session_id":"be9fp93e9qtsclv6b3d3sf3ad4","session_keys":[],"action":"log_client_event"}
[2026-04-12 21:27:19] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-12 21:27:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-12 21:27:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:27:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:27:46] [INFO] generateDealTitle result {"contact_id":"3327","person_name":"گرایی","mobile":"9181440124","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9181440124"}
[2026-04-12 21:27:50] [INFO] Checking activity reminders 
[2026-04-12 21:27:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:27:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:28:20] [INFO] Checking activity reminders 
[2026-04-12 21:28:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:28:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:28:51] [INFO] Checking activity reminders 
[2026-04-12 21:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:29:16] [INFO] Checking activity reminders 
[2026-04-12 21:29:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:29:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:29:26] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3327","deal_id":"","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 21:29:26","session_id":"be9fp93e9qtsclv6b3d3sf3ad4"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"3327","is_new_deal":true}
[2026-04-12 21:29:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 21:29:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 21:29:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-12 21:29:26] [INFO] getContactPrimaryPhone called {"contact_id":"3327"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [INFO] getContactPrimaryPhone result {"contact_id":"3327","person_found":true,"primary_phone":"9181440124"}
[2026-04-12 21:29:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9181440124"}
[2026-04-12 21:29:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9181440124","contact_id":"3327","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 21:29:26"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [INFO] generateDealTitle result {"contact_id":"3327","person_name":"گرایی","mobile":"9181440124","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9181440124"}
[2026-04-12 21:29:26] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"3327","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 21:29:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3327","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 21:29:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"3327","title":"معامله سوم 9181440124 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9181440124","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"گرایی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-12 21:29:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [INFO] Deal success processed {"contact_id":"3327","person_name":"گرایی","products_count":1}
[2026-04-12 21:29:26] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-12 21:29:26] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"3327","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9181440124 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-12 21:29:26","ip_address":"5.112.182.133","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:29:26] [INFO] Updating virtual stage {"contact_id":"3327","stage_name":"with_purchase","force":true}
[2026-04-12 21:29:26] [INFO] Virtual stage successfully saved {"contact_id":"3327","stage_name":"with_purchase"}
[2026-04-12 21:29:26] [INFO] Moved contact out of kariz after successful deal {"contact_id":"3327","deal_id":"","target_stage":"with_purchase"}
[2026-04-12 21:29:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-12 21:42:35] [INFO] Checking activity reminders 
[2026-04-12 21:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:42:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:43:05] [INFO] Checking activity reminders 
[2026-04-12 21:43:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:43:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:43:35] [INFO] Checking activity reminders 
[2026-04-12 21:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:44:10] [INFO] Checking activity reminders 
[2026-04-12 21:44:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:44:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:46:24] [INFO] Checking activity reminders 
[2026-04-12 21:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-12 21:46:46] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-12 21:46:46","session_id":"be9fp93e9qtsclv6b3d3sf3ad4"}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b7d9a7ab9697.18146949","is_new_deal":false}
[2026-04-12 21:46:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-12 21:46:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 21:46:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-12 21:46:46] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b7d9a7ab9697.18146949"}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:46] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b7d9a7ab9697.18146949","person_found":true,"primary_phone":"9120539575"}
[2026-04-12 21:46:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120539575"}
[2026-04-12 21:46:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120539575","contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 21:46:46"}
[2026-04-12 21:46:46] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","existing_deal_found":true,"existing_contact_id":"local_69b7d9a7ab9697.18146949","existing_title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-12 21:46:46"}
[2026-04-12 21:46:46] [INFO] DealController.save validated payments {"deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-12 21:46:46] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69b7d9a7ab9697.18146949","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-12 21:46:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b7d9a7b670a","contact_didar_id":"local_69b7d9a7ab9697.18146949","title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9120539575","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علیرضا حسینی","existing_deal":"YES","existing_deal_id":"local_69b7d9a7b670a","existing_deal_status":"Pending","server_time":"2026-04-12 21:46:46","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:46] [INFO] Deal success processed {"contact_id":"local_69b7d9a7ab9697.18146949","person_name":"علیرضا حسینی","products_count":1}
[2026-04-12 21:46:46] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b7d9a7b670a","contact_id":"local_69b7d9a7ab9697.18146949","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9120539575 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-12 21:46:46","ip_address":"5.112.182.133","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:46] [INFO] Updating virtual stage {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"with_purchase","force":true}
[2026-04-12 21:46:46] [INFO] Virtual stage successfully saved {"contact_id":"local_69b7d9a7ab9697.18146949","stage_name":"with_purchase"}
[2026-04-12 21:46:46] [INFO] Moved contact out of kariz after successful deal {"contact_id":"local_69b7d9a7ab9697.18146949","deal_id":"local_69b7d9a7b670a","target_stage":"with_purchase"}
[2026-04-12 21:46:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-12 21:46:55] [INFO] Checking activity reminders 
[2026-04-12 21:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-12 21:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:20:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 09:20:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:25] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:25] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:20:43] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 09:20:43] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 09:20:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 09:20:43] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 09:20:43] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 09:20:43] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 09:20:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-13 09:21:04] [INFO] Checking activity reminders 
[2026-04-13 09:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-13 09:22:07] [INFO] Checking activity reminders 
[2026-04-13 09:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:22:37] [INFO] Checking activity reminders 
[2026-04-13 09:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:22:46] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9130210021","09130210021"]}
[2026-04-13 09:22:46] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9130210021","09130210021"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-13 09:22:46] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9130210021","full_name":"لید جدید"}
[2026-04-13 09:22:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 09:22:46] [INFO] Notification created {"notification_id":"645","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-13 09:25:33] [INFO] Checking activity reminders 
[2026-04-13 09:25:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:25:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:25:46] [INFO] Checking activity reminders 
[2026-04-13 09:25:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:25:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:27:34] [INFO] Checking activity reminders 
[2026-04-13 09:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:27:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3327","person_id":"5268"}
[2026-04-13 09:28:29] [INFO] Checking activity reminders 
[2026-04-13 09:28:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:28:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:28:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 09:29:00] [INFO] Checking activity reminders 
[2026-04-13 09:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:31:57] [INFO] Checking activity reminders 
[2026-04-13 09:31:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:31:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:31:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:31:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:32:10] [INFO] Lead update received {"contact_id":"local_1403_09_26_3","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 09:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:32:10] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_1403_09_26_3"}
[2026-04-13 09:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:32:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_3","person_id":"21092"}
[2026-04-13 09:33:40] [INFO] Checking activity reminders 
[2026-04-13 09:33:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:33:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:34:41] [INFO] Checking activity reminders 
[2026-04-13 09:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:35:08] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9330688687","09330688687"]}
[2026-04-13 09:35:08] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9330688687","09330688687"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-13 09:35:08] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9330688687","full_name":"لید جدید"}
[2026-04-13 09:35:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 09:35:08] [INFO] Notification created {"notification_id":"646","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-13 09:36:05] [INFO] Checking activity reminders 
[2026-04-13 09:36:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:36:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:36:14] [INFO] Checking activity reminders 
[2026-04-13 09:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 09:36:44] [INFO] Checking activity reminders 
[2026-04-13 09:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:36:52] [INFO] Checking activity reminders 
[2026-04-13 09:36:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:36:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:36:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-13 09:37:23] [INFO] Checking activity reminders 
[2026-04-13 09:37:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:37:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:39:14] [INFO] Checking activity reminders 
[2026-04-13 09:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:40:35] [INFO] Checking activity reminders 
[2026-04-13 09:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:41:05] [INFO] Checking activity reminders 
[2026-04-13 09:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:41:35] [INFO] Checking activity reminders 
[2026-04-13 09:41:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:41:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:42:05] [INFO] Checking activity reminders 
[2026-04-13 09:42:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:42:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:42:35] [INFO] Checking activity reminders 
[2026-04-13 09:42:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:42:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:43:05] [INFO] Checking activity reminders 
[2026-04-13 09:43:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:43:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:43:35] [INFO] Checking activity reminders 
[2026-04-13 09:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:44:05] [INFO] Checking activity reminders 
[2026-04-13 09:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:44:35] [INFO] Checking activity reminders 
[2026-04-13 09:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:45:05] [INFO] Checking activity reminders 
[2026-04-13 09:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:45:36] [INFO] Checking activity reminders 
[2026-04-13 09:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:46:06] [INFO] Checking activity reminders 
[2026-04-13 09:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:46:36] [INFO] Checking activity reminders 
[2026-04-13 09:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:47:06] [INFO] Checking activity reminders 
[2026-04-13 09:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:47:36] [INFO] Checking activity reminders 
[2026-04-13 09:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:48:06] [INFO] Checking activity reminders 
[2026-04-13 09:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:48:36] [INFO] Checking activity reminders 
[2026-04-13 09:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:49:06] [INFO] Checking activity reminders 
[2026-04-13 09:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:49:36] [INFO] Checking activity reminders 
[2026-04-13 09:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:50:06] [INFO] Checking activity reminders 
[2026-04-13 09:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:50:36] [INFO] Checking activity reminders 
[2026-04-13 09:50:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:50:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:52:32] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 09:52:32] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-13 09:52:32] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 09:59:07] [INFO] Checking activity reminders 
[2026-04-13 09:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 09:59:37] [INFO] Checking activity reminders 
[2026-04-13 09:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 09:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:00:07] [INFO] Checking activity reminders 
[2026-04-13 10:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:01:15] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 10:01:15] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-13 10:01:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 10:01:23] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-13 10:01:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 10:03:11] [INFO] Checking activity reminders 
[2026-04-13 10:03:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:03:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:03:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 10:03:41] [INFO] Checking activity reminders 
[2026-04-13 10:03:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:03:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:03:56] [INFO] Checking activity reminders 
[2026-04-13 10:03:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:03:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:04:26] [INFO] Checking activity reminders 
[2026-04-13 10:04:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:04:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:04:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15908","deal_id":"local_69d68d50048f76.91757978","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 10:04:40","session_id":"auplg3uoalgru7tfav674qs6km"}
[2026-04-13 10:04:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 10:04:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"15908","is_new_deal":false}
[2026-04-13 10:04:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 10:04:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 10:04:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 10:04:40] [INFO] getContactPrimaryPhone called {"contact_id":"15908"}
[2026-04-13 10:04:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 10:04:40] [INFO] getContactPrimaryPhone result {"contact_id":"15908","person_found":true,"primary_phone":"9132661528"}
[2026-04-13 10:04:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132661528"}
[2026-04-13 10:04:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132661528","contact_id":"15908","deal_id":"local_69d68d50048f76.91757978","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:04:40"}
[2026-04-13 10:04:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68d50048f76.91757978","contact_id":"15908","existing_deal_found":true,"existing_contact_id":"15908","existing_title":"معامله دوم 9132661528 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:04:40"}
[2026-04-13 10:04:40] [INFO] DealController.save validated payments {"deal_id":"local_69d68d50048f76.91757978","contact_id":"15908","payments_count":1,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-13 10:04:40] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"15908","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 10:04:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68d50048f76.91757978","contact_didar_id":"15908","title":"معامله دوم 9132661528 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9132661528","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"مهدی صدرا رحامی","existing_deal":"YES","existing_deal_id":"local_69d68d50048f76.91757978","existing_deal_status":"Pending","server_time":"2026-04-13 10:04:40","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-13 10:04:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 10:04:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68d50048f76.91757978","contact_id":"15908","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9132661528 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-13 10:04:40","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 10:04:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 10:04:56] [INFO] Checking activity reminders 
[2026-04-13 10:04:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:04:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:05:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-13 10:05:30] [INFO] Checking activity reminders 
[2026-04-13 10:05:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:05:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:06:00] [INFO] Checking activity reminders 
[2026-04-13 10:06:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:06:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:06:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1850","deal_id":"local_69d224856d6d87.15261957","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 10:06:03","session_id":"auplg3uoalgru7tfav674qs6km"}
[2026-04-13 10:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-13 10:06:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1850","is_new_deal":false}
[2026-04-13 10:06:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 10:06:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 10:06:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 10:06:03] [INFO] getContactPrimaryPhone called {"contact_id":"1850"}
[2026-04-13 10:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-13 10:06:03] [INFO] getContactPrimaryPhone result {"contact_id":"1850","person_found":true,"primary_phone":"9121710061"}
[2026-04-13 10:06:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9121710061"}
[2026-04-13 10:06:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9121710061","contact_id":"1850","deal_id":"local_69d224856d6d87.15261957","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:06:03"}
[2026-04-13 10:06:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d224856d6d87.15261957","contact_id":"1850","existing_deal_found":true,"existing_contact_id":"1850","existing_title":"معامله دوم 9121710061 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:06:03"}
[2026-04-13 10:06:03] [INFO] DealController.save validated payments {"deal_id":"local_69d224856d6d87.15261957","contact_id":"1850","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 10:06:03] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"1850","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 10:06:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d224856d6d87.15261957","contact_didar_id":"1850","title":"معامله دوم 9121710061 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9121710061","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":2000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"زندی زندی","existing_deal":"YES","existing_deal_id":"local_69d224856d6d87.15261957","existing_deal_status":"Pending","server_time":"2026-04-13 10:06:03","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-13 10:06:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-13 10:06:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d224856d6d87.15261957","contact_id":"1850","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9121710061 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":2000000,"server_time":"2026-04-13 10:06:03","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 10:06:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1850","person_id":"12906"}
[2026-04-13 10:07:56] [INFO] Checking activity reminders 
[2026-04-13 10:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:08:01] [INFO] Checking activity reminders 
[2026-04-13 10:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:08:24] [INFO] Checking activity reminders 
[2026-04-13 10:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:08:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-13 10:08:54] [INFO] Checking activity reminders 
[2026-04-13 10:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:09:10] [INFO] Checking activity reminders 
[2026-04-13 10:09:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:09:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:10:01] [INFO] Checking activity reminders 
[2026-04-13 10:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:10:32] [INFO] Checking activity reminders 
[2026-04-13 10:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:11:02] [INFO] Checking activity reminders 
[2026-04-13 10:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:11:32] [INFO] Checking activity reminders 
[2026-04-13 10:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:11:41] [INFO] Checking activity reminders 
[2026-04-13 10:11:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:11:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:12:02] [INFO] Checking activity reminders 
[2026-04-13 10:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:12:11] [INFO] Checking activity reminders 
[2026-04-13 10:12:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:12:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:12:32] [INFO] Checking activity reminders 
[2026-04-13 10:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:12:41] [INFO] Checking activity reminders 
[2026-04-13 10:12:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:12:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:12:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:12:43] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-13 10:13:02] [INFO] Checking activity reminders 
[2026-04-13 10:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:13:11] [INFO] Checking activity reminders 
[2026-04-13 10:13:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:13:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:13:32] [INFO] Checking activity reminders 
[2026-04-13 10:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:13:41] [INFO] Checking activity reminders 
[2026-04-13 10:13:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:13:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:14:02] [INFO] Checking activity reminders 
[2026-04-13 10:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:14:11] [INFO] Checking activity reminders 
[2026-04-13 10:14:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:14:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:14:32] [INFO] Checking activity reminders 
[2026-04-13 10:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:14:42] [INFO] Checking activity reminders 
[2026-04-13 10:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:02] [INFO] Checking activity reminders 
[2026-04-13 10:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:12] [INFO] Checking activity reminders 
[2026-04-13 10:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:22] [INFO] Checking activity reminders 
[2026-04-13 10:15:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:32] [INFO] Checking activity reminders 
[2026-04-13 10:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:42] [INFO] Checking activity reminders 
[2026-04-13 10:15:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:15:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d224d8e7aef7.68866400","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 10:15:46","session_id":"auplg3uoalgru7tfav674qs6km"}
[2026-04-13 10:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:15:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d224d8e7aef7.68866400","is_new_deal":true}
[2026-04-13 10:15:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:15:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:15:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:15:46] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d224d8e7aef7.68866400"}
[2026-04-13 10:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:15:46] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d224d8e7aef7.68866400","person_found":true,"primary_phone":"9913102532"}
[2026-04-13 10:15:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9913102532"}
[2026-04-13 10:15:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9913102532","contact_id":"local_69d224d8e7aef7.68866400","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:15:46"}
[2026-04-13 10:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:15:46] [INFO] generateDealTitle result {"contact_id":"local_69d224d8e7aef7.68866400","person_name":"میلاد حسینی","mobile":"9913102532","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9913102532"}
[2026-04-13 10:15:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69d224d8e7aef7.68866400","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 10:15:46] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_69d224d8e7aef7.68866400","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 10:15:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69d224d8e7aef7.68866400","title":"معامله دوم 9913102532 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9913102532","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"میلاد حسینی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-13 10:15:46","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-13 10:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:15:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-13 10:15:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69d224d8e7aef7.68866400","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9913102532 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 10:15:46","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 10:15:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:15:52] [INFO] Checking activity reminders 
[2026-04-13 10:15:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:15:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:02] [INFO] Checking activity reminders 
[2026-04-13 10:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:12] [INFO] Checking activity reminders 
[2026-04-13 10:16:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:22] [INFO] Checking activity reminders 
[2026-04-13 10:16:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:32] [INFO] Checking activity reminders 
[2026-04-13 10:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:16:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:16:41] [INFO] Checking activity reminders 
[2026-04-13 10:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:16:52] [INFO] Checking activity reminders 
[2026-04-13 10:16:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:16:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:17:02] [INFO] Checking activity reminders 
[2026-04-13 10:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:17:11] [INFO] Checking activity reminders 
[2026-04-13 10:17:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:17:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:17:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d224d8e7aef7.68866400","deal_id":"local_69dc911a66d765.88527145","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 10:17:14","session_id":"auplg3uoalgru7tfav674qs6km"}
[2026-04-13 10:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:17:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d224d8e7aef7.68866400","is_new_deal":false}
[2026-04-13 10:17:14] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:17:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:17:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:17:14] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d224d8e7aef7.68866400"}
[2026-04-13 10:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:17:14] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d224d8e7aef7.68866400","person_found":true,"primary_phone":"9913102532"}
[2026-04-13 10:17:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9913102532"}
[2026-04-13 10:17:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9913102532","contact_id":"local_69d224d8e7aef7.68866400","deal_id":"local_69dc911a66d765.88527145","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:17:14"}
[2026-04-13 10:17:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dc911a66d765.88527145","contact_id":"local_69d224d8e7aef7.68866400","existing_deal_found":true,"existing_contact_id":"local_69d224d8e7aef7.68866400","existing_title":"معامله دوم 9913102532 | کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-13 10:17:14"}
[2026-04-13 10:17:14] [INFO] DealController.save validated payments {"deal_id":"local_69dc911a66d765.88527145","contact_id":"local_69d224d8e7aef7.68866400","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 10:17:14] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_69d224d8e7aef7.68866400","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 10:17:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dc911a66d765.88527145","contact_didar_id":"local_69d224d8e7aef7.68866400","title":"معامله دوم 9913102532 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9913102532","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"میلاد حسینی","existing_deal":"YES","existing_deal_id":"local_69dc911a66d765.88527145","existing_deal_status":"Pending","server_time":"2026-04-13 10:17:14","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-13 10:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:17:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dc911a66d765.88527145","contact_id":"local_69d224d8e7aef7.68866400","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9913102532 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":15000000,"server_time":"2026-04-13 10:17:14","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 10:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:17:23] [INFO] Checking activity reminders 
[2026-04-13 10:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:17:27] [INFO] Lead update received {"contact_id":"local_69dc84ae9147f9.41801026","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 10:17:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:17:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:17:27] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69dc84ae9147f9.41801026"}
[2026-04-13 10:17:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:17:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:17:33] [INFO] Checking activity reminders 
[2026-04-13 10:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:17:53] [INFO] Checking activity reminders 
[2026-04-13 10:17:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:17:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:18:03] [INFO] Checking activity reminders 
[2026-04-13 10:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:18:23] [INFO] Checking activity reminders 
[2026-04-13 10:18:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:18:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:18:33] [INFO] Checking activity reminders 
[2026-04-13 10:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:18:53] [INFO] Checking activity reminders 
[2026-04-13 10:18:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:18:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:18:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc84ae9147f9.41801026","deal_id":"local_69dc84aea2652","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 10:18:59","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 10:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:18:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc84ae9147f9.41801026","is_new_deal":false}
[2026-04-13 10:18:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:18:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:18:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 10:18:59] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dc84ae9147f9.41801026"}
[2026-04-13 10:18:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:18:59] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dc84ae9147f9.41801026","person_found":true,"primary_phone":"9130210021"}
[2026-04-13 10:18:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130210021"}
[2026-04-13 10:18:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130210021","contact_id":"local_69dc84ae9147f9.41801026","deal_id":"local_69dc84aea2652","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 10:18:59"}
[2026-04-13 10:19:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dc84aea2652","contact_id":"local_69dc84ae9147f9.41801026","existing_deal_found":true,"existing_contact_id":"local_69dc84ae9147f9.41801026","existing_title":"معامله اول 9130210021","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 10:19:00"}
[2026-04-13 10:19:00] [INFO] DealController.save validated payments {"deal_id":"local_69dc84aea2652","contact_id":"local_69dc84ae9147f9.41801026","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-13 10:19:00] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69dc84ae9147f9.41801026","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 10:19:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dc84aea2652","contact_didar_id":"local_69dc84ae9147f9.41801026","title":"معامله اول 9130210021 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9130210021","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدعلی مودت","existing_deal":"YES","existing_deal_id":"local_69dc84aea2652","existing_deal_status":"Pending","server_time":"2026-04-13 10:19:00","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 10:19:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:19:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dc84aea2652","contact_id":"local_69dc84ae9147f9.41801026","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9130210021 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 10:19:00","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 10:19:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:19:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:19:03] [INFO] Checking activity reminders 
[2026-04-13 10:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:19:23] [INFO] Checking activity reminders 
[2026-04-13 10:19:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:19:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:19:33] [INFO] Checking activity reminders 
[2026-04-13 10:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:19:53] [INFO] Checking activity reminders 
[2026-04-13 10:19:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:19:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:20:03] [INFO] Checking activity reminders 
[2026-04-13 10:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:20:23] [INFO] Checking activity reminders 
[2026-04-13 10:20:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:20:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:20:38] [INFO] Activity save request {"post_data":{"contact_id":"local_69dc84ae9147f9.41801026","deal_id":"local_69dc84aea2652","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"معرف ال موسوی \r\nیزد \r\nکار رمز ارز \/ بورس \/ تتر \r\nدر طلای فیزیکی و نقره سرمایه گذاری \r\nپرزنت 6 ماهه کانال \/ پشتیبانی استاد \r\nارسال شماره کارت \r\nبیعانه واریز \/ تسویه 5 اردیبهشت ","activity_duration":"8","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 10:20:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 10:20:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 10:20:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69dc84ae9147f9.41801026","note_was_empty":true}
[2026-04-13 10:20:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:38] [INFO] Updating virtual stage {"contact_id":"local_69dc84ae9147f9.41801026","stage_name":"new","force":false}
[2026-04-13 10:20:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc84ae9147f9.41801026","stage_name":"new"}
[2026-04-13 10:20:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc84ae9147f9.41801026"}
[2026-04-13 10:20:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dc84aea2652","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 10:20:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dc923ee0e906.36261489","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 10:20:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69dc923ee0e906.36261489"}
[2026-04-13 10:20:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:39] [INFO] Updating virtual stage {"contact_id":"local_69dc84ae9147f9.41801026","stage_name":"deal_registered","force":false}
[2026-04-13 10:20:39] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc84ae9147f9.41801026","stage_name":"deal_registered"}
[2026-04-13 10:20:39] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc84ae9147f9.41801026"}
[2026-04-13 10:20:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc84ae9147f9.41801026","person_id":"22138"}
[2026-04-13 10:20:52] [INFO] Checking activity reminders 
[2026-04-13 10:20:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:20:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:21:13] [INFO] Checking activity reminders 
[2026-04-13 10:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:21:14] [INFO] Checking activity reminders 
[2026-04-13 10:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:21:19] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-13 10:21:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 10:21:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 10:21:49] [INFO] Checking activity reminders 
[2026-04-13 10:21:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:21:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:22:19] [INFO] Checking activity reminders 
[2026-04-13 10:22:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:22:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:22:24] [INFO] Checking activity reminders 
[2026-04-13 10:22:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:22:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:22:54] [INFO] Checking activity reminders 
[2026-04-13 10:22:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:22:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:23:25] [INFO] Checking activity reminders 
[2026-04-13 10:23:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:23:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:23:55] [INFO] Checking activity reminders 
[2026-04-13 10:23:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:23:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:24:25] [INFO] Checking activity reminders 
[2026-04-13 10:24:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:24:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:24:39] [INFO] Checking activity reminders 
[2026-04-13 10:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:24:55] [INFO] Checking activity reminders 
[2026-04-13 10:24:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:24:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:25:06] [INFO] Checking activity reminders 
[2026-04-13 10:25:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:25:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:25:25] [INFO] Checking activity reminders 
[2026-04-13 10:25:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:25:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:25:55] [INFO] Checking activity reminders 
[2026-04-13 10:25:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:25:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:26:25] [INFO] Checking activity reminders 
[2026-04-13 10:26:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:26:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:26:55] [INFO] Checking activity reminders 
[2026-04-13 10:26:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:26:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:27:25] [INFO] Checking activity reminders 
[2026-04-13 10:27:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:27:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:27:55] [INFO] Checking activity reminders 
[2026-04-13 10:27:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:27:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:29:20] [INFO] Checking activity reminders 
[2026-04-13 10:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:29:50] [INFO] Checking activity reminders 
[2026-04-13 10:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:30:20] [INFO] Checking activity reminders 
[2026-04-13 10:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:30:33] [INFO] Checking activity reminders 
[2026-04-13 10:30:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:30:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:30:51] [INFO] Checking activity reminders 
[2026-04-13 10:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:31:04] [INFO] Checking activity reminders 
[2026-04-13 10:31:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:31:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:31:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69db426b33a4e0.69599948","person_id":"22130"}
[2026-04-13 10:31:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 10:31:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 10:31:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 10:31:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 10:31:34] [INFO] Checking activity reminders 
[2026-04-13 10:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:31:41] [INFO] Checking activity reminders 
[2026-04-13 10:31:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:31:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:31:45] [INFO] Checking activity reminders 
[2026-04-13 10:31:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:31:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:32:04] [INFO] Checking activity reminders 
[2026-04-13 10:32:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:32:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:32:12] [INFO] Checking activity reminders 
[2026-04-13 10:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:32:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224d8e7aef7.68866400","person_id":"21979"}
[2026-04-13 10:32:32] [INFO] Checking activity reminders 
[2026-04-13 10:32:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:32:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:32:34] [INFO] Checking activity reminders 
[2026-04-13 10:32:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:32:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:32:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-13 10:32:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16130","person_id":"9532"}
[2026-04-13 10:33:02] [INFO] Checking activity reminders 
[2026-04-13 10:33:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:33:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:33:04] [INFO] Checking activity reminders 
[2026-04-13 10:33:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:33:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:33:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-13 10:33:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9532","person_id":"6324"}
[2026-04-13 10:33:25] [INFO] Checking activity reminders 
[2026-04-13 10:33:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:33:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:33:32] [INFO] Checking activity reminders 
[2026-04-13 10:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:37:34] [INFO] Checking activity reminders 
[2026-04-13 10:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:38:04] [INFO] Checking activity reminders 
[2026-04-13 10:38:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:38:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:38:34] [INFO] Checking activity reminders 
[2026-04-13 10:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:39:04] [INFO] Checking activity reminders 
[2026-04-13 10:39:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:39:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:39:34] [INFO] Checking activity reminders 
[2026-04-13 10:39:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:39:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:40:04] [INFO] Checking activity reminders 
[2026-04-13 10:40:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:40:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:40:50] [INFO] Checking activity reminders 
[2026-04-13 10:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:40:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:40:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:41:20] [INFO] Checking activity reminders 
[2026-04-13 10:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:41:50] [INFO] Checking activity reminders 
[2026-04-13 10:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:42:20] [INFO] Checking activity reminders 
[2026-04-13 10:42:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:42:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:42:50] [INFO] Checking activity reminders 
[2026-04-13 10:42:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:42:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:43:20] [INFO] Checking activity reminders 
[2026-04-13 10:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:43:50] [INFO] Checking activity reminders 
[2026-04-13 10:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:44:20] [INFO] Checking activity reminders 
[2026-04-13 10:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:44:50] [INFO] Checking activity reminders 
[2026-04-13 10:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:45:20] [INFO] Checking activity reminders 
[2026-04-13 10:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:45:51] [INFO] Checking activity reminders 
[2026-04-13 10:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:46:21] [INFO] Checking activity reminders 
[2026-04-13 10:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:46:51] [INFO] Checking activity reminders 
[2026-04-13 10:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:47:21] [INFO] Checking activity reminders 
[2026-04-13 10:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:47:51] [INFO] Checking activity reminders 
[2026-04-13 10:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:48:02] [INFO] Activity save request {"post_data":{"contact_id":"local_69dc8794ca28e4.79401978","deal_id":"local_69dc8794cb1d0","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"دوست زرزا \/ ارومیه لوازم یدکی \/ هوش کارشناسی 15ت \/ واریز 5ت تسویه اخر ماه ","activity_duration":"20","direction":"incoming","current_stage":"معامله جدید","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 10:48:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69dc8794ca28e4.79401978","note_was_empty":true}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:02] [INFO] Updating virtual stage {"contact_id":"local_69dc8794ca28e4.79401978","stage_name":"new","force":false}
[2026-04-13 10:48:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc8794ca28e4.79401978","stage_name":"new"}
[2026-04-13 10:48:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc8794ca28e4.79401978"}
[2026-04-13 10:48:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dc8794cb1d0","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-13 10:48:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dc98aa36bfa8.72456933","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69dc98aa36bfa8.72456933"}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:02] [INFO] Updating virtual stage {"contact_id":"local_69dc8794ca28e4.79401978","stage_name":"deal_registered","force":false}
[2026-04-13 10:48:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc8794ca28e4.79401978","stage_name":"deal_registered"}
[2026-04-13 10:48:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc8794ca28e4.79401978"}
[2026-04-13 10:48:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:21] [INFO] Checking activity reminders 
[2026-04-13 10:48:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:48:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:48:39] [INFO] Lead update received {"contact_id":"local_69dc8794ca28e4.79401978","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 10:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:39] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69dc8794ca28e4.79401978"}
[2026-04-13 10:48:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-13 10:48:51] [INFO] Checking activity reminders 
[2026-04-13 10:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:49:21] [INFO] Checking activity reminders 
[2026-04-13 10:49:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:49:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:49:25] [INFO] Checking activity reminders 
[2026-04-13 10:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:49:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 10:49:51] [INFO] Checking activity reminders 
[2026-04-13 10:49:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:49:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:49:55] [INFO] Checking activity reminders 
[2026-04-13 10:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:50:21] [INFO] Checking activity reminders 
[2026-04-13 10:50:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:50:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:50:25] [INFO] Checking activity reminders 
[2026-04-13 10:50:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:50:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:50:55] [INFO] Checking activity reminders 
[2026-04-13 10:50:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:50:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:51:25] [INFO] Checking activity reminders 
[2026-04-13 10:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:51:55] [INFO] Checking activity reminders 
[2026-04-13 10:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:52:25] [INFO] Checking activity reminders 
[2026-04-13 10:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:52:56] [INFO] Checking activity reminders 
[2026-04-13 10:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:53:18] [INFO] Checking activity reminders 
[2026-04-13 10:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:53:26] [INFO] Checking activity reminders 
[2026-04-13 10:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:53:48] [INFO] Checking activity reminders 
[2026-04-13 10:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:53:56] [INFO] Checking activity reminders 
[2026-04-13 10:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:54:18] [INFO] Checking activity reminders 
[2026-04-13 10:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:54:26] [INFO] Checking activity reminders 
[2026-04-13 10:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:54:49] [INFO] Checking activity reminders 
[2026-04-13 10:54:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:54:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:54:56] [INFO] Checking activity reminders 
[2026-04-13 10:54:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:54:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:55:26] [INFO] Checking activity reminders 
[2026-04-13 10:55:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:55:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:55:56] [INFO] Checking activity reminders 
[2026-04-13 10:55:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:55:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:56:26] [INFO] Checking activity reminders 
[2026-04-13 10:56:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:56:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:56:56] [INFO] Checking activity reminders 
[2026-04-13 10:56:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:56:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:58:21] [INFO] Checking activity reminders 
[2026-04-13 10:58:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:58:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:58:51] [INFO] Checking activity reminders 
[2026-04-13 10:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:59:21] [INFO] Checking activity reminders 
[2026-04-13 10:59:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:59:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 10:59:51] [INFO] Checking activity reminders 
[2026-04-13 10:59:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 10:59:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:00:21] [INFO] Checking activity reminders 
[2026-04-13 11:00:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:00:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:00:36] [INFO] Checking activity reminders 
[2026-04-13 11:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:00:51] [INFO] Checking activity reminders 
[2026-04-13 11:00:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:00:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:01:14] [INFO] Activity save request {"post_data":{"contact_id":"9756","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت کانال بزنه \/ سی ای پی پرزنت هفته ی پیش چهارشنبه 6میلیارد دستش میاد انجام بدیم","activity_duration":"40","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 11:01:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:01:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 11:01:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"9756","note_was_empty":true}
[2026-04-13 11:01:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"9756","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:01:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dc9bc2021ab1.41971902","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 11:01:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69dc9bc2021ab1.41971902"}
[2026-04-13 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 11:01:14] [INFO] Updating virtual stage {"contact_id":"9756","stage_name":"deal_registered","force":false}
[2026-04-13 11:01:14] [INFO] Virtual stage successfully saved {"contact_id":"9756","stage_name":"deal_registered"}
[2026-04-13 11:01:14] [INFO] Virtual stage updated after activity save {"contact_id":"9756"}
[2026-04-13 11:01:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9756","person_id":"5180"}
[2026-04-13 11:01:21] [INFO] Checking activity reminders 
[2026-04-13 11:01:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:01:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:01:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:01:51] [INFO] Checking activity reminders 
[2026-04-13 11:01:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:01:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:02:21] [INFO] Checking activity reminders 
[2026-04-13 11:02:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:02:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:02:32] [INFO] Checking activity reminders 
[2026-04-13 11:02:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:02:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:02:51] [INFO] Checking activity reminders 
[2026-04-13 11:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:03:02] [INFO] Checking activity reminders 
[2026-04-13 11:03:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:03:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:03:21] [INFO] Checking activity reminders 
[2026-04-13 11:03:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:03:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:03:51] [INFO] Checking activity reminders 
[2026-04-13 11:03:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:03:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:03:58] [INFO] Checking activity reminders 
[2026-04-13 11:03:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:03:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:04:21] [INFO] Checking activity reminders 
[2026-04-13 11:04:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:04:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:04:28] [INFO] Checking activity reminders 
[2026-04-13 11:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:04:51] [INFO] Checking activity reminders 
[2026-04-13 11:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:04:59] [INFO] Checking activity reminders 
[2026-04-13 11:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:05:21] [INFO] Checking activity reminders 
[2026-04-13 11:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:05:29] [INFO] Checking activity reminders 
[2026-04-13 11:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:05:52] [INFO] Checking activity reminders 
[2026-04-13 11:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:05:59] [INFO] Checking activity reminders 
[2026-04-13 11:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:06:18] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:18] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 11:06:18] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:22] [INFO] Checking activity reminders 
[2026-04-13 11:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:29] [INFO] Checking activity reminders 
[2026-04-13 11:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_products"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-13 11:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:42] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:06:52] [INFO] Checking activity reminders 
[2026-04-13 11:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:06:59] [INFO] Checking activity reminders 
[2026-04-13 11:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:07:00] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 11:07:01] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 11:07:01] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 11:07:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 11:07:01] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 11:07:01] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 11:07:01] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 11:07:18] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9940635199","09940635199"]}
[2026-04-13 11:07:18] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9940635199","09940635199"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-13 11:07:18] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9940635199","full_name":"لید جدید"}
[2026-04-13 11:07:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:07:18] [INFO] Notification created {"notification_id":"647","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-13 11:07:22] [INFO] Checking activity reminders 
[2026-04-13 11:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:07:29] [INFO] Checking activity reminders 
[2026-04-13 11:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:07:51] [INFO] Checking activity reminders 
[2026-04-13 11:07:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:07:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:07:59] [INFO] Checking activity reminders 
[2026-04-13 11:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:08:21] [INFO] Checking activity reminders 
[2026-04-13 11:08:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:08:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:08:29] [INFO] Checking activity reminders 
[2026-04-13 11:08:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:08:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:08:51] [INFO] Checking activity reminders 
[2026-04-13 11:08:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:08:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:08:59] [INFO] Checking activity reminders 
[2026-04-13 11:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:09:21] [INFO] Checking activity reminders 
[2026-04-13 11:09:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:09:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:09:29] [INFO] Checking activity reminders 
[2026-04-13 11:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:09:42] [INFO] Lead update received {"contact_id":"local_69dc9d2e6210c3.45414163","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 11:09:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:09:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:09:42] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-13 11:09:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:09:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:09:52] [INFO] Checking activity reminders 
[2026-04-13 11:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:09:59] [INFO] Checking activity reminders 
[2026-04-13 11:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:10:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 11:10:05","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 11:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:10:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc9d2e6210c3.45414163","is_new_deal":false}
[2026-04-13 11:10:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:10:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:10:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:10:05] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-13 11:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:10:05] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dc9d2e6210c3.45414163","person_found":true,"primary_phone":"9940635199"}
[2026-04-13 11:10:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9940635199"}
[2026-04-13 11:10:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9940635199","contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:10:05"}
[2026-04-13 11:10:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","existing_deal_found":true,"existing_contact_id":"local_69dc9d2e6210c3.45414163","existing_title":"معامله اول 9940635199","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:10:05"}
[2026-04-13 11:10:05] [INFO] DealController.save validated payments {"deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-13 11:10:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69dc9d2e6210c3.45414163","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 11:10:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dc9d2e63fc8","contact_didar_id":"local_69dc9d2e6210c3.45414163","title":"معامله اول 9940635199 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9940635199","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی داوودی","existing_deal":"YES","existing_deal_id":"local_69dc9d2e63fc8","existing_deal_status":"Pending","server_time":"2026-04-13 11:10:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 11:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:10:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9940635199 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 11:10:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 11:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:10:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 11:10:22] [INFO] Checking activity reminders 
[2026-04-13 11:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:10:29] [INFO] Checking activity reminders 
[2026-04-13 11:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:10:52] [INFO] Checking activity reminders 
[2026-04-13 11:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:10:56] [INFO] Checking activity reminders 
[2026-04-13 11:10:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:10:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:11:00] [INFO] Checking activity reminders 
[2026-04-13 11:11:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:11:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:11:26] [INFO] Checking activity reminders 
[2026-04-13 11:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:11:30] [INFO] Checking activity reminders 
[2026-04-13 11:11:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:11:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:11:56] [INFO] Checking activity reminders 
[2026-04-13 11:11:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:11:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:12:26] [INFO] Checking activity reminders 
[2026-04-13 11:12:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:12:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:12:56] [INFO] Checking activity reminders 
[2026-04-13 11:12:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:12:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:13:26] [INFO] Checking activity reminders 
[2026-04-13 11:13:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:13:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:13:56] [INFO] Checking activity reminders 
[2026-04-13 11:13:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:13:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:14:26] [INFO] Checking activity reminders 
[2026-04-13 11:14:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:14:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:14:56] [INFO] Checking activity reminders 
[2026-04-13 11:14:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:14:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:15:26] [INFO] Checking activity reminders 
[2026-04-13 11:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:15:57] [INFO] Checking activity reminders 
[2026-04-13 11:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:16:27] [INFO] Checking activity reminders 
[2026-04-13 11:16:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:16:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:16:57] [INFO] Checking activity reminders 
[2026-04-13 11:16:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:16:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:17:27] [INFO] Checking activity reminders 
[2026-04-13 11:17:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:17:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:17:57] [INFO] Checking activity reminders 
[2026-04-13 11:17:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:17:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:18:17] [INFO] Checking activity reminders 
[2026-04-13 11:18:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:18:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:18:27] [INFO] Checking activity reminders 
[2026-04-13 11:18:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:18:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:18:47] [INFO] Checking activity reminders 
[2026-04-13 11:18:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:18:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:18:57] [INFO] Checking activity reminders 
[2026-04-13 11:18:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:18:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:19:16] [INFO] Activity save request {"post_data":{"contact_id":"649","deal_id":"local_69d6983b84a696.07775607","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"مجدد پیگیری میگه 79 گرونه باید فکر کنم \/6ماهه 39ت \r\nدید دادم یادش اوردم سال های پیش چه سود های داشته \/ \r\nتا ساعت 5 اطلاع واریز ","activity_duration":"15","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:19:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"649","note_was_empty":true}
[2026-04-13 11:19:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"649","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:16] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-13 11:19:16] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-13 11:19:16] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-13 11:19:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6983b84a696.07775607","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:19:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dc9ffcc17fd9.97915069","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69dc9ffcc17fd9.97915069"}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:16] [INFO] Updating virtual stage {"contact_id":"649","stage_name":"deal_registered","force":false}
[2026-04-13 11:19:16] [INFO] Virtual stage successfully saved {"contact_id":"649","stage_name":"deal_registered"}
[2026-04-13 11:19:16] [INFO] Virtual stage updated after activity save {"contact_id":"649"}
[2026-04-13 11:19:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-13 11:19:18] [INFO] Checking activity reminders 
[2026-04-13 11:19:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:19:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:19:27] [INFO] Checking activity reminders 
[2026-04-13 11:19:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:19:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:19:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Activity save request {"post_data":{"contact_id":"local_69da71a826f6a2.47991842","deal_id":"local_69da71a8333a5","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:19:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69da71a826f6a2.47991842","note_was_empty":true}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered","force":false}
[2026-04-13 11:19:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered"}
[2026-04-13 11:19:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-13 11:19:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69da71a8333a5","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:19:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca01936bc44.00610909","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca01936bc44.00610909"}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:45] [INFO] Updating virtual stage {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered","force":false}
[2026-04-13 11:19:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69da71a826f6a2.47991842","stage_name":"deal_registered"}
[2026-04-13 11:19:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69da71a826f6a2.47991842"}
[2026-04-13 11:19:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69da71a826f6a2.47991842","person_id":"22120"}
[2026-04-13 11:19:48] [INFO] Checking activity reminders 
[2026-04-13 11:19:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:19:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:19:57] [INFO] Checking activity reminders 
[2026-04-13 11:19:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:19:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:19:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d223e1cebb36.28765061","person_id":"21975"}
[2026-04-13 11:20:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:20:18] [INFO] Checking activity reminders 
[2026-04-13 11:20:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:20:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:20:27] [INFO] Checking activity reminders 
[2026-04-13 11:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:20:48] [INFO] Checking activity reminders 
[2026-04-13 11:20:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:20:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:20:57] [INFO] Checking activity reminders 
[2026-04-13 11:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:21:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:21:18] [INFO] Checking activity reminders 
[2026-04-13 11:21:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:21:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:21:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"98","deal_id":"16092","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 11:21:26","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 11:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:21:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"98","is_new_deal":false}
[2026-04-13 11:21:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:21:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:21:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 11:21:26] [INFO] getContactPrimaryPhone called {"contact_id":"98"}
[2026-04-13 11:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:21:26] [INFO] getContactPrimaryPhone result {"contact_id":"98","person_found":true,"primary_phone":"9120388244"}
[2026-04-13 11:21:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120388244"}
[2026-04-13 11:21:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120388244","contact_id":"98","deal_id":"16092","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:21:26"}
[2026-04-13 11:21:26] [INFO] DealController.save existing deal lookup {"deal_id":"16092","contact_id":"98","existing_deal_found":true,"existing_contact_id":"98","existing_title":"معامله یاسمن اسدی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:21:26"}
[2026-04-13 11:21:26] [INFO] DealController.save validated payments {"deal_id":"16092","contact_id":"98","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 11:21:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"98","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 11:21:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"16092","contact_didar_id":"98","title":"معامله یاسمن اسدی | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله یاسمن اسدی","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یاسمن اسدی","existing_deal":"YES","existing_deal_id":"16092","existing_deal_status":"Pending","server_time":"2026-04-13 11:21:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 11:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:21:26] [INFO] ensureDealProductsFromText: products synced {"deal_id":"16092","product_ids":[35]}
[2026-04-13 11:21:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"16092","contact_id":"98","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله یاسمن اسدی | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 11:21:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 11:21:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:21:28] [INFO] Checking activity reminders 
[2026-04-13 11:21:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:21:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:21:48] [INFO] Checking activity reminders 
[2026-04-13 11:21:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:21:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:21:58] [INFO] Checking activity reminders 
[2026-04-13 11:21:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:21:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:21:58] [INFO] Activity save request {"post_data":{"contact_id":"19271","deal_id":"local_69b9a82114c262.89718371","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیامک پیگیری عدم پاسخ","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:21:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:21:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:21:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"19271","note_was_empty":true}
[2026-04-13 11:21:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"19271","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:21:58] [INFO] Updating virtual stage {"contact_id":"19271","stage_name":"deal_registered","force":false}
[2026-04-13 11:21:58] [INFO] Virtual stage successfully saved {"contact_id":"19271","stage_name":"deal_registered"}
[2026-04-13 11:21:58] [INFO] Virtual stage updated after activity save {"contact_id":"19271"}
[2026-04-13 11:21:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b9a82114c262.89718371","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:21:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca09e8c9f29.05343717","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:21:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca09e8c9f29.05343717"}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:21:58] [INFO] Updating virtual stage {"contact_id":"19271","stage_name":"deal_registered","force":false}
[2026-04-13 11:21:58] [INFO] Virtual stage successfully saved {"contact_id":"19271","stage_name":"deal_registered"}
[2026-04-13 11:21:58] [INFO] Virtual stage updated after activity save {"contact_id":"19271"}
[2026-04-13 11:21:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-13 11:22:16] [INFO] Activity save request {"post_data":{"contact_id":"98","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"در بله شماره مو دید \r\nپرزنت مشاوره با استاد 30 م \r\nتبدیل خودرو به طلا \/ پرزنت 6 ماهه کانال \r\nمشورت با برادرش ","activity_duration":"10","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:22:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:22:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:22:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:22:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:22:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"98","note_was_empty":true}
[2026-04-13 11:22:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"98","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 11:22:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca0b0e1d399.73138614","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:22:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:22:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca0b0e1d399.73138614"}
[2026-04-13 11:22:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:22:16] [INFO] Updating virtual stage {"contact_id":"98","stage_name":"deal_registered","force":false}
[2026-04-13 11:22:16] [INFO] Virtual stage successfully saved {"contact_id":"98","stage_name":"deal_registered"}
[2026-04-13 11:22:16] [INFO] Virtual stage updated after activity save {"contact_id":"98"}
[2026-04-13 11:22:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"98","person_id":"11049"}
[2026-04-13 11:22:18] [INFO] Checking activity reminders 
[2026-04-13 11:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:22:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:22:28] [INFO] Checking activity reminders 
[2026-04-13 11:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:22:48] [INFO] Checking activity reminders 
[2026-04-13 11:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:22:58] [INFO] Checking activity reminders 
[2026-04-13 11:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:23:11] [INFO] Activity save request {"post_data":{"contact_id":"21663","deal_id":"local_69bbeaae569565.94495590","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:23:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21663","note_was_empty":true}
[2026-04-13 11:23:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"21663","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:11] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-13 11:23:11] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-13 11:23:11] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-13 11:23:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeaae569565.94495590","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:23:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca0e76d41a3.48494994","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca0e76d41a3.48494994"}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:11] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-13 11:23:11] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-13 11:23:11] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-13 11:23:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-13 11:23:18] [INFO] Checking activity reminders 
[2026-04-13 11:23:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:23:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:23:21] [INFO] Checking activity reminders 
[2026-04-13 11:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:23:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:23:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 11:23:48] [INFO] Checking activity reminders 
[2026-04-13 11:23:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:23:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:23:49] [INFO] Checking activity reminders 
[2026-04-13 11:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:23:51] [INFO] Checking activity reminders 
[2026-04-13 11:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:24:18] [INFO] Checking activity reminders 
[2026-04-13 11:24:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:24:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:24:21] [INFO] Checking activity reminders 
[2026-04-13 11:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:24:40] [INFO] Checking activity reminders 
[2026-04-13 11:24:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:24:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:24:48] [INFO] Checking activity reminders 
[2026-04-13 11:24:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:24:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:24:51] [INFO] Checking activity reminders 
[2026-04-13 11:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:10] [INFO] Checking activity reminders 
[2026-04-13 11:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15908","person_id":"16364"}
[2026-04-13 11:25:19] [INFO] Checking activity reminders 
[2026-04-13 11:25:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:21] [INFO] Checking activity reminders 
[2026-04-13 11:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:40] [INFO] Checking activity reminders 
[2026-04-13 11:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:49] [INFO] Checking activity reminders 
[2026-04-13 11:25:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:51] [INFO] Checking activity reminders 
[2026-04-13 11:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:25:54] [INFO] Activity save request {"post_data":{"contact_id":"6754","deal_id":"local_6942a221e2f862.47832460","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ \/ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:25:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:25:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:25:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"6754","note_was_empty":true}
[2026-04-13 11:25:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"6754","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:25:54] [INFO] Updating virtual stage {"contact_id":"6754","stage_name":"deal_registered","force":false}
[2026-04-13 11:25:54] [INFO] Virtual stage successfully saved {"contact_id":"6754","stage_name":"deal_registered"}
[2026-04-13 11:25:54] [INFO] Virtual stage updated after activity save {"contact_id":"6754"}
[2026-04-13 11:25:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6942a221e2f862.47832460","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:25:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca18a4313a4.95353201","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:25:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca18a4313a4.95353201"}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:25:54] [INFO] Updating virtual stage {"contact_id":"6754","stage_name":"deal_registered","force":false}
[2026-04-13 11:25:54] [INFO] Virtual stage successfully saved {"contact_id":"6754","stage_name":"deal_registered"}
[2026-04-13 11:25:54] [INFO] Virtual stage updated after activity save {"contact_id":"6754"}
[2026-04-13 11:25:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6754","person_id":"3004"}
[2026-04-13 11:26:11] [INFO] Checking activity reminders 
[2026-04-13 11:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:26:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d78b3578c053.50378714","person_id":"22108"}
[2026-04-13 11:26:19] [INFO] Checking activity reminders 
[2026-04-13 11:26:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:26:22] [INFO] Checking activity reminders 
[2026-04-13 11:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4271","person_id":"16964"}
[2026-04-13 11:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:26:41] [INFO] Checking activity reminders 
[2026-04-13 11:26:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:26:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:26:49] [INFO] Checking activity reminders 
[2026-04-13 11:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:26:52] [INFO] Checking activity reminders 
[2026-04-13 11:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:11] [INFO] Checking activity reminders 
[2026-04-13 11:27:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:19] [INFO] Checking activity reminders 
[2026-04-13 11:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:22] [INFO] Checking activity reminders 
[2026-04-13 11:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:41] [INFO] Checking activity reminders 
[2026-04-13 11:27:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:49] [INFO] Checking activity reminders 
[2026-04-13 11:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:27:52] [INFO] Checking activity reminders 
[2026-04-13 11:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:11] [INFO] Checking activity reminders 
[2026-04-13 11:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:19] [INFO] Checking activity reminders 
[2026-04-13 11:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:22] [INFO] Checking activity reminders 
[2026-04-13 11:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:35] [INFO] Activity save request {"post_data":{"contact_id":"20967","deal_id":"local_69d68e6b5d83b6.56203123","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:35] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:28:35] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:35] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20967","note_was_empty":true}
[2026-04-13 11:28:35] [INFO] Didar write disabled; saving activity locally {"contact_id":"20967","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:35] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-13 11:28:35] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-13 11:28:35] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-13 11:28:35] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68e6b5d83b6.56203123","stage":"تماس پیگیری","status_change":null}
[2026-04-13 11:28:35] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca22b02e7c0.75176530","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:35] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca22b02e7c0.75176530"}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:35] [INFO] Updating virtual stage {"contact_id":"20967","stage_name":"deal_registered","force":false}
[2026-04-13 11:28:35] [INFO] Virtual stage successfully saved {"contact_id":"20967","stage_name":"deal_registered"}
[2026-04-13 11:28:35] [INFO] Virtual stage updated after activity save {"contact_id":"20967"}
[2026-04-13 11:28:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20967","person_id":"19867"}
[2026-04-13 11:28:41] [INFO] Checking activity reminders 
[2026-04-13 11:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:49] [INFO] Checking activity reminders 
[2026-04-13 11:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:28:52] [INFO] Checking activity reminders 
[2026-04-13 11:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:11] [INFO] Checking activity reminders 
[2026-04-13 11:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:20] [INFO] Checking activity reminders 
[2026-04-13 11:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:22] [INFO] Checking activity reminders 
[2026-04-13 11:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:41] [INFO] Checking activity reminders 
[2026-04-13 11:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:50] [INFO] Checking activity reminders 
[2026-04-13 11:29:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:29:52] [INFO] Checking activity reminders 
[2026-04-13 11:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:11] [INFO] Checking activity reminders 
[2026-04-13 11:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:21] [INFO] Checking activity reminders 
[2026-04-13 11:30:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 11:30:22","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 11:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:30:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2128","is_new_deal":false}
[2026-04-13 11:30:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 11:30:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 11:30:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 11:30:22] [INFO] getContactPrimaryPhone called {"contact_id":"2128"}
[2026-04-13 11:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:30:22] [INFO] getContactPrimaryPhone result {"contact_id":"2128","person_found":true,"primary_phone":"9223847214"}
[2026-04-13 11:30:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9223847214"}
[2026-04-13 11:30:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9223847214","contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:30:22"}
[2026-04-13 11:30:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","existing_deal_found":true,"existing_contact_id":"2128","existing_title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:30:22"}
[2026-04-13 11:30:22] [INFO] DealController.save validated payments {"deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 11:30:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2128","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 11:30:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68ffe958646.99867336","contact_didar_id":"2128","title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9223847214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"افروزی","existing_deal":"YES","existing_deal_id":"local_69d68ffe958646.99867336","existing_deal_status":"Pending","server_time":"2026-04-13 11:30:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 11:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:30:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68ffe958646.99867336","contact_id":"2128","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9223847214 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-13 11:30:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 11:30:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:30:22] [INFO] Checking activity reminders 
[2026-04-13 11:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:41] [INFO] Checking activity reminders 
[2026-04-13 11:30:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:51] [INFO] Checking activity reminders 
[2026-04-13 11:30:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:30:52] [INFO] Checking activity reminders 
[2026-04-13 11:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:31:11] [INFO] Checking activity reminders 
[2026-04-13 11:31:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:31:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:31:22] [INFO] Checking activity reminders 
[2026-04-13 11:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:31:42] [INFO] Checking activity reminders 
[2026-04-13 11:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:31:52] [INFO] Checking activity reminders 
[2026-04-13 11:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:32:12] [INFO] Checking activity reminders 
[2026-04-13 11:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:32:22] [INFO] Checking activity reminders 
[2026-04-13 11:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:32:42] [INFO] Checking activity reminders 
[2026-04-13 11:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:32:52] [INFO] Checking activity reminders 
[2026-04-13 11:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:12] [INFO] Checking activity reminders 
[2026-04-13 11:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:17] [INFO] Checking activity reminders 
[2026-04-13 11:33:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:22] [INFO] Checking activity reminders 
[2026-04-13 11:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:42] [INFO] Checking activity reminders 
[2026-04-13 11:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:47] [INFO] Checking activity reminders 
[2026-04-13 11:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:33:52] [INFO] Checking activity reminders 
[2026-04-13 11:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:12] [INFO] Checking activity reminders 
[2026-04-13 11:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:18] [INFO] Checking activity reminders 
[2026-04-13 11:34:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:23] [INFO] Checking activity reminders 
[2026-04-13 11:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:42] [INFO] Checking activity reminders 
[2026-04-13 11:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:48] [INFO] Checking activity reminders 
[2026-04-13 11:34:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:34:53] [INFO] Checking activity reminders 
[2026-04-13 11:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:35:12] [INFO] Checking activity reminders 
[2026-04-13 11:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:35:18] [INFO] Checking activity reminders 
[2026-04-13 11:35:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:35:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:35:23] [INFO] Checking activity reminders 
[2026-04-13 11:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:35:42] [INFO] Checking activity reminders 
[2026-04-13 11:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:35:48] [INFO] Checking activity reminders 
[2026-04-13 11:35:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:35:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:36:12] [INFO] Checking activity reminders 
[2026-04-13 11:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:36:18] [INFO] Checking activity reminders 
[2026-04-13 11:36:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:36:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:36:43] [INFO] Checking activity reminders 
[2026-04-13 11:36:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:36:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:36:48] [INFO] Checking activity reminders 
[2026-04-13 11:36:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:36:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:37:13] [INFO] Checking activity reminders 
[2026-04-13 11:37:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:37:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:37:18] [INFO] Checking activity reminders 
[2026-04-13 11:37:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:37:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:37:43] [INFO] Checking activity reminders 
[2026-04-13 11:37:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:37:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:37:48] [INFO] Checking activity reminders 
[2026-04-13 11:37:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:37:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:38:13] [INFO] Checking activity reminders 
[2026-04-13 11:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:38:18] [INFO] Checking activity reminders 
[2026-04-13 11:38:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:38:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:38:43] [INFO] Checking activity reminders 
[2026-04-13 11:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:38:48] [INFO] Checking activity reminders 
[2026-04-13 11:38:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:38:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:39:13] [INFO] Checking activity reminders 
[2026-04-13 11:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:39:18] [INFO] Checking activity reminders 
[2026-04-13 11:39:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:39:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:39:26] [INFO] Activity save request {"post_data":{"contact_id":"2128","deal_id":"local_69d68ffe958646.99867336","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل طلاها رو در 13 م به دلیل سند ملکی فروخته \/ 300 گرم \r\nسرمایه در خودرو و ملک قفل شده \r\nنقدینگی نداره \r\nپرزنت 6 ماهه  و یکساله کانال \r\nمیگه یک هفته فرصت بدید برای نقدینگی خودرو \r\nارسال پیام در بله \r\n","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:39:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2128","note_was_empty":true}
[2026-04-13 11:39:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"2128","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 11:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:26] [INFO] Updating virtual stage {"contact_id":"2128","stage_name":"deal_registered","force":false}
[2026-04-13 11:39:26] [INFO] Virtual stage successfully saved {"contact_id":"2128","stage_name":"deal_registered"}
[2026-04-13 11:39:26] [INFO] Virtual stage updated after activity save {"contact_id":"2128"}
[2026-04-13 11:39:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68ffe958646.99867336","stage":"تماس پیگیری","status_change":null}
[2026-04-13 11:39:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca4b6daf4b3.20978245","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca4b6daf4b3.20978245"}
[2026-04-13 11:39:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:26] [INFO] Updating virtual stage {"contact_id":"2128","stage_name":"deal_registered","force":false}
[2026-04-13 11:39:26] [INFO] Virtual stage successfully saved {"contact_id":"2128","stage_name":"deal_registered"}
[2026-04-13 11:39:26] [INFO] Virtual stage updated after activity save {"contact_id":"2128"}
[2026-04-13 11:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2128","person_id":"2101"}
[2026-04-13 11:39:43] [INFO] Checking activity reminders 
[2026-04-13 11:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:39:48] [INFO] Checking activity reminders 
[2026-04-13 11:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:40:13] [INFO] Checking activity reminders 
[2026-04-13 11:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:40:18] [INFO] Checking activity reminders 
[2026-04-13 11:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:40:43] [INFO] Checking activity reminders 
[2026-04-13 11:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:40:48] [INFO] Checking activity reminders 
[2026-04-13 11:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:41:13] [INFO] Checking activity reminders 
[2026-04-13 11:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:41:19] [INFO] Checking activity reminders 
[2026-04-13 11:41:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:41:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:41:43] [INFO] Checking activity reminders 
[2026-04-13 11:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:41:49] [INFO] Checking activity reminders 
[2026-04-13 11:41:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:41:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:42:06] [INFO] Checking activity reminders 
[2026-04-13 11:42:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:42:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:42:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:36] [INFO] Checking activity reminders 
[2026-04-13 11:42:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:42:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:42:37] [INFO] Activity save request {"post_data":{"contact_id":"11768","deal_id":"local_699d72d59585d5.67909885","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:42:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11768","note_was_empty":true}
[2026-04-13 11:42:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"11768","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:37] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-13 11:42:37] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-13 11:42:37] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-13 11:42:37] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d72d59585d5.67909885","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 11:42:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca575257282.72607904","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca575257282.72607904"}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:42:37] [INFO] Updating virtual stage {"contact_id":"11768","stage_name":"deal_registered","force":false}
[2026-04-13 11:42:37] [INFO] Virtual stage successfully saved {"contact_id":"11768","stage_name":"deal_registered"}
[2026-04-13 11:42:37] [INFO] Virtual stage updated after activity save {"contact_id":"11768"}
[2026-04-13 11:42:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11768","person_id":"17210"}
[2026-04-13 11:43:06] [INFO] Checking activity reminders 
[2026-04-13 11:43:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:43:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:43:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:43:20] [INFO] Checking activity reminders 
[2026-04-13 11:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:43:37] [INFO] Checking activity reminders 
[2026-04-13 11:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:43:50] [INFO] Checking activity reminders 
[2026-04-13 11:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:44:07] [INFO] Checking activity reminders 
[2026-04-13 11:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:44:21] [INFO] Checking activity reminders 
[2026-04-13 11:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:44:37] [INFO] Checking activity reminders 
[2026-04-13 11:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:44:51] [INFO] Checking activity reminders 
[2026-04-13 11:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:45:07] [INFO] Checking activity reminders 
[2026-04-13 11:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:45:21] [INFO] Checking activity reminders 
[2026-04-13 11:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:45:37] [INFO] Checking activity reminders 
[2026-04-13 11:45:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:45:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:45:51] [INFO] Checking activity reminders 
[2026-04-13 11:45:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:45:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:46:07] [INFO] Checking activity reminders 
[2026-04-13 11:46:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:46:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:46:21] [INFO] Checking activity reminders 
[2026-04-13 11:46:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:46:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:46:37] [INFO] Checking activity reminders 
[2026-04-13 11:46:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:46:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:46:51] [INFO] Checking activity reminders 
[2026-04-13 11:46:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:46:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:47:07] [INFO] Checking activity reminders 
[2026-04-13 11:47:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:47:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:47:21] [INFO] Checking activity reminders 
[2026-04-13 11:47:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:47:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:47:37] [INFO] Checking activity reminders 
[2026-04-13 11:47:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:47:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:47:51] [INFO] Checking activity reminders 
[2026-04-13 11:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:48:07] [INFO] Checking activity reminders 
[2026-04-13 11:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:48:21] [INFO] Checking activity reminders 
[2026-04-13 11:48:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:48:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:48:38] [INFO] Checking activity reminders 
[2026-04-13 11:48:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:48:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:48:51] [INFO] Checking activity reminders 
[2026-04-13 11:48:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:48:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:48:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 11:48:59","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 11:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:48:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"11454","is_new_deal":false}
[2026-04-13 11:48:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 11:48:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 11:48:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 11:48:59] [INFO] getContactPrimaryPhone called {"contact_id":"11454"}
[2026-04-13 11:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:48:59] [INFO] getContactPrimaryPhone result {"contact_id":"11454","person_found":true,"primary_phone":"9177842033"}
[2026-04-13 11:48:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177842033"}
[2026-04-13 11:48:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177842033","contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:48:59"}
[2026-04-13 11:48:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","existing_deal_found":true,"existing_contact_id":"11454","existing_title":"معامله دوم 9177842033 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 11:48:59"}
[2026-04-13 11:48:59] [INFO] DealController.save validated payments {"deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-13 11:48:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11454","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 11:48:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6959f383bd4665.70878914","contact_didar_id":"11454","title":"معامله دوم 9177842033 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله دوم 9177842033","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"دوپیکر","existing_deal":"YES","existing_deal_id":"local_6959f383bd4665.70878914","existing_deal_status":"Pending","server_time":"2026-04-13 11:48:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 11:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:48:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6959f383bd4665.70878914","contact_id":"11454","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9177842033 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-13 11:48:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 11:48:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:08] [INFO] Checking activity reminders 
[2026-04-13 11:49:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:49:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:49:22] [INFO] Checking activity reminders 
[2026-04-13 11:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:49:38] [INFO] Checking activity reminders 
[2026-04-13 11:49:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:49:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:49:52] [INFO] Checking activity reminders 
[2026-04-13 11:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:49:52] [INFO] Activity save request {"post_data":{"contact_id":"11454","deal_id":"local_6959f383bd4665.70878914","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه \r\nمجدد شرایط بحرانی کشور و محدودیت زمان برای استفاده از سیگنال ها \r\nارسال شماره کارت در بله ","activity_duration":"5","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 11:49:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11454","note_was_empty":true}
[2026-04-13 11:49:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"11454","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:52] [INFO] Updating virtual stage {"contact_id":"11454","stage_name":"deal_registered","force":false}
[2026-04-13 11:49:52] [INFO] Virtual stage successfully saved {"contact_id":"11454","stage_name":"deal_registered"}
[2026-04-13 11:49:52] [INFO] Virtual stage updated after activity save {"contact_id":"11454"}
[2026-04-13 11:49:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6959f383bd4665.70878914","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 11:49:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dca7287cbe61.97393889","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69dca7287cbe61.97393889"}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:49:52] [INFO] Updating virtual stage {"contact_id":"11454","stage_name":"deal_registered","force":false}
[2026-04-13 11:49:52] [INFO] Virtual stage successfully saved {"contact_id":"11454","stage_name":"deal_registered"}
[2026-04-13 11:49:52] [INFO] Virtual stage updated after activity save {"contact_id":"11454"}
[2026-04-13 11:49:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11454","person_id":"4794"}
[2026-04-13 11:50:08] [INFO] Checking activity reminders 
[2026-04-13 11:50:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:50:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:50:22] [INFO] Checking activity reminders 
[2026-04-13 11:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:50:38] [INFO] Checking activity reminders 
[2026-04-13 11:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:50:52] [INFO] Checking activity reminders 
[2026-04-13 11:50:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:50:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:51:08] [INFO] Checking activity reminders 
[2026-04-13 11:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:51:22] [INFO] Checking activity reminders 
[2026-04-13 11:51:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:51:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:51:38] [INFO] Checking activity reminders 
[2026-04-13 11:51:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:51:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:51:52] [INFO] Checking activity reminders 
[2026-04-13 11:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:52:08] [INFO] Checking activity reminders 
[2026-04-13 11:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:52:22] [INFO] Checking activity reminders 
[2026-04-13 11:52:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:52:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:52:38] [INFO] Checking activity reminders 
[2026-04-13 11:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:52:53] [INFO] Checking activity reminders 
[2026-04-13 11:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:53:08] [INFO] Checking activity reminders 
[2026-04-13 11:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:53:23] [INFO] Checking activity reminders 
[2026-04-13 11:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:53:36] [INFO] Checking activity reminders 
[2026-04-13 11:53:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:53:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:53:53] [INFO] Checking activity reminders 
[2026-04-13 11:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:54:07] [INFO] Checking activity reminders 
[2026-04-13 11:54:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:54:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:54:23] [INFO] Checking activity reminders 
[2026-04-13 11:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:54:37] [INFO] Checking activity reminders 
[2026-04-13 11:54:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:54:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:54:53] [INFO] Checking activity reminders 
[2026-04-13 11:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:55:07] [INFO] Checking activity reminders 
[2026-04-13 11:55:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:55:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:55:23] [INFO] Checking activity reminders 
[2026-04-13 11:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:55:37] [INFO] Checking activity reminders 
[2026-04-13 11:55:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:55:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:55:53] [INFO] Checking activity reminders 
[2026-04-13 11:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:56:07] [INFO] Checking activity reminders 
[2026-04-13 11:56:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:56:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:56:23] [INFO] Checking activity reminders 
[2026-04-13 11:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:56:37] [INFO] Checking activity reminders 
[2026-04-13 11:56:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:56:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:56:53] [INFO] Checking activity reminders 
[2026-04-13 11:56:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:56:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 11:57:07] [INFO] Checking activity reminders 
[2026-04-13 11:57:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:57:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:57:24] [INFO] Checking activity reminders 
[2026-04-13 11:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:57:37] [INFO] Checking activity reminders 
[2026-04-13 11:57:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:57:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:57:54] [INFO] Checking activity reminders 
[2026-04-13 11:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:58:07] [INFO] Checking activity reminders 
[2026-04-13 11:58:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:58:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:58:24] [INFO] Checking activity reminders 
[2026-04-13 11:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:58:37] [INFO] Checking activity reminders 
[2026-04-13 11:58:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:58:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:58:54] [INFO] Checking activity reminders 
[2026-04-13 11:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:59:07] [INFO] Checking activity reminders 
[2026-04-13 11:59:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:59:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 11:59:37] [INFO] Checking activity reminders 
[2026-04-13 11:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 11:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:00:07] [INFO] Checking activity reminders 
[2026-04-13 12:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:00:38] [INFO] Checking activity reminders 
[2026-04-13 12:00:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:00:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:01:08] [INFO] Checking activity reminders 
[2026-04-13 12:01:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:01:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:01:38] [INFO] Checking activity reminders 
[2026-04-13 12:01:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:01:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:02:06] [INFO] Checking activity reminders 
[2026-04-13 12:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:02:36] [INFO] Checking activity reminders 
[2026-04-13 12:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:03:06] [INFO] Checking activity reminders 
[2026-04-13 12:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:03:36] [INFO] Checking activity reminders 
[2026-04-13 12:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:03:44] [INFO] Checking activity reminders 
[2026-04-13 12:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:03:58] [INFO] Activity save request {"post_data":{"contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"دوست سینا محمدی \r\nزنجان \r\nکارمند اداره بازرگانی \/ در طلا و خودرو و موتور و دلار سرمایه \r\nپرزنت 405 با پشتیبانی استاد \r\nارسال شبا تجارت در بله \r\nبیعانه \r\nواریز چهارشنبه ","activity_duration":"10","direction":"incoming","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 12:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:03:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 12:03:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 12:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:03:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69dc9d2e6210c3.45414163","note_was_empty":true}
[2026-04-13 12:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:03:58] [INFO] Updating virtual stage {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"new","force":false}
[2026-04-13 12:03:58] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"new"}
[2026-04-13 12:03:58] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-13 12:03:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dc9d2e63fc8","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 12:03:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcaa76f0d3a0.43150343","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 12:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:03:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcaa76f0d3a0.43150343"}
[2026-04-13 12:03:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:03:58] [INFO] Updating virtual stage {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered","force":false}
[2026-04-13 12:03:58] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered"}
[2026-04-13 12:03:58] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-13 12:03:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:04:07] [INFO] Checking activity reminders 
[2026-04-13 12:04:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:04:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:04:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 12:04:15] [INFO] Checking activity reminders 
[2026-04-13 12:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:04:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 12:04:34] [INFO] Lead update received {"contact_id":"3985","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 12:04:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 12:04:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 12:04:34] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"3985"}
[2026-04-13 12:04:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 12:04:37] [INFO] Checking activity reminders 
[2026-04-13 12:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:05:07] [INFO] Checking activity reminders 
[2026-04-13 12:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:05:37] [INFO] Checking activity reminders 
[2026-04-13 12:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:06:07] [INFO] Checking activity reminders 
[2026-04-13 12:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:06:36] [INFO] Checking activity reminders 
[2026-04-13 12:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:06:39] [INFO] Checking activity reminders 
[2026-04-13 12:06:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:06:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:06:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 12:06:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 12:06:45] [INFO] Checking activity reminders 
[2026-04-13 12:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:06:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:07:15] [INFO] Checking activity reminders 
[2026-04-13 12:07:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:07:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:07:45] [INFO] Checking activity reminders 
[2026-04-13 12:07:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:07:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:08:15] [INFO] Checking activity reminders 
[2026-04-13 12:08:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:08:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:08:45] [INFO] Checking activity reminders 
[2026-04-13 12:08:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:08:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:09:15] [INFO] Checking activity reminders 
[2026-04-13 12:09:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:09:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:09:29] [INFO] Activity save request {"post_data":{"contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 12:09:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20476","note_was_empty":true}
[2026-04-13 12:09:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"20476","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:29] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-13 12:09:29] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-13 12:09:29] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-13 12:09:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d623fe842fc4.39325062","stage":"تماس پیگیری","status_change":null}
[2026-04-13 12:09:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcabc11d19f0.82757914","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcabc11d19f0.82757914"}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:29] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-13 12:09:29] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-13 12:09:29] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-13 12:09:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-13 12:09:45] [INFO] Checking activity reminders 
[2026-04-13 12:09:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:09:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:10:14] [INFO] Checking activity reminders 
[2026-04-13 12:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:10:44] [INFO] Checking activity reminders 
[2026-04-13 12:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:11:15] [INFO] Checking activity reminders 
[2026-04-13 12:11:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:11:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:11:45] [INFO] Checking activity reminders 
[2026-04-13 12:11:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:11:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:12:15] [INFO] Checking activity reminders 
[2026-04-13 12:12:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:12:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:12:45] [INFO] Checking activity reminders 
[2026-04-13 12:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:13:15] [INFO] Checking activity reminders 
[2026-04-13 12:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:13:45] [INFO] Checking activity reminders 
[2026-04-13 12:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:14:15] [INFO] Checking activity reminders 
[2026-04-13 12:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:14:45] [INFO] Checking activity reminders 
[2026-04-13 12:14:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:14:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:15:15] [INFO] Checking activity reminders 
[2026-04-13 12:15:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:15:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:15:45] [INFO] Checking activity reminders 
[2026-04-13 12:15:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:15:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:16:15] [INFO] Checking activity reminders 
[2026-04-13 12:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:16:46] [INFO] Checking activity reminders 
[2026-04-13 12:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:17:16] [INFO] Checking activity reminders 
[2026-04-13 12:17:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:17:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:17:46] [INFO] Checking activity reminders 
[2026-04-13 12:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:18:16] [INFO] Checking activity reminders 
[2026-04-13 12:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:18:46] [INFO] Checking activity reminders 
[2026-04-13 12:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:18:56] [INFO] Checking activity reminders 
[2026-04-13 12:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:19:26] [INFO] Checking activity reminders 
[2026-04-13 12:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:19:32] [INFO] Checking activity reminders 
[2026-04-13 12:19:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:19:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:03] [INFO] Checking activity reminders 
[2026-04-13 12:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:33] [INFO] Checking activity reminders 
[2026-04-13 12:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:38] [INFO] Checking activity reminders 
[2026-04-13 12:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:39] [INFO] Checking activity reminders 
[2026-04-13 12:20:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:20:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:40] [INFO] Checking activity reminders 
[2026-04-13 12:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:20:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:21:11] [INFO] Checking activity reminders 
[2026-04-13 12:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:21:41] [INFO] Checking activity reminders 
[2026-04-13 12:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:22:11] [INFO] Checking activity reminders 
[2026-04-13 12:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:22:41] [INFO] Checking activity reminders 
[2026-04-13 12:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:23:11] [INFO] Checking activity reminders 
[2026-04-13 12:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:23:19] [INFO] Activity save request {"post_data":{"contact_id":"10011","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"برای عضویت در کانال تماس \r\nقبلا با استاد در مورد cip  صحبت داشته \r\nمیگه خیلی عدد کانال امسال بالاست \r\nکانال پرواز و مسلمی با 5 یا 7 تومان دارن خدمات و سیگنال میده \r\nبهش پشتیبانی و تحلیل های استاد و میزان سود در 2 سال کانال گفتم میگه منطقی نیست \r\nدر کانال دیگه ای عضو هستم ","activity_duration":"8","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 12:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:23:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 12:23:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 12:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:23:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10011","note_was_empty":true}
[2026-04-13 12:23:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"10011","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 12:23:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcaeff62d1f5.20868500","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 12:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:23:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcaeff62d1f5.20868500"}
[2026-04-13 12:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:23:19] [INFO] Updating virtual stage {"contact_id":"10011","stage_name":"deal_registered","force":false}
[2026-04-13 12:23:19] [INFO] Virtual stage successfully saved {"contact_id":"10011","stage_name":"deal_registered"}
[2026-04-13 12:23:19] [INFO] Virtual stage updated after activity save {"contact_id":"10011"}
[2026-04-13 12:23:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10011","person_id":"11835"}
[2026-04-13 12:23:38] [INFO] Checking activity reminders 
[2026-04-13 12:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:24:09] [INFO] Checking activity reminders 
[2026-04-13 12:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:24:39] [INFO] Checking activity reminders 
[2026-04-13 12:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:25:09] [INFO] Checking activity reminders 
[2026-04-13 12:25:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:25:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:25:39] [INFO] Checking activity reminders 
[2026-04-13 12:25:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:25:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:09] [INFO] Checking activity reminders 
[2026-04-13 12:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:39] [INFO] Checking activity reminders 
[2026-04-13 12:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:46] [INFO] Checking activity reminders 
[2026-04-13 12:26:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:26:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:48] [INFO] Checking activity reminders 
[2026-04-13 12:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:49] [INFO] Checking activity reminders 
[2026-04-13 12:26:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:26:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:26:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 12:27:19] [INFO] Checking activity reminders 
[2026-04-13 12:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:27:49] [INFO] Checking activity reminders 
[2026-04-13 12:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:28:19] [INFO] Checking activity reminders 
[2026-04-13 12:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:28:49] [INFO] Checking activity reminders 
[2026-04-13 12:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:29:19] [INFO] Checking activity reminders 
[2026-04-13 12:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:29:49] [INFO] Checking activity reminders 
[2026-04-13 12:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:30:20] [INFO] Checking activity reminders 
[2026-04-13 12:30:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:30:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:30:50] [INFO] Checking activity reminders 
[2026-04-13 12:30:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:30:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:31:20] [INFO] Checking activity reminders 
[2026-04-13 12:31:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:31:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:31:50] [INFO] Checking activity reminders 
[2026-04-13 12:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:32:20] [INFO] Checking activity reminders 
[2026-04-13 12:32:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:32:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:32:50] [INFO] Checking activity reminders 
[2026-04-13 12:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:33:20] [INFO] Checking activity reminders 
[2026-04-13 12:33:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:33:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:33:50] [INFO] Checking activity reminders 
[2026-04-13 12:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:34:20] [INFO] Checking activity reminders 
[2026-04-13 12:34:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:34:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:34:50] [INFO] Checking activity reminders 
[2026-04-13 12:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:35:21] [INFO] Checking activity reminders 
[2026-04-13 12:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:35:51] [INFO] Checking activity reminders 
[2026-04-13 12:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:36:21] [INFO] Checking activity reminders 
[2026-04-13 12:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:36:51] [INFO] Checking activity reminders 
[2026-04-13 12:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:37:21] [INFO] Checking activity reminders 
[2026-04-13 12:37:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:37:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:37:51] [INFO] Checking activity reminders 
[2026-04-13 12:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:38:21] [INFO] Checking activity reminders 
[2026-04-13 12:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:38:51] [INFO] Checking activity reminders 
[2026-04-13 12:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:39:21] [INFO] Checking activity reminders 
[2026-04-13 12:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:39:51] [INFO] Checking activity reminders 
[2026-04-13 12:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:40:22] [INFO] Checking activity reminders 
[2026-04-13 12:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:40:52] [INFO] Checking activity reminders 
[2026-04-13 12:40:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:40:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:41:22] [INFO] Checking activity reminders 
[2026-04-13 12:41:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:41:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:41:52] [INFO] Checking activity reminders 
[2026-04-13 12:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:42:22] [INFO] Checking activity reminders 
[2026-04-13 12:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:42:52] [INFO] Checking activity reminders 
[2026-04-13 12:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:43:22] [INFO] Checking activity reminders 
[2026-04-13 12:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:43:53] [INFO] Checking activity reminders 
[2026-04-13 12:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:44:23] [INFO] Checking activity reminders 
[2026-04-13 12:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:44:53] [INFO] Checking activity reminders 
[2026-04-13 12:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:45:23] [INFO] Checking activity reminders 
[2026-04-13 12:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:45:54] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:45:54] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:45:54] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:22] [INFO] Checking activity reminders 
[2026-04-13 12:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_products"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:33] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:35] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:37] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:37] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:38] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:38] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:39] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:39] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:39] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:40] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_products"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:45] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_products"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:46] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:49] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"lookup_mobile"}
[2026-04-13 12:46:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:51] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:52] [INFO] Checking activity reminders 
[2026-04-13 12:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:46:56] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 12:46:56] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-13 12:46:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 12:47:22] [INFO] Checking activity reminders 
[2026-04-13 12:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:47:27] [INFO] Checking activity reminders 
[2026-04-13 12:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:47:52] [INFO] Checking activity reminders 
[2026-04-13 12:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:47:57] [INFO] Checking activity reminders 
[2026-04-13 12:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:47:59] [INFO] Checking activity reminders 
[2026-04-13 12:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:48:01] [INFO] Checking activity reminders 
[2026-04-13 12:48:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:48:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:48:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:48:31] [INFO] Checking activity reminders 
[2026-04-13 12:48:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:48:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:49:01] [INFO] Checking activity reminders 
[2026-04-13 12:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:49:31] [INFO] Checking activity reminders 
[2026-04-13 12:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:50:01] [INFO] Checking activity reminders 
[2026-04-13 12:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:50:31] [INFO] Checking activity reminders 
[2026-04-13 12:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:51:01] [INFO] Checking activity reminders 
[2026-04-13 12:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:51:31] [INFO] Checking activity reminders 
[2026-04-13 12:51:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:51:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:52:02] [INFO] Checking activity reminders 
[2026-04-13 12:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:52:32] [INFO] Checking activity reminders 
[2026-04-13 12:52:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:52:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:53:02] [INFO] Checking activity reminders 
[2026-04-13 12:53:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:53:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:53:08] [INFO] Checking activity reminders 
[2026-04-13 12:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:53:11] [INFO] Checking activity reminders 
[2026-04-13 12:53:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:53:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:53:42] [INFO] Checking activity reminders 
[2026-04-13 12:53:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:53:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:54:12] [INFO] Checking activity reminders 
[2026-04-13 12:54:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:54:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:54:42] [INFO] Checking activity reminders 
[2026-04-13 12:54:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:54:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:55:12] [INFO] Checking activity reminders 
[2026-04-13 12:55:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:55:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:55:42] [INFO] Checking activity reminders 
[2026-04-13 12:55:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:55:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:03] [INFO] Checking activity reminders 
[2026-04-13 12:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:04] [INFO] Checking activity reminders 
[2026-04-13 12:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:08] [INFO] Checking activity reminders 
[2026-04-13 12:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:12] [INFO] Checking activity reminders 
[2026-04-13 12:56:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:56:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12515","deal_id":"local_69dbb2969a88c1.79662552","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 12:56:20","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 12:56:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"12515","is_new_deal":false}
[2026-04-13 12:56:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 12:56:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 12:56:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 12:56:20] [INFO] getContactPrimaryPhone called {"contact_id":"12515"}
[2026-04-13 12:56:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:20] [INFO] getContactPrimaryPhone result {"contact_id":"12515","person_found":true,"primary_phone":"9396464807"}
[2026-04-13 12:56:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9396464807"}
[2026-04-13 12:56:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9396464807","contact_id":"12515","deal_id":"local_69dbb2969a88c1.79662552","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 12:56:20"}
[2026-04-13 12:56:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dbb2969a88c1.79662552","contact_id":"12515","existing_deal_found":true,"existing_contact_id":"12515","existing_title":"معامله سوم 9396464807 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 12:56:20"}
[2026-04-13 12:56:20] [INFO] DealController.save validated payments {"deal_id":"local_69dbb2969a88c1.79662552","contact_id":"12515","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 12:56:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12515","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 12:56:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dbb2969a88c1.79662552","contact_didar_id":"12515","title":"معامله سوم 9396464807 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9396464807","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدپور","existing_deal":"YES","existing_deal_id":"local_69dbb2969a88c1.79662552","existing_deal_status":"Pending","server_time":"2026-04-13 12:56:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 12:56:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dbb2969a88c1.79662552","contact_id":"12515","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9396464807 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":15000000,"server_time":"2026-04-13 12:56:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 12:56:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:42] [INFO] Checking activity reminders 
[2026-04-13 12:56:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:56:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:56:58] [INFO] Activity save request {"post_data":{"contact_id":"12515","deal_id":"local_69dbb2969a88c1.79662552","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"15 واریز \r\nیکماهه تسویه نقدی \/ خوش حساب ","activity_duration":"3","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 12:56:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12515","note_was_empty":true}
[2026-04-13 12:56:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"12515","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:58] [INFO] Updating virtual stage {"contact_id":"12515","stage_name":"deal_registered","force":false}
[2026-04-13 12:56:58] [INFO] Virtual stage successfully saved {"contact_id":"12515","stage_name":"deal_registered"}
[2026-04-13 12:56:58] [INFO] Virtual stage updated after activity save {"contact_id":"12515"}
[2026-04-13 12:56:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dbb2969a88c1.79662552","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-13 12:56:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcb6e21ef618.61562632","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcb6e21ef618.61562632"}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:56:58] [INFO] Updating virtual stage {"contact_id":"12515","stage_name":"deal_registered","force":false}
[2026-04-13 12:56:58] [INFO] Virtual stage successfully saved {"contact_id":"12515","stage_name":"deal_registered"}
[2026-04-13 12:56:58] [INFO] Virtual stage updated after activity save {"contact_id":"12515"}
[2026-04-13 12:56:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 12:57:13] [INFO] Checking activity reminders 
[2026-04-13 12:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:57:43] [INFO] Checking activity reminders 
[2026-04-13 12:57:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:57:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:58:13] [INFO] Checking activity reminders 
[2026-04-13 12:58:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:58:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:58:43] [INFO] Checking activity reminders 
[2026-04-13 12:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:59:13] [INFO] Checking activity reminders 
[2026-04-13 12:59:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:59:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:59:43] [INFO] Checking activity reminders 
[2026-04-13 12:59:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:59:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:59:55] [INFO] Checking activity reminders 
[2026-04-13 12:59:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:59:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:59:57] [INFO] Checking activity reminders 
[2026-04-13 12:59:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:59:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 12:59:59] [INFO] Checking activity reminders 
[2026-04-13 12:59:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 12:59:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:00:00] [INFO] Checking activity reminders 
[2026-04-13 13:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:00:30] [INFO] Checking activity reminders 
[2026-04-13 13:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:01:00] [INFO] Checking activity reminders 
[2026-04-13 13:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:01:30] [INFO] Checking activity reminders 
[2026-04-13 13:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:02:00] [INFO] Checking activity reminders 
[2026-04-13 13:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:02:31] [INFO] Checking activity reminders 
[2026-04-13 13:02:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:02:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:03:01] [INFO] Checking activity reminders 
[2026-04-13 13:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:03:31] [INFO] Checking activity reminders 
[2026-04-13 13:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:04:01] [INFO] Checking activity reminders 
[2026-04-13 13:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:04:31] [INFO] Checking activity reminders 
[2026-04-13 13:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:04:43] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20999","deal_id":"local_69d696299605e9.41542921","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 13:04:43","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 13:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:04:43] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20999","is_new_deal":false}
[2026-04-13 13:04:43] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 13:04:43] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 13:04:43] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 13:04:43] [INFO] getContactPrimaryPhone called {"contact_id":"20999"}
[2026-04-13 13:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:04:43] [INFO] getContactPrimaryPhone result {"contact_id":"20999","person_found":true,"primary_phone":"9123334579"}
[2026-04-13 13:04:43] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123334579"}
[2026-04-13 13:04:43] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123334579","contact_id":"20999","deal_id":"local_69d696299605e9.41542921","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 13:04:43"}
[2026-04-13 13:04:43] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d696299605e9.41542921","contact_id":"20999","existing_deal_found":true,"existing_contact_id":"20999","existing_title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 13:04:43"}
[2026-04-13 13:04:43] [INFO] DealController.save validated payments {"deal_id":"local_69d696299605e9.41542921","contact_id":"20999","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 13:04:43] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20999","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 13:04:43] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d696299605e9.41542921","contact_didar_id":"20999","title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9123334579","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امین نظری","existing_deal":"YES","existing_deal_id":"local_69d696299605e9.41542921","existing_deal_status":"Pending","server_time":"2026-04-13 13:04:43","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 13:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:04:43] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d696299605e9.41542921","contact_id":"20999","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9123334579 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-13 13:04:43","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 13:04:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:05:01] [INFO] Checking activity reminders 
[2026-04-13 13:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:05:31] [INFO] Checking activity reminders 
[2026-04-13 13:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:05:35] [INFO] Checking activity reminders 
[2026-04-13 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:06:01] [INFO] Checking activity reminders 
[2026-04-13 13:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:06:31] [INFO] Checking activity reminders 
[2026-04-13 13:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:07:01] [INFO] Checking activity reminders 
[2026-04-13 13:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:07:11] [INFO] Activity save request {"post_data":{"contact_id":"20999","deal_id":"local_69d696299605e9.41542921","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه و یکساله \r\nفکر کرده بود 15 م داده برای 1 سال \r\nارسال پیام مکتوب و شفاف سازی در بله \r\nارسال لینک کانال در بله \r\n","activity_duration":"9","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 13:07:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20999","note_was_empty":true}
[2026-04-13 13:07:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"20999","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:11] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-13 13:07:11] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-13 13:07:11] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-13 13:07:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d696299605e9.41542921","stage":"تماس پیگیری","status_change":null}
[2026-04-13 13:07:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcb9470b0547.88299425","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcb9470b0547.88299425"}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:11] [INFO] Updating virtual stage {"contact_id":"20999","stage_name":"deal_registered","force":false}
[2026-04-13 13:07:11] [INFO] Virtual stage successfully saved {"contact_id":"20999","stage_name":"deal_registered"}
[2026-04-13 13:07:11] [INFO] Virtual stage updated after activity save {"contact_id":"20999"}
[2026-04-13 13:07:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20999","person_id":"12228"}
[2026-04-13 13:07:18] [INFO] Checking activity reminders 
[2026-04-13 13:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:07:25] [INFO] Checking activity reminders 
[2026-04-13 13:07:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:07:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:07:48] [INFO] Checking activity reminders 
[2026-04-13 13:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:07:56] [INFO] Checking activity reminders 
[2026-04-13 13:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:08:03] [INFO] Activity save request {"post_data":{"contact_id":"2247","deal_id":"local_69d6973144cfe0.96600410","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\n","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 13:08:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2247","note_was_empty":true}
[2026-04-13 13:08:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"2247","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:03] [INFO] Updating virtual stage {"contact_id":"2247","stage_name":"deal_registered","force":false}
[2026-04-13 13:08:03] [INFO] Virtual stage successfully saved {"contact_id":"2247","stage_name":"deal_registered"}
[2026-04-13 13:08:03] [INFO] Virtual stage updated after activity save {"contact_id":"2247"}
[2026-04-13 13:08:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6973144cfe0.96600410","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 13:08:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcb97b1348d4.59167114","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcb97b1348d4.59167114"}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:03] [INFO] Updating virtual stage {"contact_id":"2247","stage_name":"deal_registered","force":false}
[2026-04-13 13:08:03] [INFO] Virtual stage successfully saved {"contact_id":"2247","stage_name":"deal_registered"}
[2026-04-13 13:08:03] [INFO] Virtual stage updated after activity save {"contact_id":"2247"}
[2026-04-13 13:08:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2247","person_id":"9353"}
[2026-04-13 13:08:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:08:18] [INFO] Checking activity reminders 
[2026-04-13 13:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:08:26] [INFO] Checking activity reminders 
[2026-04-13 13:08:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:08:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:08:48] [INFO] Checking activity reminders 
[2026-04-13 13:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:08:56] [INFO] Checking activity reminders 
[2026-04-13 13:08:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:08:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:09:19] [INFO] Checking activity reminders 
[2026-04-13 13:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:09:19] [INFO] Activity save request {"post_data":{"contact_id":"4964","deal_id":"local_69d694b9bd0a65.34405641","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 13:09:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4964","note_was_empty":true}
[2026-04-13 13:09:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"4964","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:19] [INFO] Updating virtual stage {"contact_id":"4964","stage_name":"deal_registered","force":false}
[2026-04-13 13:09:19] [INFO] Virtual stage successfully saved {"contact_id":"4964","stage_name":"deal_registered"}
[2026-04-13 13:09:19] [INFO] Virtual stage updated after activity save {"contact_id":"4964"}
[2026-04-13 13:09:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d694b9bd0a65.34405641","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 13:09:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcb9c7393646.27282778","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcb9c7393646.27282778"}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:19] [INFO] Updating virtual stage {"contact_id":"4964","stage_name":"deal_registered","force":false}
[2026-04-13 13:09:19] [INFO] Virtual stage successfully saved {"contact_id":"4964","stage_name":"deal_registered"}
[2026-04-13 13:09:19] [INFO] Virtual stage updated after activity save {"contact_id":"4964"}
[2026-04-13 13:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4964","person_id":"3358"}
[2026-04-13 13:09:26] [INFO] Checking activity reminders 
[2026-04-13 13:09:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:09:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:09:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20800","person_id":"9481"}
[2026-04-13 13:09:49] [INFO] Checking activity reminders 
[2026-04-13 13:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:09:56] [INFO] Checking activity reminders 
[2026-04-13 13:09:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:09:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:10:19] [INFO] Checking activity reminders 
[2026-04-13 13:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:10:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:10:26] [INFO] Checking activity reminders 
[2026-04-13 13:10:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:10:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:10:49] [INFO] Checking activity reminders 
[2026-04-13 13:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:10:56] [INFO] Checking activity reminders 
[2026-04-13 13:10:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:10:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:19] [INFO] Checking activity reminders 
[2026-04-13 13:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:26] [INFO] Checking activity reminders 
[2026-04-13 13:11:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:41] [INFO] Activity save request {"post_data":{"contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:41] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 13:11:41] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:41] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11923","note_was_empty":true}
[2026-04-13 13:11:41] [INFO] Didar write disabled; saving activity locally {"contact_id":"11923","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:41] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-13 13:11:41] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-13 13:11:41] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-13 13:11:41] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dcbcbe7ef8.38675734","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 13:11:41] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcba554269c4.62727995","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:41] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcba554269c4.62727995"}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:41] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-13 13:11:41] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-13 13:11:41] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-13 13:11:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 13:11:47] [INFO] Checking activity reminders 
[2026-04-13 13:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:50] [INFO] Checking activity reminders 
[2026-04-13 13:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:51] [INFO] Checking activity reminders 
[2026-04-13 13:11:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:54] [INFO] Checking activity reminders 
[2026-04-13 13:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:11:56] [INFO] Checking activity reminders 
[2026-04-13 13:11:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:11:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:12:24] [INFO] Checking activity reminders 
[2026-04-13 13:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:12:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:12:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 13:12:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:17:39] [INFO] Checking activity reminders 
[2026-04-13 13:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:18:09] [INFO] Checking activity reminders 
[2026-04-13 13:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:18:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 13:18:36] [INFO] Checking activity reminders 
[2026-04-13 13:18:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:18:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:18:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:19:06] [INFO] Checking activity reminders 
[2026-04-13 13:19:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:19:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:19:36] [INFO] Checking activity reminders 
[2026-04-13 13:19:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:19:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:20:06] [INFO] Checking activity reminders 
[2026-04-13 13:20:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:20:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:20:36] [INFO] Checking activity reminders 
[2026-04-13 13:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:21:07] [INFO] Checking activity reminders 
[2026-04-13 13:21:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:21:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:21:37] [INFO] Checking activity reminders 
[2026-04-13 13:21:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:21:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:22:07] [INFO] Checking activity reminders 
[2026-04-13 13:22:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:22:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:22:37] [INFO] Checking activity reminders 
[2026-04-13 13:22:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:22:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:23:07] [INFO] Checking activity reminders 
[2026-04-13 13:23:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:23:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:23:37] [INFO] Checking activity reminders 
[2026-04-13 13:23:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:23:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:24:07] [INFO] Checking activity reminders 
[2026-04-13 13:24:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:24:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:24:37] [INFO] Checking activity reminders 
[2026-04-13 13:24:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:24:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:25:07] [INFO] Checking activity reminders 
[2026-04-13 13:25:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:25:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:25:37] [INFO] Checking activity reminders 
[2026-04-13 13:25:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:25:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:26:07] [INFO] Checking activity reminders 
[2026-04-13 13:26:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:26:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:26:38] [INFO] Checking activity reminders 
[2026-04-13 13:26:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:26:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:27:08] [INFO] Checking activity reminders 
[2026-04-13 13:27:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:27:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:27:38] [INFO] Checking activity reminders 
[2026-04-13 13:27:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:27:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:28:08] [INFO] Checking activity reminders 
[2026-04-13 13:28:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:28:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:28:38] [INFO] Checking activity reminders 
[2026-04-13 13:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:29:08] [INFO] Checking activity reminders 
[2026-04-13 13:29:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:29:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:29:38] [INFO] Checking activity reminders 
[2026-04-13 13:29:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:29:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:30:08] [INFO] Checking activity reminders 
[2026-04-13 13:30:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:30:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:30:38] [INFO] Checking activity reminders 
[2026-04-13 13:30:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:30:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:31:08] [INFO] Checking activity reminders 
[2026-04-13 13:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:31:38] [INFO] Checking activity reminders 
[2026-04-13 13:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:32:09] [INFO] Checking activity reminders 
[2026-04-13 13:32:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:32:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:32:39] [INFO] Checking activity reminders 
[2026-04-13 13:32:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:32:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:33:09] [INFO] Checking activity reminders 
[2026-04-13 13:33:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:33:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:33:39] [INFO] Checking activity reminders 
[2026-04-13 13:33:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:33:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:33:54] [INFO] Activity save request {"post_data":{"contact_id":"777","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تمام سرمایه در ملک قفل شده \/ نقدینگی نداره \r\nپرزنت 6 ماهه بدون پشتیبانی \/ فقط از اخبار و اطلاعاتباخبر بشه \r\nسرقرار بود گفت عصر تماس میگیرم  ","activity_duration":"4","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 13:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:33:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 13:33:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 13:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:33:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"777","note_was_empty":true}
[2026-04-13 13:33:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"777","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 13:33:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcbf8a023703.80284559","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 13:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:33:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcbf8a023703.80284559"}
[2026-04-13 13:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:33:54] [INFO] Updating virtual stage {"contact_id":"777","stage_name":"deal_registered","force":false}
[2026-04-13 13:33:54] [INFO] Virtual stage successfully saved {"contact_id":"777","stage_name":"deal_registered"}
[2026-04-13 13:33:54] [INFO] Virtual stage updated after activity save {"contact_id":"777"}
[2026-04-13 13:33:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"777","person_id":"12596"}
[2026-04-13 13:34:09] [INFO] Checking activity reminders 
[2026-04-13 13:34:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:34:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:34:39] [INFO] Checking activity reminders 
[2026-04-13 13:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:35:09] [INFO] Checking activity reminders 
[2026-04-13 13:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:35:40] [INFO] Checking activity reminders 
[2026-04-13 13:35:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:35:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:36:03] [INFO] Checking activity reminders 
[2026-04-13 13:36:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:36:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:36:33] [INFO] Checking activity reminders 
[2026-04-13 13:36:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:36:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:03] [INFO] Checking activity reminders 
[2026-04-13 13:37:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:26] [INFO] Checking activity reminders 
[2026-04-13 13:37:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:29] [INFO] Checking activity reminders 
[2026-04-13 13:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:30] [INFO] Checking activity reminders 
[2026-04-13 13:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:34] [INFO] Checking activity reminders 
[2026-04-13 13:37:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:37:36] [INFO] Checking activity reminders 
[2026-04-13 13:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:38:06] [INFO] Checking activity reminders 
[2026-04-13 13:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:38:28] [INFO] Checking activity reminders 
[2026-04-13 13:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:38:58] [INFO] Checking activity reminders 
[2026-04-13 13:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:39:29] [INFO] Checking activity reminders 
[2026-04-13 13:39:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:39:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:39:59] [INFO] Checking activity reminders 
[2026-04-13 13:39:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:39:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:40:29] [INFO] Checking activity reminders 
[2026-04-13 13:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:40:59] [INFO] Checking activity reminders 
[2026-04-13 13:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:41:29] [INFO] Checking activity reminders 
[2026-04-13 13:41:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:41:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:41:59] [INFO] Checking activity reminders 
[2026-04-13 13:41:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:41:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:42:07] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:07] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 13:42:07] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:09] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:11] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:11] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:12] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:12] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:12] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:13] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:13] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:14] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:14] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 13:42:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 13:42:26] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:27] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:29] [INFO] Checking activity reminders 
[2026-04-13 13:42:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:42:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:42:29] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:30] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:30] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:30] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"lookup_mobile"}
[2026-04-13 13:42:30] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:31] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 13:42:43] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-13 13:42:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 13:42:59] [INFO] Checking activity reminders 
[2026-04-13 13:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:43:13] [INFO] Checking activity reminders 
[2026-04-13 13:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:43:29] [INFO] Checking activity reminders 
[2026-04-13 13:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:43:44] [INFO] Checking activity reminders 
[2026-04-13 13:43:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:43:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:43:59] [INFO] Checking activity reminders 
[2026-04-13 13:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:44:14] [INFO] Checking activity reminders 
[2026-04-13 13:44:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:44:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:44:30] [INFO] Checking activity reminders 
[2026-04-13 13:44:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:44:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:44:44] [INFO] Checking activity reminders 
[2026-04-13 13:44:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:44:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:45:00] [INFO] Checking activity reminders 
[2026-04-13 13:45:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:45:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:45:14] [INFO] Checking activity reminders 
[2026-04-13 13:45:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:45:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:45:30] [INFO] Checking activity reminders 
[2026-04-13 13:45:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:45:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:45:44] [INFO] Checking activity reminders 
[2026-04-13 13:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:46:00] [INFO] Checking activity reminders 
[2026-04-13 13:46:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:46:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:46:14] [INFO] Checking activity reminders 
[2026-04-13 13:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:46:30] [INFO] Checking activity reminders 
[2026-04-13 13:46:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:46:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:46:44] [INFO] Checking activity reminders 
[2026-04-13 13:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:47:00] [INFO] Checking activity reminders 
[2026-04-13 13:47:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:47:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:47:14] [INFO] Checking activity reminders 
[2026-04-13 13:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:47:30] [INFO] Checking activity reminders 
[2026-04-13 13:47:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:47:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:47:44] [INFO] Checking activity reminders 
[2026-04-13 13:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:48:00] [INFO] Checking activity reminders 
[2026-04-13 13:48:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:48:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:48:14] [INFO] Checking activity reminders 
[2026-04-13 13:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:48:30] [INFO] Checking activity reminders 
[2026-04-13 13:48:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:48:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:48:45] [INFO] Checking activity reminders 
[2026-04-13 13:48:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:48:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:49:01] [INFO] Checking activity reminders 
[2026-04-13 13:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:49:15] [INFO] Checking activity reminders 
[2026-04-13 13:49:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:49:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:49:31] [INFO] Checking activity reminders 
[2026-04-13 13:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:49:45] [INFO] Checking activity reminders 
[2026-04-13 13:49:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:49:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:50:01] [INFO] Checking activity reminders 
[2026-04-13 13:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:50:31] [INFO] Checking activity reminders 
[2026-04-13 13:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:51:01] [INFO] Checking activity reminders 
[2026-04-13 13:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:51:31] [INFO] Checking activity reminders 
[2026-04-13 13:51:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:51:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:52:01] [INFO] Checking activity reminders 
[2026-04-13 13:52:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:52:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:52:31] [INFO] Checking activity reminders 
[2026-04-13 13:52:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:52:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:53:01] [INFO] Checking activity reminders 
[2026-04-13 13:53:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:53:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:53:31] [INFO] Checking activity reminders 
[2026-04-13 13:53:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:53:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:54:01] [INFO] Checking activity reminders 
[2026-04-13 13:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:54:32] [INFO] Checking activity reminders 
[2026-04-13 13:54:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:54:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:55:02] [INFO] Checking activity reminders 
[2026-04-13 13:55:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:55:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:55:32] [INFO] Checking activity reminders 
[2026-04-13 13:55:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:55:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:56:02] [INFO] Checking activity reminders 
[2026-04-13 13:56:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:56:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:56:32] [INFO] Checking activity reminders 
[2026-04-13 13:56:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:56:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:57:02] [INFO] Checking activity reminders 
[2026-04-13 13:57:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:57:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:57:32] [INFO] Checking activity reminders 
[2026-04-13 13:57:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:57:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:58:02] [INFO] Checking activity reminders 
[2026-04-13 13:58:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:58:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:58:33] [INFO] Checking activity reminders 
[2026-04-13 13:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:59:03] [INFO] Checking activity reminders 
[2026-04-13 13:59:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:59:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 13:59:33] [INFO] Checking activity reminders 
[2026-04-13 13:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 13:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:00:03] [INFO] Checking activity reminders 
[2026-04-13 14:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:00:33] [INFO] Checking activity reminders 
[2026-04-13 14:00:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:00:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:01:03] [INFO] Checking activity reminders 
[2026-04-13 14:01:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:01:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:01:33] [INFO] Checking activity reminders 
[2026-04-13 14:01:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:01:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:02:03] [INFO] Checking activity reminders 
[2026-04-13 14:02:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:02:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:02:33] [INFO] Checking activity reminders 
[2026-04-13 14:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:03:03] [INFO] Checking activity reminders 
[2026-04-13 14:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:03:33] [INFO] Checking activity reminders 
[2026-04-13 14:03:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:03:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:04:04] [INFO] Checking activity reminders 
[2026-04-13 14:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:04:34] [INFO] Checking activity reminders 
[2026-04-13 14:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:05:04] [INFO] Checking activity reminders 
[2026-04-13 14:05:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:05:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:05:34] [INFO] Checking activity reminders 
[2026-04-13 14:05:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:05:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:06:04] [INFO] Checking activity reminders 
[2026-04-13 14:06:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:06:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:06:34] [INFO] Checking activity reminders 
[2026-04-13 14:06:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:06:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:07:04] [INFO] Checking activity reminders 
[2026-04-13 14:07:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:07:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:07:34] [INFO] Checking activity reminders 
[2026-04-13 14:07:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:07:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:08:05] [INFO] Checking activity reminders 
[2026-04-13 14:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:08:35] [INFO] Checking activity reminders 
[2026-04-13 14:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:09:05] [INFO] Checking activity reminders 
[2026-04-13 14:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:09:35] [INFO] Checking activity reminders 
[2026-04-13 14:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:10:05] [INFO] Checking activity reminders 
[2026-04-13 14:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:10:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:10:35] [INFO] Checking activity reminders 
[2026-04-13 14:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:11:05] [INFO] Checking activity reminders 
[2026-04-13 14:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:11:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"917","deal_id":"local_69db89a73658d7.41273694","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 14:11:34","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"917","is_new_deal":false}
[2026-04-13 14:11:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 14:11:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 14:11:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 14:11:34] [INFO] getContactPrimaryPhone called {"contact_id":"917"}
[2026-04-13 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:34] [INFO] getContactPrimaryPhone result {"contact_id":"917","person_found":true,"primary_phone":"9139568275"}
[2026-04-13 14:11:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9139568275"}
[2026-04-13 14:11:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9139568275","contact_id":"917","deal_id":"local_69db89a73658d7.41273694","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:11:34"}
[2026-04-13 14:11:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69db89a73658d7.41273694","contact_id":"917","existing_deal_found":true,"existing_contact_id":"917","existing_title":"معامله چهارم 9139568275 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:11:34"}
[2026-04-13 14:11:34] [INFO] DealController.save validated payments {"deal_id":"local_69db89a73658d7.41273694","contact_id":"917","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-13 14:11:34] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"917","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 14:11:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69db89a73658d7.41273694","contact_didar_id":"917","title":"معامله چهارم 9139568275 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9139568275","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کریمی پور","existing_deal":"YES","existing_deal_id":"local_69db89a73658d7.41273694","existing_deal_status":"Pending","server_time":"2026-04-13 14:11:34","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:34] [INFO] Deal success processed {"contact_id":"917","person_name":"کریمی پور","products_count":1}
[2026-04-13 14:11:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69db89a73658d7.41273694","contact_id":"917","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9139568275 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-13 14:11:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 14:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:34] [INFO] Updating virtual stage {"contact_id":"917","stage_name":"with_purchase","force":true}
[2026-04-13 14:11:34] [INFO] Virtual stage successfully saved {"contact_id":"917","stage_name":"with_purchase"}
[2026-04-13 14:11:34] [INFO] Moved contact out of kariz after successful deal {"contact_id":"917","deal_id":"local_69db89a73658d7.41273694","target_stage":"with_purchase"}
[2026-04-13 14:11:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:11:35] [INFO] Checking activity reminders 
[2026-04-13 14:11:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:11:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:12:06] [INFO] Checking activity reminders 
[2026-04-13 14:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:12:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 14:12:36] [INFO] Checking activity reminders 
[2026-04-13 14:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:13:23] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 14:13:23","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 14:13:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 14:13:23] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69dc9d2e6210c3.45414163","is_new_deal":false}
[2026-04-13 14:13:23] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:13:23] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:13:23] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:13:23] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-13 14:13:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 14:13:23] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dc9d2e6210c3.45414163","person_found":true,"primary_phone":"9940635199"}
[2026-04-13 14:13:23] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9940635199"}
[2026-04-13 14:13:23] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9940635199","contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:13:23"}
[2026-04-13 14:13:23] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","existing_deal_found":true,"existing_contact_id":"local_69dc9d2e6210c3.45414163","existing_title":"معامله اول 9940635199 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:13:23"}
[2026-04-13 14:13:23] [INFO] DealController.save validated payments {"deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 14:13:23] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69dc9d2e6210c3.45414163","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 14:13:23] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dc9d2e63fc8","contact_didar_id":"local_69dc9d2e6210c3.45414163","title":"معامله اول 9940635199 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9940635199","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":1000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی داوودی","existing_deal":"YES","existing_deal_id":"local_69dc9d2e63fc8","existing_deal_status":"Pending","server_time":"2026-04-13 14:13:23","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 14:13:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 14:13:23] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dc9d2e63fc8","contact_id":"local_69dc9d2e6210c3.45414163","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9940635199 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":1000000,"server_time":"2026-04-13 14:13:23","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 14:13:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-13 14:13:37] [INFO] Checking activity reminders 
[2026-04-13 14:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:14:07] [INFO] Checking activity reminders 
[2026-04-13 14:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:14:10] [INFO] Checking activity reminders 
[2026-04-13 14:14:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:14:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:14:40] [INFO] Checking activity reminders 
[2026-04-13 14:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:15:10] [INFO] Checking activity reminders 
[2026-04-13 14:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:15:40] [INFO] Checking activity reminders 
[2026-04-13 14:15:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:15:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:16:10] [INFO] Checking activity reminders 
[2026-04-13 14:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:16:40] [INFO] Checking activity reminders 
[2026-04-13 14:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:17:10] [INFO] Checking activity reminders 
[2026-04-13 14:17:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:17:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:17:40] [INFO] Checking activity reminders 
[2026-04-13 14:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:18:10] [INFO] Checking activity reminders 
[2026-04-13 14:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:18:40] [INFO] Checking activity reminders 
[2026-04-13 14:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:19:11] [INFO] Checking activity reminders 
[2026-04-13 14:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:19:41] [INFO] Checking activity reminders 
[2026-04-13 14:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:20:11] [INFO] Checking activity reminders 
[2026-04-13 14:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:20:41] [INFO] Checking activity reminders 
[2026-04-13 14:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:21:11] [INFO] Checking activity reminders 
[2026-04-13 14:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:21:41] [INFO] Checking activity reminders 
[2026-04-13 14:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:22:11] [INFO] Checking activity reminders 
[2026-04-13 14:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:22:41] [INFO] Checking activity reminders 
[2026-04-13 14:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:23:11] [INFO] Checking activity reminders 
[2026-04-13 14:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:23:41] [INFO] Checking activity reminders 
[2026-04-13 14:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:24:11] [INFO] Checking activity reminders 
[2026-04-13 14:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:40:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:40:45] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 14:40:45] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 14:40:46] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 14:40:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 14:40:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 14:40:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 14:40:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 14:41:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12515","person_id":"5827"}
[2026-04-13 14:41:30] [INFO] Checking activity reminders 
[2026-04-13 14:41:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:41:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:41:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"917","person_id":"13994"}
[2026-04-13 14:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:42:43] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:44] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:42:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:42:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:44:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:44:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:44:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:45:11] [INFO] Checking activity reminders 
[2026-04-13 14:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:45:41] [INFO] Checking activity reminders 
[2026-04-13 14:45:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:45:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:46:08] [INFO] Checking activity reminders 
[2026-04-13 14:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:46:20] [INFO] Checking activity reminders 
[2026-04-13 14:46:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:46:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:46:54] [INFO] Checking activity reminders 
[2026-04-13 14:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:46:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-13 14:47:19] [INFO] Checking activity reminders 
[2026-04-13 14:47:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:47:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:47:45] [INFO] Checking activity reminders 
[2026-04-13 14:47:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:47:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:47:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:47:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:47:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:48:24] [INFO] Checking activity reminders 
[2026-04-13 14:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:48:36] [INFO] Checking activity reminders 
[2026-04-13 14:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:48:49] [INFO] Checking activity reminders 
[2026-04-13 14:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:48:56] [INFO] Checking activity reminders 
[2026-04-13 14:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:49:07] [INFO] Checking activity reminders 
[2026-04-13 14:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:49:11] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20939","deal_id":"local_69c9438379a9b7.70400211","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 14:49:11","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 14:49:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-13 14:49:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20939","is_new_deal":false}
[2026-04-13 14:49:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 14:49:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 14:49:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 14:49:11] [INFO] getContactPrimaryPhone called {"contact_id":"20939"}
[2026-04-13 14:49:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-13 14:49:11] [INFO] getContactPrimaryPhone result {"contact_id":"20939","person_found":true,"primary_phone":"9190432750"}
[2026-04-13 14:49:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190432750"}
[2026-04-13 14:49:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190432750","contact_id":"20939","deal_id":"local_69c9438379a9b7.70400211","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 14:49:11"}
[2026-04-13 14:49:11] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c9438379a9b7.70400211","contact_id":"20939","existing_deal_found":true,"existing_contact_id":"20939","existing_title":"معامله دوم 9190432750 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 14:49:11"}
[2026-04-13 14:49:11] [INFO] DealController.save validated payments {"deal_id":"local_69c9438379a9b7.70400211","contact_id":"20939","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-13 14:49:11] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"20939","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 14:49:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c9438379a9b7.70400211","contact_didar_id":"20939","title":"معامله دوم 9190432750 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9190432750","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای گرجی","existing_deal":"YES","existing_deal_id":"local_69c9438379a9b7.70400211","existing_deal_status":"Pending","server_time":"2026-04-13 14:49:11","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 14:49:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-13 14:49:11] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c9438379a9b7.70400211","contact_id":"20939","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9190432750 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-13 14:49:11","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 14:49:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20939","person_id":"4400"}
[2026-04-13 14:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:50:48] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:51:03] [INFO] Checking activity reminders 
[2026-04-13 14:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:51:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2756","person_id":"3920"}
[2026-04-13 14:52:17] [INFO] Checking activity reminders 
[2026-04-13 14:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:52:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:52:47] [INFO] Checking activity reminders 
[2026-04-13 14:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:53:00] [INFO] Lead update received {"contact_id":"17318","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 14:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:53:00] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"17318"}
[2026-04-13 14:53:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17318","person_id":"5748"}
[2026-04-13 14:54:17] [INFO] Checking activity reminders 
[2026-04-13 14:54:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:54:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-13 14:54:47] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:54:47] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:47] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"get_field_configurations"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"get_deal"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:50] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:52] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:55] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:55] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"check_reminders"}
[2026-04-13 14:54:55] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:57] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"get_dashboard_stats"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:54:59] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:55:00] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:55:04] [WARNING] Auth check failed - not authenticated {"session_id":"73igqejcnem4hm1724iqs3857e","session_keys":[],"action":"log_client_event"}
[2026-04-13 14:55:04] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-13 14:55:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 14:55:08] [INFO] Checking activity reminders 
[2026-04-13 14:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:55:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 14:55:22","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 14:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:55:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"1499","is_new_deal":false}
[2026-04-13 14:55:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:55:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:55:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 14:55:22] [INFO] getContactPrimaryPhone called {"contact_id":"1499"}
[2026-04-13 14:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:55:22] [INFO] getContactPrimaryPhone result {"contact_id":"1499","person_found":true,"primary_phone":"9210328323"}
[2026-04-13 14:55:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9210328323"}
[2026-04-13 14:55:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9210328323","contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:55:22"}
[2026-04-13 14:55:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","existing_deal_found":true,"existing_contact_id":"1499","existing_title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 14:55:22"}
[2026-04-13 14:55:22] [INFO] DealController.save validated payments {"deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 14:55:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1499","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 14:55:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d68fd22bb1b5.50176459","contact_didar_id":"1499","title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9210328323","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین شاهی","existing_deal":"YES","existing_deal_id":"local_69d68fd22bb1b5.50176459","existing_deal_status":"Pending","server_time":"2026-04-13 14:55:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 14:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:55:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d68fd22bb1b5.50176459","contact_id":"1499","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9210328323 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 14:55:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 14:55:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:55:22] [INFO] Checking activity reminders 
[2026-04-13 14:55:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:55:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:55:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-13 14:55:38] [INFO] Lead update received {"contact_id":"6747","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-13 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-13 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-13 14:55:38] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"6747"}
[2026-04-13 14:55:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6747","person_id":"1883"}
[2026-04-13 14:55:39] [INFO] Checking activity reminders 
[2026-04-13 14:55:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:55:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:56:09] [INFO] Checking activity reminders 
[2026-04-13 14:56:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:56:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:56:39] [INFO] Checking activity reminders 
[2026-04-13 14:56:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:56:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:57:09] [INFO] Checking activity reminders 
[2026-04-13 14:57:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:57:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:57:10] [INFO] Checking activity reminders 
[2026-04-13 14:57:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:57:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:57:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5575","person_id":"12707"}
[2026-04-13 14:57:39] [INFO] Checking activity reminders 
[2026-04-13 14:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:57:40] [INFO] Checking activity reminders 
[2026-04-13 14:57:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:57:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:57:44] [INFO] Lead update received {"contact_id":"5575","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 14:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5575","person_id":"12707"}
[2026-04-13 14:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5575","person_id":"12707"}
[2026-04-13 14:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5575","person_id":"12707"}
[2026-04-13 14:57:44] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"5575"}
[2026-04-13 14:57:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5575","person_id":"12707"}
[2026-04-13 14:58:09] [INFO] Checking activity reminders 
[2026-04-13 14:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:58:39] [INFO] Checking activity reminders 
[2026-04-13 14:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:58:40] [INFO] Checking activity reminders 
[2026-04-13 14:58:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:58:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:58:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3218","person_id":"13825"}
[2026-04-13 14:58:55] [INFO] Checking activity reminders 
[2026-04-13 14:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:59:10] [INFO] Checking activity reminders 
[2026-04-13 14:59:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:59:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:59:28] [INFO] Activity save request {"post_data":{"contact_id":"1499","deal_id":"local_69d68fd22bb1b5.50176459","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تعدیل نیرو شده \/ بیکار \r\nحقوق و سنوات و عیدی هنوز دریافت نکرده \r\nاخر ماه گفتند احتمالا سنوات بده \r\nپرزنت 6 ماهه \r\nدر صورت واریزی از شرکت تماس و تمدید ","activity_duration":"7","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 14:59:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 14:59:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 14:59:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1499","note_was_empty":true}
[2026-04-13 14:59:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"1499","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 14:59:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:28] [INFO] Updating virtual stage {"contact_id":"1499","stage_name":"deal_registered","force":false}
[2026-04-13 14:59:29] [INFO] Virtual stage successfully saved {"contact_id":"1499","stage_name":"deal_registered"}
[2026-04-13 14:59:29] [INFO] Virtual stage updated after activity save {"contact_id":"1499"}
[2026-04-13 14:59:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d68fd22bb1b5.50176459","stage":"تماس پیگیری","status_change":null}
[2026-04-13 14:59:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcd398f0dca3.01275628","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 14:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcd398f0dca3.01275628"}
[2026-04-13 14:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:29] [INFO] Updating virtual stage {"contact_id":"1499","stage_name":"deal_registered","force":false}
[2026-04-13 14:59:29] [INFO] Virtual stage successfully saved {"contact_id":"1499","stage_name":"deal_registered"}
[2026-04-13 14:59:29] [INFO] Virtual stage updated after activity save {"contact_id":"1499"}
[2026-04-13 14:59:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1499","person_id":"696"}
[2026-04-13 14:59:39] [INFO] Checking activity reminders 
[2026-04-13 14:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:59:40] [INFO] Checking activity reminders 
[2026-04-13 14:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:59:42] [INFO] Checking activity reminders 
[2026-04-13 14:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 14:59:44] [INFO] Checking activity reminders 
[2026-04-13 14:59:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 14:59:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:00:13] [INFO] Checking activity reminders 
[2026-04-13 15:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:00:17] [INFO] Checking activity reminders 
[2026-04-13 15:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:00:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:00:37] [INFO] Checking activity reminders 
[2026-04-13 15:00:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:00:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:00:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-04-13 15:00:47] [INFO] Checking activity reminders 
[2026-04-13 15:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:01:01] [INFO] Lead update received {"contact_id":"10016","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-04-13 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-04-13 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-04-13 15:01:01] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"10016"}
[2026-04-13 15:01:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10016","person_id":"14129"}
[2026-04-13 15:01:17] [INFO] Checking activity reminders 
[2026-04-13 15:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:01:17] [INFO] Checking activity reminders 
[2026-04-13 15:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:01:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:01:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:01:47] [INFO] Checking activity reminders 
[2026-04-13 15:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:01:47] [INFO] Checking activity reminders 
[2026-04-13 15:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:01:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-13 15:01:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:13] [INFO] Checking activity reminders 
[2026-04-13 15:02:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:02:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:02:17] [INFO] Checking activity reminders 
[2026-04-13 15:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:02:25] [INFO] Lead update received {"contact_id":"13207","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 15:02:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:25] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"13207"}
[2026-04-13 15:02:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:39] [INFO] Checking activity reminders 
[2026-04-13 15:02:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:02:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-13 15:02:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 15:02:47] [INFO] Checking activity reminders 
[2026-04-13 15:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:02:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-13 15:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-13 15:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20616","person_id":"3588"}
[2026-04-13 15:03:15] [INFO] Checking activity reminders 
[2026-04-13 15:03:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:03:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:03:17] [INFO] Checking activity reminders 
[2026-04-13 15:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:03:48] [INFO] Checking activity reminders 
[2026-04-13 15:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:04:18] [INFO] Checking activity reminders 
[2026-04-13 15:04:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:04:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:04:48] [INFO] Checking activity reminders 
[2026-04-13 15:04:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:04:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:05:16] [INFO] Checking activity reminders 
[2026-04-13 15:05:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:05:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:05:18] [INFO] Checking activity reminders 
[2026-04-13 15:05:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:05:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:05:25] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 15:05:25] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 15:05:25] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 15:05:25] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 15:05:48] [INFO] Checking activity reminders 
[2026-04-13 15:05:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:05:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:05:55] [INFO] Checking activity reminders 
[2026-04-13 15:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:06:14] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:06:14] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 15:06:14] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 15:06:15] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 15:06:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 15:06:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 15:06:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 15:06:18] [INFO] Checking activity reminders 
[2026-04-13 15:06:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:06:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:06:48] [INFO] Checking activity reminders 
[2026-04-13 15:06:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:06:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:07:18] [INFO] Checking activity reminders 
[2026-04-13 15:07:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:07:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:07:48] [INFO] Checking activity reminders 
[2026-04-13 15:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:08:09] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1213","deal_id":"local_6947ed204a6b42.42312837","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 15:08:09","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:09] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1213","is_new_deal":false}
[2026-04-13 15:08:09] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 15:08:09] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 15:08:09] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 15:08:09] [INFO] getContactPrimaryPhone called {"contact_id":"1213"}
[2026-04-13 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:09] [INFO] getContactPrimaryPhone result {"contact_id":"1213","person_found":true,"primary_phone":"9125832606"}
[2026-04-13 15:08:09] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125832606"}
[2026-04-13 15:08:09] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125832606","contact_id":"1213","deal_id":"local_6947ed204a6b42.42312837","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:08:09"}
[2026-04-13 15:08:09] [INFO] DealController.save existing deal lookup {"deal_id":"local_6947ed204a6b42.42312837","contact_id":"1213","existing_deal_found":true,"existing_contact_id":"1213","existing_title":"معامله اول 9125832606 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:08:09"}
[2026-04-13 15:08:09] [INFO] DealController.save validated payments {"deal_id":"local_6947ed204a6b42.42312837","contact_id":"1213","payments_count":3,"status":"won","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 15:08:09] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1213","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 15:08:09] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6947ed204a6b42.42312837","contact_didar_id":"1213","title":"معامله اول 9125832606 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9125832606","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"won","payable_amount":79000000,"payment_amount":69000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم قائمی","existing_deal":"YES","existing_deal_id":"local_6947ed204a6b42.42312837","existing_deal_status":"Pending","server_time":"2026-04-13 15:08:09","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:09] [INFO] Deal success processed {"contact_id":"1213","person_name":"خانم قائمی","products_count":1}
[2026-04-13 15:08:09] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6947ed204a6b42.42312837","contact_id":"1213","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9125832606 | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":69000000,"server_time":"2026-04-13 15:08:09","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 15:08:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:09] [INFO] Updating virtual stage {"contact_id":"1213","stage_name":"with_purchase","force":true}
[2026-04-13 15:08:09] [INFO] Virtual stage successfully saved {"contact_id":"1213","stage_name":"with_purchase"}
[2026-04-13 15:08:09] [INFO] Moved contact out of kariz after successful deal {"contact_id":"1213","deal_id":"local_6947ed204a6b42.42312837","target_stage":"with_purchase"}
[2026-04-13 15:08:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-13 15:08:18] [INFO] Checking activity reminders 
[2026-04-13 15:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:08:35] [INFO] Checking activity reminders 
[2026-04-13 15:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:08:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2057","person_id":"7038"}
[2026-04-13 15:08:49] [INFO] Checking activity reminders 
[2026-04-13 15:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:08:57] [INFO] Checking activity reminders 
[2026-04-13 15:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:19] [INFO] Checking activity reminders 
[2026-04-13 15:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:22] [INFO] Checking activity reminders 
[2026-04-13 15:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:23] [INFO] Checking activity reminders 
[2026-04-13 15:09:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:25] [INFO] Checking activity reminders 
[2026-04-13 15:09:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:26] [INFO] Checking activity reminders 
[2026-04-13 15:09:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:33] [INFO] Checking activity reminders 
[2026-04-13 15:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:09:36] [INFO] Checking activity reminders 
[2026-04-13 15:09:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:09:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:10:06] [INFO] Checking activity reminders 
[2026-04-13 15:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:10:18] [INFO] Checking activity reminders 
[2026-04-13 15:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:10:19] [INFO] Checking activity reminders 
[2026-04-13 15:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:10:49] [INFO] Checking activity reminders 
[2026-04-13 15:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:19] [INFO] Checking activity reminders 
[2026-04-13 15:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:47] [INFO] Checking activity reminders 
[2026-04-13 15:11:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:49] [INFO] Checking activity reminders 
[2026-04-13 15:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:50] [INFO] Checking activity reminders 
[2026-04-13 15:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:52] [INFO] Checking activity reminders 
[2026-04-13 15:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:11:54] [INFO] Checking activity reminders 
[2026-04-13 15:11:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:11:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:12:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:12:24] [INFO] Checking activity reminders 
[2026-04-13 15:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:12:54] [INFO] Checking activity reminders 
[2026-04-13 15:12:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:12:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:13:00] [INFO] Activity save request {"post_data":{"contact_id":"2633","deal_id":"local_69495317823959.58597259","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 15:13:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2633","note_was_empty":true}
[2026-04-13 15:13:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"2633","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:00] [INFO] Updating virtual stage {"contact_id":"2633","stage_name":"deal_registered","force":false}
[2026-04-13 15:13:00] [INFO] Virtual stage successfully saved {"contact_id":"2633","stage_name":"deal_registered"}
[2026-04-13 15:13:00] [INFO] Virtual stage updated after activity save {"contact_id":"2633"}
[2026-04-13 15:13:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69495317823959.58597259","stage":"تماس پیگیری","status_change":null}
[2026-04-13 15:13:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcd6c4bb9351.12502713","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcd6c4bb9351.12502713"}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:00] [INFO] Updating virtual stage {"contact_id":"2633","stage_name":"deal_registered","force":false}
[2026-04-13 15:13:00] [INFO] Virtual stage successfully saved {"contact_id":"2633","stage_name":"deal_registered"}
[2026-04-13 15:13:00] [INFO] Virtual stage updated after activity save {"contact_id":"2633"}
[2026-04-13 15:13:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2633","person_id":"17403"}
[2026-04-13 15:13:07] [INFO] Checking activity reminders 
[2026-04-13 15:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:13:24] [INFO] Checking activity reminders 
[2026-04-13 15:13:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:13:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:13:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:13:54] [INFO] Checking activity reminders 
[2026-04-13 15:13:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:13:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:14:24] [INFO] Checking activity reminders 
[2026-04-13 15:14:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:14:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:14:54] [INFO] Checking activity reminders 
[2026-04-13 15:14:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:14:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:15:21] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 15:15:21","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 15:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:15:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"11923","is_new_deal":false}
[2026-04-13 15:15:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 15:15:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 15:15:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 15:15:21] [INFO] getContactPrimaryPhone called {"contact_id":"11923"}
[2026-04-13 15:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:15:21] [INFO] getContactPrimaryPhone result {"contact_id":"11923","person_found":true,"primary_phone":"9159875301"}
[2026-04-13 15:15:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159875301"}
[2026-04-13 15:15:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159875301","contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:15:21"}
[2026-04-13 15:15:21] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","existing_deal_found":true,"existing_contact_id":"11923","existing_title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:15:21"}
[2026-04-13 15:15:21] [INFO] DealController.save validated payments {"deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-13 15:15:21] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"11923","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 15:15:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d4dcbcbe7ef8.38675734","contact_didar_id":"11923","title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9159875301","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصری ناصری","existing_deal":"YES","existing_deal_id":"local_69d4dcbcbe7ef8.38675734","existing_deal_status":"Pending","server_time":"2026-04-13 15:15:21","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 15:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:15:21] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d4dcbcbe7ef8.38675734","contact_id":"11923","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9159875301 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 15:15:21","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 15:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:15:25] [INFO] Checking activity reminders 
[2026-04-13 15:15:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:15:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:15:55] [INFO] Checking activity reminders 
[2026-04-13 15:15:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:15:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:16:25] [INFO] Checking activity reminders 
[2026-04-13 15:16:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:16:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:16:38] [INFO] Activity save request {"post_data":{"contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"طلای فیزیکی و خودرو سرمایه گذاری \r\nدر 22 م طلا نفروخته \/ متضرر \r\nپرزنت 405 \/ 6 ماهه با پشتیبانی استاد \r\nارسال شماره شبا ","activity_duration":"7","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 15:16:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11923","note_was_empty":true}
[2026-04-13 15:16:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"11923","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:38] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-13 15:16:38] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-13 15:16:38] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-13 15:16:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dcbcbe7ef8.38675734","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 15:16:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcd79ecf49c5.48410629","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcd79ecf49c5.48410629"}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:38] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-13 15:16:38] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-13 15:16:38] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-13 15:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-13 15:16:55] [INFO] Checking activity reminders 
[2026-04-13 15:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:17:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:17:25] [INFO] Checking activity reminders 
[2026-04-13 15:17:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:17:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:17:55] [INFO] Checking activity reminders 
[2026-04-13 15:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:18:25] [INFO] Checking activity reminders 
[2026-04-13 15:18:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:18:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:18:55] [INFO] Checking activity reminders 
[2026-04-13 15:18:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:18:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:19:25] [INFO] Checking activity reminders 
[2026-04-13 15:19:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:19:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:19:55] [INFO] Checking activity reminders 
[2026-04-13 15:19:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:19:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:20:25] [INFO] Checking activity reminders 
[2026-04-13 15:20:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:20:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:20:56] [INFO] Checking activity reminders 
[2026-04-13 15:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:21:26] [INFO] Checking activity reminders 
[2026-04-13 15:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:21:56] [INFO] Checking activity reminders 
[2026-04-13 15:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:22:26] [INFO] Checking activity reminders 
[2026-04-13 15:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:22:56] [INFO] Checking activity reminders 
[2026-04-13 15:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:23:26] [INFO] Checking activity reminders 
[2026-04-13 15:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:23:56] [INFO] Checking activity reminders 
[2026-04-13 15:23:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:23:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:24:26] [INFO] Checking activity reminders 
[2026-04-13 15:24:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:24:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:24:56] [INFO] Checking activity reminders 
[2026-04-13 15:24:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:24:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:25:26] [INFO] Checking activity reminders 
[2026-04-13 15:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:25:57] [INFO] Checking activity reminders 
[2026-04-13 15:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:26:27] [INFO] Checking activity reminders 
[2026-04-13 15:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:26:57] [INFO] Checking activity reminders 
[2026-04-13 15:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:27:27] [INFO] Checking activity reminders 
[2026-04-13 15:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:27:57] [INFO] Checking activity reminders 
[2026-04-13 15:27:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:27:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:28:27] [INFO] Checking activity reminders 
[2026-04-13 15:28:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:28:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:28:58] [INFO] Checking activity reminders 
[2026-04-13 15:28:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:28:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:29:28] [INFO] Checking activity reminders 
[2026-04-13 15:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:29:58] [INFO] Checking activity reminders 
[2026-04-13 15:29:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:29:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:30:01] [INFO] Checking activity reminders 
[2026-04-13 15:30:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:30:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:30:28] [INFO] Checking activity reminders 
[2026-04-13 15:30:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:30:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:30:58] [INFO] Checking activity reminders 
[2026-04-13 15:30:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:30:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:31:28] [INFO] Checking activity reminders 
[2026-04-13 15:31:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:31:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:31:58] [INFO] Checking activity reminders 
[2026-04-13 15:31:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:31:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:32:29] [INFO] Checking activity reminders 
[2026-04-13 15:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:32:59] [INFO] Checking activity reminders 
[2026-04-13 15:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_products"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:15] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:17] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:18] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:18] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:18] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:19] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 15:33:20] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 15:33:23] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:29] [INFO] Checking activity reminders 
[2026-04-13 15:33:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:33:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:33:41] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 15:33:41] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-13 15:33:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 15:33:59] [INFO] Checking activity reminders 
[2026-04-13 15:33:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:33:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:34:29] [INFO] Checking activity reminders 
[2026-04-13 15:34:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:34:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:34:59] [INFO] Checking activity reminders 
[2026-04-13 15:34:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:34:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:35:15] [INFO] Checking activity reminders 
[2026-04-13 15:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:35:29] [INFO] Checking activity reminders 
[2026-04-13 15:35:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:35:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:35:43] [INFO] Checking activity reminders 
[2026-04-13 15:35:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:35:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:35:58] [INFO] Checking activity reminders 
[2026-04-13 15:35:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:35:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:35:59] [INFO] Checking activity reminders 
[2026-04-13 15:35:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:35:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:36:30] [INFO] Checking activity reminders 
[2026-04-13 15:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:37:00] [INFO] Checking activity reminders 
[2026-04-13 15:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:37:30] [INFO] Checking activity reminders 
[2026-04-13 15:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:38:00] [INFO] Checking activity reminders 
[2026-04-13 15:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:38:27] [INFO] Activity save request {"post_data":{"contact_id":"12398","deal_id":"local_699ef3d121e519.10264232","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 405 \r\nبدون پشتیبانی \r\nارسال اطلاعات \r\n24 نقد \r\n30 چک \/ ارسال اطلاعات در پیامک \r\n","activity_duration":"10","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:27] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 15:38:27] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:27] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12398","note_was_empty":true}
[2026-04-13 15:38:27] [INFO] Didar write disabled; saving activity locally {"contact_id":"12398","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:27] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-04-13 15:38:27] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-04-13 15:38:27] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-04-13 15:38:27] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ef3d121e519.10264232","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-13 15:38:27] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcdcbbc8ff60.72539467","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:27] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcdcbbc8ff60.72539467"}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:27] [INFO] Updating virtual stage {"contact_id":"12398","stage_name":"deal_registered","force":false}
[2026-04-13 15:38:27] [INFO] Virtual stage successfully saved {"contact_id":"12398","stage_name":"deal_registered"}
[2026-04-13 15:38:27] [INFO] Virtual stage updated after activity save {"contact_id":"12398"}
[2026-04-13 15:38:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:38:30] [INFO] Checking activity reminders 
[2026-04-13 15:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:38:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:00] [INFO] Checking activity reminders 
[2026-04-13 15:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:39:08] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 15:39:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:37] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"12398","deal_id":"local_699ef3d121e519.10264232","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 15:39:37","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 15:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:37] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"12398","is_new_deal":false}
[2026-04-13 15:39:37] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-13 15:39:37] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-13 15:39:37] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-13 15:39:37] [INFO] getContactPrimaryPhone called {"contact_id":"12398"}
[2026-04-13 15:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:37] [INFO] getContactPrimaryPhone result {"contact_id":"12398","person_found":true,"primary_phone":"9361188914"}
[2026-04-13 15:39:37] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9361188914"}
[2026-04-13 15:39:37] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9361188914","contact_id":"12398","deal_id":"local_699ef3d121e519.10264232","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:39:37"}
[2026-04-13 15:39:37] [INFO] DealController.save existing deal lookup {"deal_id":"local_699ef3d121e519.10264232","contact_id":"12398","existing_deal_found":true,"existing_contact_id":"12398","existing_title":"معامله سوم 9361188914 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 15:39:37"}
[2026-04-13 15:39:37] [INFO] DealController.save validated payments {"deal_id":"local_699ef3d121e519.10264232","contact_id":"12398","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-13 15:39:37] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12398","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 15:39:37] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699ef3d121e519.10264232","contact_didar_id":"12398","title":"معامله سوم 9361188914 | کانال VIP بدون پشتیبان","base_title_used":"معامله سوم 9361188914","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":54000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"متین غفوری","existing_deal":"YES","existing_deal_id":"local_699ef3d121e519.10264232","existing_deal_status":"Pending","server_time":"2026-04-13 15:39:37","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 15:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:37] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699ef3d121e519.10264232","contact_id":"12398","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9361188914 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":54000000,"payment_amount":0,"server_time":"2026-04-13 15:39:37","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 15:39:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:39:39] [INFO] Checking activity reminders 
[2026-04-13 15:39:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:39:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:39:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-13 15:40:09] [INFO] Checking activity reminders 
[2026-04-13 15:40:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:40:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:40:35] [INFO] Checking activity reminders 
[2026-04-13 15:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:40:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Activity save request {"post_data":{"contact_id":"3985","deal_id":"local_694fa0e99ee6a6.87234985","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nبیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 15:41:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3985","note_was_empty":true}
[2026-04-13 15:41:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"3985","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Updating virtual stage {"contact_id":"3985","stage_name":"deal_registered","force":false}
[2026-04-13 15:41:05] [INFO] Virtual stage successfully saved {"contact_id":"3985","stage_name":"deal_registered"}
[2026-04-13 15:41:05] [INFO] Virtual stage updated after activity save {"contact_id":"3985"}
[2026-04-13 15:41:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694fa0e99ee6a6.87234985","stage":"تماس پیگیری","status_change":null}
[2026-04-13 15:41:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcdd59b5a838.94795791","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcdd59b5a838.94795791"}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:05] [INFO] Updating virtual stage {"contact_id":"3985","stage_name":"deal_registered","force":false}
[2026-04-13 15:41:05] [INFO] Virtual stage successfully saved {"contact_id":"3985","stage_name":"deal_registered"}
[2026-04-13 15:41:05] [INFO] Virtual stage updated after activity save {"contact_id":"3985"}
[2026-04-13 15:41:05] [INFO] Checking activity reminders 
[2026-04-13 15:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-13 15:41:36] [INFO] Checking activity reminders 
[2026-04-13 15:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:40] [INFO] Checking activity reminders 
[2026-04-13 15:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:43] [INFO] Checking activity reminders 
[2026-04-13 15:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:44] [INFO] Checking activity reminders 
[2026-04-13 15:41:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:45] [INFO] Checking activity reminders 
[2026-04-13 15:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:48] [INFO] Checking activity reminders 
[2026-04-13 15:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:41:52] [INFO] Checking activity reminders 
[2026-04-13 15:41:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:41:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:42:22] [INFO] Checking activity reminders 
[2026-04-13 15:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:42:52] [INFO] Checking activity reminders 
[2026-04-13 15:42:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:42:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:43:22] [INFO] Checking activity reminders 
[2026-04-13 15:43:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:43:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:43:52] [INFO] Checking activity reminders 
[2026-04-13 15:43:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:43:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:44:22] [INFO] Checking activity reminders 
[2026-04-13 15:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:44:52] [INFO] Checking activity reminders 
[2026-04-13 15:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:45:22] [INFO] Checking activity reminders 
[2026-04-13 15:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:45:52] [INFO] Checking activity reminders 
[2026-04-13 15:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:46:22] [INFO] Checking activity reminders 
[2026-04-13 15:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:46:52] [INFO] Checking activity reminders 
[2026-04-13 15:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:47:23] [INFO] Checking activity reminders 
[2026-04-13 15:47:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:47:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:47:53] [INFO] Checking activity reminders 
[2026-04-13 15:47:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:47:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:48:24] [INFO] Checking activity reminders 
[2026-04-13 15:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:48:54] [INFO] Checking activity reminders 
[2026-04-13 15:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:49:24] [INFO] Checking activity reminders 
[2026-04-13 15:49:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:49:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:49:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:49:54] [INFO] Checking activity reminders 
[2026-04-13 15:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:50:08] [INFO] Checking activity reminders 
[2026-04-13 15:50:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:50:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:50:24] [INFO] Checking activity reminders 
[2026-04-13 15:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:50:38] [INFO] Checking activity reminders 
[2026-04-13 15:50:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:50:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:50:54] [INFO] Checking activity reminders 
[2026-04-13 15:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:51:08] [INFO] Checking activity reminders 
[2026-04-13 15:51:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:51:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:51:24] [INFO] Checking activity reminders 
[2026-04-13 15:51:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:51:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:51:54] [INFO] Checking activity reminders 
[2026-04-13 15:51:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:51:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:52:10] [INFO] Activity save request {"post_data":{"contact_id":"88","deal_id":"local_69d6206a229041.44776372","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس پیامک ","activity_duration":"10","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 15:52:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"88","note_was_empty":true}
[2026-04-13 15:52:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"88","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:10] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-13 15:52:10] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-13 15:52:10] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-13 15:52:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6206a229041.44776372","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 15:52:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcdff2169959.21187170","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcdff2169959.21187170"}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:10] [INFO] Updating virtual stage {"contact_id":"88","stage_name":"deal_registered","force":false}
[2026-04-13 15:52:10] [INFO] Virtual stage successfully saved {"contact_id":"88","stage_name":"deal_registered"}
[2026-04-13 15:52:10] [INFO] Virtual stage updated after activity save {"contact_id":"88"}
[2026-04-13 15:52:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"88","person_id":"13963"}
[2026-04-13 15:52:24] [INFO] Checking activity reminders 
[2026-04-13 15:52:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:52:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:52:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 15:52:54] [INFO] Checking activity reminders 
[2026-04-13 15:52:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:52:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:53:24] [INFO] Checking activity reminders 
[2026-04-13 15:53:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:53:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:53:55] [INFO] Checking activity reminders 
[2026-04-13 15:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:54:25] [INFO] Checking activity reminders 
[2026-04-13 15:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:54:55] [INFO] Checking activity reminders 
[2026-04-13 15:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:55:25] [INFO] Checking activity reminders 
[2026-04-13 15:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:55:55] [INFO] Checking activity reminders 
[2026-04-13 15:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:56:25] [INFO] Checking activity reminders 
[2026-04-13 15:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:56:49] [INFO] Checking activity reminders 
[2026-04-13 15:56:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:56:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:56:55] [INFO] Checking activity reminders 
[2026-04-13 15:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:57:19] [INFO] Checking activity reminders 
[2026-04-13 15:57:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:57:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:57:25] [INFO] Checking activity reminders 
[2026-04-13 15:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:57:49] [INFO] Checking activity reminders 
[2026-04-13 15:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:57:55] [INFO] Checking activity reminders 
[2026-04-13 15:57:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:57:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:58:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 15:58:19] [INFO] Checking activity reminders 
[2026-04-13 15:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:58:26] [INFO] Checking activity reminders 
[2026-04-13 15:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:58:49] [INFO] Checking activity reminders 
[2026-04-13 15:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:58:56] [INFO] Checking activity reminders 
[2026-04-13 15:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:59:02] [INFO] Lead update received {"contact_id":"local_69d4bc63630031.16399410","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 15:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 15:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 15:59:02] [DEBUG] findByPhone: Found person {"phones":["9183132949"],"found_id":"5021","found_didar_id":"8607","found_name":"اقای میرزایی"}
[2026-04-13 15:59:02] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9183132949","found_didar_id":"8607","found_local_id":"5021","found_name":"اقای میرزایی"}
[2026-04-13 15:59:02] [DEBUG] findByPhone: Found person {"phones":["9188020144"],"found_id":"13754","found_didar_id":"11424","found_name":"میثم میرزایی"}
[2026-04-13 15:59:02] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9188020144","found_didar_id":"11424","found_local_id":"13754","found_name":"میثم میرزایی"}
[2026-04-13 15:59:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8607","person_id":"5021"}
[2026-04-13 15:59:02] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9183132949","found_id":"5021","found_didar_id":"8607","exclude_id":22015,"exclude_didar_id":"local_69d4bc63630031.16399410"}
[2026-04-13 15:59:02] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  اقای میرزایی (مسئول: خانم شایسته) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-13 15:59:19] [INFO] Checking activity reminders 
[2026-04-13 15:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:59:26] [INFO] Checking activity reminders 
[2026-04-13 15:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:59:49] [INFO] Checking activity reminders 
[2026-04-13 15:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 15:59:56] [INFO] Checking activity reminders 
[2026-04-13 15:59:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 15:59:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:00:07] [INFO] Activity save request {"post_data":{"contact_id":"local_69d61edc531e17.81711181","deal_id":"local_69d61edc8417b","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بدلیل شرایط شخصی خودش نمیتونه هیچ فعالیتی در بازار داشته باشه \r\nاز شرایط بحرانی کشور و نوسانات اطلاع دادم در بله پیام ارسال کردم ","activity_duration":"4","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 16:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 16:00:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 16:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69d61edc531e17.81711181","note_was_empty":true}
[2026-04-13 16:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:07] [INFO] Updating virtual stage {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered","force":false}
[2026-04-13 16:00:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered"}
[2026-04-13 16:00:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d61edc531e17.81711181"}
[2026-04-13 16:00:07] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61edc8417b","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 16:00:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dce1cfdcd0a0.27486189","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 16:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69dce1cfdcd0a0.27486189"}
[2026-04-13 16:00:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:07] [INFO] Updating virtual stage {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered","force":false}
[2026-04-13 16:00:07] [INFO] Virtual stage successfully saved {"contact_id":"local_69d61edc531e17.81711181","stage_name":"deal_registered"}
[2026-04-13 16:00:07] [INFO] Virtual stage updated after activity save {"contact_id":"local_69d61edc531e17.81711181"}
[2026-04-13 16:00:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:00:19] [INFO] Checking activity reminders 
[2026-04-13 16:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:00:26] [INFO] Checking activity reminders 
[2026-04-13 16:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:00:50] [INFO] Checking activity reminders 
[2026-04-13 16:00:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:00:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:00:56] [INFO] Checking activity reminders 
[2026-04-13 16:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:01:20] [INFO] Checking activity reminders 
[2026-04-13 16:01:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:01:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:01:26] [INFO] Checking activity reminders 
[2026-04-13 16:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:01:49] [INFO] Lead update received {"contact_id":"local_69d4bc63630031.16399410","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 16:01:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 16:01:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 16:01:49] [DEBUG] findByPhone: Found person {"phones":["9183132949"],"found_id":"5021","found_didar_id":"8607","found_name":"اقای میرزایی"}
[2026-04-13 16:01:49] [INFO] Duplicate phone found in resolveDuplicateMatchLocalOnly {"phone":"9183132949","found_didar_id":"8607","found_local_id":"5021","found_name":"اقای میرزایی"}
[2026-04-13 16:01:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8607","person_id":"5021"}
[2026-04-13 16:01:50] [INFO] checkForDuplicates: REAL duplicate found {"phone":"9183132949","found_id":"5021","found_didar_id":"8607","exclude_id":22015,"exclude_didar_id":"local_69d4bc63630031.16399410"}
[2026-04-13 16:01:50] [ERROR] API Error {"action":"update_lead","exception":{"message":"این شماره قبلاً برای  اقای میرزایی (مسئول: خانم شایسته) ثبت شده است.","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php","line":777,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/LeadService.php(977): App\\Services\\LeadService->checkForDuplicates()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/LeadController.php(485): App\\Services\\LeadService->updateLead()\n#2 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(625): App\\Controllers\\LeadController->update()\n#3 {main}"}}
[2026-04-13 16:01:50] [INFO] Checking activity reminders 
[2026-04-13 16:01:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:01:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:01:54] [INFO] Lead update received {"contact_id":"local_69d4bc63630031.16399410","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 16:01:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 16:01:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 16:01:54] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69d4bc63630031.16399410"}
[2026-04-13 16:01:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d4bc63630031.16399410","person_id":"22015"}
[2026-04-13 16:01:56] [INFO] Checking activity reminders 
[2026-04-13 16:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:02:26] [INFO] Checking activity reminders 
[2026-04-13 16:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:02:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d61edc531e17.81711181","deal_id":"local_69d61edc8417b","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 16:02:42","session_id":"73igqejcnem4hm1724iqs3857e"}
[2026-04-13 16:02:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:02:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69d61edc531e17.81711181","is_new_deal":false}
[2026-04-13 16:02:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 16:02:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 16:02:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 16:02:42] [INFO] getContactPrimaryPhone called {"contact_id":"local_69d61edc531e17.81711181"}
[2026-04-13 16:02:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:02:42] [INFO] getContactPrimaryPhone result {"contact_id":"local_69d61edc531e17.81711181","person_found":true,"primary_phone":"9175289757"}
[2026-04-13 16:02:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175289757"}
[2026-04-13 16:02:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175289757","contact_id":"local_69d61edc531e17.81711181","deal_id":"local_69d61edc8417b","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 16:02:42"}
[2026-04-13 16:02:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61edc8417b","contact_id":"local_69d61edc531e17.81711181","existing_deal_found":true,"existing_contact_id":"local_69d61edc531e17.81711181","existing_title":"معامله اول 9175289757","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-13 16:02:42"}
[2026-04-13 16:02:42] [INFO] DealController.save validated payments {"deal_id":"local_69d61edc8417b","contact_id":"local_69d61edc531e17.81711181","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 16:02:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69d61edc531e17.81711181","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-13 16:02:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61edc8417b","contact_didar_id":"local_69d61edc531e17.81711181","title":"معامله اول 9175289757 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9175289757","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمد فاریابی","existing_deal":"YES","existing_deal_id":"local_69d61edc8417b","existing_deal_status":"Pending","server_time":"2026-04-13 16:02:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-13 16:02:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:02:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61edc8417b","contact_id":"local_69d61edc531e17.81711181","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9175289757 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-13 16:02:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 16:02:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d61edc531e17.81711181","person_id":"22030"}
[2026-04-13 16:02:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 16:02:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_person_profile"}
[2026-04-13 16:02:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:56] [INFO] Checking activity reminders 
[2026-04-13 16:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:02:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:02:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:02] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:03] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 16:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_didar_users"}
[2026-04-13 16:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:08] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_users_list"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_kpi_products"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_performance_dashboard"}
[2026-04-13 16:03:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:10] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:11] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:18] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 16:03:18] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 16:03:18] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 16:03:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 16:03:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 16:03:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 16:03:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 16:03:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 16:03:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 16:03:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 16:03:27] [INFO] Checking activity reminders 
[2026-04-13 16:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:03:49] [INFO] Checking activity reminders 
[2026-04-13 16:03:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:03:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:03:57] [INFO] Checking activity reminders 
[2026-04-13 16:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:03:58] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 16:03:58] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 16:03:58] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 16:04:19] [INFO] Checking activity reminders 
[2026-04-13 16:04:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:04:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:04:27] [INFO] Checking activity reminders 
[2026-04-13 16:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:04:57] [INFO] Checking activity reminders 
[2026-04-13 16:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:05:27] [INFO] Checking activity reminders 
[2026-04-13 16:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:05:57] [INFO] Checking activity reminders 
[2026-04-13 16:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:06:17] [INFO] Checking activity reminders 
[2026-04-13 16:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:06:27] [INFO] Checking activity reminders 
[2026-04-13 16:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:06:58] [INFO] Checking activity reminders 
[2026-04-13 16:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:07:28] [INFO] Checking activity reminders 
[2026-04-13 16:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:07:58] [INFO] Checking activity reminders 
[2026-04-13 16:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:08:28] [INFO] Checking activity reminders 
[2026-04-13 16:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:08:58] [INFO] Checking activity reminders 
[2026-04-13 16:08:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:08:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:09:28] [INFO] Checking activity reminders 
[2026-04-13 16:09:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:09:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:09:58] [INFO] Checking activity reminders 
[2026-04-13 16:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:10:28] [INFO] Checking activity reminders 
[2026-04-13 16:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:10:58] [INFO] Checking activity reminders 
[2026-04-13 16:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:11:28] [INFO] Checking activity reminders 
[2026-04-13 16:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:11:58] [INFO] Checking activity reminders 
[2026-04-13 16:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:12:28] [INFO] Checking activity reminders 
[2026-04-13 16:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:12:59] [INFO] Checking activity reminders 
[2026-04-13 16:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:13:29] [INFO] Checking activity reminders 
[2026-04-13 16:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:13:59] [INFO] Checking activity reminders 
[2026-04-13 16:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:14:21] [INFO] Checking activity reminders 
[2026-04-13 16:14:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:14:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 16:14:51] [INFO] Checking activity reminders 
[2026-04-13 16:14:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:14:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:15:21] [INFO] Checking activity reminders 
[2026-04-13 16:15:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:15:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:15:51] [INFO] Checking activity reminders 
[2026-04-13 16:15:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:15:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:16:21] [INFO] Checking activity reminders 
[2026-04-13 16:16:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:16:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:16:51] [INFO] Checking activity reminders 
[2026-04-13 16:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:17:21] [INFO] Checking activity reminders 
[2026-04-13 16:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:17:51] [INFO] Checking activity reminders 
[2026-04-13 16:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:18:22] [INFO] Checking activity reminders 
[2026-04-13 16:18:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:18:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:18:52] [INFO] Checking activity reminders 
[2026-04-13 16:18:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:18:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:19:22] [INFO] Checking activity reminders 
[2026-04-13 16:19:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:19:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:19:52] [INFO] Checking activity reminders 
[2026-04-13 16:19:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:19:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:20:22] [INFO] Checking activity reminders 
[2026-04-13 16:20:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:20:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:20:36] [INFO] Checking activity reminders 
[2026-04-13 16:20:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:20:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:20:38] [INFO] Checking activity reminders 
[2026-04-13 16:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:20:56] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 16:20:56] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 16:20:56] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 16:21:06] [INFO] Checking activity reminders 
[2026-04-13 16:21:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:21:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:21:09] [INFO] Checking activity reminders 
[2026-04-13 16:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:21:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 16:21:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 16:21:43] [INFO] Checking activity reminders 
[2026-04-13 16:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:22:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 16:22:13] [INFO] Checking activity reminders 
[2026-04-13 16:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:22:34] [INFO] Checking activity reminders 
[2026-04-13 16:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:22:48] [INFO] Checking activity reminders 
[2026-04-13 16:22:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:22:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:22:50] [INFO] Checking activity reminders 
[2026-04-13 16:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:22:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 16:23:20] [INFO] Checking activity reminders 
[2026-04-13 16:23:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:23:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:23:33] [INFO] Checking activity reminders 
[2026-04-13 16:23:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:23:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:23:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 16:23:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 16:23:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 16:23:50] [INFO] Checking activity reminders 
[2026-04-13 16:23:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:23:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:24:20] [INFO] Checking activity reminders 
[2026-04-13 16:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:24:50] [INFO] Checking activity reminders 
[2026-04-13 16:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:25:20] [INFO] Checking activity reminders 
[2026-04-13 16:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:25:50] [INFO] Checking activity reminders 
[2026-04-13 16:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:26:20] [INFO] Checking activity reminders 
[2026-04-13 16:26:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:26:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:26:51] [INFO] Checking activity reminders 
[2026-04-13 16:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:27:21] [INFO] Checking activity reminders 
[2026-04-13 16:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:27:51] [INFO] Checking activity reminders 
[2026-04-13 16:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:28:21] [INFO] Checking activity reminders 
[2026-04-13 16:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:28:51] [INFO] Checking activity reminders 
[2026-04-13 16:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:29:21] [INFO] Checking activity reminders 
[2026-04-13 16:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:29:51] [INFO] Checking activity reminders 
[2026-04-13 16:29:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:29:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:30:22] [INFO] Checking activity reminders 
[2026-04-13 16:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:30:52] [INFO] Checking activity reminders 
[2026-04-13 16:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:31:22] [INFO] Checking activity reminders 
[2026-04-13 16:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:31:52] [INFO] Checking activity reminders 
[2026-04-13 16:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:32:22] [INFO] Checking activity reminders 
[2026-04-13 16:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:32:44] [INFO] Checking activity reminders 
[2026-04-13 16:32:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:32:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:32:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:14] [INFO] Checking activity reminders 
[2026-04-13 16:33:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:33:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:33:26] [INFO] Activity save request {"post_data":{"contact_id":"985","deal_id":"local_69495ab57cc433.38025613","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کلا برگ ارایه میده \r\nپول تو حساب نداره \r\nتا چهارشنبه تسویه ","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:26] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 16:33:26] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:26] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"985","note_was_empty":true}
[2026-04-13 16:33:26] [INFO] Didar write disabled; saving activity locally {"contact_id":"985","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:26] [INFO] Updating virtual stage {"contact_id":"985","stage_name":"deal_registered","force":false}
[2026-04-13 16:33:26] [INFO] Virtual stage successfully saved {"contact_id":"985","stage_name":"deal_registered"}
[2026-04-13 16:33:26] [INFO] Virtual stage updated after activity save {"contact_id":"985"}
[2026-04-13 16:33:26] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69495ab57cc433.38025613","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-13 16:33:26] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dce99e9d2e76.20307734","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:26] [INFO] Activity saved successfully {"activity_id":"local_activity_69dce99e9d2e76.20307734"}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:26] [INFO] Updating virtual stage {"contact_id":"985","stage_name":"deal_registered","force":false}
[2026-04-13 16:33:26] [INFO] Virtual stage successfully saved {"contact_id":"985","stage_name":"deal_registered"}
[2026-04-13 16:33:26] [INFO] Virtual stage updated after activity save {"contact_id":"985"}
[2026-04-13 16:33:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"985","person_id":"20799"}
[2026-04-13 16:33:45] [INFO] Checking activity reminders 
[2026-04-13 16:33:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:33:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:34:15] [INFO] Checking activity reminders 
[2026-04-13 16:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:34:45] [INFO] Checking activity reminders 
[2026-04-13 16:34:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:34:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:35:15] [INFO] Checking activity reminders 
[2026-04-13 16:35:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:35:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:35:45] [INFO] Checking activity reminders 
[2026-04-13 16:35:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:35:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:36:15] [INFO] Checking activity reminders 
[2026-04-13 16:36:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:36:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:36:46] [INFO] Checking activity reminders 
[2026-04-13 16:36:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:36:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:37:16] [INFO] Checking activity reminders 
[2026-04-13 16:37:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:37:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:37:46] [INFO] Checking activity reminders 
[2026-04-13 16:37:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:37:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:38:16] [INFO] Checking activity reminders 
[2026-04-13 16:38:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:38:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:38:46] [INFO] Checking activity reminders 
[2026-04-13 16:38:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:38:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:39:16] [INFO] Checking activity reminders 
[2026-04-13 16:39:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:39:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:39:46] [INFO] Checking activity reminders 
[2026-04-13 16:39:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:39:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:40:16] [INFO] Checking activity reminders 
[2026-04-13 16:40:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:40:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:40:27] [INFO] Checking activity reminders 
[2026-04-13 16:40:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:40:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:40:29] [INFO] Checking activity reminders 
[2026-04-13 16:40:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:40:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:40:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-13 16:40:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b7dc3b1eb32.82132705","person_id":"21331"}
[2026-04-13 16:40:59] [INFO] Checking activity reminders 
[2026-04-13 16:40:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:40:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:41:20] [INFO] Checking activity reminders 
[2026-04-13 16:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:41:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"797","person_id":"13792"}
[2026-04-13 16:41:50] [INFO] Checking activity reminders 
[2026-04-13 16:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:42:19] [INFO] Checking activity reminders 
[2026-04-13 16:42:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:42:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:42:22] [INFO] Checking activity reminders 
[2026-04-13 16:42:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:42:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:42:23] [INFO] Checking activity reminders 
[2026-04-13 16:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:42:29] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 16:42:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-04-13 16:42:59] [INFO] Checking activity reminders 
[2026-04-13 16:42:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:42:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:43:29] [INFO] Checking activity reminders 
[2026-04-13 16:43:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:43:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:43:59] [INFO] Checking activity reminders 
[2026-04-13 16:43:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:43:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:44:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 16:44:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-04-13 16:44:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20719","person_id":"19423"}
[2026-04-13 16:44:32] [INFO] Checking activity reminders 
[2026-04-13 16:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:44:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7882","person_id":"3931"}
[2026-04-13 16:45:02] [INFO] Checking activity reminders 
[2026-04-13 16:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:45:32] [INFO] Checking activity reminders 
[2026-04-13 16:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:46:02] [INFO] Checking activity reminders 
[2026-04-13 16:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:46:32] [INFO] Checking activity reminders 
[2026-04-13 16:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:47:02] [INFO] Checking activity reminders 
[2026-04-13 16:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:47:33] [INFO] Checking activity reminders 
[2026-04-13 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:48:03] [INFO] Checking activity reminders 
[2026-04-13 16:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:48:33] [INFO] Checking activity reminders 
[2026-04-13 16:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:49:03] [INFO] Checking activity reminders 
[2026-04-13 16:49:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:49:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:49:33] [INFO] Checking activity reminders 
[2026-04-13 16:49:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:49:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:50:03] [INFO] Checking activity reminders 
[2026-04-13 16:50:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:50:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:50:33] [INFO] Checking activity reminders 
[2026-04-13 16:50:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:50:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:51:03] [INFO] Checking activity reminders 
[2026-04-13 16:51:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:51:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:51:34] [INFO] Checking activity reminders 
[2026-04-13 16:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:52:04] [INFO] Checking activity reminders 
[2026-04-13 16:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:52:34] [INFO] Checking activity reminders 
[2026-04-13 16:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:53:04] [INFO] Checking activity reminders 
[2026-04-13 16:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:53:34] [INFO] Checking activity reminders 
[2026-04-13 16:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:54:05] [INFO] Checking activity reminders 
[2026-04-13 16:54:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:54:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:54:35] [INFO] Checking activity reminders 
[2026-04-13 16:54:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:54:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:55:05] [INFO] Checking activity reminders 
[2026-04-13 16:55:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:55:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:55:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:55:35] [INFO] Checking activity reminders 
[2026-04-13 16:55:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:55:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:56:05] [INFO] Checking activity reminders 
[2026-04-13 16:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:56:19] [INFO] Activity save request {"post_data":{"contact_id":"21132","deal_id":"local_699aa47375fef5.95825999","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در عیار متضرر \r\nبرای مانده حساب تا اخر ماه تسویه \r\n","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 16:56:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21132","note_was_empty":true}
[2026-04-13 16:56:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"21132","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:19] [INFO] Updating virtual stage {"contact_id":"21132","stage_name":"new","force":false}
[2026-04-13 16:56:19] [WARNING] Prevented overwriting special stage with 'new' {"contact_id":"21132","existing_special_stage":"with_purchase","requested_stage":"new"}
[2026-04-13 16:56:19] [INFO] Virtual stage updated after activity save {"contact_id":"21132"}
[2026-04-13 16:56:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699aa47375fef5.95825999","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-13 16:56:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dceefb250e51.71597168","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69dceefb250e51.71597168"}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:19] [INFO] Updating virtual stage {"contact_id":"21132","stage_name":"deal_registered","force":false}
[2026-04-13 16:56:19] [INFO] Virtual stage successfully saved {"contact_id":"21132","stage_name":"deal_registered"}
[2026-04-13 16:56:19] [INFO] Virtual stage updated after activity save {"contact_id":"21132"}
[2026-04-13 16:56:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-13 16:56:35] [INFO] Checking activity reminders 
[2026-04-13 16:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:57:06] [INFO] Checking activity reminders 
[2026-04-13 16:57:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:57:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:57:36] [INFO] Checking activity reminders 
[2026-04-13 16:57:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:57:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:06] [INFO] Checking activity reminders 
[2026-04-13 16:58:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:11] [INFO] Checking activity reminders 
[2026-04-13 16:58:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2376","person_id":"15864"}
[2026-04-13 16:58:34] [INFO] Checking activity reminders 
[2026-04-13 16:58:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:48] [INFO] Checking activity reminders 
[2026-04-13 16:58:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:51] [INFO] Checking activity reminders 
[2026-04-13 16:58:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:58:55] [INFO] Checking activity reminders 
[2026-04-13 16:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:59:25] [INFO] Checking activity reminders 
[2026-04-13 16:59:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:59:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:59:30] [INFO] Checking activity reminders 
[2026-04-13 16:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:59:33] [INFO] Checking activity reminders 
[2026-04-13 16:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 16:59:37] [INFO] Checking activity reminders 
[2026-04-13 16:59:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 16:59:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:00:07] [INFO] Checking activity reminders 
[2026-04-13 17:00:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:00:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:00:16] [INFO] Activity save request {"post_data":{"contact_id":"6967","deal_id":"local_69d4da8cd7d966.48107679","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 17:00:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6967","note_was_empty":true}
[2026-04-13 17:00:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"6967","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:16] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-13 17:00:16] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-13 17:00:16] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-13 17:00:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da8cd7d966.48107679","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-13 17:00:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcefe8521486.29051285","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcefe8521486.29051285"}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:16] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-13 17:00:16] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-13 17:00:16] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-13 17:00:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-13 17:00:27] [INFO] Checking activity reminders 
[2026-04-13 17:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:00:28] [INFO] Checking activity reminders 
[2026-04-13 17:00:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:00:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:00:58] [INFO] Checking activity reminders 
[2026-04-13 17:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:01:29] [INFO] Checking activity reminders 
[2026-04-13 17:01:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:01:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:01:59] [INFO] Checking activity reminders 
[2026-04-13 17:01:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:01:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:02:19] [INFO] Checking activity reminders 
[2026-04-13 17:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:02:38] [INFO] Checking activity reminders 
[2026-04-13 17:02:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:02:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:02:51] [INFO] Checking activity reminders 
[2026-04-13 17:02:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:02:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:02:52] [INFO] Checking activity reminders 
[2026-04-13 17:02:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:02:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:02:54] [INFO] Checking activity reminders 
[2026-04-13 17:02:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:02:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:03:24] [INFO] Checking activity reminders 
[2026-04-13 17:03:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:03:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:03:54] [INFO] Checking activity reminders 
[2026-04-13 17:03:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:03:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:04:24] [INFO] Checking activity reminders 
[2026-04-13 17:04:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:04:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:04:54] [INFO] Checking activity reminders 
[2026-04-13 17:04:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:04:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:05:24] [INFO] Checking activity reminders 
[2026-04-13 17:05:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:05:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:05:54] [INFO] Checking activity reminders 
[2026-04-13 17:05:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:05:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:06:24] [INFO] Checking activity reminders 
[2026-04-13 17:06:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:06:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:06:55] [INFO] Checking activity reminders 
[2026-04-13 17:06:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:06:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:07:25] [INFO] Checking activity reminders 
[2026-04-13 17:07:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:07:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"check_reminders"}
[2026-04-13 17:07:49] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:50] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:51] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:52] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:52] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:52] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:53] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:53] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"get_leads"}
[2026-04-13 17:07:53] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:53] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:07:55] [INFO] Checking activity reminders 
[2026-04-13 17:07:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:07:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:08:02] [WARNING] Auth check failed - not authenticated {"session_id":"auplg3uoalgru7tfav674qs6km","session_keys":[],"action":"log_client_event"}
[2026-04-13 17:08:02] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-13 17:08:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 17:08:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-13 17:08:22] [INFO] Checking activity reminders 
[2026-04-13 17:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:08:32] [INFO] Checking activity reminders 
[2026-04-13 17:08:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:08:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:09:03] [INFO] Checking activity reminders 
[2026-04-13 17:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:09:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-13 17:09:33] [INFO] Checking activity reminders 
[2026-04-13 17:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:10:03] [INFO] Checking activity reminders 
[2026-04-13 17:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:10:33] [INFO] Checking activity reminders 
[2026-04-13 17:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:10:49] [INFO] Lead update received {"contact_id":"11242","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-13 17:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-13 17:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-13 17:10:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"11242"}
[2026-04-13 17:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11242","person_id":"15907"}
[2026-04-13 17:11:03] [INFO] Checking activity reminders 
[2026-04-13 17:11:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:11:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:11:33] [INFO] Checking activity reminders 
[2026-04-13 17:11:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:11:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:12:03] [INFO] Checking activity reminders 
[2026-04-13 17:12:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:12:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:12:33] [INFO] Checking activity reminders 
[2026-04-13 17:12:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:12:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:13:03] [INFO] Checking activity reminders 
[2026-04-13 17:13:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:13:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:13:33] [INFO] Checking activity reminders 
[2026-04-13 17:13:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:13:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:14:03] [INFO] Checking activity reminders 
[2026-04-13 17:14:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:14:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:14:33] [INFO] Checking activity reminders 
[2026-04-13 17:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:15:03] [INFO] Checking activity reminders 
[2026-04-13 17:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:15:33] [INFO] Checking activity reminders 
[2026-04-13 17:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:16:03] [INFO] Checking activity reminders 
[2026-04-13 17:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:16:33] [INFO] Checking activity reminders 
[2026-04-13 17:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:17:04] [INFO] Checking activity reminders 
[2026-04-13 17:17:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:17:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:17:34] [INFO] Checking activity reminders 
[2026-04-13 17:17:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:17:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:18:04] [INFO] Checking activity reminders 
[2026-04-13 17:18:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:18:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:18:34] [INFO] Checking activity reminders 
[2026-04-13 17:18:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:18:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:19:04] [INFO] Checking activity reminders 
[2026-04-13 17:19:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:19:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:19:34] [INFO] Checking activity reminders 
[2026-04-13 17:19:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:19:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:20:04] [INFO] Checking activity reminders 
[2026-04-13 17:20:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:20:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:20:34] [INFO] Checking activity reminders 
[2026-04-13 17:20:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:20:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:21:04] [INFO] Checking activity reminders 
[2026-04-13 17:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:21:34] [INFO] Checking activity reminders 
[2026-04-13 17:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:22:04] [INFO] Checking activity reminders 
[2026-04-13 17:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:22:34] [INFO] Checking activity reminders 
[2026-04-13 17:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:23:04] [INFO] Checking activity reminders 
[2026-04-13 17:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:23:34] [INFO] Checking activity reminders 
[2026-04-13 17:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:24:04] [INFO] Checking activity reminders 
[2026-04-13 17:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:24:34] [INFO] Checking activity reminders 
[2026-04-13 17:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:25:04] [INFO] Checking activity reminders 
[2026-04-13 17:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:25:34] [INFO] Checking activity reminders 
[2026-04-13 17:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:26:05] [INFO] Checking activity reminders 
[2026-04-13 17:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:26:35] [INFO] Checking activity reminders 
[2026-04-13 17:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:28:32] [INFO] Checking activity reminders 
[2026-04-13 17:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:29:02] [INFO] Checking activity reminders 
[2026-04-13 17:29:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:29:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:29:35] [INFO] Checking activity reminders 
[2026-04-13 17:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:30:06] [INFO] Checking activity reminders 
[2026-04-13 17:30:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:30:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:30:36] [INFO] Checking activity reminders 
[2026-04-13 17:30:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:30:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:31:06] [INFO] Checking activity reminders 
[2026-04-13 17:31:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:31:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:31:36] [INFO] Checking activity reminders 
[2026-04-13 17:31:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:31:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:32:06] [INFO] Checking activity reminders 
[2026-04-13 17:32:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:32:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:32:36] [INFO] Checking activity reminders 
[2026-04-13 17:32:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:32:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:33:06] [INFO] Checking activity reminders 
[2026-04-13 17:33:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:33:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:33:36] [INFO] Checking activity reminders 
[2026-04-13 17:33:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:33:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:34:06] [INFO] Checking activity reminders 
[2026-04-13 17:34:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:34:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:34:40] [INFO] Checking activity reminders 
[2026-04-13 17:34:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:34:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:35:11] [INFO] Checking activity reminders 
[2026-04-13 17:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:42:11] [INFO] Checking activity reminders 
[2026-04-13 17:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:54:45] [INFO] Checking activity reminders 
[2026-04-13 17:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-13 17:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:55:15] [INFO] Checking activity reminders 
[2026-04-13 17:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:55:53] [INFO] Checking activity reminders 
[2026-04-13 17:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:55:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7257","person_id":"18941"}
[2026-04-13 17:56:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:23] [INFO] Checking activity reminders 
[2026-04-13 17:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:56:36] [INFO] Activity save request {"post_data":{"contact_id":"1584","deal_id":"local_69b72fa0d9ec89.35266337","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"هست کانال","activity_duration":"3","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-13 17:56:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1584","note_was_empty":true}
[2026-04-13 17:56:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"1584","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:36] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-13 17:56:36] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-13 17:56:36] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-13 17:56:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b72fa0d9ec89.35266337","stage":"برگزاری دوره","status_change":null}
[2026-04-13 17:56:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dcfd1c9fd529.44916951","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69dcfd1c9fd529.44916951"}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:36] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-13 17:56:36] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-13 17:56:36] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-13 17:56:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 17:56:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69d224986b1d06.92096443","person_id":"21978"}
[2026-04-13 17:56:53] [INFO] Checking activity reminders 
[2026-04-13 17:56:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:56:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:57:12] [INFO] Checking activity reminders 
[2026-04-13 17:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:57:42] [INFO] Checking activity reminders 
[2026-04-13 17:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:58:12] [INFO] Checking activity reminders 
[2026-04-13 17:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:58:42] [INFO] Checking activity reminders 
[2026-04-13 17:58:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:58:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:59:12] [INFO] Checking activity reminders 
[2026-04-13 17:59:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:59:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 17:59:42] [INFO] Checking activity reminders 
[2026-04-13 17:59:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 17:59:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:00:27] [INFO] Checking activity reminders 
[2026-04-13 18:00:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:00:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:00:58] [INFO] Checking activity reminders 
[2026-04-13 18:00:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:00:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:01:28] [INFO] Checking activity reminders 
[2026-04-13 18:01:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:01:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:01:58] [INFO] Checking activity reminders 
[2026-04-13 18:01:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:01:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:02:28] [INFO] Checking activity reminders 
[2026-04-13 18:02:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:02:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:02:59] [INFO] Checking activity reminders 
[2026-04-13 18:02:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:02:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:03:29] [INFO] Checking activity reminders 
[2026-04-13 18:03:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:03:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:03:59] [INFO] Checking activity reminders 
[2026-04-13 18:03:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:03:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:04:29] [INFO] Checking activity reminders 
[2026-04-13 18:04:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:04:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:04:59] [INFO] Checking activity reminders 
[2026-04-13 18:04:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:04:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:05:29] [INFO] Checking activity reminders 
[2026-04-13 18:05:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:05:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:05:59] [INFO] Checking activity reminders 
[2026-04-13 18:05:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:05:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:06:29] [INFO] Checking activity reminders 
[2026-04-13 18:06:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:06:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:06:59] [INFO] Checking activity reminders 
[2026-04-13 18:06:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:06:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:07:29] [INFO] Checking activity reminders 
[2026-04-13 18:07:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:07:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:07:59] [INFO] Checking activity reminders 
[2026-04-13 18:07:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:07:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:11:18] [WARNING] Auth check failed - not authenticated {"session_id":"b4a9ebq0g8fkd55vbrejnkt6ej","session_keys":[],"action":"log_client_event"}
[2026-04-13 18:11:18] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"admin"}
[2026-04-13 18:11:18] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":true}
[2026-04-13 18:11:19] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:11:19] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:11:19] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:11:19] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13207","person_id":"20616"}
[2026-04-13 18:13:22] [INFO] Checking activity reminders 
[2026-04-13 18:13:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:13:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:28:38] [INFO] Checking activity reminders 
[2026-04-13 18:28:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:28:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:30:11] [INFO] Checking activity reminders 
[2026-04-13 18:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:30:14] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:30:14] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:30:14] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:30:14] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:30:30] [INFO] Added column to persons table {"column":"previous_owner_history"}
[2026-04-13 18:30:30] [INFO] Backfilled products.service_lookup_item_id by exact name match {"updated_rows":1}
[2026-04-13 18:30:36] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:30:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:30:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:30:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:30:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:30:51] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:30:51] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:30:51] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:32:16] [INFO] Checking activity reminders 
[2026-04-13 18:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:32:17] [INFO] Checking activity reminders 
[2026-04-13 18:32:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:32:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:34:15] [INFO] Checking activity reminders 
[2026-04-13 18:34:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:34:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:34:17] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:34:17] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:34:17] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:34:31] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:34:31] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:34:31] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:34:50] [INFO] Checking activity reminders 
[2026-04-13 18:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:34:53] [INFO] Checking activity reminders 
[2026-04-13 18:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:34:56] [INFO] Checking activity reminders 
[2026-04-13 18:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:35:26] [INFO] Checking activity reminders 
[2026-04-13 18:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:35:37] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["1312412412"]}
[2026-04-13 18:35:37] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["1312412412"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-13 18:35:37] [INFO] Didar write disabled; creating local lead only {"owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","mobile":"1312412412","full_name":"تست ریکاوری"}
[2026-04-13 18:35:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:35:37] [INFO] Notification created {"notification_id":"648","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","type":"lead_assigned","show_popup":true}
[2026-04-13 18:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:35:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:35:56] [INFO] Checking activity reminders 
[2026-04-13 18:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:35:57] [INFO] Activity save request {"post_data":{"contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd0641717d7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شیشسی","activity_duration":"12","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 18:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:35:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-13 18:35:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","database_didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_email":"hanaficar.Marketing@gmail.com","user_name":"حمیدرضا مکرمی","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 18:35:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:35:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"حمیدرضا مکرمی","contact_id":"local_69dd06416e7018.91427898","note_was_empty":true}
[2026-04-13 18:35:57] [WARNING] Pipeline stage change to success blocked: no payments {"deal_id":"local_69dd0641717d7","contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:35:57] [ERROR] Error updating deal pipeline stage after activity {"deal_id":"local_69dd0641717d7","stage":"پرداخت","exception":{"message":"برای ثبت معامله موفق، پرداخت کامل ثبت نشده است","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/ActivityService.php","line":662,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ActivityController.php(108): App\\Services\\ActivityService->saveActivity()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(870): App\\Controllers\\ActivityController->save()\n#2 {main}"}}
[2026-04-13 18:35:57] [ERROR] Error saving activity {"data":{"didar_activity_id":"","contact_didar_id":"local_69dd06416e7018.91427898","deal_didar_id":"local_69dd0641717d7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شیشسی","activity_duration":12,"direction":"outgoing","is_done":1,"due_date":"","reminder_enabled":"0","reminder_offset_minutes":1440,"register_date":"2026-04-13 18:35:57","last_sync":"2026-04-13 18:35:57","requested_services":"","financial_level":null,"asset_estimation":null,"income_estimation":null,"failure_reason":"","failure_other_description":"","city":null,"job_title":null,"job_description":null,"acquaintance_duration":null,"extra_info":null},"exception":{"message":"برای ثبت معامله موفق، پرداخت کامل ثبت نشده است","file":"\/home\/hanafiv1\/cr.hanafi.vip\/app\/Services\/ActivityService.php","line":662,"trace":"#0 \/home\/hanafiv1\/cr.hanafi.vip\/app\/Controllers\/ActivityController.php(108): App\\Services\\ActivityService->saveActivity()\n#1 \/home\/hanafiv1\/cr.hanafi.vip\/public\/index.php(870): App\\Controllers\\ActivityController->save()\n#2 {main}"}}
[2026-04-13 18:36:02] [INFO] Activity save request {"post_data":{"contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd0641717d7","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شیشسی","activity_duration":"12","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:02] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-13 18:36:02] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","database_didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_email":"hanaficar.Marketing@gmail.com","user_name":"حمیدرضا مکرمی","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:02] [INFO] Added lead owner name to activity note {"lead_owner_name":"حمیدرضا مکرمی","contact_id":"local_69dd06416e7018.91427898","note_was_empty":true}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:02] [INFO] Updating virtual stage {"contact_id":"local_69dd06416e7018.91427898","stage_name":"new","force":false}
[2026-04-13 18:36:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69dd06416e7018.91427898","stage_name":"new"}
[2026-04-13 18:36:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:36:02] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dd0641717d7","stage":"تماس پیگیری","status_change":null}
[2026-04-13 18:36:02] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dd065a826565.19298599","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:02] [INFO] Activity saved successfully {"activity_id":"local_activity_69dd065a826565.19298599"}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:02] [INFO] Updating virtual stage {"contact_id":"local_69dd06416e7018.91427898","stage_name":"deal_registered","force":false}
[2026-04-13 18:36:02] [INFO] Virtual stage successfully saved {"contact_id":"local_69dd06416e7018.91427898","stage_name":"deal_registered"}
[2026-04-13 18:36:02] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:36:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:36:26] [INFO] Checking activity reminders 
[2026-04-13 18:36:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:36:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:36:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:36:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:36:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:36:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:37:05] [INFO] Checking activity reminders 
[2026-04-13 18:37:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:37:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:37:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:37:35] [INFO] Checking activity reminders 
[2026-04-13 18:37:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:37:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:38:05] [INFO] Checking activity reminders 
[2026-04-13 18:38:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:38:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:38:53] [INFO] Checking activity reminders 
[2026-04-13 18:38:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:38:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:38:56] [INFO] Checking activity reminders 
[2026-04-13 18:38:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:38:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:38:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:03] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":0,"ordinal":"اول","title":"معامله اول 1312412412"}
[2026-04-13 18:39:26] [INFO] Checking activity reminders 
[2026-04-13 18:39:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:39:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:39:40] [INFO] DealController.save start {"is_new":true,"incoming_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","deal_id":"","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 18:39:40","session_id":"b4a9ebq0g8fkd55vbrejnkt6ej"}
[2026-04-13 18:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","is_new_deal":true}
[2026-04-13 18:39:40] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-13 18:39:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-13 18:39:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-13 18:39:40] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:40] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dd06416e7018.91427898","person_found":true,"primary_phone":"1312412412"}
[2026-04-13 18:39:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1312412412"}
[2026-04-13 18:39:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1312412412","contact_id":"local_69dd06416e7018.91427898","deal_id":"","is_new_deal":true,"incoming_title":"بودجه بندی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-04-13 18:39:40"}
[2026-04-13 18:39:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:40] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":0,"ordinal":"اول","title":"معامله اول 1312412412"}
[2026-04-13 18:39:49] [INFO] DealController.save start {"is_new":true,"incoming_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","deal_id":"","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 18:39:49","session_id":"b4a9ebq0g8fkd55vbrejnkt6ej"}
[2026-04-13 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","is_new_deal":true}
[2026-04-13 18:39:49] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-13 18:39:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-13 18:39:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-13 18:39:49] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:49] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dd06416e7018.91427898","person_found":true,"primary_phone":"1312412412"}
[2026-04-13 18:39:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1312412412"}
[2026-04-13 18:39:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1312412412","contact_id":"local_69dd06416e7018.91427898","deal_id":"","is_new_deal":true,"incoming_title":"بودجه بندی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-04-13 18:39:49"}
[2026-04-13 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:49] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":0,"ordinal":"اول","title":"معامله اول 1312412412"}
[2026-04-13 18:39:49] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69dd06416e7018.91427898","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 18:39:49] [INFO] DealController.save validating permissions {"current_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_id":"local_69dd06416e7018.91427898","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 18:39:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69dd06416e7018.91427898","title":"معامله اول 1312412412 | بودجه بندی","base_title_used":"معامله اول 1312412412","services_text":"بودجه بندی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":7000000,"payment_amount":0,"payments_present":false,"requested_services":["بودجه بندی"],"user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_name":"تست ریکاوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-13 18:39:49","session_data":{"didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","name":"حمیدرضا مکرمی","user_id":"11"}}
[2026-04-13 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:49] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-13 18:39:49] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69dd06416e7018.91427898","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","deal_title":"معامله اول 1312412412 | بودجه بندی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":7000000,"payment_amount":0,"server_time":"2026-04-13 18:39:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/146.0.0.0 Safari\/537.36"}
[2026-04-13 18:39:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:39:56] [INFO] Checking activity reminders 
[2026-04-13 18:39:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:39:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:40:14] [INFO] DealController.save start {"is_new":false,"incoming_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd073d6d2186.70286784","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 18:40:14","session_id":"b4a9ebq0g8fkd55vbrejnkt6ej"}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:14] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"بودجه بندی","contact_id":"local_69dd06416e7018.91427898","is_new_deal":false}
[2026-04-13 18:40:14] [INFO] extractPhoneFromDealTitle called {"input_title":"بودجه بندی"}
[2026-04-13 18:40:14] [INFO] extractPhoneFromDealTitle processing {"title_part":"بودجه بندی"}
[2026-04-13 18:40:14] [INFO] extractPhoneFromDealTitle no match found {"title_part":"بودجه بندی"}
[2026-04-13 18:40:14] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:14] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dd06416e7018.91427898","person_found":true,"primary_phone":"1312412412"}
[2026-04-13 18:40:14] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1312412412"}
[2026-04-13 18:40:14] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1312412412","contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd073d6d2186.70286784","is_new_deal":false,"incoming_title":"بودجه بندی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-04-13 18:40:14"}
[2026-04-13 18:40:14] [INFO] DealController.save existing deal lookup {"deal_id":"local_69dd073d6d2186.70286784","contact_id":"local_69dd06416e7018.91427898","existing_deal_found":true,"existing_contact_id":"local_69dd06416e7018.91427898","existing_title":"معامله اول 1312412412 | بودجه بندی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-04-13 18:40:14"}
[2026-04-13 18:40:14] [INFO] DealController.save validated payments {"deal_id":"local_69dd073d6d2186.70286784","contact_id":"local_69dd06416e7018.91427898","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-13 18:40:14] [INFO] DealController.save validating permissions {"current_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_id":"local_69dd06416e7018.91427898","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 18:40:14] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69dd073d6d2186.70286784","contact_didar_id":"local_69dd06416e7018.91427898","title":"معامله اول 1312412412 | بودجه بندی","base_title_used":"معامله اول 1312412412","services_text":"بودجه بندی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":7000000,"payment_amount":7000000,"payments_present":true,"requested_services":["بودجه بندی"],"user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_name":"تست ریکاوری","existing_deal":"YES","existing_deal_id":"local_69dd073d6d2186.70286784","existing_deal_status":"Pending","server_time":"2026-04-13 18:40:14","session_data":{"didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","name":"حمیدرضا مکرمی","user_id":"11"}}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:14] [INFO] Deal success processed {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","products_count":1}
[2026-04-13 18:40:14] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69dd073d6d2186.70286784","contact_id":"local_69dd06416e7018.91427898","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","deal_title":"معامله اول 1312412412 | بودجه بندی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":7000000,"payment_amount":7000000,"server_time":"2026-04-13 18:40:14","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/146.0.0.0 Safari\/537.36"}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:14] [INFO] Updating virtual stage {"contact_id":"local_69dd06416e7018.91427898","stage_name":"with_purchase","force":true}
[2026-04-13 18:40:14] [INFO] Virtual stage successfully saved {"contact_id":"local_69dd06416e7018.91427898","stage_name":"with_purchase"}
[2026-04-13 18:40:14] [INFO] Moved contact out of kariz after successful deal {"contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd073d6d2186.70286784","target_stage":"with_purchase"}
[2026-04-13 18:40:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:26] [INFO] Checking activity reminders 
[2026-04-13 18:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:40:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:27] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 1312412412"}
[2026-04-13 18:40:39] [INFO] DealController.save start {"is_new":true,"incoming_title":"مربی شخصی","contact_id":"local_69dd06416e7018.91427898","deal_id":"","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 18:40:39","session_id":"b4a9ebq0g8fkd55vbrejnkt6ej"}
[2026-04-13 18:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"مربی شخصی","contact_id":"local_69dd06416e7018.91427898","is_new_deal":true}
[2026-04-13 18:40:39] [INFO] extractPhoneFromDealTitle called {"input_title":"مربی شخصی"}
[2026-04-13 18:40:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"مربی شخصی"}
[2026-04-13 18:40:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"مربی شخصی"}
[2026-04-13 18:40:39] [INFO] getContactPrimaryPhone called {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:39] [INFO] getContactPrimaryPhone result {"contact_id":"local_69dd06416e7018.91427898","person_found":true,"primary_phone":"1312412412"}
[2026-04-13 18:40:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"1312412412"}
[2026-04-13 18:40:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"1312412412","contact_id":"local_69dd06416e7018.91427898","deal_id":"","is_new_deal":true,"incoming_title":"مربی شخصی","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","server_time":"2026-04-13 18:40:39"}
[2026-04-13 18:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:39] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 1312412412"}
[2026-04-13 18:40:39] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_69dd06416e7018.91427898","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-13 18:40:39] [INFO] DealController.save validating permissions {"current_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_id":"local_69dd06416e7018.91427898","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 18:40:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_69dd06416e7018.91427898","title":"معامله دوم 1312412412 | مربی شخصی","base_title_used":"معامله دوم 1312412412","services_text":"مربی شخصی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":2000000000,"payment_amount":0,"payments_present":false,"requested_services":["مربی شخصی"],"user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","contact_name":"تست ریکاوری","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-13 18:40:39","session_data":{"didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","name":"حمیدرضا مکرمی","user_id":"11"}}
[2026-04-13 18:40:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:39] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-13 18:40:39] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_69dd06416e7018.91427898","contact_owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_name":"حمیدرضا مکرمی","deal_title":"معامله دوم 1312412412 | مربی شخصی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":2000000000,"payment_amount":0,"server_time":"2026-04-13 18:40:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/146.0.0.0 Safari\/537.36"}
[2026-04-13 18:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Activity save request {"post_data":{"contact_id":"local_69dd06416e7018.91427898","deal_id":"local_69dd076fd995e2.25120506","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"asdasd","activity_duration":"12","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"1","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":1,"final_is_done":1}
[2026-04-13 18:40:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","database_didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","user_email":"hanaficar.Marketing@gmail.com","user_name":"حمیدرضا مکرمی","ids_match":"yes","found_by":"didar_id"}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"حمیدرضا مکرمی","contact_id":"local_69dd06416e7018.91427898","note_was_empty":true}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Updating virtual stage {"contact_id":"local_69dd06416e7018.91427898","stage_name":"new","force":false}
[2026-04-13 18:40:55] [WARNING] Prevented overwriting special stage with 'new' {"contact_id":"local_69dd06416e7018.91427898","existing_special_stage":"with_purchase","requested_stage":"new"}
[2026-04-13 18:40:55] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:40:55] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dd076fd995e2.25120506","stage":"تماس پیگیری","status_change":null}
[2026-04-13 18:40:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dd077f4140e9.03478828","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69dd077f4140e9.03478828"}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:55] [INFO] Updating virtual stage {"contact_id":"local_69dd06416e7018.91427898","stage_name":"deal_registered","force":false}
[2026-04-13 18:40:55] [INFO] Virtual stage successfully saved {"contact_id":"local_69dd06416e7018.91427898","stage_name":"deal_registered"}
[2026-04-13 18:40:55] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dd06416e7018.91427898"}
[2026-04-13 18:40:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:40:57] [INFO] Checking activity reminders 
[2026-04-13 18:40:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:40:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:41:36] [INFO] Checking activity reminders 
[2026-04-13 18:41:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:41:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:41:38] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 18:41:38] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 18:41:38] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 18:41:38] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 18:41:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:41:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:41:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:42:08] [INFO] Checking activity reminders 
[2026-04-13 18:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:42:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-13 18:42:37] [INFO] Checking activity reminders 
[2026-04-13 18:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:43:07] [INFO] Checking activity reminders 
[2026-04-13 18:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 18:46:38] [INFO] Checking activity reminders 
[2026-04-13 18:46:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 18:46:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:05:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:05:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:05:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:06:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:06:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:06:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:08:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:08:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:08:39] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:11:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:11:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:11:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:14:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:14:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:14:40] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:25:23] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 19:25:23] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:25:23] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:25:23] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:26:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:26:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:26:36] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:05] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-13 19:28:05] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:05] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:05] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_products"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:07] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:11] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:11] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-13 19:28:11] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:11] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:13] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:21] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-13 19:28:21] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-13 19:28:21] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-13 19:28:22] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 19:28:22] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:28:22] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:28:22] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:28:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-13 19:28:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"647","person_id":"11463"}
[2026-04-13 19:29:43] [INFO] Checking activity reminders 
[2026-04-13 19:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:29:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-13 19:30:23] [INFO] Checking activity reminders 
[2026-04-13 19:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:32:22] [INFO] Checking activity reminders 
[2026-04-13 19:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:32:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:32:52] [INFO] Checking activity reminders 
[2026-04-13 19:32:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:32:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:33:22] [INFO] Checking activity reminders 
[2026-04-13 19:33:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:33:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:33:52] [INFO] Checking activity reminders 
[2026-04-13 19:33:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:33:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:34:23] [INFO] Checking activity reminders 
[2026-04-13 19:34:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:34:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:34:53] [INFO] Checking activity reminders 
[2026-04-13 19:34:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:34:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:35:23] [INFO] Checking activity reminders 
[2026-04-13 19:35:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:35:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:35:53] [INFO] Checking activity reminders 
[2026-04-13 19:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:36:23] [INFO] Checking activity reminders 
[2026-04-13 19:36:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:36:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:36:53] [INFO] Checking activity reminders 
[2026-04-13 19:36:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:36:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:37:24] [INFO] Checking activity reminders 
[2026-04-13 19:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:37:54] [INFO] Checking activity reminders 
[2026-04-13 19:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:38:25] [INFO] Checking activity reminders 
[2026-04-13 19:38:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:38:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:38:55] [INFO] Checking activity reminders 
[2026-04-13 19:38:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:38:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:39:25] [INFO] Checking activity reminders 
[2026-04-13 19:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:39:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:39:55] [INFO] Checking activity reminders 
[2026-04-13 19:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:40:25] [INFO] Checking activity reminders 
[2026-04-13 19:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:40:56] [INFO] Checking activity reminders 
[2026-04-13 19:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:40:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9210","deal_id":"local_6949587228e707.04050979","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 19:40:56","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 19:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:40:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9210","is_new_deal":false}
[2026-04-13 19:40:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 19:40:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 19:40:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-13 19:40:56] [INFO] getContactPrimaryPhone called {"contact_id":"9210"}
[2026-04-13 19:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:40:56] [INFO] getContactPrimaryPhone result {"contact_id":"9210","person_found":true,"primary_phone":"9171013730"}
[2026-04-13 19:40:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9171013730"}
[2026-04-13 19:40:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9171013730","contact_id":"9210","deal_id":"local_6949587228e707.04050979","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 19:40:56"}
[2026-04-13 19:40:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_6949587228e707.04050979","contact_id":"9210","existing_deal_found":true,"existing_contact_id":"9210","existing_title":"معامله اول 9171013730 | کانال VIP بدون پشتیبان شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 19:40:56"}
[2026-04-13 19:40:56] [INFO] DealController.save validated payments {"deal_id":"local_6949587228e707.04050979","contact_id":"9210","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-13 19:40:56] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9210","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 19:40:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6949587228e707.04050979","contact_didar_id":"9210","title":"معامله اول 9171013730 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9171013730","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابراهیم تابنده","existing_deal":"YES","existing_deal_id":"local_6949587228e707.04050979","existing_deal_status":"Won","server_time":"2026-04-13 19:40:56","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 19:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:40:56] [INFO] Deal success processed {"contact_id":"9210","person_name":"ابراهیم تابنده","products_count":1}
[2026-04-13 19:40:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6949587228e707.04050979","contact_id":"9210","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9171013730 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-13 19:40:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 19:40:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:40:56] [INFO] Updating virtual stage {"contact_id":"9210","stage_name":"with_purchase","force":true}
[2026-04-13 19:40:56] [INFO] Virtual stage successfully saved {"contact_id":"9210","stage_name":"with_purchase"}
[2026-04-13 19:40:56] [INFO] Moved contact out of kariz after successful deal {"contact_id":"9210","deal_id":"local_6949587228e707.04050979","target_stage":"with_purchase"}
[2026-04-13 19:40:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:41:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:26] [INFO] Checking activity reminders 
[2026-04-13 19:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:41:45] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 19:41:45","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 19:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:45] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20921","is_new_deal":false}
[2026-04-13 19:41:45] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 19:41:45] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 19:41:45] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 19:41:45] [INFO] getContactPrimaryPhone called {"contact_id":"20921"}
[2026-04-13 19:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:45] [INFO] getContactPrimaryPhone result {"contact_id":"20921","person_found":true,"primary_phone":"9126500045"}
[2026-04-13 19:41:45] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9126500045"}
[2026-04-13 19:41:45] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9126500045","contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 19:41:45"}
[2026-04-13 19:41:45] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","existing_deal_found":true,"existing_contact_id":"20921","existing_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 19:41:45"}
[2026-04-13 19:41:45] [INFO] DealController.save validated payments {"deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-13 19:41:45] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20921","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 19:41:45] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d0a249044f46.42652161","contact_didar_id":"20921","title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9126500045","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سبحان کنجانی","existing_deal":"YES","existing_deal_id":"local_69d0a249044f46.42652161","existing_deal_status":"Won","server_time":"2026-04-13 19:41:45","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 19:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:45] [INFO] Deal success processed {"contact_id":"20921","person_name":"سبحان کنجانی","products_count":1}
[2026-04-13 19:41:45] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d0a249044f46.42652161","contact_id":"20921","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9126500045 | کانال VIP با پشتیبانی شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-13 19:41:45","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 19:41:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:45] [INFO] Updating virtual stage {"contact_id":"20921","stage_name":"with_purchase","force":true}
[2026-04-13 19:41:45] [INFO] Virtual stage successfully saved {"contact_id":"20921","stage_name":"with_purchase"}
[2026-04-13 19:41:45] [INFO] Moved contact out of kariz after successful deal {"contact_id":"20921","deal_id":"local_69d0a249044f46.42652161","target_stage":"with_purchase"}
[2026-04-13 19:41:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20921","person_id":"18782"}
[2026-04-13 19:41:56] [INFO] Checking activity reminders 
[2026-04-13 19:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:42:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9210","person_id":"13723"}
[2026-04-13 19:42:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:42:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:42:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:42:26] [INFO] Checking activity reminders 
[2026-04-13 19:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:42:33] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:42:33] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:42:33] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:42:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:42:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:42:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:42:48] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:42:48] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:42:48] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:42:56] [INFO] Checking activity reminders 
[2026-04-13 19:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:43:26] [INFO] Checking activity reminders 
[2026-04-13 19:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:43:56] [INFO] Checking activity reminders 
[2026-04-13 19:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:44:26] [INFO] Checking activity reminders 
[2026-04-13 19:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:59:29] [INFO] Checking activity reminders 
[2026-04-13 19:59:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:59:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:59:33] [INFO] Checking activity reminders 
[2026-04-13 19:59:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 19:59:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 19:59:46] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:59:46] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:59:46] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 19:59:52] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 19:59:52] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 19:59:52] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:00:03] [INFO] Checking activity reminders 
[2026-04-13 20:00:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:00:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:01:14] [INFO] Checking activity reminders 
[2026-04-13 20:01:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:01:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:01:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:01:44] [INFO] Checking activity reminders 
[2026-04-13 20:01:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:01:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:02:14] [INFO] Checking activity reminders 
[2026-04-13 20:02:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:02:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:02:44] [INFO] Checking activity reminders 
[2026-04-13 20:02:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:02:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:03:14] [INFO] Checking activity reminders 
[2026-04-13 20:03:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:03:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:03:44] [INFO] Checking activity reminders 
[2026-04-13 20:03:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:03:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:04:15] [INFO] Checking activity reminders 
[2026-04-13 20:04:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:04:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:04:45] [INFO] Checking activity reminders 
[2026-04-13 20:04:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:04:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:05:15] [INFO] Checking activity reminders 
[2026-04-13 20:05:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:05:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:05:45] [INFO] Checking activity reminders 
[2026-04-13 20:05:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:05:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:06:15] [INFO] Checking activity reminders 
[2026-04-13 20:06:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:06:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:06:45] [INFO] Checking activity reminders 
[2026-04-13 20:06:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:06:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:07:16] [INFO] Checking activity reminders 
[2026-04-13 20:07:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:07:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:07:35] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-13 20:07:35] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:07:35] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:07:35] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:07:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:08:05] [INFO] Checking activity reminders 
[2026-04-13 20:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:08:35] [INFO] Checking activity reminders 
[2026-04-13 20:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:08:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:09:05] [INFO] Checking activity reminders 
[2026-04-13 20:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:09:35] [INFO] Checking activity reminders 
[2026-04-13 20:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:10:05] [INFO] Checking activity reminders 
[2026-04-13 20:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:10:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:10:35] [INFO] Checking activity reminders 
[2026-04-13 20:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:10:47] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 20:10:47","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 20:10:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:10:47] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5405","is_new_deal":false}
[2026-04-13 20:10:47] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:10:47] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:10:47] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:10:47] [INFO] getContactPrimaryPhone called {"contact_id":"5405"}
[2026-04-13 20:10:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:10:47] [INFO] getContactPrimaryPhone result {"contact_id":"5405","person_found":true,"primary_phone":"9120821013"}
[2026-04-13 20:10:47] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120821013"}
[2026-04-13 20:10:47] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120821013","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:10:47"}
[2026-04-13 20:10:47] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca54e8ca0810.10670708","contact_id":"5405","existing_deal_found":true,"existing_contact_id":"5405","existing_title":"معامله دوم 9120821013 | کانال VIP با پشتیبانی شش ماهه، کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:10:47"}
[2026-04-13 20:11:05] [INFO] Checking activity reminders 
[2026-04-13 20:11:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:11:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:11:36] [INFO] Checking activity reminders 
[2026-04-13 20:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:12:03] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 20:12:03","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 20:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:03] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5405","is_new_deal":false}
[2026-04-13 20:12:03] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 20:12:03] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:12:03] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:12:03] [INFO] getContactPrimaryPhone called {"contact_id":"5405"}
[2026-04-13 20:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:03] [INFO] getContactPrimaryPhone result {"contact_id":"5405","person_found":true,"primary_phone":"9120821013"}
[2026-04-13 20:12:03] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120821013"}
[2026-04-13 20:12:03] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120821013","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:12:03"}
[2026-04-13 20:12:03] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca54e8ca0810.10670708","contact_id":"5405","existing_deal_found":true,"existing_contact_id":"5405","existing_title":"معامله دوم 9120821013 | کانال VIP با پشتیبانی شش ماهه، کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:12:03"}
[2026-04-13 20:12:03] [INFO] DealController.save validated payments {"deal_id":"local_69ca54e8ca0810.10670708","contact_id":"5405","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 20:12:03] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"5405","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 20:12:03] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca54e8ca0810.10670708","contact_didar_id":"5405","title":"معامله دوم 9120821013 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9120821013","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":40000000,"payment_amount":40000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اسکندرزاده","existing_deal":"YES","existing_deal_id":"local_69ca54e8ca0810.10670708","existing_deal_status":"Pending","server_time":"2026-04-13 20:12:03","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 20:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:03] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca54e8ca0810.10670708","contact_id":"5405","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9120821013 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":40000000,"payment_amount":40000000,"server_time":"2026-04-13 20:12:03","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 20:12:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:09] [INFO] Checking activity reminders 
[2026-04-13 20:12:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:12:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:12:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 20:12:33","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 20:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"5405","is_new_deal":false}
[2026-04-13 20:12:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:12:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:12:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-13 20:12:33] [INFO] getContactPrimaryPhone called {"contact_id":"5405"}
[2026-04-13 20:12:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5405","person_id":"10900"}
[2026-04-13 20:12:33] [INFO] getContactPrimaryPhone result {"contact_id":"5405","person_found":true,"primary_phone":"9120821013"}
[2026-04-13 20:12:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120821013"}
[2026-04-13 20:12:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120821013","contact_id":"5405","deal_id":"local_69ca54e8ca0810.10670708","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:12:33"}
[2026-04-13 20:12:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca54e8ca0810.10670708","contact_id":"5405","existing_deal_found":true,"existing_contact_id":"5405","existing_title":"معامله دوم 9120821013 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:12:33"}
[2026-04-13 20:12:39] [INFO] Checking activity reminders 
[2026-04-13 20:12:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:12:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:13:10] [INFO] Checking activity reminders 
[2026-04-13 20:13:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:13:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:13:40] [INFO] Checking activity reminders 
[2026-04-13 20:13:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:13:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:13:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-13 20:14:10] [INFO] Checking activity reminders 
[2026-04-13 20:14:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:14:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:14:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-13 20:14:40] [INFO] Checking activity reminders 
[2026-04-13 20:14:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:14:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:15:10] [INFO] Checking activity reminders 
[2026-04-13 20:15:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:15:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:15:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-13 20:15:40] [INFO] Checking activity reminders 
[2026-04-13 20:15:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:15:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:16:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:16:11] [INFO] Checking activity reminders 
[2026-04-13 20:16:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:16:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:16:41] [INFO] Checking activity reminders 
[2026-04-13 20:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:17:11] [INFO] Checking activity reminders 
[2026-04-13 20:17:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:17:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:17:41] [INFO] Checking activity reminders 
[2026-04-13 20:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:18:11] [INFO] Checking activity reminders 
[2026-04-13 20:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:18:41] [INFO] Checking activity reminders 
[2026-04-13 20:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:19:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2130","person_id":"3229"}
[2026-04-13 20:19:12] [INFO] Checking activity reminders 
[2026-04-13 20:19:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:19:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:19:42] [INFO] Checking activity reminders 
[2026-04-13 20:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:20:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9099","person_id":"12092"}
[2026-04-13 20:20:12] [INFO] Checking activity reminders 
[2026-04-13 20:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:20:42] [INFO] Checking activity reminders 
[2026-04-13 20:20:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:20:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:21:12] [INFO] Checking activity reminders 
[2026-04-13 20:21:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:21:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:21:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8044","person_id":"14194"}
[2026-04-13 20:21:43] [INFO] Checking activity reminders 
[2026-04-13 20:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:22:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5056","person_id":"10776"}
[2026-04-13 20:22:13] [INFO] Checking activity reminders 
[2026-04-13 20:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:22:43] [INFO] Checking activity reminders 
[2026-04-13 20:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:23:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-04-13 20:23:13] [INFO] Checking activity reminders 
[2026-04-13 20:23:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:23:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:23:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-04-13 20:23:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"873","person_id":"6680"}
[2026-04-13 20:23:49] [INFO] Checking activity reminders 
[2026-04-13 20:23:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:23:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:24:20] [INFO] Checking activity reminders 
[2026-04-13 20:24:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:24:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:24:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13827","person_id":"5385"}
[2026-04-13 20:24:50] [INFO] Checking activity reminders 
[2026-04-13 20:24:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:24:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:25:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21039","person_id":"20648"}
[2026-04-13 20:25:20] [INFO] Checking activity reminders 
[2026-04-13 20:25:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:25:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:25:50] [INFO] Checking activity reminders 
[2026-04-13 20:25:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:25:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:26:21] [INFO] Checking activity reminders 
[2026-04-13 20:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:26:51] [INFO] Checking activity reminders 
[2026-04-13 20:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5059","person_id":"5599"}
[2026-04-13 20:27:21] [INFO] Checking activity reminders 
[2026-04-13 20:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:27:51] [INFO] Checking activity reminders 
[2026-04-13 20:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:27:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2956","person_id":"14298"}
[2026-04-13 20:28:21] [INFO] Checking activity reminders 
[2026-04-13 20:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:28:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15064","person_id":"5170"}
[2026-04-13 20:28:51] [INFO] Checking activity reminders 
[2026-04-13 20:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:29:21] [INFO] Checking activity reminders 
[2026-04-13 20:29:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:29:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:29:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 20:29:52] [INFO] Checking activity reminders 
[2026-04-13 20:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:30:22] [INFO] Checking activity reminders 
[2026-04-13 20:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:30:52] [INFO] Checking activity reminders 
[2026-04-13 20:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:31:29] [INFO] Checking activity reminders 
[2026-04-13 20:31:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:31:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 20:34:51] [INFO] Checking activity reminders 
[2026-04-13 20:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:35:21] [INFO] Checking activity reminders 
[2026-04-13 20:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:35:51] [INFO] Checking activity reminders 
[2026-04-13 20:35:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:35:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:36:21] [INFO] Checking activity reminders 
[2026-04-13 20:36:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:36:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:36:51] [INFO] Checking activity reminders 
[2026-04-13 20:36:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:36:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:37:22] [INFO] Checking activity reminders 
[2026-04-13 20:37:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:37:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:37:52] [INFO] Checking activity reminders 
[2026-04-13 20:37:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:37:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:38:22] [INFO] Checking activity reminders 
[2026-04-13 20:38:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:38:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:38:52] [INFO] Checking activity reminders 
[2026-04-13 20:38:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:38:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:39:16] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:39:16] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:39:16] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:39:23] [INFO] Checking activity reminders 
[2026-04-13 20:39:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:39:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:39:42] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:39:42] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:39:42] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:39:53] [INFO] Checking activity reminders 
[2026-04-13 20:39:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:39:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:40:04] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:40:04] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:40:04] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:40:35] [INFO] Checking activity reminders 
[2026-04-13 20:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:41:05] [INFO] Checking activity reminders 
[2026-04-13 20:41:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:41:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:43:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:29] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 20:43:29","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 20:43:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:29] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7841","is_new_deal":false}
[2026-04-13 20:43:29] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:29] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:29] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:29] [INFO] getContactPrimaryPhone called {"contact_id":"7841"}
[2026-04-13 20:43:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:29] [INFO] getContactPrimaryPhone result {"contact_id":"7841","person_found":true,"primary_phone":"9144233512"}
[2026-04-13 20:43:29] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144233512"}
[2026-04-13 20:43:29] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144233512","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:43:29"}
[2026-04-13 20:43:29] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","existing_deal_found":true,"existing_contact_id":"7841","existing_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:43:29"}
[2026-04-13 20:43:29] [INFO] DealController.save validated payments {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 20:43:29] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7841","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 20:43:29] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1ac30de8a70.84324584","contact_didar_id":"7841","title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144233512","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"موسوی موسوی","existing_deal":"YES","existing_deal_id":"local_69b1ac30de8a70.84324584","existing_deal_status":"Pending","server_time":"2026-04-13 20:43:29","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 20:43:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:29] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-04-13 20:43:29","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 20:43:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:49] [INFO] Checking activity reminders 
[2026-04-13 20:43:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:43:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:43:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-13 20:43:51","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-13 20:43:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7841","is_new_deal":false}
[2026-04-13 20:43:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-13 20:43:51] [INFO] getContactPrimaryPhone called {"contact_id":"7841"}
[2026-04-13 20:43:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:51] [INFO] getContactPrimaryPhone result {"contact_id":"7841","person_found":true,"primary_phone":"9144233512"}
[2026-04-13 20:43:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144233512"}
[2026-04-13 20:43:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144233512","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:43:51"}
[2026-04-13 20:43:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","existing_deal_found":true,"existing_contact_id":"7841","existing_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-13 20:43:51"}
[2026-04-13 20:43:51] [INFO] DealController.save validated payments {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-13 20:43:51] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7841","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-13 20:43:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1ac30de8a70.84324584","contact_didar_id":"7841","title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9144233512","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"موسوی موسوی","existing_deal":"YES","existing_deal_id":"local_69b1ac30de8a70.84324584","existing_deal_status":"Pending","server_time":"2026-04-13 20:43:51","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-13 20:43:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":25000000,"server_time":"2026-04-13 20:43:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-13 20:43:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-13 20:43:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:43:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:43:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:44:03] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:44:03] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:44:03] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:44:19] [INFO] Checking activity reminders 
[2026-04-13 20:44:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:44:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:47:24] [INFO] Checking activity reminders 
[2026-04-13 20:47:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:47:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:47:54] [INFO] Checking activity reminders 
[2026-04-13 20:47:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:47:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:48:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-13 20:48:24] [INFO] Checking activity reminders 
[2026-04-13 20:48:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:48:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:48:54] [INFO] Checking activity reminders 
[2026-04-13 20:48:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:48:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:49:25] [INFO] Checking activity reminders 
[2026-04-13 20:49:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:49:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:49:55] [INFO] Checking activity reminders 
[2026-04-13 20:49:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:49:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:53:49] [INFO] Checking activity reminders 
[2026-04-13 20:53:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:53:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:55:13] [INFO] Checking activity reminders 
[2026-04-13 20:55:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:55:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:55:43] [INFO] Checking activity reminders 
[2026-04-13 20:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:55:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-13 20:55:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-13 20:55:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-13 20:56:13] [INFO] Checking activity reminders 
[2026-04-13 20:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:56:43] [INFO] Checking activity reminders 
[2026-04-13 20:56:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:56:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:57:13] [INFO] Checking activity reminders 
[2026-04-13 20:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:57:44] [INFO] Checking activity reminders 
[2026-04-13 20:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 20:58:14] [INFO] Checking activity reminders 
[2026-04-13 20:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 20:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-13 21:00:13] [INFO] Checking activity reminders 
[2026-04-13 21:00:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-13 21:00:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:38:52] [WARNING] Auth check failed - not authenticated {"session_id":"9h0pkrbatkht88kjt7ri8su2m4","session_keys":[],"action":"log_client_event"}
[2026-04-14 12:38:52] [INFO] Master password used for login {"user_id":"11","identifier":"حمیدرضا مکرمی","role":"admin"}
[2026-04-14 12:38:52] [INFO] User logged in {"user_id":"11","email":"hanaficar.Marketing@gmail.com","role":"admin","via_master":true}
[2026-04-14 12:38:53] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-14 12:38:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 12:38:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 12:38:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 12:38:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 12:38:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 12:38:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 12:39:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 12:39:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 12:39:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 12:39:23] [INFO] Checking activity reminders 
[2026-04-14 12:39:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:39:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:39:53] [INFO] Checking activity reminders 
[2026-04-14 12:39:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:39:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:40:24] [INFO] Checking activity reminders 
[2026-04-14 12:40:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:40:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:40:54] [INFO] Checking activity reminders 
[2026-04-14 12:40:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:40:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:41:24] [INFO] Checking activity reminders 
[2026-04-14 12:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:41:54] [INFO] Checking activity reminders 
[2026-04-14 12:41:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:41:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:42:25] [INFO] Checking activity reminders 
[2026-04-14 12:42:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:42:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:42:55] [INFO] Checking activity reminders 
[2026-04-14 12:42:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:42:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:43:25] [INFO] Checking activity reminders 
[2026-04-14 12:43:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:43:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:43:55] [INFO] Checking activity reminders 
[2026-04-14 12:43:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:43:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:44:13] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 12:44:13] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 12:44:13] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 12:44:26] [INFO] Checking activity reminders 
[2026-04-14 12:44:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:44:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:44:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc8794ca28e4.79401978","person_id":"22140"}
[2026-04-14 12:44:56] [INFO] Checking activity reminders 
[2026-04-14 12:44:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:44:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:45:26] [INFO] Checking activity reminders 
[2026-04-14 12:45:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:45:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:45:54] [INFO] Checking activity reminders 
[2026-04-14 12:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:46:06] [INFO] Notification created {"notification_id":"649","user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","type":"test","show_popup":true}
[2026-04-14 12:46:24] [INFO] Checking activity reminders 
[2026-04-14 12:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:46:29] [INFO] Checking activity reminders 
[2026-04-14 12:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:46:59] [INFO] Checking activity reminders 
[2026-04-14 12:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:47:29] [INFO] Checking activity reminders 
[2026-04-14 12:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:47:35] [INFO] Checking activity reminders 
[2026-04-14 12:47:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:47:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:47:43] [INFO] Checking activity reminders 
[2026-04-14 12:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:47:49] [INFO] Checking activity reminders 
[2026-04-14 12:47:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:47:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:48:08] [INFO] Checking activity reminders 
[2026-04-14 12:48:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:48:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 12:48:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 12:48:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 12:48:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 12:48:49] [INFO] Checking activity reminders 
[2026-04-14 12:48:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 12:48:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 19:40:26] [WARNING] Auth check failed - not authenticated {"session_id":"tmd5rcd045b3ru7dkv5u8ta1aa","session_keys":[],"action":"log_client_event"}
[2026-04-14 19:40:26] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-14 19:40:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-14 19:40:51] [INFO] Checking activity reminders 
[2026-04-14 19:40:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 19:40:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 19:41:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-14 20:45:35] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 20:45:36] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-14 20:45:36] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-14 20:45:37] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-14 20:45:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 20:45:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 20:45:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 20:45:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-14 20:45:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-14 20:45:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-14 20:45:55] [INFO] generateDealTitle result {"contact_id":"local_69dd06416e7018.91427898","person_name":"تست ریکاوری","mobile":"1312412412","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 1312412412"}
[2026-04-14 20:45:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-14 20:46:50] [INFO] Checking activity reminders 
[2026-04-14 20:46:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 20:46:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 21:41:28] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:41:28] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-14 21:41:28] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:41:51] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:41:51] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-14 21:41:51] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:15] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-14 21:56:15] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:15] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:15] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:15] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:16] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"get_person_profile"}
[2026-04-14 21:56:16] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:17] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:23] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-14 21:56:23] [INFO] Master password used for login {"user_id":"19","identifier":"محمدحسین حنفی","role":"admin"}
[2026-04-14 21:56:23] [INFO] User logged in {"user_id":"19","email":"hanaficar.HR@gmail.com","role":"admin","via_master":true}
[2026-04-14 21:56:26] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-14 21:56:26] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-14 21:56:26] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-14 21:56:26] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-14 21:56:57] [INFO] Checking activity reminders 
[2026-04-14 21:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 21:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 21:57:30] [INFO] Checking activity reminders 
[2026-04-14 21:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 21:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 21:58:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-14 21:58:26] [INFO] Checking activity reminders 
[2026-04-14 21:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 21:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 21:58:38] [INFO] Notification created {"notification_id":"650","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:42] [INFO] Notification created {"notification_id":"651","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:46] [INFO] Notification created {"notification_id":"652","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:49] [INFO] Notification created {"notification_id":"653","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:51] [INFO] Notification created {"notification_id":"654","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:53] [INFO] Notification created {"notification_id":"655","user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","type":"test","show_popup":true}
[2026-04-14 21:58:57] [INFO] Checking activity reminders 
[2026-04-14 21:58:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-14 21:58:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-14 21:59:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dd06416e7018.91427898","person_id":"22153"}
[2026-04-15 00:06:53] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 00:06:53] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-15 00:06:53] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 00:22:27] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 00:22:27] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-15 00:22:27] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 00:23:07] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 00:23:07] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"check_reminders"}
[2026-04-15 00:23:07] [WARNING] Auth check failed - not authenticated {"session_id":"7bgrb7alfh8ji5vbpvfi4258nj","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:12:04] [WARNING] Auth check failed - not authenticated {"session_id":"2d1mtss8lu84grj14pbj18cj11","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:12:04] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-15 10:12:04] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:12:09] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-15 10:12:10] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:12:40] [INFO] Checking activity reminders 
[2026-04-15 10:12:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:12:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:15:08] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:15:09] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-15 10:15:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:15:39] [INFO] Checking activity reminders 
[2026-04-15 10:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:16:09] [INFO] Checking activity reminders 
[2026-04-15 10:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:16:39] [INFO] Checking activity reminders 
[2026-04-15 10:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:17:09] [INFO] Checking activity reminders 
[2026-04-15 10:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:17:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:17:39] [INFO] Checking activity reminders 
[2026-04-15 10:17:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:17:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:17:48] [INFO] Activity save request {"post_data":{"contact_id":"11237","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال 1200 نقد طلا پله ای بخره \/ پیشنهاد ماشینم دادم گفت جا ندارم 206\/207","activity_duration":"20","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 10:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:17:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 10:17:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 10:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:17:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11237","note_was_empty":true}
[2026-04-15 10:17:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"11237","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 10:17:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df34947bd8c6.10531985","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 10:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:17:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69df34947bd8c6.10531985"}
[2026-04-15 10:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:17:48] [INFO] Updating virtual stage {"contact_id":"11237","stage_name":"deal_registered","force":false}
[2026-04-15 10:17:48] [INFO] Virtual stage successfully saved {"contact_id":"11237","stage_name":"deal_registered"}
[2026-04-15 10:17:48] [INFO] Virtual stage updated after activity save {"contact_id":"11237"}
[2026-04-15 10:17:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11237","person_id":"5175"}
[2026-04-15 10:18:09] [INFO] Checking activity reminders 
[2026-04-15 10:18:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:18:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:18:19] [INFO] Checking activity reminders 
[2026-04-15 10:18:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:18:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:18:21] [INFO] Checking activity reminders 
[2026-04-15 10:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:18:24] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:18:54] [INFO] Checking activity reminders 
[2026-04-15 10:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:19:11] [INFO] Checking activity reminders 
[2026-04-15 10:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:19:13] [INFO] Checking activity reminders 
[2026-04-15 10:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:19:26] [INFO] Checking activity reminders 
[2026-04-15 10:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:19:42] [INFO] Checking activity reminders 
[2026-04-15 10:19:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:19:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:19:56] [INFO] Checking activity reminders 
[2026-04-15 10:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:20:12] [INFO] Checking activity reminders 
[2026-04-15 10:20:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:20:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:20:26] [INFO] Checking activity reminders 
[2026-04-15 10:20:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:20:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:20:56] [INFO] Checking activity reminders 
[2026-04-15 10:20:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:20:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:21:26] [INFO] Checking activity reminders 
[2026-04-15 10:21:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:21:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:21:56] [INFO] Checking activity reminders 
[2026-04-15 10:21:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:21:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:22:18] [INFO] Checking activity reminders 
[2026-04-15 10:22:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:22:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:22:26] [INFO] Checking activity reminders 
[2026-04-15 10:22:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:22:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:22:56] [INFO] Checking activity reminders 
[2026-04-15 10:22:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:22:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:23:26] [INFO] Checking activity reminders 
[2026-04-15 10:23:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:23:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:23:28] [INFO] Checking activity reminders 
[2026-04-15 10:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:23:29] [INFO] Checking activity reminders 
[2026-04-15 10:23:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:23:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:23:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 10:23:59] [INFO] Checking activity reminders 
[2026-04-15 10:23:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:23:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:24:29] [INFO] Checking activity reminders 
[2026-04-15 10:24:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:24:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:24:59] [INFO] Checking activity reminders 
[2026-04-15 10:24:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:24:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:25:11] [INFO] Checking activity reminders 
[2026-04-15 10:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:25:29] [INFO] Checking activity reminders 
[2026-04-15 10:25:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:25:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:25:41] [INFO] Checking activity reminders 
[2026-04-15 10:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:25:59] [INFO] Checking activity reminders 
[2026-04-15 10:25:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:25:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:26:11] [INFO] Checking activity reminders 
[2026-04-15 10:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:26:29] [INFO] Checking activity reminders 
[2026-04-15 10:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:26:42] [INFO] Checking activity reminders 
[2026-04-15 10:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:27:00] [INFO] Checking activity reminders 
[2026-04-15 10:27:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:27:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:27:12] [INFO] Checking activity reminders 
[2026-04-15 10:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:27:30] [INFO] Checking activity reminders 
[2026-04-15 10:27:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:27:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:27:56] [INFO] Checking activity reminders 
[2026-04-15 10:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:28:00] [INFO] Checking activity reminders 
[2026-04-15 10:28:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:28:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:28:26] [INFO] Checking activity reminders 
[2026-04-15 10:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:28:30] [INFO] Checking activity reminders 
[2026-04-15 10:28:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:28:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:28:56] [INFO] Checking activity reminders 
[2026-04-15 10:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:29:00] [INFO] Checking activity reminders 
[2026-04-15 10:29:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:29:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:29:26] [INFO] Checking activity reminders 
[2026-04-15 10:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:29:30] [INFO] Checking activity reminders 
[2026-04-15 10:29:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:29:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:29:57] [INFO] Checking activity reminders 
[2026-04-15 10:29:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:29:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:30:00] [INFO] Checking activity reminders 
[2026-04-15 10:30:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:30:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:30:13] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:30:30] [INFO] Checking activity reminders 
[2026-04-15 10:30:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:30:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:30:43] [INFO] Checking activity reminders 
[2026-04-15 10:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:00] [INFO] Checking activity reminders 
[2026-04-15 10:31:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:31:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:31:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 10:31:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:31:13] [INFO] Checking activity reminders 
[2026-04-15 10:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:19] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 10:31:20] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 10:31:20] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 10:31:20] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 10:31:20] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 10:31:30] [INFO] Checking activity reminders 
[2026-04-15 10:31:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:31:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:31:43] [INFO] Checking activity reminders 
[2026-04-15 10:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:50] [INFO] Checking activity reminders 
[2026-04-15 10:31:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:31:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:31:56] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:32:00] [INFO] Checking activity reminders 
[2026-04-15 10:32:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:32:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:32:21] [INFO] Checking activity reminders 
[2026-04-15 10:32:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:32:26] [INFO] Checking activity reminders 
[2026-04-15 10:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:32:31] [INFO] Checking activity reminders 
[2026-04-15 10:32:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:32:51] [INFO] Checking activity reminders 
[2026-04-15 10:32:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:32:56] [INFO] Checking activity reminders 
[2026-04-15 10:32:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:32:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:01] [INFO] Checking activity reminders 
[2026-04-15 10:33:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:33:21] [INFO] Checking activity reminders 
[2026-04-15 10:33:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:31] [INFO] Checking activity reminders 
[2026-04-15 10:33:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:32] [INFO] Checking activity reminders 
[2026-04-15 10:33:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:44] [INFO] Checking activity reminders 
[2026-04-15 10:33:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:33:51] [INFO] Checking activity reminders 
[2026-04-15 10:33:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:33:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:02] [INFO] Checking activity reminders 
[2026-04-15 10:34:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:14] [INFO] Checking activity reminders 
[2026-04-15 10:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:21] [INFO] Checking activity reminders 
[2026-04-15 10:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:32] [INFO] Checking activity reminders 
[2026-04-15 10:34:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:44] [INFO] Checking activity reminders 
[2026-04-15 10:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:34:51] [INFO] Checking activity reminders 
[2026-04-15 10:34:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:34:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:14] [INFO] Checking activity reminders 
[2026-04-15 10:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:21] [INFO] Checking activity reminders 
[2026-04-15 10:35:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:35:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:34] [INFO] Checking activity reminders 
[2026-04-15 10:35:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:35:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:44] [INFO] Checking activity reminders 
[2026-04-15 10:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:52] [INFO] Checking activity reminders 
[2026-04-15 10:35:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:35:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:35:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:36:04] [INFO] Checking activity reminders 
[2026-04-15 10:36:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:36:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:36:07] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:36:14] [INFO] Checking activity reminders 
[2026-04-15 10:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:36:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:36:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:36:37] [INFO] Checking activity reminders 
[2026-04-15 10:36:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:36:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:36:44] [INFO] Checking activity reminders 
[2026-04-15 10:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:37:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:37:08] [INFO] Checking activity reminders 
[2026-04-15 10:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:37:14] [INFO] Checking activity reminders 
[2026-04-15 10:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:37:38] [INFO] Checking activity reminders 
[2026-04-15 10:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:37:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:37:44] [INFO] Checking activity reminders 
[2026-04-15 10:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:38:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:38:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:38:14] [INFO] Checking activity reminders 
[2026-04-15 10:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:38:14] [INFO] Checking activity reminders 
[2026-04-15 10:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:38:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:38:44] [INFO] Checking activity reminders 
[2026-04-15 10:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:38:44] [INFO] Checking activity reminders 
[2026-04-15 10:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:38:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11224","person_id":"10334"}
[2026-04-15 10:39:14] [INFO] Checking activity reminders 
[2026-04-15 10:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:39:14] [INFO] Checking activity reminders 
[2026-04-15 10:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:39:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:39:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:39:27] [INFO] generateDealTitle result {"contact_id":"14327","person_name":"روح الهی","mobile":"9175230877","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175230877"}
[2026-04-15 10:39:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:39:44] [INFO] Checking activity reminders 
[2026-04-15 10:39:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:39:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:39:45] [INFO] Checking activity reminders 
[2026-04-15 10:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:40:14] [INFO] Checking activity reminders 
[2026-04-15 10:40:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:40:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:40:15] [INFO] Checking activity reminders 
[2026-04-15 10:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:40:45] [INFO] Checking activity reminders 
[2026-04-15 10:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:40:45] [INFO] Checking activity reminders 
[2026-04-15 10:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:40:52] [INFO] Activity save request {"post_data":{"contact_id":"14327","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دانشپذیر هوش کارشناسی \/ 3تا ماشین معامله کرده با سودش رو گرم 10 ت طلا خریده الان 1500 داره \r\n1سودش هست \/ کانال 79ت ارسال ش کارت امروز واریز ","activity_duration":"20","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 10:40:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:40:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 10:40:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 10:40:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:40:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14327","note_was_empty":true}
[2026-04-15 10:40:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"14327","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 10:40:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df39fc4c0eb3.96410742","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 10:40:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:40:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69df39fc4c0eb3.96410742"}
[2026-04-15 10:40:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:40:52] [INFO] Updating virtual stage {"contact_id":"14327","stage_name":"deal_registered","force":false}
[2026-04-15 10:40:52] [INFO] Virtual stage successfully saved {"contact_id":"14327","stage_name":"deal_registered"}
[2026-04-15 10:40:52] [INFO] Virtual stage updated after activity save {"contact_id":"14327"}
[2026-04-15 10:40:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 10:41:15] [INFO] Checking activity reminders 
[2026-04-15 10:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:41:15] [INFO] Checking activity reminders 
[2026-04-15 10:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:41:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 10:41:45] [INFO] Checking activity reminders 
[2026-04-15 10:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:41:58] [INFO] Checking activity reminders 
[2026-04-15 10:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:42:15] [INFO] Checking activity reminders 
[2026-04-15 10:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:42:28] [INFO] Checking activity reminders 
[2026-04-15 10:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:42:45] [INFO] Checking activity reminders 
[2026-04-15 10:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:42:58] [INFO] Checking activity reminders 
[2026-04-15 10:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:43:15] [INFO] Checking activity reminders 
[2026-04-15 10:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:43:28] [INFO] Checking activity reminders 
[2026-04-15 10:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:43:50] [INFO] Checking activity reminders 
[2026-04-15 10:43:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:43:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:43:58] [INFO] Checking activity reminders 
[2026-04-15 10:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:44:20] [INFO] Checking activity reminders 
[2026-04-15 10:44:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:44:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:44:29] [INFO] Checking activity reminders 
[2026-04-15 10:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:44:50] [INFO] Checking activity reminders 
[2026-04-15 10:44:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:44:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:44:59] [INFO] Checking activity reminders 
[2026-04-15 10:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:45:20] [INFO] Checking activity reminders 
[2026-04-15 10:45:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:45:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:45:29] [INFO] Checking activity reminders 
[2026-04-15 10:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:45:59] [INFO] Checking activity reminders 
[2026-04-15 10:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:46:29] [INFO] Checking activity reminders 
[2026-04-15 10:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:46:59] [INFO] Checking activity reminders 
[2026-04-15 10:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:47:29] [INFO] Checking activity reminders 
[2026-04-15 10:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:47:39] [INFO] Checking activity reminders 
[2026-04-15 10:47:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:47:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:47:41] [INFO] Checking activity reminders 
[2026-04-15 10:47:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:47:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:47:43] [INFO] Checking activity reminders 
[2026-04-15 10:47:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:47:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:48:11] [INFO] Checking activity reminders 
[2026-04-15 10:48:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:48:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:48:13] [INFO] Checking activity reminders 
[2026-04-15 10:48:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:48:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:48:41] [INFO] Checking activity reminders 
[2026-04-15 10:48:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:48:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:48:43] [INFO] Checking activity reminders 
[2026-04-15 10:48:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:48:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:48:46] [INFO] Activity save request {"post_data":{"contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"فعلا از عضویت در کانال منصرف شده \r\nاگر خواست خودش مجدد میاد \r\n","activity_duration":"3","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:48:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 10:48:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:48:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21144","note_was_empty":true}
[2026-04-15 10:48:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"21144","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:48:46] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-04-15 10:48:46] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-04-15 10:48:46] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-04-15 10:48:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbad9deb0b36.57294370","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 10:48:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df3bd636b412.99638442","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:48:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69df3bd636b412.99638442"}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:48:46] [INFO] Updating virtual stage {"contact_id":"21144","stage_name":"deal_registered","force":false}
[2026-04-15 10:48:46] [INFO] Virtual stage successfully saved {"contact_id":"21144","stage_name":"deal_registered"}
[2026-04-15 10:48:46] [INFO] Virtual stage updated after activity save {"contact_id":"21144"}
[2026-04-15 10:48:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:49:11] [INFO] Checking activity reminders 
[2026-04-15 10:49:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:49:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:49:14] [INFO] Checking activity reminders 
[2026-04-15 10:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:49:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 10:49:26","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 10:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:49:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21144","is_new_deal":false}
[2026-04-15 10:49:26] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 10:49:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 10:49:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 10:49:26] [INFO] getContactPrimaryPhone called {"contact_id":"21144"}
[2026-04-15 10:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:49:26] [INFO] getContactPrimaryPhone result {"contact_id":"21144","person_found":true,"primary_phone":"9024379978"}
[2026-04-15 10:49:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9024379978"}
[2026-04-15 10:49:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9024379978","contact_id":"21144","deal_id":"local_69bbad9deb0b36.57294370","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 10:49:26"}
[2026-04-15 10:49:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","existing_deal_found":true,"existing_contact_id":"21144","existing_title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 10:49:26"}
[2026-04-15 10:49:26] [INFO] DealController.save validated payments {"deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","payments_count":0,"status":"lost","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-15 10:49:26] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21144","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 10:49:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69bbad9deb0b36.57294370","contact_didar_id":"21144","title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9024379978","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"lost","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مقتدر مقتدر","existing_deal":"YES","existing_deal_id":"local_69bbad9deb0b36.57294370","existing_deal_status":"Pending","server_time":"2026-04-15 10:49:26","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 10:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:49:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69bbad9deb0b36.57294370","contact_id":"21144","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9024379978 | کانال VIP با پشتیبانی شش ماهه","deal_status":"lost","pipeline_stage":"ارسال لینک پرداخت","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-15 10:49:26","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 10:49:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21144","person_id":"13628"}
[2026-04-15 10:49:41] [INFO] Checking activity reminders 
[2026-04-15 10:49:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:49:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:49:44] [INFO] Checking activity reminders 
[2026-04-15 10:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:50:11] [INFO] Checking activity reminders 
[2026-04-15 10:50:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:50:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:50:14] [INFO] Checking activity reminders 
[2026-04-15 10:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:50:41] [INFO] Checking activity reminders 
[2026-04-15 10:50:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:50:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:50:44] [INFO] Checking activity reminders 
[2026-04-15 10:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:51:11] [INFO] Checking activity reminders 
[2026-04-15 10:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:51:14] [INFO] Checking activity reminders 
[2026-04-15 10:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:51:41] [INFO] Checking activity reminders 
[2026-04-15 10:51:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:51:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:51:44] [INFO] Checking activity reminders 
[2026-04-15 10:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:52:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:52:11] [INFO] Checking activity reminders 
[2026-04-15 10:52:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:52:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:52:14] [INFO] Checking activity reminders 
[2026-04-15 10:52:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:52:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:52:44] [INFO] Checking activity reminders 
[2026-04-15 10:52:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:52:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:52:46] [INFO] Activity save request {"post_data":{"contact_id":"876","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\n","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 10:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:52:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 10:52:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 10:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:52:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"876","note_was_empty":true}
[2026-04-15 10:52:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"876","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 10:52:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df3cc64134f0.98332484","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 10:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:52:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69df3cc64134f0.98332484"}
[2026-04-15 10:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:52:46] [INFO] Updating virtual stage {"contact_id":"876","stage_name":"deal_registered","force":false}
[2026-04-15 10:52:46] [INFO] Virtual stage successfully saved {"contact_id":"876","stage_name":"deal_registered"}
[2026-04-15 10:52:46] [INFO] Virtual stage updated after activity save {"contact_id":"876"}
[2026-04-15 10:52:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"876","person_id":"1485"}
[2026-04-15 10:53:04] [INFO] Checking activity reminders 
[2026-04-15 10:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:53:34] [INFO] Checking activity reminders 
[2026-04-15 10:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:54:04] [INFO] Checking activity reminders 
[2026-04-15 10:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:54:34] [INFO] Checking activity reminders 
[2026-04-15 10:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:55:04] [INFO] Checking activity reminders 
[2026-04-15 10:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:55:34] [INFO] Checking activity reminders 
[2026-04-15 10:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:56:04] [INFO] Checking activity reminders 
[2026-04-15 10:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:56:34] [INFO] Checking activity reminders 
[2026-04-15 10:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:57:04] [INFO] Checking activity reminders 
[2026-04-15 10:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:57:34] [INFO] Checking activity reminders 
[2026-04-15 10:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:58:05] [INFO] Checking activity reminders 
[2026-04-15 10:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:58:35] [INFO] Checking activity reminders 
[2026-04-15 10:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:59:05] [INFO] Checking activity reminders 
[2026-04-15 10:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 10:59:35] [INFO] Checking activity reminders 
[2026-04-15 10:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 10:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:00:05] [INFO] Checking activity reminders 
[2026-04-15 11:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:00:36] [INFO] Checking activity reminders 
[2026-04-15 11:00:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:00:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:01:06] [INFO] Checking activity reminders 
[2026-04-15 11:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:01:36] [INFO] Checking activity reminders 
[2026-04-15 11:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:02:06] [INFO] Checking activity reminders 
[2026-04-15 11:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:02:36] [INFO] Checking activity reminders 
[2026-04-15 11:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:03:06] [INFO] Checking activity reminders 
[2026-04-15 11:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:03:36] [INFO] Checking activity reminders 
[2026-04-15 11:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:04:06] [INFO] Checking activity reminders 
[2026-04-15 11:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:04:37] [INFO] Checking activity reminders 
[2026-04-15 11:04:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:04:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:05:07] [INFO] Checking activity reminders 
[2026-04-15 11:05:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:05:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:05:37] [INFO] Checking activity reminders 
[2026-04-15 11:05:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:05:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:06:07] [INFO] Checking activity reminders 
[2026-04-15 11:06:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:06:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:06:37] [INFO] Checking activity reminders 
[2026-04-15 11:06:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:06:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:07:07] [INFO] Checking activity reminders 
[2026-04-15 11:07:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:07:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:07:37] [INFO] Checking activity reminders 
[2026-04-15 11:07:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:07:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:08:07] [INFO] Checking activity reminders 
[2026-04-15 11:08:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:08:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:08:38] [INFO] Checking activity reminders 
[2026-04-15 11:08:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:08:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:09:08] [INFO] Checking activity reminders 
[2026-04-15 11:09:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:09:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:09:38] [INFO] Checking activity reminders 
[2026-04-15 11:09:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:09:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:10:08] [INFO] Checking activity reminders 
[2026-04-15 11:10:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:10:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:10:38] [INFO] Checking activity reminders 
[2026-04-15 11:10:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:10:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:11:08] [INFO] Checking activity reminders 
[2026-04-15 11:11:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:11:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:11:38] [INFO] Checking activity reminders 
[2026-04-15 11:11:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:11:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:12:08] [INFO] Checking activity reminders 
[2026-04-15 11:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:12:38] [INFO] Checking activity reminders 
[2026-04-15 11:12:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:12:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:13:08] [INFO] Checking activity reminders 
[2026-04-15 11:13:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:13:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:13:38] [INFO] Checking activity reminders 
[2026-04-15 11:13:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:13:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:14:09] [INFO] Checking activity reminders 
[2026-04-15 11:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:14:39] [INFO] Checking activity reminders 
[2026-04-15 11:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:15:09] [INFO] Checking activity reminders 
[2026-04-15 11:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:15:39] [INFO] Checking activity reminders 
[2026-04-15 11:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:16:09] [INFO] Checking activity reminders 
[2026-04-15 11:16:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:16:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:16:39] [INFO] Checking activity reminders 
[2026-04-15 11:16:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:16:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:17:09] [INFO] Checking activity reminders 
[2026-04-15 11:17:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:17:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:17:40] [INFO] Checking activity reminders 
[2026-04-15 11:17:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:17:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:18:10] [INFO] Checking activity reminders 
[2026-04-15 11:18:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:18:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:18:40] [INFO] Checking activity reminders 
[2026-04-15 11:18:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:18:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:19:10] [INFO] Checking activity reminders 
[2026-04-15 11:19:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:19:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:19:40] [INFO] Checking activity reminders 
[2026-04-15 11:19:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:19:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:20:10] [INFO] Checking activity reminders 
[2026-04-15 11:20:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:20:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:20:40] [INFO] Checking activity reminders 
[2026-04-15 11:20:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:20:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:21:10] [INFO] Checking activity reminders 
[2026-04-15 11:21:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:21:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:21:14] [INFO] Checking activity reminders 
[2026-04-15 11:21:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:21:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:21:41] [INFO] Checking activity reminders 
[2026-04-15 11:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:21:45] [INFO] Checking activity reminders 
[2026-04-15 11:21:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:21:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:22:11] [INFO] Checking activity reminders 
[2026-04-15 11:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:22:15] [INFO] Checking activity reminders 
[2026-04-15 11:22:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:22:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:22:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:22:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:22:38] [INFO] generateDealTitle result {"contact_id":"14327","person_name":"روح الهی","mobile":"9175230877","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175230877"}
[2026-04-15 11:22:41] [INFO] Checking activity reminders 
[2026-04-15 11:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:22:45] [INFO] Checking activity reminders 
[2026-04-15 11:22:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:22:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:23:11] [INFO] Checking activity reminders 
[2026-04-15 11:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:23:21] [INFO] Checking activity reminders 
[2026-04-15 11:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:23:41] [INFO] Checking activity reminders 
[2026-04-15 11:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:24:11] [INFO] Checking activity reminders 
[2026-04-15 11:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:24:41] [INFO] Checking activity reminders 
[2026-04-15 11:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:24:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14327","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 11:24:44","session_id":"cuqqi7kbip6q0te27346pab1bt"}
[2026-04-15 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:24:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14327","is_new_deal":true}
[2026-04-15 11:24:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 11:24:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 11:24:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 11:24:44] [INFO] getContactPrimaryPhone called {"contact_id":"14327"}
[2026-04-15 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:24:44] [INFO] getContactPrimaryPhone result {"contact_id":"14327","person_found":true,"primary_phone":"9175230877"}
[2026-04-15 11:24:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175230877"}
[2026-04-15 11:24:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175230877","contact_id":"14327","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 11:24:44"}
[2026-04-15 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:24:44] [INFO] generateDealTitle result {"contact_id":"14327","person_name":"روح الهی","mobile":"9175230877","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9175230877"}
[2026-04-15 11:24:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14327","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-15 11:24:44] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14327","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 11:24:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14327","title":"معامله دوم 9175230877 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9175230877","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"روح الهی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-15 11:24:44","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-15 11:24:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:24:45] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-15 11:24:45] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14327","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9175230877 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-15 11:24:45","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 11:24:45] [INFO] Checking activity reminders 
[2026-04-15 11:24:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:24:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:24:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 11:25:11] [INFO] Checking activity reminders 
[2026-04-15 11:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:25:15] [INFO] Checking activity reminders 
[2026-04-15 11:25:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:25:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:25:41] [INFO] Checking activity reminders 
[2026-04-15 11:25:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:25:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:25:45] [INFO] Checking activity reminders 
[2026-04-15 11:25:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:25:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:26:11] [INFO] Checking activity reminders 
[2026-04-15 11:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:26:15] [INFO] Checking activity reminders 
[2026-04-15 11:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:26:42] [INFO] Checking activity reminders 
[2026-04-15 11:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:26:45] [INFO] Checking activity reminders 
[2026-04-15 11:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:27:12] [INFO] Checking activity reminders 
[2026-04-15 11:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:27:26] [INFO] Checking activity reminders 
[2026-04-15 11:27:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:27:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:27:42] [INFO] Checking activity reminders 
[2026-04-15 11:27:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:27:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:27:56] [INFO] Checking activity reminders 
[2026-04-15 11:27:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:27:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:28:12] [INFO] Checking activity reminders 
[2026-04-15 11:28:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:28:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:28:26] [INFO] Checking activity reminders 
[2026-04-15 11:28:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:28:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:28:42] [INFO] Checking activity reminders 
[2026-04-15 11:28:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:28:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:28:56] [INFO] Checking activity reminders 
[2026-04-15 11:28:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:28:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:29:12] [INFO] Checking activity reminders 
[2026-04-15 11:29:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:29:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:29:26] [INFO] Checking activity reminders 
[2026-04-15 11:29:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:29:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:29:42] [INFO] Checking activity reminders 
[2026-04-15 11:29:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:29:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:29:56] [INFO] Checking activity reminders 
[2026-04-15 11:29:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:29:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:30:12] [INFO] Checking activity reminders 
[2026-04-15 11:30:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:30:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:30:26] [INFO] Checking activity reminders 
[2026-04-15 11:30:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:30:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:30:42] [INFO] Checking activity reminders 
[2026-04-15 11:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:30:56] [INFO] Checking activity reminders 
[2026-04-15 11:30:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:30:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:31:12] [INFO] Checking activity reminders 
[2026-04-15 11:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:31:26] [INFO] Checking activity reminders 
[2026-04-15 11:31:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:31:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:31:43] [INFO] Checking activity reminders 
[2026-04-15 11:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:31:56] [INFO] Checking activity reminders 
[2026-04-15 11:31:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:31:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:32:13] [INFO] Checking activity reminders 
[2026-04-15 11:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:32:26] [INFO] Checking activity reminders 
[2026-04-15 11:32:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:32:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:32:43] [INFO] Checking activity reminders 
[2026-04-15 11:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:32:57] [INFO] Checking activity reminders 
[2026-04-15 11:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:33:13] [INFO] Checking activity reminders 
[2026-04-15 11:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:33:27] [INFO] Checking activity reminders 
[2026-04-15 11:33:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:33:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:33:43] [INFO] Checking activity reminders 
[2026-04-15 11:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:33:56] [INFO] Checking activity reminders 
[2026-04-15 11:33:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:33:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:33:57] [INFO] Checking activity reminders 
[2026-04-15 11:33:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:33:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:12] [INFO] generateDealTitle result {"contact_id":"11964","person_name":"خسروآبادی","mobile":"9301726090","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9301726090"}
[2026-04-15 11:34:26] [INFO] Checking activity reminders 
[2026-04-15 11:34:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:34:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:34:27] [INFO] Checking activity reminders 
[2026-04-15 11:34:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:34:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:34:34] [INFO] Activity save request {"post_data":{"contact_id":"11964","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:34:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11964","note_was_empty":true}
[2026-04-15 11:34:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"11964","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 11:34:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4692746e51.23729426","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4692746e51.23729426"}
[2026-04-15 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:34] [INFO] Updating virtual stage {"contact_id":"11964","stage_name":"deal_registered","force":false}
[2026-04-15 11:34:34] [INFO] Virtual stage successfully saved {"contact_id":"11964","stage_name":"deal_registered"}
[2026-04-15 11:34:34] [INFO] Virtual stage updated after activity save {"contact_id":"11964"}
[2026-04-15 11:34:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11964","person_id":"2548"}
[2026-04-15 11:34:56] [INFO] Checking activity reminders 
[2026-04-15 11:34:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:34:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:34:57] [INFO] Checking activity reminders 
[2026-04-15 11:34:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:34:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:35:26] [INFO] Checking activity reminders 
[2026-04-15 11:35:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:35:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:35:27] [INFO] Checking activity reminders 
[2026-04-15 11:35:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:35:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:35:57] [INFO] Checking activity reminders 
[2026-04-15 11:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:35:57] [INFO] Checking activity reminders 
[2026-04-15 11:35:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:35:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:35:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:36:14] [INFO] Checking activity reminders 
[2026-04-15 11:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:36:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:36:27] [INFO] Checking activity reminders 
[2026-04-15 11:36:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:36:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:36:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:36:44] [INFO] Checking activity reminders 
[2026-04-15 11:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:36:57] [INFO] Checking activity reminders 
[2026-04-15 11:36:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:36:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:37:07] [INFO] Activity save request {"post_data":{"contact_id":"17032","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"بلاخره 405 فروخت \/ 800 ت نقد پله ای طلا بخره گفتم","activity_duration":"20","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:37:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:37:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:37:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"17032","note_was_empty":true}
[2026-04-15 11:37:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"17032","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 11:37:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df472bd421f7.92584093","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:37:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69df472bd421f7.92584093"}
[2026-04-15 11:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:37:07] [INFO] Updating virtual stage {"contact_id":"17032","stage_name":"deal_registered","force":false}
[2026-04-15 11:37:07] [INFO] Virtual stage successfully saved {"contact_id":"17032","stage_name":"deal_registered"}
[2026-04-15 11:37:07] [INFO] Virtual stage updated after activity save {"contact_id":"17032"}
[2026-04-15 11:37:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17032","person_id":"14796"}
[2026-04-15 11:37:14] [INFO] Checking activity reminders 
[2026-04-15 11:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:37:27] [INFO] Checking activity reminders 
[2026-04-15 11:37:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:37:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:37:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:37:45] [INFO] Checking activity reminders 
[2026-04-15 11:37:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:37:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:37:50] [INFO] Checking activity reminders 
[2026-04-15 11:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:37:58] [INFO] Checking activity reminders 
[2026-04-15 11:37:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:37:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:38:14] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_30","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nسرکار بود \r\nعصر تماس مجدد ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:38:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:38:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:38:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_30","note_was_empty":true}
[2026-04-15 11:38:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df476ef11984.63978240","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:38:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69df476ef11984.63978240"}
[2026-04-15 11:38:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:38:14] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_30","stage_name":"contact_followup","force":false}
[2026-04-15 11:38:14] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_30","stage_name":"contact_followup"}
[2026-04-15 11:38:14] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_30"}
[2026-04-15 11:38:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_30","person_id":"21112"}
[2026-04-15 11:38:20] [INFO] Checking activity reminders 
[2026-04-15 11:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:38:28] [INFO] Checking activity reminders 
[2026-04-15 11:38:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:38:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:38:49] [INFO] Activity save request {"post_data":{"contact_id":"666","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"100 ت عید واریز شد\/ \r\nپشتیبانی","activity_duration":"25","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:38:49] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:38:49] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:38:49] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"666","note_was_empty":true}
[2026-04-15 11:38:49] [INFO] Didar write disabled; saving activity locally {"contact_id":"666","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 11:38:49] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df47910325f8.22430866","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:38:49] [INFO] Activity saved successfully {"activity_id":"local_activity_69df47910325f8.22430866"}
[2026-04-15 11:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:38:49] [INFO] Updating virtual stage {"contact_id":"666","stage_name":"deal_registered","force":false}
[2026-04-15 11:38:49] [INFO] Virtual stage successfully saved {"contact_id":"666","stage_name":"deal_registered"}
[2026-04-15 11:38:49] [INFO] Virtual stage updated after activity save {"contact_id":"666"}
[2026-04-15 11:38:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"666","person_id":"11323"}
[2026-04-15 11:38:50] [INFO] Checking activity reminders 
[2026-04-15 11:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:38:58] [INFO] Checking activity reminders 
[2026-04-15 11:38:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:38:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:39:20] [INFO] Checking activity reminders 
[2026-04-15 11:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:39:28] [INFO] Checking activity reminders 
[2026-04-15 11:39:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:39:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:39:51] [INFO] Checking activity reminders 
[2026-04-15 11:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:39:58] [INFO] Checking activity reminders 
[2026-04-15 11:39:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:39:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:40:21] [INFO] Checking activity reminders 
[2026-04-15 11:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:40:26] [INFO] Checking activity reminders 
[2026-04-15 11:40:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:40:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:40:28] [INFO] Checking activity reminders 
[2026-04-15 11:40:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:40:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:40:56] [INFO] Checking activity reminders 
[2026-04-15 11:40:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:40:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:40:58] [INFO] Checking activity reminders 
[2026-04-15 11:40:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:40:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:41:26] [INFO] Checking activity reminders 
[2026-04-15 11:41:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:41:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:41:28] [INFO] Checking activity reminders 
[2026-04-15 11:41:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:41:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:41:56] [INFO] Checking activity reminders 
[2026-04-15 11:41:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:41:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:41:58] [INFO] Checking activity reminders 
[2026-04-15 11:41:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:41:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:42:00] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 11:42:00] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-15 11:42:01] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 11:42:26] [INFO] Checking activity reminders 
[2026-04-15 11:42:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:42:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:42:28] [INFO] Checking activity reminders 
[2026-04-15 11:42:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:42:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:42:31] [INFO] Checking activity reminders 
[2026-04-15 11:42:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:42:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:42:56] [INFO] Checking activity reminders 
[2026-04-15 11:42:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:42:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:42:58] [INFO] Checking activity reminders 
[2026-04-15 11:42:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:42:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:43:26] [INFO] Checking activity reminders 
[2026-04-15 11:43:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:43:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:43:28] [INFO] Checking activity reminders 
[2026-04-15 11:43:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:43:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:43:56] [INFO] Checking activity reminders 
[2026-04-15 11:43:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:43:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:43:58] [INFO] Checking activity reminders 
[2026-04-15 11:43:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:43:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:44:27] [INFO] Checking activity reminders 
[2026-04-15 11:44:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:44:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:44:29] [INFO] Checking activity reminders 
[2026-04-15 11:44:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:44:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:44:57] [INFO] Checking activity reminders 
[2026-04-15 11:44:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:44:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:44:59] [INFO] Checking activity reminders 
[2026-04-15 11:44:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:44:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:45:27] [INFO] Checking activity reminders 
[2026-04-15 11:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:45:29] [INFO] Checking activity reminders 
[2026-04-15 11:45:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:45:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:45:57] [INFO] Checking activity reminders 
[2026-04-15 11:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:45:59] [INFO] Checking activity reminders 
[2026-04-15 11:45:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:45:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:46:27] [INFO] Checking activity reminders 
[2026-04-15 11:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:46:29] [INFO] Checking activity reminders 
[2026-04-15 11:46:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:46:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:38] [INFO] generateDealTitle result {"contact_id":"12826","person_name":"معینی","mobile":"9122314759","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122314759"}
[2026-04-15 11:46:50] [INFO] Activity save request {"post_data":{"contact_id":"12826","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:46:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12826","note_was_empty":true}
[2026-04-15 11:46:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"12826","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 11:46:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df49729150f6.04027779","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69df49729150f6.04027779"}
[2026-04-15 11:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:50] [INFO] Updating virtual stage {"contact_id":"12826","stage_name":"deal_registered","force":false}
[2026-04-15 11:46:50] [INFO] Virtual stage successfully saved {"contact_id":"12826","stage_name":"deal_registered"}
[2026-04-15 11:46:50] [INFO] Virtual stage updated after activity save {"contact_id":"12826"}
[2026-04-15 11:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12826","person_id":"11972"}
[2026-04-15 11:46:57] [INFO] Checking activity reminders 
[2026-04-15 11:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:46:59] [INFO] Checking activity reminders 
[2026-04-15 11:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:47:27] [INFO] Checking activity reminders 
[2026-04-15 11:47:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:47:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:47:29] [INFO] Checking activity reminders 
[2026-04-15 11:47:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:47:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:47:57] [INFO] Checking activity reminders 
[2026-04-15 11:47:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:47:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:47:59] [INFO] Checking activity reminders 
[2026-04-15 11:47:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:47:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:47:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:48:27] [INFO] Checking activity reminders 
[2026-04-15 11:48:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:48:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:48:29] [INFO] Checking activity reminders 
[2026-04-15 11:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:48:57] [INFO] Checking activity reminders 
[2026-04-15 11:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:49:28] [INFO] Checking activity reminders 
[2026-04-15 11:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:49:58] [INFO] Checking activity reminders 
[2026-04-15 11:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:50:28] [INFO] Checking activity reminders 
[2026-04-15 11:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:50:58] [INFO] Checking activity reminders 
[2026-04-15 11:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:51:25] [INFO] Checking activity reminders 
[2026-04-15 11:51:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:51:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:51:28] [INFO] Checking activity reminders 
[2026-04-15 11:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:51:55] [INFO] Checking activity reminders 
[2026-04-15 11:51:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:51:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:51:59] [INFO] Checking activity reminders 
[2026-04-15 11:51:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:51:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:52:25] [INFO] Checking activity reminders 
[2026-04-15 11:52:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:52:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:52:29] [INFO] Checking activity reminders 
[2026-04-15 11:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:52:55] [INFO] Checking activity reminders 
[2026-04-15 11:52:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:52:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:52:59] [INFO] Checking activity reminders 
[2026-04-15 11:52:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:52:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:53:25] [INFO] Checking activity reminders 
[2026-04-15 11:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:53:29] [INFO] Checking activity reminders 
[2026-04-15 11:53:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:53:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:53:59] [INFO] Checking activity reminders 
[2026-04-15 11:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:54:29] [INFO] Checking activity reminders 
[2026-04-15 11:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:54:59] [INFO] Checking activity reminders 
[2026-04-15 11:54:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:54:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:55:29] [INFO] Checking activity reminders 
[2026-04-15 11:55:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:55:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:56:00] [INFO] Checking activity reminders 
[2026-04-15 11:56:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:56:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:56:30] [INFO] Checking activity reminders 
[2026-04-15 11:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:57:00] [INFO] Checking activity reminders 
[2026-04-15 11:57:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:57:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:57:30] [INFO] Checking activity reminders 
[2026-04-15 11:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:57:33] [INFO] Activity save request {"post_data":{"contact_id":"8486","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه من همیشه نمیمه ی دوم سال میام \r\nبهش شرایط و 6 ماههی اول امسال توضیح دادم \r\n6 ماهی 405 خیلی مهمه \r\nبه هنین دلیل استاد 6 ماهه گذاشتن \r\nبراش پیامک گذاشتم سرکار بود ","activity_duration":"4","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:57:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:57:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:57:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"8486","note_was_empty":true}
[2026-04-15 11:57:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"8486","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 11:57:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4bf5752356.60108182","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:57:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4bf5752356.60108182"}
[2026-04-15 11:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:57:33] [INFO] Updating virtual stage {"contact_id":"8486","stage_name":"deal_registered","force":false}
[2026-04-15 11:57:33] [INFO] Virtual stage successfully saved {"contact_id":"8486","stage_name":"deal_registered"}
[2026-04-15 11:57:33] [INFO] Virtual stage updated after activity save {"contact_id":"8486"}
[2026-04-15 11:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8486","person_id":"7611"}
[2026-04-15 11:58:00] [INFO] Checking activity reminders 
[2026-04-15 11:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:58:30] [INFO] Checking activity reminders 
[2026-04-15 11:58:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:58:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:58:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"5504","deal_id":"local_69b84ae4d7dd24.32190489","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 11:58:49","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 11:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:58:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"5504","is_new_deal":false}
[2026-04-15 11:58:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 11:58:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 11:58:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 11:58:49] [INFO] getContactPrimaryPhone called {"contact_id":"5504"}
[2026-04-15 11:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:58:49] [INFO] getContactPrimaryPhone result {"contact_id":"5504","person_found":true,"primary_phone":"9103618564"}
[2026-04-15 11:58:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9103618564"}
[2026-04-15 11:58:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9103618564","contact_id":"5504","deal_id":"local_69b84ae4d7dd24.32190489","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 11:58:49"}
[2026-04-15 11:58:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","existing_deal_found":true,"existing_contact_id":"5504","existing_title":"معامله چهارم 9103618564 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 11:58:49"}
[2026-04-15 11:58:49] [INFO] DealController.save validated payments {"deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 11:58:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"5504","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 11:58:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84ae4d7dd24.32190489","contact_didar_id":"5504","title":"معامله چهارم 9103618564 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9103618564","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی سلیمانیان","existing_deal":"YES","existing_deal_id":"local_69b84ae4d7dd24.32190489","existing_deal_status":"Pending","server_time":"2026-04-15 11:58:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 11:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:58:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84ae4d7dd24.32190489","contact_id":"5504","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9103618564 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 11:58:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 11:58:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:00] [INFO] Checking activity reminders 
[2026-04-15 11:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:59:08] [INFO] Activity save request {"post_data":{"contact_id":"5504","deal_id":"local_69b84ae4d7dd24.32190489","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 11:59:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5504","note_was_empty":true}
[2026-04-15 11:59:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"5504","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:08] [INFO] Updating virtual stage {"contact_id":"5504","stage_name":"deal_registered","force":false}
[2026-04-15 11:59:08] [INFO] Virtual stage successfully saved {"contact_id":"5504","stage_name":"deal_registered"}
[2026-04-15 11:59:08] [INFO] Virtual stage updated after activity save {"contact_id":"5504"}
[2026-04-15 11:59:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b84ae4d7dd24.32190489","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 11:59:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4c549ca470.06301368","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4c549ca470.06301368"}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:08] [INFO] Updating virtual stage {"contact_id":"5504","stage_name":"deal_registered","force":false}
[2026-04-15 11:59:08] [INFO] Virtual stage successfully saved {"contact_id":"5504","stage_name":"deal_registered"}
[2026-04-15 11:59:08] [INFO] Virtual stage updated after activity save {"contact_id":"5504"}
[2026-04-15 11:59:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5504","person_id":"14534"}
[2026-04-15 11:59:30] [INFO] Checking activity reminders 
[2026-04-15 11:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 11:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 11:59:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:00:00] [INFO] Checking activity reminders 
[2026-04-15 12:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:00:30] [INFO] Checking activity reminders 
[2026-04-15 12:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:01:00] [INFO] Checking activity reminders 
[2026-04-15 12:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:01:06] [INFO] Activity save request {"post_data":{"contact_id":"2141","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:01:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:01:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:01:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2141","note_was_empty":true}
[2026-04-15 12:01:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"2141","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:01:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4cca578a33.61767671","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:01:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4cca578a33.61767671"}
[2026-04-15 12:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:01:06] [INFO] Updating virtual stage {"contact_id":"2141","stage_name":"deal_registered","force":false}
[2026-04-15 12:01:06] [INFO] Virtual stage successfully saved {"contact_id":"2141","stage_name":"deal_registered"}
[2026-04-15 12:01:06] [INFO] Virtual stage updated after activity save {"contact_id":"2141"}
[2026-04-15 12:01:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2141","person_id":"7922"}
[2026-04-15 12:01:30] [INFO] Checking activity reminders 
[2026-04-15 12:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:01:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:02:01] [INFO] Checking activity reminders 
[2026-04-15 12:02:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:02:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:02:31] [INFO] Checking activity reminders 
[2026-04-15 12:02:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:02:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:03:01] [INFO] Checking activity reminders 
[2026-04-15 12:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:03:31] [INFO] Checking activity reminders 
[2026-04-15 12:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:04:01] [INFO] Checking activity reminders 
[2026-04-15 12:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:04:32] [INFO] Checking activity reminders 
[2026-04-15 12:04:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:04:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:05:02] [INFO] Checking activity reminders 
[2026-04-15 12:05:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:05:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:05:32] [INFO] Checking activity reminders 
[2026-04-15 12:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:06:02] [INFO] Checking activity reminders 
[2026-04-15 12:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:06:32] [INFO] Checking activity reminders 
[2026-04-15 12:06:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:06:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:07:03] [INFO] Checking activity reminders 
[2026-04-15 12:07:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:07:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:07:33] [INFO] Checking activity reminders 
[2026-04-15 12:07:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:07:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:08:03] [INFO] Checking activity reminders 
[2026-04-15 12:08:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:08:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:08:33] [INFO] Checking activity reminders 
[2026-04-15 12:08:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:08:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:09:03] [INFO] Checking activity reminders 
[2026-04-15 12:09:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:09:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:09:33] [INFO] Checking activity reminders 
[2026-04-15 12:09:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:09:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:10:03] [INFO] Checking activity reminders 
[2026-04-15 12:10:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:10:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:10:33] [INFO] Checking activity reminders 
[2026-04-15 12:10:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:10:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:11:04] [INFO] Checking activity reminders 
[2026-04-15 12:11:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:11:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:11:18] [INFO] Activity save request {"post_data":{"contact_id":"local_699d883433d9b1.05024803","deal_id":"local_699d883437200","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"میگه با خانمم صحبت کردم \/ به نتیجه نرسیدم \r\nپرزنت 6 ماهه و دوره ی پیش بینی کل بازار مالی توضیح دادم \r\nارسال پیام در بله \r\n","activity_duration":"5","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:18] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:11:18] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:18] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_699d883433d9b1.05024803","note_was_empty":true}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:18] [INFO] Updating virtual stage {"contact_id":"local_699d883433d9b1.05024803","stage_name":"deal_registered","force":false}
[2026-04-15 12:11:18] [INFO] Virtual stage successfully saved {"contact_id":"local_699d883433d9b1.05024803","stage_name":"deal_registered"}
[2026-04-15 12:11:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d883433d9b1.05024803"}
[2026-04-15 12:11:18] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d883437200","stage":"تماس پیگیری","status_change":null}
[2026-04-15 12:11:18] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4f2e95fe78.08478190","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:18] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4f2e95fe78.08478190"}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:18] [INFO] Updating virtual stage {"contact_id":"local_699d883433d9b1.05024803","stage_name":"deal_registered","force":false}
[2026-04-15 12:11:18] [INFO] Virtual stage successfully saved {"contact_id":"local_699d883433d9b1.05024803","stage_name":"deal_registered"}
[2026-04-15 12:11:18] [INFO] Virtual stage updated after activity save {"contact_id":"local_699d883433d9b1.05024803"}
[2026-04-15 12:11:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699d883433d9b1.05024803","person_id":"21792"}
[2026-04-15 12:11:34] [INFO] Checking activity reminders 
[2026-04-15 12:11:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:11:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:11:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:12:04] [INFO] Checking activity reminders 
[2026-04-15 12:12:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:12:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:12:34] [INFO] Checking activity reminders 
[2026-04-15 12:12:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:12:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:13:04] [INFO] Checking activity reminders 
[2026-04-15 12:13:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:13:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:13:34] [INFO] Checking activity reminders 
[2026-04-15 12:13:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:13:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:14:04] [INFO] Checking activity reminders 
[2026-04-15 12:14:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:14:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:14:34] [INFO] Checking activity reminders 
[2026-04-15 12:14:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:14:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:14:47] [INFO] Activity save request {"post_data":{"contact_id":"6779","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخد \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:14:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:14:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:14:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:14:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:14:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6779","note_was_empty":true}
[2026-04-15 12:14:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"6779","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:14:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df4fff496aa5.39682664","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:14:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:14:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69df4fff496aa5.39682664"}
[2026-04-15 12:14:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:14:47] [INFO] Updating virtual stage {"contact_id":"6779","stage_name":"deal_registered","force":false}
[2026-04-15 12:14:47] [INFO] Virtual stage successfully saved {"contact_id":"6779","stage_name":"deal_registered"}
[2026-04-15 12:14:47] [INFO] Virtual stage updated after activity save {"contact_id":"6779"}
[2026-04-15 12:14:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:14:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:04] [INFO] Checking activity reminders 
[2026-04-15 12:15:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:15:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:15:25] [INFO] Activity save request {"post_data":{"contact_id":"10127","deal_id":"local_694f91ecda1769.23014782","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:15:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10127","note_was_empty":true}
[2026-04-15 12:15:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"10127","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:25] [INFO] Updating virtual stage {"contact_id":"10127","stage_name":"deal_registered","force":false}
[2026-04-15 12:15:25] [INFO] Virtual stage successfully saved {"contact_id":"10127","stage_name":"deal_registered"}
[2026-04-15 12:15:25] [INFO] Virtual stage updated after activity save {"contact_id":"10127"}
[2026-04-15 12:15:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694f91ecda1769.23014782","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 12:15:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df50256cfd79.45183712","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69df50256cfd79.45183712"}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:25] [INFO] Updating virtual stage {"contact_id":"10127","stage_name":"deal_registered","force":false}
[2026-04-15 12:15:25] [INFO] Virtual stage successfully saved {"contact_id":"10127","stage_name":"deal_registered"}
[2026-04-15 12:15:25] [INFO] Virtual stage updated after activity save {"contact_id":"10127"}
[2026-04-15 12:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:15:34] [INFO] Checking activity reminders 
[2026-04-15 12:15:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:15:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:16:05] [INFO] Checking activity reminders 
[2026-04-15 12:16:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:16:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:16:11] [INFO] Checking activity reminders 
[2026-04-15 12:16:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:16:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:16:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:16:41] [INFO] Checking activity reminders 
[2026-04-15 12:16:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:16:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:17:01] [INFO] Activity save request {"post_data":{"contact_id":"9595","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:17:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:17:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:17:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9595","note_was_empty":true}
[2026-04-15 12:17:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"9595","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:17:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df50850ce112.15273241","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:17:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69df50850ce112.15273241"}
[2026-04-15 12:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:17:01] [INFO] Updating virtual stage {"contact_id":"9595","stage_name":"deal_registered","force":false}
[2026-04-15 12:17:01] [INFO] Virtual stage successfully saved {"contact_id":"9595","stage_name":"deal_registered"}
[2026-04-15 12:17:01] [INFO] Virtual stage updated after activity save {"contact_id":"9595"}
[2026-04-15 12:17:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 12:17:11] [INFO] Checking activity reminders 
[2026-04-15 12:17:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:17:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:17:41] [INFO] Checking activity reminders 
[2026-04-15 12:17:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:17:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:17:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:17:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 12:17:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 12:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:52] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:55] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-15 12:17:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:56] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:17:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:11] [INFO] Checking activity reminders 
[2026-04-15 12:18:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:18:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:18:19] [INFO] Activity save request {"post_data":{"contact_id":"1509","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:18:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:18:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:18:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1509","note_was_empty":true}
[2026-04-15 12:18:19] [INFO] Didar write disabled; saving activity locally {"contact_id":"1509","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:18:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df50d3e29c21.38751288","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:18:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69df50d3e29c21.38751288"}
[2026-04-15 12:18:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:18:19] [INFO] Updating virtual stage {"contact_id":"1509","stage_name":"deal_registered","force":false}
[2026-04-15 12:18:19] [INFO] Virtual stage successfully saved {"contact_id":"1509","stage_name":"deal_registered"}
[2026-04-15 12:18:19] [INFO] Virtual stage updated after activity save {"contact_id":"1509"}
[2026-04-15 12:18:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1509","person_id":"13632"}
[2026-04-15 12:18:22] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:22] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 12:18:22] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:28] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:28] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:28] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"create_lead"}
[2026-04-15 12:18:28] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:29] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:33] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:35] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:37] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:41] [INFO] Checking activity reminders 
[2026-04-15 12:18:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:18:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:18:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:18:46] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 12:18:46] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 12:18:47] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 12:18:47] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:18:47] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:18:47] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:18:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:04] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9398918073","09398918073"]}
[2026-04-15 12:19:04] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9398918073","09398918073"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-15 12:19:04] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9398918073","full_name":"لید جدید"}
[2026-04-15 12:19:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 12:19:04] [INFO] Notification created {"notification_id":"656","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-15 12:19:11] [INFO] Checking activity reminders 
[2026-04-15 12:19:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:19:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:19:20] [INFO] Activity save request {"post_data":{"contact_id":"3985","deal_id":"local_694fa0e99ee6a6.87234985","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:19:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3985","note_was_empty":true}
[2026-04-15 12:19:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"3985","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:20] [INFO] Updating virtual stage {"contact_id":"3985","stage_name":"deal_registered","force":false}
[2026-04-15 12:19:20] [INFO] Virtual stage successfully saved {"contact_id":"3985","stage_name":"deal_registered"}
[2026-04-15 12:19:20] [INFO] Virtual stage updated after activity save {"contact_id":"3985"}
[2026-04-15 12:19:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694fa0e99ee6a6.87234985","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 12:19:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df51101d6a08.88055420","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69df51101d6a08.88055420"}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:20] [INFO] Updating virtual stage {"contact_id":"3985","stage_name":"deal_registered","force":false}
[2026-04-15 12:19:20] [INFO] Virtual stage successfully saved {"contact_id":"3985","stage_name":"deal_registered"}
[2026-04-15 12:19:20] [INFO] Virtual stage updated after activity save {"contact_id":"3985"}
[2026-04-15 12:19:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:29] [INFO] Checking activity reminders 
[2026-04-15 12:19:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:19:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:19:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b7d9a7ab9697.18146949","person_id":"21876"}
[2026-04-15 12:19:33] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3985","deal_id":"local_694fa0e99ee6a6.87234985","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:19:33","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 12:19:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:33] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3985","is_new_deal":false}
[2026-04-15 12:19:33] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:19:33] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:19:33] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:19:33] [INFO] getContactPrimaryPhone called {"contact_id":"3985"}
[2026-04-15 12:19:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:33] [INFO] getContactPrimaryPhone result {"contact_id":"3985","person_found":true,"primary_phone":"9131920166"}
[2026-04-15 12:19:33] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9131920166"}
[2026-04-15 12:19:33] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9131920166","contact_id":"3985","deal_id":"local_694fa0e99ee6a6.87234985","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 12:19:33"}
[2026-04-15 12:19:33] [INFO] DealController.save existing deal lookup {"deal_id":"local_694fa0e99ee6a6.87234985","contact_id":"3985","existing_deal_found":true,"existing_contact_id":"3985","existing_title":"معامله اول 9131920166 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 12:19:33"}
[2026-04-15 12:19:33] [INFO] DealController.save validated payments {"deal_id":"local_694fa0e99ee6a6.87234985","contact_id":"3985","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 12:19:33] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3985","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 12:19:33] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694fa0e99ee6a6.87234985","contact_didar_id":"3985","title":"معامله اول 9131920166 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9131920166","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"حسین شمسی","existing_deal":"YES","existing_deal_id":"local_694fa0e99ee6a6.87234985","existing_deal_status":"Pending","server_time":"2026-04-15 12:19:33","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 12:19:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:33] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694fa0e99ee6a6.87234985","contact_id":"3985","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9131920166 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:19:33","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:19:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3985","person_id":"16551"}
[2026-04-15 12:19:41] [INFO] Checking activity reminders 
[2026-04-15 12:19:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:19:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:20:07] [INFO] Checking activity reminders 
[2026-04-15 12:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:20:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 12:20:11] [INFO] Checking activity reminders 
[2026-04-15 12:20:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:20:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:20:32] [INFO] Lead update received {"contact_id":"local_694b803a1c5325.08790989","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 12:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 12:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 12:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 12:20:32] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_694b803a1c5325.08790989"}
[2026-04-15 12:20:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 12:20:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:20:41] [INFO] Checking activity reminders 
[2026-04-15 12:20:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:20:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:20:47] [INFO] Checking activity reminders 
[2026-04-15 12:20:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:20:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:20:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 12:21:00] [INFO] Activity save request {"post_data":{"contact_id":"11748","deal_id":"local_695a6d59b71887.16010531","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:21:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11748","note_was_empty":true}
[2026-04-15 12:21:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"11748","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:00] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-15 12:21:00] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-15 12:21:00] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-15 12:21:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6d59b71887.16010531","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 12:21:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df517443f501.05962405","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69df517443f501.05962405"}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:00] [INFO] Updating virtual stage {"contact_id":"11748","stage_name":"deal_registered","force":false}
[2026-04-15 12:21:00] [INFO] Virtual stage successfully saved {"contact_id":"11748","stage_name":"deal_registered"}
[2026-04-15 12:21:00] [INFO] Virtual stage updated after activity save {"contact_id":"11748"}
[2026-04-15 12:21:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11748","person_id":"20083"}
[2026-04-15 12:21:09] [INFO] Checking activity reminders 
[2026-04-15 12:21:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:21:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:21:11] [INFO] Checking activity reminders 
[2026-04-15 12:21:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:21:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:21:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-15 12:21:24] [INFO] Lead update received {"contact_id":"955","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 12:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-15 12:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-15 12:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-15 12:21:24] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"955"}
[2026-04-15 12:21:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"955","person_id":"15948"}
[2026-04-15 12:21:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 12:21:41] [INFO] Checking activity reminders 
[2026-04-15 12:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:21:41] [INFO] Checking activity reminders 
[2026-04-15 12:21:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:21:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:21:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:22:11] [INFO] Checking activity reminders 
[2026-04-15 12:22:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:22:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:22:12] [INFO] Checking activity reminders 
[2026-04-15 12:22:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:22:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:22:33] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:33] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"check_reminders"}
[2026-04-15 12:22:33] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"get_kpi_products"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"get_performance_dashboard_section"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"get_performance_dashboard"}
[2026-04-15 12:22:35] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:36] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:41] [WARNING] Auth check failed - not authenticated {"session_id":"cuqqi7kbip6q0te27346pab1bt","session_keys":[],"action":"log_client_event"}
[2026-04-15 12:22:41] [INFO] Checking activity reminders 
[2026-04-15 12:22:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:22:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:22:41] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-15 12:22:41] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 12:22:42] [INFO] Checking activity reminders 
[2026-04-15 12:22:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:22:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:11] [INFO] Checking activity reminders 
[2026-04-15 12:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:11] [INFO] Checking activity reminders 
[2026-04-15 12:23:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:12] [INFO] Checking activity reminders 
[2026-04-15 12:23:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:41] [INFO] Checking activity reminders 
[2026-04-15 12:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:41] [INFO] Checking activity reminders 
[2026-04-15 12:23:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:23:42] [INFO] Checking activity reminders 
[2026-04-15 12:23:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:23:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:24:11] [INFO] Checking activity reminders 
[2026-04-15 12:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:24:11] [INFO] Checking activity reminders 
[2026-04-15 12:24:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:24:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:24:12] [INFO] Checking activity reminders 
[2026-04-15 12:24:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:24:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:24:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:24:28] [INFO] Lead update received {"contact_id":"1090","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 12:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:24:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1090"}
[2026-04-15 12:24:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 12:24:41] [INFO] Checking activity reminders 
[2026-04-15 12:24:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:24:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:24:42] [INFO] Checking activity reminders 
[2026-04-15 12:24:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:24:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:25:11] [INFO] Checking activity reminders 
[2026-04-15 12:25:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:25:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:25:12] [INFO] Checking activity reminders 
[2026-04-15 12:25:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:25:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:25:42] [INFO] Checking activity reminders 
[2026-04-15 12:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:25:42] [INFO] Checking activity reminders 
[2026-04-15 12:25:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:25:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:26:12] [INFO] Checking activity reminders 
[2026-04-15 12:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:26:12] [INFO] Checking activity reminders 
[2026-04-15 12:26:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:26:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:26:15] [INFO] Checking activity reminders 
[2026-04-15 12:26:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:26:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:26:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-15 12:26:42] [INFO] Checking activity reminders 
[2026-04-15 12:26:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:26:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:26:45] [INFO] Checking activity reminders 
[2026-04-15 12:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:27:12] [INFO] Checking activity reminders 
[2026-04-15 12:27:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:27:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:27:20] [INFO] Checking activity reminders 
[2026-04-15 12:27:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:27:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:27:43] [INFO] Checking activity reminders 
[2026-04-15 12:27:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:27:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:13] [INFO] Checking activity reminders 
[2026-04-15 12:28:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:23] [INFO] Checking activity reminders 
[2026-04-15 12:28:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:28] [INFO] Checking activity reminders 
[2026-04-15 12:28:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:40] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9150903632","09150903632"]}
[2026-04-15 12:28:40] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9150903632","09150903632"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-15 12:28:40] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9150903632","full_name":"لید جدید"}
[2026-04-15 12:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 12:28:40] [INFO] Notification created {"notification_id":"657","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-15 12:28:43] [INFO] Checking activity reminders 
[2026-04-15 12:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:48] [INFO] Checking activity reminders 
[2026-04-15 12:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:28:50] [INFO] Checking activity reminders 
[2026-04-15 12:28:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:28:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:29:00] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9136438183","09136438183"]}
[2026-04-15 12:29:00] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9136438183","09136438183"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-15 12:29:00] [INFO] Didar write disabled; creating local lead only {"owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","mobile":"9136438183","full_name":"لید جدید"}
[2026-04-15 12:29:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 12:29:01] [INFO] Notification created {"notification_id":"658","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","type":"lead_assigned","show_popup":true}
[2026-04-15 12:29:05] [INFO] Checking activity reminders 
[2026-04-15 12:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:29:13] [INFO] Checking activity reminders 
[2026-04-15 12:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:29:20] [INFO] Checking activity reminders 
[2026-04-15 12:29:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:29:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:29:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-15 12:29:43] [INFO] Checking activity reminders 
[2026-04-15 12:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:30:13] [INFO] Checking activity reminders 
[2026-04-15 12:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:30:32] [INFO] Checking activity reminders 
[2026-04-15 12:30:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:30:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:30:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-15 12:30:43] [INFO] Checking activity reminders 
[2026-04-15 12:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:02] [INFO] Checking activity reminders 
[2026-04-15 12:31:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:14] [INFO] Checking activity reminders 
[2026-04-15 12:31:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:21] [INFO] Checking activity reminders 
[2026-04-15 12:31:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 12:31:34] [INFO] Checking activity reminders 
[2026-04-15 12:31:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:44] [INFO] Checking activity reminders 
[2026-04-15 12:31:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 12:31:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 12:31:47] [INFO] Checking activity reminders 
[2026-04-15 12:31:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:31:51] [INFO] Checking activity reminders 
[2026-04-15 12:31:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:31:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:32:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 12:32:15] [INFO] Checking activity reminders 
[2026-04-15 12:32:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:32:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:32:16] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"10127","deal_id":"local_694f91ecda1769.23014782","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:32:16","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 12:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:32:16] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"10127","is_new_deal":false}
[2026-04-15 12:32:16] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:32:16] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:32:16] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:32:16] [INFO] getContactPrimaryPhone called {"contact_id":"10127"}
[2026-04-15 12:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:32:16] [INFO] getContactPrimaryPhone result {"contact_id":"10127","person_found":true,"primary_phone":"9137885341"}
[2026-04-15 12:32:16] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9137885341"}
[2026-04-15 12:32:16] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9137885341","contact_id":"10127","deal_id":"local_694f91ecda1769.23014782","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 12:32:16"}
[2026-04-15 12:32:16] [INFO] DealController.save existing deal lookup {"deal_id":"local_694f91ecda1769.23014782","contact_id":"10127","existing_deal_found":true,"existing_contact_id":"10127","existing_title":"معامله اول 9137885341 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 12:32:16"}
[2026-04-15 12:32:16] [INFO] DealController.save validated payments {"deal_id":"local_694f91ecda1769.23014782","contact_id":"10127","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 12:32:16] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"10127","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 12:32:16] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694f91ecda1769.23014782","contact_didar_id":"10127","title":"معامله اول 9137885341 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9137885341","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"قرمزی","existing_deal":"YES","existing_deal_id":"local_694f91ecda1769.23014782","existing_deal_status":"Pending","server_time":"2026-04-15 12:32:16","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 12:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:32:16] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694f91ecda1769.23014782","contact_id":"10127","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9137885341 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-15 12:32:16","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:32:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10127","person_id":"16329"}
[2026-04-15 12:32:18] [INFO] Checking activity reminders 
[2026-04-15 12:32:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:32:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:32:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 12:32:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 12:32:48] [INFO] Checking activity reminders 
[2026-04-15 12:32:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:32:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:32:57] [INFO] Checking activity reminders 
[2026-04-15 12:32:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:32:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:33:18] [INFO] Checking activity reminders 
[2026-04-15 12:33:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:33:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:33:23] [INFO] Checking activity reminders 
[2026-04-15 12:33:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:33:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:33:24] [INFO] Checking activity reminders 
[2026-04-15 12:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:33:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21215","person_id":"9211"}
[2026-04-15 12:33:48] [INFO] Checking activity reminders 
[2026-04-15 12:33:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:33:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:34:19] [INFO] Checking activity reminders 
[2026-04-15 12:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:34:21] [INFO] Checking activity reminders 
[2026-04-15 12:34:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:34:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:34:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15111","person_id":"1371"}
[2026-04-15 12:34:41] [INFO] Checking activity reminders 
[2026-04-15 12:34:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:34:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:34:49] [INFO] Checking activity reminders 
[2026-04-15 12:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:08] [INFO] Checking activity reminders 
[2026-04-15 12:35:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:11] [INFO] Checking activity reminders 
[2026-04-15 12:35:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"8974","person_id":"7920"}
[2026-04-15 12:35:19] [INFO] Checking activity reminders 
[2026-04-15 12:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:42] [INFO] Checking activity reminders 
[2026-04-15 12:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:46] [INFO] Checking activity reminders 
[2026-04-15 12:35:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:49] [INFO] Checking activity reminders 
[2026-04-15 12:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:53] [INFO] Checking activity reminders 
[2026-04-15 12:35:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:35:56] [INFO] Checking activity reminders 
[2026-04-15 12:35:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:35:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:36:12] [INFO] Checking activity reminders 
[2026-04-15 12:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:36:19] [INFO] Checking activity reminders 
[2026-04-15 12:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:36:38] [INFO] Checking activity reminders 
[2026-04-15 12:36:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:36:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:36:49] [INFO] Checking activity reminders 
[2026-04-15 12:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:08] [INFO] Checking activity reminders 
[2026-04-15 12:37:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:37:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:19] [INFO] Checking activity reminders 
[2026-04-15 12:37:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:37:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:36] [INFO] Checking activity reminders 
[2026-04-15 12:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:36] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:37:36] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:37:36] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:37:38] [INFO] Checking activity reminders 
[2026-04-15 12:37:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:37:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:49] [INFO] Checking activity reminders 
[2026-04-15 12:37:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:37:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:37:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3827","person_id":"17225"}
[2026-04-15 12:38:06] [INFO] Checking activity reminders 
[2026-04-15 12:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:38:08] [INFO] Checking activity reminders 
[2026-04-15 12:38:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:38:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:38:20] [INFO] Checking activity reminders 
[2026-04-15 12:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:38:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:38:36] [INFO] Checking activity reminders 
[2026-04-15 12:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:38:38] [INFO] Checking activity reminders 
[2026-04-15 12:38:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:38:50] [INFO] Checking activity reminders 
[2026-04-15 12:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:39:06] [INFO] Checking activity reminders 
[2026-04-15 12:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:39:08] [INFO] Checking activity reminders 
[2026-04-15 12:39:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:39:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:39:20] [INFO] Checking activity reminders 
[2026-04-15 12:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:39:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:39:43] [INFO] Checking activity reminders 
[2026-04-15 12:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:39:50] [INFO] Checking activity reminders 
[2026-04-15 12:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:40:13] [INFO] Checking activity reminders 
[2026-04-15 12:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:40:20] [INFO] Checking activity reminders 
[2026-04-15 12:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:40:43] [INFO] Checking activity reminders 
[2026-04-15 12:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:40:50] [INFO] Checking activity reminders 
[2026-04-15 12:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:41:13] [INFO] Checking activity reminders 
[2026-04-15 12:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:41:20] [INFO] Checking activity reminders 
[2026-04-15 12:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:41:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:41:43] [INFO] Checking activity reminders 
[2026-04-15 12:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:41:50] [INFO] Checking activity reminders 
[2026-04-15 12:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:41:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_698722605ac306.97992795","deal_id":"local_698722605bf2c","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:41:51","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:41:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_698722605ac306.97992795","is_new_deal":false}
[2026-04-15 12:41:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:41:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:41:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:41:51] [INFO] getContactPrimaryPhone called {"contact_id":"local_698722605ac306.97992795"}
[2026-04-15 12:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:41:51] [INFO] getContactPrimaryPhone result {"contact_id":"local_698722605ac306.97992795","person_found":true,"primary_phone":"9143888219"}
[2026-04-15 12:41:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143888219"}
[2026-04-15 12:41:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143888219","contact_id":"local_698722605ac306.97992795","deal_id":"local_698722605bf2c","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:41:51"}
[2026-04-15 12:41:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_698722605bf2c","contact_id":"local_698722605ac306.97992795","existing_deal_found":true,"existing_contact_id":"local_698722605ac306.97992795","existing_title":"معامله اول 9143888219 | vip","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:41:51"}
[2026-04-15 12:41:51] [INFO] DealController.save validated payments {"deal_id":"local_698722605bf2c","contact_id":"local_698722605ac306.97992795","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-15 12:41:51] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_698722605ac306.97992795","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:41:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_698722605bf2c","contact_didar_id":"local_698722605ac306.97992795","title":"معامله اول 9143888219 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9143888219","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":10000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای امید معظم","existing_deal":"YES","existing_deal_id":"local_698722605bf2c","existing_deal_status":"Pending","server_time":"2026-04-15 12:41:51","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:41:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_698722605bf2c","contact_id":"local_698722605ac306.97992795","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9143888219 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":10000000,"server_time":"2026-04-15 12:41:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:41:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:42:07] [INFO] Checking activity reminders 
[2026-04-15 12:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:42:08] [INFO] Checking activity reminders 
[2026-04-15 12:42:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:42:13] [INFO] Checking activity reminders 
[2026-04-15 12:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:42:18] [INFO] Checking activity reminders 
[2026-04-15 12:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:42:43] [INFO] Checking activity reminders 
[2026-04-15 12:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:42:48] [INFO] Checking activity reminders 
[2026-04-15 12:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:43:13] [INFO] Checking activity reminders 
[2026-04-15 12:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:43:15] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:43:15] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:43:15] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:43:19] [INFO] Checking activity reminders 
[2026-04-15 12:43:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:43:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:43:43] [INFO] Checking activity reminders 
[2026-04-15 12:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:43:53] [INFO] Checking activity reminders 
[2026-04-15 12:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:44:13] [INFO] Checking activity reminders 
[2026-04-15 12:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:44:23] [INFO] Checking activity reminders 
[2026-04-15 12:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:44:27] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:44:27] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:44:27] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:44:43] [INFO] Checking activity reminders 
[2026-04-15 12:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:44:53] [INFO] Checking activity reminders 
[2026-04-15 12:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:45:13] [INFO] Checking activity reminders 
[2026-04-15 12:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:45:16] [INFO] Activity save request {"post_data":{"contact_id":"1584","deal_id":"local_69995bbdcb56e9.72148068","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال که چک تسویه تحویل افراش دادم \/ یه مانده دستگاه داره 4اسفند 10 ت زده دستگاه 25ت پیگیری تسویه \/ عدم پاسخ ارسال پیامک پیگیری","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 12:45:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1584","note_was_empty":true}
[2026-04-15 12:45:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"1584","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:16] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-15 12:45:16] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-15 12:45:16] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-15 12:45:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69995bbdcb56e9.72148068","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 12:45:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df57249e3504.57106832","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69df57249e3504.57106832"}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:16] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-15 12:45:16] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-15 12:45:16] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-15 12:45:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 12:45:18] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:45:18] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:45:18] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:45:25] [INFO] Checking activity reminders 
[2026-04-15 12:45:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:45:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:45:56] [INFO] Checking activity reminders 
[2026-04-15 12:45:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:45:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:46:06] [INFO] Checking activity reminders 
[2026-04-15 12:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:46:08] [INFO] Checking activity reminders 
[2026-04-15 12:46:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:46:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:46:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_698722605ac306.97992795","deal_id":"local_69b84cd2c835e5.46481374","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:46:08","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:46:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_698722605ac306.97992795","is_new_deal":false}
[2026-04-15 12:46:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:46:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:46:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:46:08] [INFO] getContactPrimaryPhone called {"contact_id":"local_698722605ac306.97992795"}
[2026-04-15 12:46:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:46:08] [INFO] getContactPrimaryPhone result {"contact_id":"local_698722605ac306.97992795","person_found":true,"primary_phone":"9143888219"}
[2026-04-15 12:46:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9143888219"}
[2026-04-15 12:46:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9143888219","contact_id":"local_698722605ac306.97992795","deal_id":"local_69b84cd2c835e5.46481374","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:46:08"}
[2026-04-15 12:46:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84cd2c835e5.46481374","contact_id":"local_698722605ac306.97992795","existing_deal_found":true,"existing_contact_id":"17295","existing_title":"معامله سوم 9125714155","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:46:08"}
[2026-04-15 12:46:08] [WARNING] Deal save blocked: deal_id does not belong to contact {"deal_id":"local_69b84cd2c835e5.46481374","incoming_contact_id":"local_698722605ac306.97992795","existing_contact_id":"17295","incoming_title":"کانال VIP با پشتیبانی","requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:46:08"}
[2026-04-15 12:46:26] [INFO] Checking activity reminders 
[2026-04-15 12:46:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:46:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:46:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:46:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:46:28] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 12:46:29] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:46:29] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:46:29] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:46:49] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:46:49] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:46:49] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:46:53] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:46:53] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:46:53] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:46:58] [INFO] Checking activity reminders 
[2026-04-15 12:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:46:58] [INFO] Checking activity reminders 
[2026-04-15 12:46:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:46:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:47:28] [INFO] Checking activity reminders 
[2026-04-15 12:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:47:28] [INFO] Checking activity reminders 
[2026-04-15 12:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:47:58] [INFO] Checking activity reminders 
[2026-04-15 12:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:47:58] [INFO] Checking activity reminders 
[2026-04-15 12:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:48:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17295","deal_id":"local_69b84cd2c835e5.46481374","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:48:20","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:48:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-04-15 12:48:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17295","is_new_deal":false}
[2026-04-15 12:48:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:48:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:48:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 12:48:20] [INFO] getContactPrimaryPhone called {"contact_id":"17295"}
[2026-04-15 12:48:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-04-15 12:48:20] [INFO] getContactPrimaryPhone result {"contact_id":"17295","person_found":true,"primary_phone":"9125714155"}
[2026-04-15 12:48:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9125714155"}
[2026-04-15 12:48:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9125714155","contact_id":"17295","deal_id":"local_69b84cd2c835e5.46481374","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:48:20"}
[2026-04-15 12:48:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84cd2c835e5.46481374","contact_id":"17295","existing_deal_found":true,"existing_contact_id":"17295","existing_title":"معامله سوم 9125714155","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:48:20"}
[2026-04-15 12:48:20] [INFO] DealController.save validated payments {"deal_id":"local_69b84cd2c835e5.46481374","contact_id":"17295","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-15 12:48:20] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"17295","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:48:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84cd2c835e5.46481374","contact_didar_id":"17295","title":"معامله سوم 9125714155 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9125714155","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"مروتی","existing_deal":"YES","existing_deal_id":"local_69b84cd2c835e5.46481374","existing_deal_status":"Pending","server_time":"2026-04-15 12:48:20","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:48:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17295","person_id":"14035"}
[2026-04-15 12:48:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84cd2c835e5.46481374","contact_id":"17295","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9125714155 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-15 12:48:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:48:28] [INFO] Checking activity reminders 
[2026-04-15 12:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:48:29] [INFO] Checking activity reminders 
[2026-04-15 12:48:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:48:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:48:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13913","deal_id":"local_69b84c87506936.35318423","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:48:56","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:48:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-04-15 12:48:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13913","is_new_deal":false}
[2026-04-15 12:48:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:48:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:48:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:48:56] [INFO] getContactPrimaryPhone called {"contact_id":"13913"}
[2026-04-15 12:48:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-04-15 12:48:56] [INFO] getContactPrimaryPhone result {"contact_id":"13913","person_found":true,"primary_phone":"9128483573"}
[2026-04-15 12:48:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9128483573"}
[2026-04-15 12:48:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9128483573","contact_id":"13913","deal_id":"local_69b84c87506936.35318423","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:48:56"}
[2026-04-15 12:48:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84c87506936.35318423","contact_id":"13913","existing_deal_found":true,"existing_contact_id":"13913","existing_title":"معامله سوم 9128483573","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:48:56"}
[2026-04-15 12:48:56] [INFO] DealController.save validated payments {"deal_id":"local_69b84c87506936.35318423","contact_id":"13913","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-15 12:48:56] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"13913","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:48:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84c87506936.35318423","contact_didar_id":"13913","title":"معامله سوم 9128483573 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9128483573","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای عبادی","existing_deal":"YES","existing_deal_id":"local_69b84c87506936.35318423","existing_deal_status":"Pending","server_time":"2026-04-15 12:48:56","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:48:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13913","person_id":"19876"}
[2026-04-15 12:48:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84c87506936.35318423","contact_id":"13913","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9128483573 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:48:57","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:48:59] [INFO] Checking activity reminders 
[2026-04-15 12:48:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:48:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:49:00] [INFO] Checking activity reminders 
[2026-04-15 12:49:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:49:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:49:29] [INFO] Checking activity reminders 
[2026-04-15 12:49:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:49:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:49:34] [INFO] Checking activity reminders 
[2026-04-15 12:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:49:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3585","deal_id":"local_699d6e1a08f934.88457745","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:49:48","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:49:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3585","person_id":"15102"}
[2026-04-15 12:49:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3585","is_new_deal":false}
[2026-04-15 12:49:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:49:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:49:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:49:48] [INFO] getContactPrimaryPhone called {"contact_id":"3585"}
[2026-04-15 12:49:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3585","person_id":"15102"}
[2026-04-15 12:49:48] [INFO] getContactPrimaryPhone result {"contact_id":"3585","person_found":true,"primary_phone":"9036482425"}
[2026-04-15 12:49:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9036482425"}
[2026-04-15 12:49:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9036482425","contact_id":"3585","deal_id":"local_699d6e1a08f934.88457745","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:49:48"}
[2026-04-15 12:49:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_699d6e1a08f934.88457745","contact_id":"3585","existing_deal_found":true,"existing_contact_id":"3585","existing_title":"معامله دوم 9036482425","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:49:48"}
[2026-04-15 12:49:48] [INFO] DealController.save validated payments {"deal_id":"local_699d6e1a08f934.88457745","contact_id":"3585","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 12:49:48] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"3585","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:49:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_699d6e1a08f934.88457745","contact_didar_id":"3585","title":"معامله دوم 9036482425 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9036482425","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"اقای بیگی","existing_deal":"YES","existing_deal_id":"local_699d6e1a08f934.88457745","existing_deal_status":"Pending","server_time":"2026-04-15 12:49:48","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:49:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3585","person_id":"15102"}
[2026-04-15 12:49:48] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_699d6e1a08f934.88457745","contact_id":"3585","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9036482425 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:49:48","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:49:54] [INFO] Checking activity reminders 
[2026-04-15 12:49:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:49:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:49:59] [INFO] Checking activity reminders 
[2026-04-15 12:49:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:49:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:50:24] [INFO] Checking activity reminders 
[2026-04-15 12:50:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:50:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:50:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7829","deal_id":"local_69b53b19f19e26.00164464","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:50:28","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-04-15 12:50:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7829","is_new_deal":false}
[2026-04-15 12:50:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:50:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:50:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:50:28] [INFO] getContactPrimaryPhone called {"contact_id":"7829"}
[2026-04-15 12:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-04-15 12:50:28] [INFO] getContactPrimaryPhone result {"contact_id":"7829","person_found":true,"primary_phone":"9039213149"}
[2026-04-15 12:50:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9039213149"}
[2026-04-15 12:50:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9039213149","contact_id":"7829","deal_id":"local_69b53b19f19e26.00164464","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:50:28"}
[2026-04-15 12:50:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b53b19f19e26.00164464","contact_id":"7829","existing_deal_found":true,"existing_contact_id":"7829","existing_title":"معامله دوم 9039213149","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:50:28"}
[2026-04-15 12:50:28] [INFO] DealController.save validated payments {"deal_id":"local_69b53b19f19e26.00164464","contact_id":"7829","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-15 12:50:28] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"7829","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:50:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b53b19f19e26.00164464","contact_didar_id":"7829","title":"معامله دوم 9039213149 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9039213149","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"9039213149","existing_deal":"YES","existing_deal_id":"local_69b53b19f19e26.00164464","existing_deal_status":"Pending","server_time":"2026-04-15 12:50:28","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:50:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7829","person_id":"15136"}
[2026-04-15 12:50:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b53b19f19e26.00164464","contact_id":"7829","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9039213149 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:50:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:50:29] [INFO] Checking activity reminders 
[2026-04-15 12:50:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:50:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:50:54] [INFO] Checking activity reminders 
[2026-04-15 12:50:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:50:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:50:59] [INFO] Checking activity reminders 
[2026-04-15 12:50:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:50:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:51:04] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16320","deal_id":"local_69b5c5e089b653.97465947","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:51:04","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:51:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-04-15 12:51:04] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16320","is_new_deal":false}
[2026-04-15 12:51:04] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:04] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:04] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:04] [INFO] getContactPrimaryPhone called {"contact_id":"16320"}
[2026-04-15 12:51:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-04-15 12:51:04] [INFO] getContactPrimaryPhone result {"contact_id":"16320","person_found":true,"primary_phone":"9133179085"}
[2026-04-15 12:51:04] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9133179085"}
[2026-04-15 12:51:04] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9133179085","contact_id":"16320","deal_id":"local_69b5c5e089b653.97465947","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:51:04"}
[2026-04-15 12:51:04] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c5e089b653.97465947","contact_id":"16320","existing_deal_found":true,"existing_contact_id":"16320","existing_title":"معامله دوم 9133179085","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:51:04"}
[2026-04-15 12:51:04] [INFO] DealController.save validated payments {"deal_id":"local_69b5c5e089b653.97465947","contact_id":"16320","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-15 12:51:04] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"16320","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:51:04] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c5e089b653.97465947","contact_didar_id":"16320","title":"معامله دوم 9133179085 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9133179085","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"9133179085","existing_deal":"YES","existing_deal_id":"local_69b5c5e089b653.97465947","existing_deal_status":"Pending","server_time":"2026-04-15 12:51:04","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:51:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16320","person_id":"16930"}
[2026-04-15 12:51:04] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c5e089b653.97465947","contact_id":"16320","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9133179085 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:51:04","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:51:10] [INFO] Checking activity reminders 
[2026-04-15 12:51:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:51:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:51:34] [INFO] Checking activity reminders 
[2026-04-15 12:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:51:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_69b6a5ebc94507.93462813","deal_id":"local_69b6a5ebd3384","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:51:38","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-04-15 12:51:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_69b6a5ebc94507.93462813","is_new_deal":false}
[2026-04-15 12:51:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:51:38] [INFO] getContactPrimaryPhone called {"contact_id":"local_69b6a5ebc94507.93462813"}
[2026-04-15 12:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-04-15 12:51:38] [INFO] getContactPrimaryPhone result {"contact_id":"local_69b6a5ebc94507.93462813","person_found":true,"primary_phone":"9929960057"}
[2026-04-15 12:51:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9929960057"}
[2026-04-15 12:51:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9929960057","contact_id":"local_69b6a5ebc94507.93462813","deal_id":"local_69b6a5ebd3384","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:51:38"}
[2026-04-15 12:51:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6a5ebd3384","contact_id":"local_69b6a5ebc94507.93462813","existing_deal_found":true,"existing_contact_id":"local_69b6a5ebc94507.93462813","existing_title":"معامله اول 9929960057","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:51:38"}
[2026-04-15 12:51:38] [INFO] DealController.save validated payments {"deal_id":"local_69b6a5ebd3384","contact_id":"local_69b6a5ebc94507.93462813","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 12:51:38] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"local_69b6a5ebc94507.93462813","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:51:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6a5ebd3384","contact_didar_id":"local_69b6a5ebc94507.93462813","title":"معامله اول 9929960057 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9929960057","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"لید جدید","existing_deal":"YES","existing_deal_id":"local_69b6a5ebd3384","existing_deal_status":"Pending","server_time":"2026-04-15 12:51:38","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:51:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69b6a5ebc94507.93462813","person_id":"21865"}
[2026-04-15 12:51:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6a5ebd3384","contact_id":"local_69b6a5ebc94507.93462813","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9929960057 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:51:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:51:42] [INFO] Checking activity reminders 
[2026-04-15 12:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:52:04] [INFO] Checking activity reminders 
[2026-04-15 12:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:52:08] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20862","deal_id":"local_69b5c936d57e04.57248332","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 12:52:08","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 12:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-04-15 12:52:08] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20862","is_new_deal":false}
[2026-04-15 12:52:08] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 12:52:08] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:52:08] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 12:52:08] [INFO] getContactPrimaryPhone called {"contact_id":"20862"}
[2026-04-15 12:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-04-15 12:52:08] [INFO] getContactPrimaryPhone result {"contact_id":"20862","person_found":true,"primary_phone":"9153870719"}
[2026-04-15 12:52:08] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9153870719"}
[2026-04-15 12:52:08] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9153870719","contact_id":"20862","deal_id":"local_69b5c936d57e04.57248332","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:52:08"}
[2026-04-15 12:52:08] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b5c936d57e04.57248332","contact_id":"20862","existing_deal_found":true,"existing_contact_id":"20862","existing_title":"معامله دوم 9153870719","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 12:52:08"}
[2026-04-15 12:52:08] [INFO] DealController.save validated payments {"deal_id":"local_69b5c936d57e04.57248332","contact_id":"20862","payments_count":0,"status":"pending","pipeline_stage":"پشتیبانی"}
[2026-04-15 12:52:08] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"20862","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 12:52:08] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b5c936d57e04.57248332","contact_didar_id":"20862","title":"معامله دوم 9153870719 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9153870719","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پشتیبانی","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"خانم فرخی","existing_deal":"YES","existing_deal_id":"local_69b5c936d57e04.57248332","existing_deal_status":"Pending","server_time":"2026-04-15 12:52:08","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 12:52:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20862","person_id":"17485"}
[2026-04-15 12:52:08] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b5c936d57e04.57248332","contact_id":"20862","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9153870719 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پشتیبانی","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 12:52:08","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 12:52:12] [INFO] Checking activity reminders 
[2026-04-15 12:52:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:52:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:52:34] [INFO] Checking activity reminders 
[2026-04-15 12:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:52:43] [INFO] Checking activity reminders 
[2026-04-15 12:52:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:52:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:53:04] [INFO] Checking activity reminders 
[2026-04-15 12:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:53:13] [INFO] Checking activity reminders 
[2026-04-15 12:53:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:53:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:53:34] [INFO] Checking activity reminders 
[2026-04-15 12:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:53:53] [INFO] Checking activity reminders 
[2026-04-15 12:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:54:04] [INFO] Checking activity reminders 
[2026-04-15 12:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:54:23] [INFO] Checking activity reminders 
[2026-04-15 12:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:54:34] [INFO] Checking activity reminders 
[2026-04-15 12:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:55:04] [INFO] Checking activity reminders 
[2026-04-15 12:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:55:34] [INFO] Checking activity reminders 
[2026-04-15 12:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:55:43] [INFO] Checking activity reminders 
[2026-04-15 12:55:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:55:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:55:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:56:04] [INFO] Checking activity reminders 
[2026-04-15 12:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:56:13] [INFO] Checking activity reminders 
[2026-04-15 12:56:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:56:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:56:34] [INFO] Checking activity reminders 
[2026-04-15 12:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:56:37] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:56:37] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:56:37] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:56:45] [INFO] Checking activity reminders 
[2026-04-15 12:56:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:56:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:56:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_698722605ac306.97992795","person_id":"21582"}
[2026-04-15 12:57:04] [INFO] Checking activity reminders 
[2026-04-15 12:57:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:57:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:57:10] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:57:10] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:57:10] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:57:15] [INFO] Checking activity reminders 
[2026-04-15 12:57:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:57:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:57:28] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 12:57:28] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 12:57:28] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 12:57:34] [INFO] Checking activity reminders 
[2026-04-15 12:57:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:57:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:57:45] [INFO] Checking activity reminders 
[2026-04-15 12:57:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:57:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:58:05] [INFO] Checking activity reminders 
[2026-04-15 12:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:58:23] [INFO] Checking activity reminders 
[2026-04-15 12:58:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:58:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 12:58:29] [INFO] Checking activity reminders 
[2026-04-15 12:58:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 12:58:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:01:24] [INFO] Checking activity reminders 
[2026-04-15 13:01:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:01:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:01:41] [INFO] Checking activity reminders 
[2026-04-15 13:01:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:01:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:01:54] [INFO] Checking activity reminders 
[2026-04-15 13:01:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:01:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:02] [INFO] Checking activity reminders 
[2026-04-15 13:02:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:02:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:04] [INFO] Checking activity reminders 
[2026-04-15 13:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:02:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:32] [INFO] Checking activity reminders 
[2026-04-15 13:02:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:02:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:33] [INFO] Checking activity reminders 
[2026-04-15 13:02:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:02:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:34] [INFO] Checking activity reminders 
[2026-04-15 13:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:02:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2756","person_id":"3920"}
[2026-04-15 13:02:52] [INFO] Activity save request {"post_data":{"contact_id":"1584","deal_id":"local_69995bbdcb56e9.72148068","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیری مانده دستگاه 30 فروردین میزنه گفتم افزایش داشته بزن سریع تحویل بگیری","activity_duration":"10","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:02:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1584","note_was_empty":true}
[2026-04-15 13:02:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"1584","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:52] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-15 13:02:52] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-15 13:02:52] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-15 13:02:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69995bbdcb56e9.72148068","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 13:02:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5b446e64f5.23665995","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5b446e64f5.23665995"}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:02:52] [INFO] Updating virtual stage {"contact_id":"1584","stage_name":"deal_registered","force":false}
[2026-04-15 13:02:52] [INFO] Virtual stage successfully saved {"contact_id":"1584","stage_name":"deal_registered"}
[2026-04-15 13:02:52] [INFO] Virtual stage updated after activity save {"contact_id":"1584"}
[2026-04-15 13:02:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1584","person_id":"14442"}
[2026-04-15 13:03:03] [INFO] Checking activity reminders 
[2026-04-15 13:03:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:03:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:03:04] [INFO] Checking activity reminders 
[2026-04-15 13:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:03:07] [INFO] Activity save request {"post_data":{"contact_id":"9595","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 405 \r\n6 ماهه دوم میگه میخوام کسب و کار داشته باشم \r\nمیگه خیلی استاد گرون کرده \r\nفعلا منتظریم ببینیم چی میشه ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:03:07] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:03:07] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:03:07] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9595","note_was_empty":true}
[2026-04-15 13:03:07] [INFO] Didar write disabled; saving activity locally {"contact_id":"9595","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:03:07] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5b5343a0f3.05307133","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:03:07] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5b5343a0f3.05307133"}
[2026-04-15 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:03:07] [INFO] Updating virtual stage {"contact_id":"9595","stage_name":"deal_registered","force":false}
[2026-04-15 13:03:07] [INFO] Virtual stage successfully saved {"contact_id":"9595","stage_name":"deal_registered"}
[2026-04-15 13:03:07] [INFO] Virtual stage updated after activity save {"contact_id":"9595"}
[2026-04-15 13:03:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9595","person_id":"10851"}
[2026-04-15 13:03:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:03:34] [INFO] Checking activity reminders 
[2026-04-15 13:03:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:03:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:03:47] [INFO] Checking activity reminders 
[2026-04-15 13:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:03:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-15 13:04:04] [INFO] Checking activity reminders 
[2026-04-15 13:04:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:04:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:04:17] [INFO] Checking activity reminders 
[2026-04-15 13:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:04:34] [INFO] Checking activity reminders 
[2026-04-15 13:04:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:04:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:04:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2675","deal_id":"local_69ca525bcfe515.48532960","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:04:38","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 13:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-15 13:04:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2675","is_new_deal":false}
[2026-04-15 13:04:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 13:04:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:04:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:04:38] [INFO] getContactPrimaryPhone called {"contact_id":"2675"}
[2026-04-15 13:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-15 13:04:38] [INFO] getContactPrimaryPhone result {"contact_id":"2675","person_found":true,"primary_phone":"9399745818"}
[2026-04-15 13:04:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9399745818"}
[2026-04-15 13:04:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9399745818","contact_id":"2675","deal_id":"local_69ca525bcfe515.48532960","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 13:04:38"}
[2026-04-15 13:04:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69ca525bcfe515.48532960","contact_id":"2675","existing_deal_found":true,"existing_contact_id":"2675","existing_title":"معامله دوم 9399745818 | کانال VIP با پشتیبانی، کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 13:04:38"}
[2026-04-15 13:04:38] [INFO] DealController.save validated payments {"deal_id":"local_69ca525bcfe515.48532960","contact_id":"2675","payments_count":2,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-15 13:04:38] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"2675","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 13:04:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69ca525bcfe515.48532960","contact_didar_id":"2675","title":"معامله دوم 9399745818 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9399745818","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"پارسایی پارسایی","existing_deal":"YES","existing_deal_id":"local_69ca525bcfe515.48532960","existing_deal_status":"Pending","server_time":"2026-04-15 13:04:38","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 13:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-15 13:04:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69ca525bcfe515.48532960","contact_id":"2675","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9399745818 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":39000000,"server_time":"2026-04-15 13:04:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2675","person_id":"5787"}
[2026-04-15 13:04:45] [INFO] Activity save request {"post_data":{"contact_id":"21015","deal_id":"local_695a6db5951480.18845986","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"به دلیل شرایط مالی فعلا نمیتونم عضو کانال بشم \r\nهر زمان اکی بشه خودم تماس میگیرم \r\nشریکش هم موافقت نکرده ","activity_duration":"4","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:04:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21015","note_was_empty":true}
[2026-04-15 13:04:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"21015","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:45] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-15 13:04:45] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-15 13:04:45] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-15 13:04:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695a6db5951480.18845986","stage":"تماس پیگیری","status_change":null}
[2026-04-15 13:04:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5bb542dcf2.09603529","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5bb542dcf2.09603529"}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:45] [INFO] Updating virtual stage {"contact_id":"21015","stage_name":"deal_registered","force":false}
[2026-04-15 13:04:45] [INFO] Virtual stage successfully saved {"contact_id":"21015","stage_name":"deal_registered"}
[2026-04-15 13:04:45] [INFO] Virtual stage updated after activity save {"contact_id":"21015"}
[2026-04-15 13:04:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:04:47] [INFO] Checking activity reminders 
[2026-04-15 13:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:04:50] [INFO] Checking activity reminders 
[2026-04-15 13:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:05:05] [INFO] Checking activity reminders 
[2026-04-15 13:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:05:20] [INFO] Checking activity reminders 
[2026-04-15 13:05:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:05:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:05:30] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21015","deal_id":"local_695a6db5951480.18845986","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:05:30","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:05:30] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"21015","is_new_deal":false}
[2026-04-15 13:05:30] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:05:30] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:05:30] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:05:30] [INFO] getContactPrimaryPhone called {"contact_id":"21015"}
[2026-04-15 13:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:05:30] [INFO] getContactPrimaryPhone result {"contact_id":"21015","person_found":true,"primary_phone":"9195248554"}
[2026-04-15 13:05:30] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195248554"}
[2026-04-15 13:05:30] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195248554","contact_id":"21015","deal_id":"local_695a6db5951480.18845986","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:05:30"}
[2026-04-15 13:05:30] [INFO] DealController.save existing deal lookup {"deal_id":"local_695a6db5951480.18845986","contact_id":"21015","existing_deal_found":true,"existing_contact_id":"21015","existing_title":"معامله سوم 9195248554 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:05:30"}
[2026-04-15 13:05:30] [INFO] DealController.save validated payments {"deal_id":"local_695a6db5951480.18845986","contact_id":"21015","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 13:05:30] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21015","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:05:30] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695a6db5951480.18845986","contact_didar_id":"21015","title":"معامله سوم 9195248554 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله سوم 9195248554","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی حلوایی","existing_deal":"YES","existing_deal_id":"local_695a6db5951480.18845986","existing_deal_status":"Pending","server_time":"2026-04-15 13:05:30","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:05:30] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695a6db5951480.18845986","contact_id":"21015","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9195248554 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-15 13:05:30","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21015","person_id":"1344"}
[2026-04-15 13:05:35] [INFO] Checking activity reminders 
[2026-04-15 13:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:05:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:05:50] [INFO] Checking activity reminders 
[2026-04-15 13:05:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:05:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:06:05] [INFO] Checking activity reminders 
[2026-04-15 13:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:06:12] [INFO] Activity save request {"post_data":{"contact_id":"6811","deal_id":"local_69494730d2ec50.71270461","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا اردیبهشت تسویه میکنه \r\nسالن تعطیل بود \/ درامد نداشت ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:06:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6811","note_was_empty":true}
[2026-04-15 13:06:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"6811","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:12] [INFO] Updating virtual stage {"contact_id":"6811","stage_name":"deal_registered","force":false}
[2026-04-15 13:06:12] [INFO] Virtual stage successfully saved {"contact_id":"6811","stage_name":"deal_registered"}
[2026-04-15 13:06:12] [INFO] Virtual stage updated after activity save {"contact_id":"6811"}
[2026-04-15 13:06:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69494730d2ec50.71270461","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 13:06:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5c0c1de478.93520241","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5c0c1de478.93520241"}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:12] [INFO] Updating virtual stage {"contact_id":"6811","stage_name":"deal_registered","force":false}
[2026-04-15 13:06:12] [INFO] Virtual stage successfully saved {"contact_id":"6811","stage_name":"deal_registered"}
[2026-04-15 13:06:12] [INFO] Virtual stage updated after activity save {"contact_id":"6811"}
[2026-04-15 13:06:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6811","person_id":"19746"}
[2026-04-15 13:06:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:35] [INFO] Checking activity reminders 
[2026-04-15 13:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:06:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:06:39","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20476","is_new_deal":false}
[2026-04-15 13:06:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 13:06:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:06:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:06:39] [INFO] getContactPrimaryPhone called {"contact_id":"20476"}
[2026-04-15 13:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:39] [INFO] getContactPrimaryPhone result {"contact_id":"20476","person_found":true,"primary_phone":"9197915427"}
[2026-04-15 13:06:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9197915427"}
[2026-04-15 13:06:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9197915427","contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:06:39"}
[2026-04-15 13:06:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","existing_deal_found":true,"existing_contact_id":"20476","existing_title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:06:39"}
[2026-04-15 13:06:39] [INFO] DealController.save validated payments {"deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 13:06:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20476","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:06:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d623fe842fc4.39325062","contact_didar_id":"20476","title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9197915427","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"میلاد شهرزاد","existing_deal":"YES","existing_deal_id":"local_69d623fe842fc4.39325062","existing_deal_status":"Pending","server_time":"2026-04-15 13:06:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d623fe842fc4.39325062","contact_id":"20476","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9197915427 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 13:06:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Activity save request {"post_data":{"contact_id":"20476","deal_id":"local_69d623fe842fc4.39325062","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:06:52] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20476","note_was_empty":true}
[2026-04-15 13:06:52] [INFO] Didar write disabled; saving activity locally {"contact_id":"20476","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-15 13:06:52] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-15 13:06:52] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-15 13:06:52] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d623fe842fc4.39325062","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 13:06:52] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5c34233c07.14403448","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5c34233c07.14403448"}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:06:52] [INFO] Updating virtual stage {"contact_id":"20476","stage_name":"deal_registered","force":false}
[2026-04-15 13:06:52] [INFO] Virtual stage successfully saved {"contact_id":"20476","stage_name":"deal_registered"}
[2026-04-15 13:06:52] [INFO] Virtual stage updated after activity save {"contact_id":"20476"}
[2026-04-15 13:06:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20476","person_id":"350"}
[2026-04-15 13:07:05] [INFO] Checking activity reminders 
[2026-04-15 13:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:07:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:07:35] [INFO] Checking activity reminders 
[2026-04-15 13:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:07:52] [INFO] Checking activity reminders 
[2026-04-15 13:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:07:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"649","person_id":"4729"}
[2026-04-15 13:08:05] [INFO] Checking activity reminders 
[2026-04-15 13:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:08:22] [INFO] Checking activity reminders 
[2026-04-15 13:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:08:35] [INFO] Checking activity reminders 
[2026-04-15 13:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:08:52] [INFO] Checking activity reminders 
[2026-04-15 13:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:09:05] [INFO] Checking activity reminders 
[2026-04-15 13:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:09:35] [INFO] Checking activity reminders 
[2026-04-15 13:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:10:05] [INFO] Checking activity reminders 
[2026-04-15 13:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:10:36] [INFO] Checking activity reminders 
[2026-04-15 13:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:11:06] [INFO] Checking activity reminders 
[2026-04-15 13:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:11:12] [INFO] Checking activity reminders 
[2026-04-15 13:11:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:11:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:11:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:11:34] [INFO] Activity save request {"post_data":{"contact_id":"3464","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:11:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:11:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:11:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3464","note_was_empty":true}
[2026-04-15 13:11:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"3464","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:11:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5d4e2c4597.56497226","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:11:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5d4e2c4597.56497226"}
[2026-04-15 13:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:11:34] [INFO] Updating virtual stage {"contact_id":"3464","stage_name":"deal_registered","force":false}
[2026-04-15 13:11:34] [INFO] Virtual stage successfully saved {"contact_id":"3464","stage_name":"deal_registered"}
[2026-04-15 13:11:34] [INFO] Virtual stage updated after activity save {"contact_id":"3464"}
[2026-04-15 13:11:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3464","person_id":"19481"}
[2026-04-15 13:11:36] [INFO] Checking activity reminders 
[2026-04-15 13:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:11:42] [INFO] Checking activity reminders 
[2026-04-15 13:11:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:11:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:12:06] [INFO] Checking activity reminders 
[2026-04-15 13:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:12:12] [INFO] Checking activity reminders 
[2026-04-15 13:12:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:12:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:12:23] [INFO] Lead update received {"contact_id":"local_69df5340656e19.81834899","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 13:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:12:23] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 13:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:12:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:12:36] [INFO] Checking activity reminders 
[2026-04-15 13:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:12:42] [INFO] Checking activity reminders 
[2026-04-15 13:12:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:12:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:12:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:13:06] [INFO] Checking activity reminders 
[2026-04-15 13:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:13:12] [INFO] Checking activity reminders 
[2026-04-15 13:13:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:13:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:13:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:36] [INFO] Checking activity reminders 
[2026-04-15 13:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:13:42] [INFO] Checking activity reminders 
[2026-04-15 13:13:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:13:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:13:43] [INFO] Activity save request {"post_data":{"contact_id":"local_69df5340656e19.81834899","deal_id":"local_69df53406e255","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا قبل ساعت 5 خودش تماس شلوغ بود","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:13:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69df5340656e19.81834899","note_was_empty":true}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:43] [INFO] Updating virtual stage {"contact_id":"local_69df5340656e19.81834899","stage_name":"new","force":false}
[2026-04-15 13:13:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5340656e19.81834899","stage_name":"new"}
[2026-04-15 13:13:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 13:13:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df53406e255","stage":"تماس پیگیری","status_change":null}
[2026-04-15 13:13:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5dcf133f73.44086252","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5dcf133f73.44086252"}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:43] [INFO] Updating virtual stage {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered","force":false}
[2026-04-15 13:13:43] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered"}
[2026-04-15 13:13:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 13:13:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 13:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:13:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:14:06] [INFO] Checking activity reminders 
[2026-04-15 13:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:14:12] [INFO] Checking activity reminders 
[2026-04-15 13:14:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:14:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:14:37] [INFO] Checking activity reminders 
[2026-04-15 13:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:14:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:14:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:14:42] [INFO] Checking activity reminders 
[2026-04-15 13:14:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:14:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:15:07] [INFO] Checking activity reminders 
[2026-04-15 13:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:15:12] [INFO] Checking activity reminders 
[2026-04-15 13:15:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:15:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:15:29] [INFO] Lead update received {"contact_id":"local_69df5354f22a86.62747611","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 13:15:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:15:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:15:29] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69df5354f22a86.62747611"}
[2026-04-15 13:15:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:15:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:15:37] [INFO] Checking activity reminders 
[2026-04-15 13:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:15:43] [INFO] Checking activity reminders 
[2026-04-15 13:15:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:15:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:16:07] [INFO] Checking activity reminders 
[2026-04-15 13:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:16:13] [INFO] Checking activity reminders 
[2026-04-15 13:16:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:16:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:16:37] [INFO] Checking activity reminders 
[2026-04-15 13:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:16:38] [INFO] Activity save request {"post_data":{"contact_id":"local_69df5354f22a86.62747611","deal_id":"local_69df535503e58","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ساعت 5: 20 تماس شرایط صحبت نداشت","activity_duration":"4","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:16:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69df5354f22a86.62747611","note_was_empty":true}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:38] [INFO] Updating virtual stage {"contact_id":"local_69df5354f22a86.62747611","stage_name":"new","force":false}
[2026-04-15 13:16:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5354f22a86.62747611","stage_name":"new"}
[2026-04-15 13:16:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5354f22a86.62747611"}
[2026-04-15 13:16:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df535503e58","stage":"تماس پیگیری","status_change":null}
[2026-04-15 13:16:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df5e7e7907e8.33580860","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69df5e7e7907e8.33580860"}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:38] [INFO] Updating virtual stage {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered","force":false}
[2026-04-15 13:16:38] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered"}
[2026-04-15 13:16:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5354f22a86.62747611"}
[2026-04-15 13:16:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 13:16:43] [INFO] Checking activity reminders 
[2026-04-15 13:16:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:16:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:17:07] [INFO] Checking activity reminders 
[2026-04-15 13:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:17:13] [INFO] Checking activity reminders 
[2026-04-15 13:17:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:17:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:17:37] [INFO] Checking activity reminders 
[2026-04-15 13:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:17:43] [INFO] Checking activity reminders 
[2026-04-15 13:17:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:17:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:18:07] [INFO] Checking activity reminders 
[2026-04-15 13:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:18:13] [INFO] Checking activity reminders 
[2026-04-15 13:18:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:18:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:18:37] [INFO] Checking activity reminders 
[2026-04-15 13:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:18:43] [INFO] Checking activity reminders 
[2026-04-15 13:18:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:18:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:19:07] [INFO] Checking activity reminders 
[2026-04-15 13:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:19:13] [INFO] Checking activity reminders 
[2026-04-15 13:19:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:19:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:19:37] [INFO] Checking activity reminders 
[2026-04-15 13:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:19:43] [INFO] Checking activity reminders 
[2026-04-15 13:19:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:19:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:20:07] [INFO] Checking activity reminders 
[2026-04-15 13:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:20:13] [INFO] Checking activity reminders 
[2026-04-15 13:20:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:20:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:20:38] [INFO] Checking activity reminders 
[2026-04-15 13:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:20:43] [INFO] Checking activity reminders 
[2026-04-15 13:20:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:20:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:21:08] [INFO] Checking activity reminders 
[2026-04-15 13:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:21:13] [INFO] Checking activity reminders 
[2026-04-15 13:21:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:21:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:21:38] [INFO] Checking activity reminders 
[2026-04-15 13:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:21:43] [INFO] Checking activity reminders 
[2026-04-15 13:21:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:21:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:22:08] [INFO] Checking activity reminders 
[2026-04-15 13:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:22:13] [INFO] Checking activity reminders 
[2026-04-15 13:22:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:22:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:22:38] [INFO] Checking activity reminders 
[2026-04-15 13:22:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:22:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:22:43] [INFO] Checking activity reminders 
[2026-04-15 13:22:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:22:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:23:08] [INFO] Checking activity reminders 
[2026-04-15 13:23:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:23:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:23:14] [INFO] Checking activity reminders 
[2026-04-15 13:23:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:23:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:23:38] [INFO] Checking activity reminders 
[2026-04-15 13:23:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:23:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:23:44] [INFO] Checking activity reminders 
[2026-04-15 13:23:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:23:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:24:08] [INFO] Checking activity reminders 
[2026-04-15 13:24:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:24:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:24:14] [INFO] Checking activity reminders 
[2026-04-15 13:24:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:24:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:24:38] [INFO] Checking activity reminders 
[2026-04-15 13:24:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:24:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:24:44] [INFO] Checking activity reminders 
[2026-04-15 13:24:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:24:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:25:08] [INFO] Checking activity reminders 
[2026-04-15 13:25:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:25:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:25:14] [INFO] Checking activity reminders 
[2026-04-15 13:25:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:25:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:25:38] [INFO] Checking activity reminders 
[2026-04-15 13:25:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:25:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:25:44] [INFO] Checking activity reminders 
[2026-04-15 13:25:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:25:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:09] [INFO] Checking activity reminders 
[2026-04-15 13:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:11] [INFO] Checking activity reminders 
[2026-04-15 13:26:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:14] [INFO] Checking activity reminders 
[2026-04-15 13:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:14] [INFO] Checking activity reminders 
[2026-04-15 13:26:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:37] [INFO] Activity save request {"post_data":{"contact_id":"21143","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کل سرمایه در طلای فیزیکی \r\n3 ماهه کاسبی نداشته \r\nبرای عضویت منتظر نقدینگی \r\nپیام در بله ","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 13:26:37] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:26:37] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 13:26:37] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21143","note_was_empty":true}
[2026-04-15 13:26:37] [INFO] Didar write disabled; saving activity locally {"contact_id":"21143","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:26:37] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df60d57a4652.21237667","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 13:26:37] [INFO] Activity saved successfully {"activity_id":"local_activity_69df60d57a4652.21237667"}
[2026-04-15 13:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 13:26:37] [INFO] Updating virtual stage {"contact_id":"21143","stage_name":"deal_registered","force":false}
[2026-04-15 13:26:37] [INFO] Virtual stage successfully saved {"contact_id":"21143","stage_name":"deal_registered"}
[2026-04-15 13:26:37] [INFO] Virtual stage updated after activity save {"contact_id":"21143"}
[2026-04-15 13:26:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21143","person_id":"6477"}
[2026-04-15 13:26:44] [INFO] Checking activity reminders 
[2026-04-15 13:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:44] [INFO] Checking activity reminders 
[2026-04-15 13:26:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:26:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:26:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:26:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:26:59","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:26:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:26:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9978","is_new_deal":false}
[2026-04-15 13:26:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:26:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:26:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:26:59] [INFO] getContactPrimaryPhone called {"contact_id":"9978"}
[2026-04-15 13:26:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:26:59] [INFO] getContactPrimaryPhone result {"contact_id":"9978","person_found":true,"primary_phone":"9122232815"}
[2026-04-15 13:26:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122232815"}
[2026-04-15 13:26:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122232815","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:26:59"}
[2026-04-15 13:26:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","existing_deal_found":true,"existing_contact_id":"9978","existing_title":"معامله چهارم 9122232815 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:26:59"}
[2026-04-15 13:26:59] [INFO] DealController.save validated payments {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-15 13:26:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9978","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:26:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f9c1e95066.72087931","contact_didar_id":"9978","title":"معامله چهارم 9122232815 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9122232815","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالقیصی","existing_deal":"YES","existing_deal_id":"local_69c7f9c1e95066.72087931","existing_deal_status":"Pending","server_time":"2026-04-15 13:26:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:26:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:26:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9122232815 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-15 13:26:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:26:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:27:14] [INFO] Checking activity reminders 
[2026-04-15 13:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:27:19] [INFO] Checking activity reminders 
[2026-04-15 13:27:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:27:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:27:46] [INFO] Checking activity reminders 
[2026-04-15 13:27:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:27:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:27:49] [INFO] Checking activity reminders 
[2026-04-15 13:27:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:27:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:28:17] [INFO] Checking activity reminders 
[2026-04-15 13:28:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:28:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:28:19] [INFO] Checking activity reminders 
[2026-04-15 13:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:28:40] [INFO] Activity save request {"post_data":{"contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"درگیر فوت اقوام بود \r\nتازه 3 روزه اومده سرکار \r\nپرزنت 6 ماهه \r\n7 م بیعانه \r\nتا 3 اردیبهشت تسویه ","activity_duration":"6","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:28:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9978","note_was_empty":true}
[2026-04-15 13:28:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"9978","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:40] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-04-15 13:28:40] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-04-15 13:28:40] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-04-15 13:28:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9c1e95066.72087931","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 13:28:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df615025a8b2.31415970","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69df615025a8b2.31415970"}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:40] [INFO] Updating virtual stage {"contact_id":"9978","stage_name":"deal_registered","force":false}
[2026-04-15 13:28:40] [INFO] Virtual stage successfully saved {"contact_id":"9978","stage_name":"deal_registered"}
[2026-04-15 13:28:40] [INFO] Virtual stage updated after activity save {"contact_id":"9978"}
[2026-04-15 13:28:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:28:44] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 13:28:45] [INFO] Checking activity reminders 
[2026-04-15 13:28:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:28:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:28:49] [INFO] Checking activity reminders 
[2026-04-15 13:28:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:28:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:29:15] [INFO] Checking activity reminders 
[2026-04-15 13:29:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:29:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:29:19] [INFO] Checking activity reminders 
[2026-04-15 13:29:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:29:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:29:45] [INFO] Checking activity reminders 
[2026-04-15 13:29:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:29:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:29:49] [INFO] Checking activity reminders 
[2026-04-15 13:29:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:29:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:30:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:16] [INFO] Checking activity reminders 
[2026-04-15 13:30:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:30:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:30:19] [INFO] Checking activity reminders 
[2026-04-15 13:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:30:40] [INFO] Activity save request {"post_data":{"contact_id":"9077","deal_id":"local_69491d31c6f1b2.11883553","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:30:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9077","note_was_empty":true}
[2026-04-15 13:30:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"9077","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:40] [INFO] Updating virtual stage {"contact_id":"9077","stage_name":"deal_registered","force":false}
[2026-04-15 13:30:40] [INFO] Virtual stage successfully saved {"contact_id":"9077","stage_name":"deal_registered"}
[2026-04-15 13:30:40] [INFO] Virtual stage updated after activity save {"contact_id":"9077"}
[2026-04-15 13:30:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69491d31c6f1b2.11883553","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 13:30:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df61c85ba202.80976142","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69df61c85ba202.80976142"}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:40] [INFO] Updating virtual stage {"contact_id":"9077","stage_name":"deal_registered","force":false}
[2026-04-15 13:30:40] [INFO] Virtual stage successfully saved {"contact_id":"9077","stage_name":"deal_registered"}
[2026-04-15 13:30:40] [INFO] Virtual stage updated after activity save {"contact_id":"9077"}
[2026-04-15 13:30:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:30:46] [INFO] Checking activity reminders 
[2026-04-15 13:30:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:30:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:30:49] [INFO] Checking activity reminders 
[2026-04-15 13:30:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:30:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:31:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP","contact_id":"9077","deal_id":"local_69491d31c6f1b2.11883553","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:31:10","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:31:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP","contact_id":"9077","is_new_deal":false}
[2026-04-15 13:31:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP"}
[2026-04-15 13:31:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP"}
[2026-04-15 13:31:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP"}
[2026-04-15 13:31:10] [INFO] getContactPrimaryPhone called {"contact_id":"9077"}
[2026-04-15 13:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:31:10] [INFO] getContactPrimaryPhone result {"contact_id":"9077","person_found":true,"primary_phone":"9159865794"}
[2026-04-15 13:31:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9159865794"}
[2026-04-15 13:31:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9159865794","contact_id":"9077","deal_id":"local_69491d31c6f1b2.11883553","is_new_deal":false,"incoming_title":"کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:31:10"}
[2026-04-15 13:31:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69491d31c6f1b2.11883553","contact_id":"9077","existing_deal_found":true,"existing_contact_id":"9077","existing_title":"معامله اول 9159865794 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:31:10"}
[2026-04-15 13:31:10] [INFO] DealController.save validated payments {"deal_id":"local_69491d31c6f1b2.11883553","contact_id":"9077","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 13:31:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9077","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:31:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69491d31c6f1b2.11883553","contact_didar_id":"9077","title":"معامله اول 9159865794 | کانال VIP","base_title_used":"معامله اول 9159865794","services_text":"کانال VIP","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"صادق زاده","existing_deal":"YES","existing_deal_id":"local_69491d31c6f1b2.11883553","existing_deal_status":"Pending","server_time":"2026-04-15 13:31:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:31:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69491d31c6f1b2.11883553","contact_id":"9077","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9159865794 | کانال VIP","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 13:31:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:31:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9077","person_id":"3870"}
[2026-04-15 13:31:16] [INFO] Checking activity reminders 
[2026-04-15 13:31:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:31:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:31:19] [INFO] Checking activity reminders 
[2026-04-15 13:31:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:31:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:31:46] [INFO] Checking activity reminders 
[2026-04-15 13:31:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:31:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:31:49] [INFO] Checking activity reminders 
[2026-04-15 13:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:32:16] [INFO] Checking activity reminders 
[2026-04-15 13:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:32:19] [INFO] Checking activity reminders 
[2026-04-15 13:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:32:46] [INFO] Checking activity reminders 
[2026-04-15 13:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:32:50] [INFO] Checking activity reminders 
[2026-04-15 13:32:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:32:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:33:16] [INFO] Checking activity reminders 
[2026-04-15 13:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:33:20] [INFO] Checking activity reminders 
[2026-04-15 13:33:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:33:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:33:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:33:46] [INFO] Checking activity reminders 
[2026-04-15 13:33:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:33:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:33:50] [INFO] Checking activity reminders 
[2026-04-15 13:33:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:33:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:34:03] [INFO] Activity save request {"post_data":{"contact_id":"7038","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:34:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:34:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:34:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7038","note_was_empty":true}
[2026-04-15 13:34:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"7038","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:34:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df6293ac6a58.86172685","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:34:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69df6293ac6a58.86172685"}
[2026-04-15 13:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:34:03] [INFO] Updating virtual stage {"contact_id":"7038","stage_name":"deal_registered","force":false}
[2026-04-15 13:34:03] [INFO] Virtual stage successfully saved {"contact_id":"7038","stage_name":"deal_registered"}
[2026-04-15 13:34:03] [INFO] Virtual stage updated after activity save {"contact_id":"7038"}
[2026-04-15 13:34:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7038","person_id":"16759"}
[2026-04-15 13:34:16] [INFO] Checking activity reminders 
[2026-04-15 13:34:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:34:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:34:20] [INFO] Checking activity reminders 
[2026-04-15 13:34:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:34:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:34:47] [INFO] Checking activity reminders 
[2026-04-15 13:34:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:34:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:34:50] [INFO] Checking activity reminders 
[2026-04-15 13:34:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:34:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:35:17] [INFO] Checking activity reminders 
[2026-04-15 13:35:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:35:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:35:20] [INFO] Checking activity reminders 
[2026-04-15 13:35:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:35:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:35:47] [INFO] Checking activity reminders 
[2026-04-15 13:35:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:35:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:35:50] [INFO] Checking activity reminders 
[2026-04-15 13:35:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:35:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:36:17] [INFO] Checking activity reminders 
[2026-04-15 13:36:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:36:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:36:20] [INFO] Checking activity reminders 
[2026-04-15 13:36:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:36:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:36:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:36:47] [INFO] Checking activity reminders 
[2026-04-15 13:36:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:36:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:36:50] [INFO] Checking activity reminders 
[2026-04-15 13:36:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:36:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:36:54] [INFO] Activity save request {"post_data":{"contact_id":"13563","deal_id":"local_69b42efeb6fac0.18833320","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیری تسویه ارسال پیامک","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:36:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:36:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:36:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13563","note_was_empty":true}
[2026-04-15 13:36:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"13563","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:36:54] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-15 13:36:54] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-15 13:36:54] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-15 13:36:54] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b42efeb6fac0.18833320","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 13:36:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df633e3811b6.13328734","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:36:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69df633e3811b6.13328734"}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:36:54] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-15 13:36:54] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-15 13:36:54] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-15 13:36:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-15 13:37:17] [INFO] Checking activity reminders 
[2026-04-15 13:37:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:37:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:37:20] [INFO] Checking activity reminders 
[2026-04-15 13:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:37:45] [INFO] Activity save request {"post_data":{"contact_id":"local_69885c87379a31.92714857","deal_id":"local_69885c8739292","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:37:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69885c87379a31.92714857","note_was_empty":true}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:45] [INFO] Updating virtual stage {"contact_id":"local_69885c87379a31.92714857","stage_name":"deal_registered","force":false}
[2026-04-15 13:37:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69885c87379a31.92714857","stage_name":"deal_registered"}
[2026-04-15 13:37:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69885c87379a31.92714857"}
[2026-04-15 13:37:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69885c8739292","stage":"تماس پیگیری","status_change":null}
[2026-04-15 13:37:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df63716df733.61996924","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69df63716df733.61996924"}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:45] [INFO] Updating virtual stage {"contact_id":"local_69885c87379a31.92714857","stage_name":"deal_registered","force":false}
[2026-04-15 13:37:45] [INFO] Virtual stage successfully saved {"contact_id":"local_69885c87379a31.92714857","stage_name":"deal_registered"}
[2026-04-15 13:37:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_69885c87379a31.92714857"}
[2026-04-15 13:37:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:37:47] [INFO] Checking activity reminders 
[2026-04-15 13:37:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:37:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:37:51] [INFO] Checking activity reminders 
[2026-04-15 13:37:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:37:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:37:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:38:17] [INFO] Checking activity reminders 
[2026-04-15 13:38:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:38:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:38:19] [INFO] DealController.save start {"is_new":false,"incoming_title":"vip","contact_id":"local_69885c87379a31.92714857","deal_id":"local_69885c8739292","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:38:19","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:38:19] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"vip","contact_id":"local_69885c87379a31.92714857","is_new_deal":false}
[2026-04-15 13:38:19] [INFO] extractPhoneFromDealTitle called {"input_title":"vip"}
[2026-04-15 13:38:19] [INFO] extractPhoneFromDealTitle processing {"title_part":"vip"}
[2026-04-15 13:38:19] [INFO] extractPhoneFromDealTitle no match found {"title_part":"vip"}
[2026-04-15 13:38:19] [INFO] getContactPrimaryPhone called {"contact_id":"local_69885c87379a31.92714857"}
[2026-04-15 13:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:38:19] [INFO] getContactPrimaryPhone result {"contact_id":"local_69885c87379a31.92714857","person_found":true,"primary_phone":"9124403638"}
[2026-04-15 13:38:19] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9124403638"}
[2026-04-15 13:38:19] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9124403638","contact_id":"local_69885c87379a31.92714857","deal_id":"local_69885c8739292","is_new_deal":false,"incoming_title":"vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:38:19"}
[2026-04-15 13:38:19] [INFO] DealController.save existing deal lookup {"deal_id":"local_69885c8739292","contact_id":"local_69885c87379a31.92714857","existing_deal_found":true,"existing_contact_id":"local_69885c87379a31.92714857","existing_title":"معامله اول 9124403638 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:38:19"}
[2026-04-15 13:38:19] [INFO] DealController.save validated payments {"deal_id":"local_69885c8739292","contact_id":"local_69885c87379a31.92714857","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 13:38:19] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69885c87379a31.92714857","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:38:19] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69885c8739292","contact_didar_id":"local_69885c87379a31.92714857","title":"معامله اول 9124403638 | vip","base_title_used":"معامله اول 9124403638","services_text":"vip","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["vip"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محسن کشاورزیان","existing_deal":"YES","existing_deal_id":"local_69885c8739292","existing_deal_status":"Pending","server_time":"2026-04-15 13:38:19","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:38:19] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69885c8739292","contact_id":"local_69885c87379a31.92714857","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9124403638 | vip","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 13:38:19","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:38:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69885c87379a31.92714857","person_id":"21624"}
[2026-04-15 13:38:21] [INFO] Checking activity reminders 
[2026-04-15 13:38:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:38:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:38:47] [INFO] Checking activity reminders 
[2026-04-15 13:38:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:38:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:38:51] [INFO] Checking activity reminders 
[2026-04-15 13:38:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:38:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:39:18] [INFO] Checking activity reminders 
[2026-04-15 13:39:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:39:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:39:21] [INFO] Checking activity reminders 
[2026-04-15 13:39:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:39:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:39:48] [INFO] Checking activity reminders 
[2026-04-15 13:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:39:51] [INFO] Checking activity reminders 
[2026-04-15 13:39:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:39:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:40:21] [INFO] Checking activity reminders 
[2026-04-15 13:40:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:40:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:40:22] [INFO] Checking activity reminders 
[2026-04-15 13:40:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:40:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:40:40] [INFO] Activity save request {"post_data":{"contact_id":"21663","deal_id":"local_69bbeaae569565.94495590","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ارسال ش کارت \/ معامله ماشین فروخته 800 طلا میخواد بگیره \r\nگفتم بگیر بیا کانال ببین استاد میگه کدوم بازار تمدید کنی \r\nرفته بود کوچینگ اکبریان از مسیح جوادی \r\n6ماهه میزنه 39 شهریور تسویه","activity_duration":"30","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:40:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21663","note_was_empty":true}
[2026-04-15 13:40:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"21663","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:40] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-15 13:40:40] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-15 13:40:40] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-15 13:40:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbeaae569565.94495590","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 13:40:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df64202a04f8.80346373","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69df64202a04f8.80346373"}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:40] [INFO] Updating virtual stage {"contact_id":"21663","stage_name":"deal_registered","force":false}
[2026-04-15 13:40:40] [INFO] Virtual stage successfully saved {"contact_id":"21663","stage_name":"deal_registered"}
[2026-04-15 13:40:40] [INFO] Virtual stage updated after activity save {"contact_id":"21663"}
[2026-04-15 13:40:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21663","person_id":"6367"}
[2026-04-15 13:40:51] [INFO] Checking activity reminders 
[2026-04-15 13:40:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:40:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:40:53] [INFO] Checking activity reminders 
[2026-04-15 13:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:41:21] [INFO] Checking activity reminders 
[2026-04-15 13:41:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:41:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:41:23] [INFO] Checking activity reminders 
[2026-04-15 13:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:41:51] [INFO] Checking activity reminders 
[2026-04-15 13:41:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:41:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:41:53] [INFO] Checking activity reminders 
[2026-04-15 13:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:42:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:42:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:42:21] [INFO] Checking activity reminders 
[2026-04-15 13:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:42:23] [INFO] Checking activity reminders 
[2026-04-15 13:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:42:51] [INFO] Checking activity reminders 
[2026-04-15 13:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:42:53] [INFO] Checking activity reminders 
[2026-04-15 13:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:43:21] [INFO] Checking activity reminders 
[2026-04-15 13:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:43:23] [INFO] Checking activity reminders 
[2026-04-15 13:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:43:32] [INFO] Activity save request {"post_data":{"contact_id":"local_69916201b8ff81.49897806","deal_id":"local_69916201ba244","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:32] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:43:32] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:32] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69916201b8ff81.49897806","note_was_empty":true}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:32] [INFO] Updating virtual stage {"contact_id":"local_69916201b8ff81.49897806","stage_name":"new","force":false}
[2026-04-15 13:43:32] [INFO] Virtual stage successfully saved {"contact_id":"local_69916201b8ff81.49897806","stage_name":"new"}
[2026-04-15 13:43:32] [INFO] Virtual stage updated after activity save {"contact_id":"local_69916201b8ff81.49897806"}
[2026-04-15 13:43:32] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69916201ba244","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 13:43:32] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df64cc8d6224.17695248","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:32] [INFO] Activity saved successfully {"activity_id":"local_activity_69df64cc8d6224.17695248"}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:32] [INFO] Updating virtual stage {"contact_id":"local_69916201b8ff81.49897806","stage_name":"deal_registered","force":false}
[2026-04-15 13:43:32] [INFO] Virtual stage successfully saved {"contact_id":"local_69916201b8ff81.49897806","stage_name":"deal_registered"}
[2026-04-15 13:43:32] [INFO] Virtual stage updated after activity save {"contact_id":"local_69916201b8ff81.49897806"}
[2026-04-15 13:43:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69916201b8ff81.49897806","person_id":"21677"}
[2026-04-15 13:43:51] [INFO] Checking activity reminders 
[2026-04-15 13:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:43:53] [INFO] Checking activity reminders 
[2026-04-15 13:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:44:22] [INFO] Checking activity reminders 
[2026-04-15 13:44:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:44:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:44:23] [INFO] Checking activity reminders 
[2026-04-15 13:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:44:52] [INFO] Checking activity reminders 
[2026-04-15 13:44:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:44:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:44:53] [INFO] Checking activity reminders 
[2026-04-15 13:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:45:22] [INFO] Checking activity reminders 
[2026-04-15 13:45:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:45:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:45:24] [INFO] Checking activity reminders 
[2026-04-15 13:45:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:45:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:45:52] [INFO] Checking activity reminders 
[2026-04-15 13:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:45:54] [INFO] Checking activity reminders 
[2026-04-15 13:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:46:22] [INFO] Checking activity reminders 
[2026-04-15 13:46:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:46:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:46:24] [INFO] Checking activity reminders 
[2026-04-15 13:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:46:52] [INFO] Checking activity reminders 
[2026-04-15 13:46:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:46:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:46:54] [INFO] Checking activity reminders 
[2026-04-15 13:46:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:46:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:46:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:47:06] [INFO] Checking activity reminders 
[2026-04-15 13:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:47:22] [INFO] Checking activity reminders 
[2026-04-15 13:47:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:47:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:47:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:47:36] [INFO] Checking activity reminders 
[2026-04-15 13:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:47:52] [INFO] Checking activity reminders 
[2026-04-15 13:47:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:47:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:47:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:47:55","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:47:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20970","is_new_deal":false}
[2026-04-15 13:47:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 13:47:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:47:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 13:47:55] [INFO] getContactPrimaryPhone called {"contact_id":"20970"}
[2026-04-15 13:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:47:55] [INFO] getContactPrimaryPhone result {"contact_id":"20970","person_found":true,"primary_phone":"9185967466"}
[2026-04-15 13:47:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9185967466"}
[2026-04-15 13:47:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9185967466","contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:47:55"}
[2026-04-15 13:47:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","existing_deal_found":true,"existing_contact_id":"20970","existing_title":"معامله دوم 9185967466 | vip","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:47:55"}
[2026-04-15 13:47:55] [INFO] DealController.save validated payments {"deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 13:47:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20970","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:47:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_698722f1620aa4.34822223","contact_didar_id":"20970","title":"معامله دوم 9185967466 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9185967466","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رامین سبزواری","existing_deal":"YES","existing_deal_id":"local_698722f1620aa4.34822223","existing_deal_status":"Pending","server_time":"2026-04-15 13:47:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:47:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9185967466 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 13:47:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:47:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:48:07] [INFO] Checking activity reminders 
[2026-04-15 13:48:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:48:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:48:22] [INFO] Checking activity reminders 
[2026-04-15 13:48:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:48:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:48:37] [INFO] Checking activity reminders 
[2026-04-15 13:48:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:48:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:48:52] [INFO] Checking activity reminders 
[2026-04-15 13:48:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:48:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:49:00] [INFO] Activity save request {"post_data":{"contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:00] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:49:00] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:00] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20970","note_was_empty":true}
[2026-04-15 13:49:00] [INFO] Didar write disabled; saving activity locally {"contact_id":"20970","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:00] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-15 13:49:00] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-15 13:49:00] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-15 13:49:00] [INFO] Pipeline stage updated after activity save {"deal_id":"local_698722f1620aa4.34822223","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 13:49:00] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df6614201013.70677036","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:00] [INFO] Activity saved successfully {"activity_id":"local_activity_69df6614201013.70677036"}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:00] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-15 13:49:00] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-15 13:49:00] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-15 13:49:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 13:49:07] [INFO] Checking activity reminders 
[2026-04-15 13:49:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:49:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:49:22] [INFO] Checking activity reminders 
[2026-04-15 13:49:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:49:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:49:37] [INFO] Checking activity reminders 
[2026-04-15 13:49:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:49:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:49:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:49:52] [INFO] Checking activity reminders 
[2026-04-15 13:49:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:49:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:50:07] [INFO] Checking activity reminders 
[2026-04-15 13:50:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:50:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:50:22] [INFO] Checking activity reminders 
[2026-04-15 13:50:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:50:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:50:37] [INFO] Checking activity reminders 
[2026-04-15 13:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:50:53] [INFO] Checking activity reminders 
[2026-04-15 13:50:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:50:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:07] [INFO] Checking activity reminders 
[2026-04-15 13:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 13:51:22","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 13:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:51:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"9978","is_new_deal":false}
[2026-04-15 13:51:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:51:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:51:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 13:51:22] [INFO] getContactPrimaryPhone called {"contact_id":"9978"}
[2026-04-15 13:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:51:22] [INFO] getContactPrimaryPhone result {"contact_id":"9978","person_found":true,"primary_phone":"9122232815"}
[2026-04-15 13:51:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122232815"}
[2026-04-15 13:51:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122232815","contact_id":"9978","deal_id":"local_69c7f9c1e95066.72087931","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:51:22"}
[2026-04-15 13:51:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","existing_deal_found":true,"existing_contact_id":"9978","existing_title":"معامله چهارم 9122232815 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 13:51:22"}
[2026-04-15 13:51:22] [INFO] DealController.save validated payments {"deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-15 13:51:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9978","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 13:51:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c7f9c1e95066.72087931","contact_didar_id":"9978","title":"معامله چهارم 9122232815 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله چهارم 9122232815","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":27000000,"payment_amount":7000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ابوالقیصی","existing_deal":"YES","existing_deal_id":"local_69c7f9c1e95066.72087931","existing_deal_status":"Pending","server_time":"2026-04-15 13:51:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 13:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:51:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c7f9c1e95066.72087931","contact_id":"9978","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9122232815 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":27000000,"payment_amount":7000000,"server_time":"2026-04-15 13:51:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 13:51:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 13:51:23] [INFO] Checking activity reminders 
[2026-04-15 13:51:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:37] [INFO] Checking activity reminders 
[2026-04-15 13:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:44] [INFO] Checking activity reminders 
[2026-04-15 13:51:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:47] [INFO] Checking activity reminders 
[2026-04-15 13:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:51:53] [INFO] Checking activity reminders 
[2026-04-15 13:51:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:51:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:52:17] [INFO] Checking activity reminders 
[2026-04-15 13:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:52:23] [INFO] Checking activity reminders 
[2026-04-15 13:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:52:29] [INFO] Checking activity reminders 
[2026-04-15 13:52:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:52:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:52:30] [INFO] Checking activity reminders 
[2026-04-15 13:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:52:53] [INFO] Checking activity reminders 
[2026-04-15 13:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:53:00] [INFO] Checking activity reminders 
[2026-04-15 13:53:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:53:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:53:23] [INFO] Checking activity reminders 
[2026-04-15 13:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:53:30] [INFO] Checking activity reminders 
[2026-04-15 13:53:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:53:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:53:53] [INFO] Checking activity reminders 
[2026-04-15 13:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:53:59] [INFO] Activity save request {"post_data":{"contact_id":"6779","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"10 میلیارد شریکش پولشو برده \r\nخیلی شرایط مالی بد\r\n7 میلیارد بدهی داره \/4 م پرداخت کرد \r\nپرزنت 6 ماهه \r\nمیگه کلا چک بدم گفتم نذداریم \r\n.27 م یکجا پرداخت \r\nتماس میگیره \r\nمشاوره حضوری با استاد ","activity_duration":"8","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 13:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 13:53:59] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 13:53:59] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 13:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 13:53:59] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6779","note_was_empty":true}
[2026-04-15 13:53:59] [INFO] Didar write disabled; saving activity locally {"contact_id":"6779","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 13:53:59] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df673f5a0d74.52114225","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 13:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 13:53:59] [INFO] Activity saved successfully {"activity_id":"local_activity_69df673f5a0d74.52114225"}
[2026-04-15 13:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 13:53:59] [INFO] Updating virtual stage {"contact_id":"6779","stage_name":"deal_registered","force":false}
[2026-04-15 13:53:59] [INFO] Virtual stage successfully saved {"contact_id":"6779","stage_name":"deal_registered"}
[2026-04-15 13:53:59] [INFO] Virtual stage updated after activity save {"contact_id":"6779"}
[2026-04-15 13:53:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 13:54:01] [INFO] Checking activity reminders 
[2026-04-15 13:54:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:54:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:54:23] [INFO] Checking activity reminders 
[2026-04-15 13:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:54:31] [INFO] Checking activity reminders 
[2026-04-15 13:54:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:54:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:54:53] [INFO] Checking activity reminders 
[2026-04-15 13:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:55:01] [INFO] Checking activity reminders 
[2026-04-15 13:55:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:55:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:55:23] [INFO] Checking activity reminders 
[2026-04-15 13:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:55:31] [INFO] Checking activity reminders 
[2026-04-15 13:55:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:55:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:55:53] [INFO] Checking activity reminders 
[2026-04-15 13:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:56:01] [INFO] Checking activity reminders 
[2026-04-15 13:56:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:56:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:56:23] [INFO] Checking activity reminders 
[2026-04-15 13:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:56:31] [INFO] Checking activity reminders 
[2026-04-15 13:56:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:56:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:56:54] [INFO] Checking activity reminders 
[2026-04-15 13:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:57:01] [INFO] Checking activity reminders 
[2026-04-15 13:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:57:24] [INFO] Checking activity reminders 
[2026-04-15 13:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:57:31] [INFO] Checking activity reminders 
[2026-04-15 13:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:57:54] [INFO] Checking activity reminders 
[2026-04-15 13:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:58:01] [INFO] Checking activity reminders 
[2026-04-15 13:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:58:24] [INFO] Checking activity reminders 
[2026-04-15 13:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:58:32] [INFO] Checking activity reminders 
[2026-04-15 13:58:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:58:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:58:54] [INFO] Checking activity reminders 
[2026-04-15 13:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:59:02] [INFO] Checking activity reminders 
[2026-04-15 13:59:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:59:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:59:24] [INFO] Checking activity reminders 
[2026-04-15 13:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 13:59:32] [INFO] Checking activity reminders 
[2026-04-15 13:59:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 13:59:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:00:02] [INFO] Checking activity reminders 
[2026-04-15 14:00:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:00:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:00:32] [INFO] Checking activity reminders 
[2026-04-15 14:00:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:00:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:01:02] [INFO] Checking activity reminders 
[2026-04-15 14:01:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:01:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:01:32] [INFO] Checking activity reminders 
[2026-04-15 14:01:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:01:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:02:02] [INFO] Checking activity reminders 
[2026-04-15 14:02:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:02:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:02:32] [INFO] Checking activity reminders 
[2026-04-15 14:02:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:02:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:03:02] [INFO] Checking activity reminders 
[2026-04-15 14:03:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:03:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:03:32] [INFO] Checking activity reminders 
[2026-04-15 14:03:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:03:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:04:02] [INFO] Checking activity reminders 
[2026-04-15 14:04:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:04:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:04:32] [INFO] Checking activity reminders 
[2026-04-15 14:04:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:04:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:05:03] [INFO] Checking activity reminders 
[2026-04-15 14:05:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:05:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:10:36] [INFO] Checking activity reminders 
[2026-04-15 14:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:11:06] [INFO] Checking activity reminders 
[2026-04-15 14:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:11:37] [INFO] Checking activity reminders 
[2026-04-15 14:11:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:11:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:12:07] [INFO] Checking activity reminders 
[2026-04-15 14:12:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:12:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:12:37] [INFO] Checking activity reminders 
[2026-04-15 14:12:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:12:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:13:07] [INFO] Checking activity reminders 
[2026-04-15 14:13:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:13:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:13:37] [INFO] Checking activity reminders 
[2026-04-15 14:13:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:13:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:14:07] [INFO] Checking activity reminders 
[2026-04-15 14:14:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:14:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:14:37] [INFO] Checking activity reminders 
[2026-04-15 14:14:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:14:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:15:07] [INFO] Checking activity reminders 
[2026-04-15 14:15:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:15:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:15:37] [INFO] Checking activity reminders 
[2026-04-15 14:15:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:15:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:16:07] [INFO] Checking activity reminders 
[2026-04-15 14:16:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:16:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:16:37] [INFO] Checking activity reminders 
[2026-04-15 14:16:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:16:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:17:07] [INFO] Checking activity reminders 
[2026-04-15 14:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:17:38] [INFO] Checking activity reminders 
[2026-04-15 14:17:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:17:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:18:08] [INFO] Checking activity reminders 
[2026-04-15 14:18:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:18:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:18:38] [INFO] Checking activity reminders 
[2026-04-15 14:18:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:18:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:18:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:18:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 14:18:53] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:19:08] [INFO] Checking activity reminders 
[2026-04-15 14:19:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:19:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:19:38] [INFO] Checking activity reminders 
[2026-04-15 14:19:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:19:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:20:08] [INFO] Checking activity reminders 
[2026-04-15 14:20:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:20:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:20:38] [INFO] Checking activity reminders 
[2026-04-15 14:20:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:20:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:21:08] [INFO] Checking activity reminders 
[2026-04-15 14:21:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:21:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:21:38] [INFO] Checking activity reminders 
[2026-04-15 14:21:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:21:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:22:08] [INFO] Checking activity reminders 
[2026-04-15 14:22:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:22:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:25:45] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:45] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 14:25:45] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-15 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:46] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-15 14:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:49] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:51] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:25:58] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 14:25:58] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 14:25:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 14:25:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 14:25:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 14:25:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 14:26:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:26:29] [INFO] Checking activity reminders 
[2026-04-15 14:26:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:26:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:26:40] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"4723","deal_id":"local_694283cf45c345.84978021","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 14:26:40","session_id":"df8v8cu15ujoe8kro5kuvkv1jm"}
[2026-04-15 14:26:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:26:40] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"4723","is_new_deal":false}
[2026-04-15 14:26:40] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 14:26:40] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:26:40] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:26:40] [INFO] getContactPrimaryPhone called {"contact_id":"4723"}
[2026-04-15 14:26:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:26:40] [INFO] getContactPrimaryPhone result {"contact_id":"4723","person_found":true,"primary_phone":"9173517819"}
[2026-04-15 14:26:40] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9173517819"}
[2026-04-15 14:26:40] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9173517819","contact_id":"4723","deal_id":"local_694283cf45c345.84978021","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 14:26:40"}
[2026-04-15 14:26:40] [INFO] DealController.save existing deal lookup {"deal_id":"local_694283cf45c345.84978021","contact_id":"4723","existing_deal_found":true,"existing_contact_id":"4723","existing_title":"معامله اول 9173517819 | معامله اول 9173517819","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-15 14:26:40"}
[2026-04-15 14:26:40] [INFO] DealController.save validated payments {"deal_id":"local_694283cf45c345.84978021","contact_id":"4723","payments_count":1,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-15 14:26:40] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_id":"4723","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-15 14:26:40] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694283cf45c345.84978021","contact_didar_id":"4723","title":"معامله اول 9173517819 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9173517819","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","contact_name":"تصدیقی اباده","existing_deal":"YES","existing_deal_id":"local_694283cf45c345.84978021","existing_deal_status":"Won","server_time":"2026-04-15 14:26:40","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-15 14:26:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:26:40] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694283cf45c345.84978021","contact_id":"4723","contact_owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9173517819 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-15 14:26:40","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 14:26:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:26:59] [INFO] Checking activity reminders 
[2026-04-15 14:26:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:26:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:27:17] [INFO] Checking activity reminders 
[2026-04-15 14:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:27:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:27:51] [INFO] Checking activity reminders 
[2026-04-15 14:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:28:19] [INFO] Checking activity reminders 
[2026-04-15 14:28:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:28:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:28:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4723","person_id":"3094"}
[2026-04-15 14:29:53] [INFO] Checking activity reminders 
[2026-04-15 14:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:31:03] [INFO] Checking activity reminders 
[2026-04-15 14:31:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:31:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:31:07] [INFO] Checking activity reminders 
[2026-04-15 14:31:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:31:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:31:08] [INFO] Checking activity reminders 
[2026-04-15 14:31:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:31:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:31:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9978","person_id":"14282"}
[2026-04-15 14:31:38] [INFO] Checking activity reminders 
[2026-04-15 14:31:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:31:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:32:08] [INFO] Checking activity reminders 
[2026-04-15 14:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:32:38] [INFO] Checking activity reminders 
[2026-04-15 14:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:33:08] [INFO] Checking activity reminders 
[2026-04-15 14:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:33:38] [INFO] Checking activity reminders 
[2026-04-15 14:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:34:08] [INFO] Checking activity reminders 
[2026-04-15 14:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:34:39] [INFO] Checking activity reminders 
[2026-04-15 14:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:35:09] [INFO] Checking activity reminders 
[2026-04-15 14:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:35:39] [INFO] Checking activity reminders 
[2026-04-15 14:35:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:35:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:36:09] [INFO] Checking activity reminders 
[2026-04-15 14:36:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:36:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:36:39] [INFO] Checking activity reminders 
[2026-04-15 14:36:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:36:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:37:09] [INFO] Checking activity reminders 
[2026-04-15 14:37:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:37:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:37:29] [INFO] Checking activity reminders 
[2026-04-15 14:37:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:37:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:37:33] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 14:37:39] [INFO] Checking activity reminders 
[2026-04-15 14:37:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:37:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:38:03] [INFO] Checking activity reminders 
[2026-04-15 14:38:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:38:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:38:09] [INFO] Checking activity reminders 
[2026-04-15 14:38:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:38:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:38:34] [INFO] Checking activity reminders 
[2026-04-15 14:38:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:38:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:38:39] [INFO] Checking activity reminders 
[2026-04-15 14:38:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:38:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:39:05] [INFO] Checking activity reminders 
[2026-04-15 14:39:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:39:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:39:10] [INFO] Checking activity reminders 
[2026-04-15 14:39:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:39:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:39:35] [INFO] Checking activity reminders 
[2026-04-15 14:39:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:39:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:39:40] [INFO] Checking activity reminders 
[2026-04-15 14:39:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:39:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:40:06] [INFO] Checking activity reminders 
[2026-04-15 14:40:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:40:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:40:10] [INFO] Checking activity reminders 
[2026-04-15 14:40:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:40:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:40:40] [INFO] Checking activity reminders 
[2026-04-15 14:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:41:10] [INFO] Checking activity reminders 
[2026-04-15 14:41:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:41:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:41:40] [INFO] Checking activity reminders 
[2026-04-15 14:41:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:41:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:41:45] [INFO] Checking activity reminders 
[2026-04-15 14:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:42:00] [INFO] Checking activity reminders 
[2026-04-15 14:42:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:42:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:42:30] [INFO] Checking activity reminders 
[2026-04-15 14:42:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:42:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:42:38] [INFO] Activity save request {"post_data":{"contact_id":"11923","deal_id":"local_69d4dcbcbe7ef8.38675734","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک داد جاده ام \/ خودم تماس میگیرم ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:42:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11923","note_was_empty":true}
[2026-04-15 14:42:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"11923","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:38] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-15 14:42:38] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-15 14:42:38] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-15 14:42:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4dcbcbe7ef8.38675734","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 14:42:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df72a63c22a5.75897494","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69df72a63c22a5.75897494"}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:38] [INFO] Updating virtual stage {"contact_id":"11923","stage_name":"deal_registered","force":false}
[2026-04-15 14:42:38] [INFO] Virtual stage successfully saved {"contact_id":"11923","stage_name":"deal_registered"}
[2026-04-15 14:42:38] [INFO] Virtual stage updated after activity save {"contact_id":"11923"}
[2026-04-15 14:42:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11923","person_id":"3869"}
[2026-04-15 14:42:43] [INFO] Checking activity reminders 
[2026-04-15 14:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:42:46] [INFO] Checking activity reminders 
[2026-04-15 14:42:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:42:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:42:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6779","person_id":"20814"}
[2026-04-15 14:43:00] [INFO] Checking activity reminders 
[2026-04-15 14:43:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:02] [INFO] Checking activity reminders 
[2026-04-15 14:43:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:24] [INFO] Activity save request {"post_data":{"contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:24] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:43:24] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:24] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20970","note_was_empty":true}
[2026-04-15 14:43:24] [INFO] Didar write disabled; saving activity locally {"contact_id":"20970","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:24] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-15 14:43:24] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-15 14:43:24] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-15 14:43:24] [INFO] Pipeline stage updated after activity save {"deal_id":"local_698722f1620aa4.34822223","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 14:43:24] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df72d451c670.06200582","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:24] [INFO] Activity saved successfully {"activity_id":"local_activity_69df72d451c670.06200582"}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:24] [INFO] Updating virtual stage {"contact_id":"20970","stage_name":"deal_registered","force":false}
[2026-04-15 14:43:24] [INFO] Virtual stage successfully saved {"contact_id":"20970","stage_name":"deal_registered"}
[2026-04-15 14:43:24] [INFO] Virtual stage updated after activity save {"contact_id":"20970"}
[2026-04-15 14:43:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:30] [INFO] Checking activity reminders 
[2026-04-15 14:43:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:32] [INFO] Checking activity reminders 
[2026-04-15 14:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 14:43:38","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 14:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20970","is_new_deal":false}
[2026-04-15 14:43:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 14:43:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:43:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:43:38] [INFO] getContactPrimaryPhone called {"contact_id":"20970"}
[2026-04-15 14:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:38] [INFO] getContactPrimaryPhone result {"contact_id":"20970","person_found":true,"primary_phone":"9185967466"}
[2026-04-15 14:43:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9185967466"}
[2026-04-15 14:43:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9185967466","contact_id":"20970","deal_id":"local_698722f1620aa4.34822223","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:43:38"}
[2026-04-15 14:43:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","existing_deal_found":true,"existing_contact_id":"20970","existing_title":"معامله دوم 9185967466 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:43:38"}
[2026-04-15 14:43:38] [INFO] DealController.save validated payments {"deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 14:43:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20970","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 14:43:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_698722f1620aa4.34822223","contact_didar_id":"20970","title":"معامله دوم 9185967466 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9185967466","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"رامین سبزواری","existing_deal":"YES","existing_deal_id":"local_698722f1620aa4.34822223","existing_deal_status":"Pending","server_time":"2026-04-15 14:43:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 14:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_698722f1620aa4.34822223","contact_id":"20970","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9185967466 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 14:43:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 14:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20970","person_id":"4290"}
[2026-04-15 14:43:42] [INFO] Checking activity reminders 
[2026-04-15 14:43:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:43] [INFO] Checking activity reminders 
[2026-04-15 14:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:43:45] [INFO] Checking activity reminders 
[2026-04-15 14:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:44:02] [INFO] Checking activity reminders 
[2026-04-15 14:44:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:44:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:44:15] [INFO] Checking activity reminders 
[2026-04-15 14:44:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:44:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:44:32] [INFO] Checking activity reminders 
[2026-04-15 14:44:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:44:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:44:45] [INFO] Checking activity reminders 
[2026-04-15 14:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:44:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:02] [INFO] Checking activity reminders 
[2026-04-15 14:45:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:45:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:45:15] [INFO] Activity save request {"post_data":{"contact_id":"5884","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:45:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"5884","note_was_empty":true}
[2026-04-15 14:45:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"5884","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:45:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df734357b1f6.97686787","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69df734357b1f6.97686787"}
[2026-04-15 14:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:15] [INFO] Updating virtual stage {"contact_id":"5884","stage_name":"deal_registered","force":false}
[2026-04-15 14:45:15] [INFO] Virtual stage successfully saved {"contact_id":"5884","stage_name":"deal_registered"}
[2026-04-15 14:45:15] [INFO] Virtual stage updated after activity save {"contact_id":"5884"}
[2026-04-15 14:45:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"5884","person_id":"19898"}
[2026-04-15 14:45:15] [INFO] Checking activity reminders 
[2026-04-15 14:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:45:32] [INFO] Checking activity reminders 
[2026-04-15 14:45:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:45:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:45:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:45:47] [INFO] Checking activity reminders 
[2026-04-15 14:45:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:45:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:46:02] [INFO] Checking activity reminders 
[2026-04-15 14:46:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:46:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:46:17] [INFO] Checking activity reminders 
[2026-04-15 14:46:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:46:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:46:32] [INFO] Checking activity reminders 
[2026-04-15 14:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:46:47] [INFO] Checking activity reminders 
[2026-04-15 14:46:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:46:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:47:02] [INFO] Checking activity reminders 
[2026-04-15 14:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:47:17] [INFO] Checking activity reminders 
[2026-04-15 14:47:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:47:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:47:47] [INFO] Checking activity reminders 
[2026-04-15 14:47:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:47:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:48:17] [INFO] Checking activity reminders 
[2026-04-15 14:48:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:48:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:48:47] [INFO] Checking activity reminders 
[2026-04-15 14:48:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:48:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:49:01] [INFO] Checking activity reminders 
[2026-04-15 14:49:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:49:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:49:17] [INFO] Checking activity reminders 
[2026-04-15 14:49:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:49:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:49:31] [INFO] Checking activity reminders 
[2026-04-15 14:49:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:49:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:49:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:49:47] [INFO] Checking activity reminders 
[2026-04-15 14:49:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:49:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:50:01] [INFO] Checking activity reminders 
[2026-04-15 14:50:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:50:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:50:17] [INFO] Checking activity reminders 
[2026-04-15 14:50:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:50:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:50:31] [INFO] Checking activity reminders 
[2026-04-15 14:50:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:50:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:50:47] [INFO] Checking activity reminders 
[2026-04-15 14:50:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:50:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:51:01] [INFO] Checking activity reminders 
[2026-04-15 14:51:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:51:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:51:11] [INFO] Activity save request {"post_data":{"contact_id":"1213","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال \r\nخرید ملک و فروش طلا \r\nجواب استاد براش ارسال کردم \r\n","activity_duration":"3","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:51:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:51:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:51:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"1213","note_was_empty":true}
[2026-04-15 14:51:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"1213","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:51:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df74a706eac3.42307128","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:51:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69df74a706eac3.42307128"}
[2026-04-15 14:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:51:11] [INFO] Updating virtual stage {"contact_id":"1213","stage_name":"with_purchase","force":false}
[2026-04-15 14:51:11] [INFO] Virtual stage successfully saved {"contact_id":"1213","stage_name":"with_purchase"}
[2026-04-15 14:51:11] [INFO] Virtual stage updated after activity save {"contact_id":"1213"}
[2026-04-15 14:51:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1213","person_id":"18846"}
[2026-04-15 14:51:18] [INFO] Checking activity reminders 
[2026-04-15 14:51:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:51:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:51:48] [INFO] Checking activity reminders 
[2026-04-15 14:51:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:51:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:52:18] [INFO] Checking activity reminders 
[2026-04-15 14:52:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:52:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:52:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:52:33] [INFO] Checking activity reminders 
[2026-04-15 14:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:52:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"15094","deal_id":"local_69b0a8e8d448b8.95253221","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 14:52:42","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 14:52:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:52:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"15094","is_new_deal":false}
[2026-04-15 14:52:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 14:52:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:52:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:52:42] [INFO] getContactPrimaryPhone called {"contact_id":"15094"}
[2026-04-15 14:52:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:52:42] [INFO] getContactPrimaryPhone result {"contact_id":"15094","person_found":true,"primary_phone":"9113760141"}
[2026-04-15 14:52:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9113760141"}
[2026-04-15 14:52:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9113760141","contact_id":"15094","deal_id":"local_69b0a8e8d448b8.95253221","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:52:42"}
[2026-04-15 14:52:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","existing_deal_found":true,"existing_contact_id":"15094","existing_title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:52:42"}
[2026-04-15 14:52:42] [INFO] DealController.save validated payments {"deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-15 14:52:42] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15094","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 14:52:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b0a8e8d448b8.95253221","contact_didar_id":"15094","title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9113760141","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای رستمی","existing_deal":"YES","existing_deal_id":"local_69b0a8e8d448b8.95253221","existing_deal_status":"Pending","server_time":"2026-04-15 14:52:42","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 14:52:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:52:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b0a8e8d448b8.95253221","contact_id":"15094","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9113760141 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 14:52:42","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 14:52:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:52:48] [INFO] Checking activity reminders 
[2026-04-15 14:52:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:52:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:03] [INFO] Checking activity reminders 
[2026-04-15 14:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:03] [INFO] Activity save request {"post_data":{"contact_id":"15094","deal_id":"local_69b0a8e8d448b8.95253221","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس \r\nپیامک \/ اصلا جاب نمیده ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:53:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15094","note_was_empty":true}
[2026-04-15 14:53:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"15094","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:03] [INFO] Updating virtual stage {"contact_id":"15094","stage_name":"deal_registered","force":false}
[2026-04-15 14:53:03] [INFO] Virtual stage successfully saved {"contact_id":"15094","stage_name":"deal_registered"}
[2026-04-15 14:53:03] [INFO] Virtual stage updated after activity save {"contact_id":"15094"}
[2026-04-15 14:53:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b0a8e8d448b8.95253221","stage":"تماس پیگیری","status_change":null}
[2026-04-15 14:53:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7517b861b4.51190834","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7517b861b4.51190834"}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:03] [INFO] Updating virtual stage {"contact_id":"15094","stage_name":"deal_registered","force":false}
[2026-04-15 14:53:03] [INFO] Virtual stage successfully saved {"contact_id":"15094","stage_name":"deal_registered"}
[2026-04-15 14:53:03] [INFO] Virtual stage updated after activity save {"contact_id":"15094"}
[2026-04-15 14:53:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15094","person_id":"11718"}
[2026-04-15 14:53:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:18] [INFO] Checking activity reminders 
[2026-04-15 14:53:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:53:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:34] [INFO] Activity save request {"post_data":{"contact_id":"4070","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:53:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4070","note_was_empty":true}
[2026-04-15 14:53:34] [INFO] Didar write disabled; saving activity locally {"contact_id":"4070","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:53:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df75369aff25.10049278","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69df75369aff25.10049278"}
[2026-04-15 14:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:34] [INFO] Updating virtual stage {"contact_id":"4070","stage_name":"deal_registered","force":false}
[2026-04-15 14:53:34] [INFO] Virtual stage successfully saved {"contact_id":"4070","stage_name":"deal_registered"}
[2026-04-15 14:53:34] [INFO] Virtual stage updated after activity save {"contact_id":"4070"}
[2026-04-15 14:53:34] [INFO] Checking activity reminders 
[2026-04-15 14:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 14:53:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:53:48] [INFO] Checking activity reminders 
[2026-04-15 14:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:48] [INFO] Checking activity reminders 
[2026-04-15 14:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:53:58] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 14:53:58] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 14:53:58] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 14:53:59] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 14:53:59] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 14:53:59] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 14:53:59] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 14:54:04] [INFO] Checking activity reminders 
[2026-04-15 14:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:18] [INFO] Checking activity reminders 
[2026-04-15 14:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:54:28] [INFO] Lead update received {"contact_id":"21012","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 14:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:54:28] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21012"}
[2026-04-15 14:54:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:54:29] [INFO] Checking activity reminders 
[2026-04-15 14:54:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:32] [INFO] Checking activity reminders 
[2026-04-15 14:54:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:34] [INFO] Activity save request {"post_data":{"contact_id":"local_69dc9d2e6210c3.45414163","deal_id":"local_69dc9d2e63fc8","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"چک وصول نشده برای تسویه به مشکل خورده \r\nدر اولین وصولی تسویه میکنه ","activity_duration":"6","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:54:34] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69dc9d2e6210c3.45414163","note_was_empty":true}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Updating virtual stage {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered","force":false}
[2026-04-15 14:54:34] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered"}
[2026-04-15 14:54:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-15 14:54:34] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69dc9d2e63fc8","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 14:54:34] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df75721387d9.70792539","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Activity saved successfully {"activity_id":"local_activity_69df75721387d9.70792539"}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Updating virtual stage {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered","force":false}
[2026-04-15 14:54:34] [INFO] Virtual stage successfully saved {"contact_id":"local_69dc9d2e6210c3.45414163","stage_name":"deal_registered"}
[2026-04-15 14:54:34] [INFO] Virtual stage updated after activity save {"contact_id":"local_69dc9d2e6210c3.45414163"}
[2026-04-15 14:54:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69dc9d2e6210c3.45414163","person_id":"22143"}
[2026-04-15 14:54:34] [INFO] Checking activity reminders 
[2026-04-15 14:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:54:48] [INFO] Checking activity reminders 
[2026-04-15 14:54:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:54:49] [INFO] Lead update received {"contact_id":"15975","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 14:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:54:49] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15975"}
[2026-04-15 14:54:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:54:54] [INFO] Checking activity reminders 
[2026-04-15 14:54:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:54:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:55:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 14:55:09] [INFO] Activity save request {"post_data":{"contact_id":"19118","deal_id":"local_695cd2b26deef5.40218974","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:09] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:55:09] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:09] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"19118","note_was_empty":true}
[2026-04-15 14:55:09] [INFO] Didar write disabled; saving activity locally {"contact_id":"19118","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:09] [INFO] Updating virtual stage {"contact_id":"19118","stage_name":"deal_registered","force":false}
[2026-04-15 14:55:09] [INFO] Virtual stage successfully saved {"contact_id":"19118","stage_name":"deal_registered"}
[2026-04-15 14:55:09] [INFO] Virtual stage updated after activity save {"contact_id":"19118"}
[2026-04-15 14:55:09] [INFO] Pipeline stage updated after activity save {"deal_id":"local_695cd2b26deef5.40218974","stage":"تماس پیگیری","status_change":null}
[2026-04-15 14:55:09] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df75952b94b5.90382993","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:09] [INFO] Activity saved successfully {"activity_id":"local_activity_69df75952b94b5.90382993"}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:09] [INFO] Updating virtual stage {"contact_id":"19118","stage_name":"deal_registered","force":false}
[2026-04-15 14:55:09] [INFO] Virtual stage successfully saved {"contact_id":"19118","stage_name":"deal_registered"}
[2026-04-15 14:55:09] [INFO] Virtual stage updated after activity save {"contact_id":"19118"}
[2026-04-15 14:55:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:13] [INFO] Lead update received {"contact_id":"1008","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 14:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 14:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 14:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 14:55:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1008"}
[2026-04-15 14:55:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 14:55:18] [INFO] Checking activity reminders 
[2026-04-15 14:55:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:55:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:55:25] [INFO] Checking activity reminders 
[2026-04-15 14:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:55:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 14:55:28] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"19118","deal_id":"local_695cd2b26deef5.40218974","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 14:55:28","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 14:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"19118","is_new_deal":false}
[2026-04-15 14:55:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 14:55:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:55:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:55:28] [INFO] getContactPrimaryPhone called {"contact_id":"19118"}
[2026-04-15 14:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:28] [INFO] getContactPrimaryPhone result {"contact_id":"19118","person_found":true,"primary_phone":"9120929968"}
[2026-04-15 14:55:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9120929968"}
[2026-04-15 14:55:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9120929968","contact_id":"19118","deal_id":"local_695cd2b26deef5.40218974","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:55:28"}
[2026-04-15 14:55:28] [INFO] DealController.save existing deal lookup {"deal_id":"local_695cd2b26deef5.40218974","contact_id":"19118","existing_deal_found":true,"existing_contact_id":"19118","existing_title":"معامله اول 9120929968 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:55:28"}
[2026-04-15 14:55:28] [INFO] DealController.save validated payments {"deal_id":"local_695cd2b26deef5.40218974","contact_id":"19118","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 14:55:28] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"19118","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 14:55:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_695cd2b26deef5.40218974","contact_didar_id":"19118","title":"معامله اول 9120929968 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9120929968","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مجتبی رستمی","existing_deal":"YES","existing_deal_id":"local_695cd2b26deef5.40218974","existing_deal_status":"Pending","server_time":"2026-04-15 14:55:28","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 14:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:28] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_695cd2b26deef5.40218974","contact_id":"19118","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9120929968 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 14:55:28","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 14:55:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19118","person_id":"13910"}
[2026-04-15 14:55:34] [INFO] Lead update received {"contact_id":"7841","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 14:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 14:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 14:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 14:55:34] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"7841"}
[2026-04-15 14:55:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 14:55:46] [INFO] Checking activity reminders 
[2026-04-15 14:55:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:55:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:55:48] [INFO] Checking activity reminders 
[2026-04-15 14:55:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:55:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:55:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:56:05] [INFO] Checking activity reminders 
[2026-04-15 14:56:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:56:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:56:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:16] [INFO] Checking activity reminders 
[2026-04-15 14:56:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:56:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:56:18] [INFO] Lead update received {"contact_id":"1356","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 14:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"1356"}
[2026-04-15 14:56:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 14:56:18] [INFO] Checking activity reminders 
[2026-04-15 14:56:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:56:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:56:35] [INFO] Checking activity reminders 
[2026-04-15 14:56:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:56:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:56:43] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 14:56:48] [INFO] Checking activity reminders 
[2026-04-15 14:56:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:56:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:56:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:57:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 14:57:13] [INFO] Checking activity reminders 
[2026-04-15 14:57:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:57:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:57:19] [INFO] Checking activity reminders 
[2026-04-15 14:57:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:57:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:57:44] [INFO] Checking activity reminders 
[2026-04-15 14:57:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:57:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:57:49] [INFO] Checking activity reminders 
[2026-04-15 14:57:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:57:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:58:14] [INFO] Checking activity reminders 
[2026-04-15 14:58:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:58:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:58:19] [INFO] Checking activity reminders 
[2026-04-15 14:58:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:58:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:58:47] [INFO] Checking activity reminders 
[2026-04-15 14:58:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:58:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:58:49] [INFO] Checking activity reminders 
[2026-04-15 14:58:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:58:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:59:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 14:59:17] [INFO] Checking activity reminders 
[2026-04-15 14:59:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:59:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:59:19] [INFO] Checking activity reminders 
[2026-04-15 14:59:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:59:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:59:25] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2868","deal_id":"2842","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 14:59:25","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 14:59:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2868","is_new_deal":false}
[2026-04-15 14:59:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 14:59:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:59:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 14:59:25] [INFO] getContactPrimaryPhone called {"contact_id":"2868"}
[2026-04-15 14:59:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:25] [INFO] getContactPrimaryPhone result {"contact_id":"2868","person_found":true,"primary_phone":"9140814461"}
[2026-04-15 14:59:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9140814461"}
[2026-04-15 14:59:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9140814461","contact_id":"2868","deal_id":"2842","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:59:25"}
[2026-04-15 14:59:25] [INFO] DealController.save existing deal lookup {"deal_id":"2842","contact_id":"2868","existing_deal_found":true,"existing_contact_id":"2868","existing_title":"معامله فردین ربیعی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 14:59:25"}
[2026-04-15 14:59:25] [INFO] DealController.save validated payments {"deal_id":"2842","contact_id":"2868","payments_count":2,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-15 14:59:25] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2868","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 14:59:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"2842","contact_didar_id":"2868","title":"معامله فردین ربیعی | کانال VIP با پشتیبانی","base_title_used":"معامله فردین ربیعی","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"فردین ربیعی","existing_deal":"YES","existing_deal_id":"2842","existing_deal_status":"Pending","server_time":"2026-04-15 14:59:25","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 14:59:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:25] [INFO] Deal success processed {"contact_id":"2868","person_name":"فردین ربیعی","products_count":1}
[2026-04-15 14:59:25] [INFO] ensureDealProductsFromText: products synced {"deal_id":"2842","product_ids":[23]}
[2026-04-15 14:59:25] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"2842","contact_id":"2868","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله فردین ربیعی | کانال VIP با پشتیبانی","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-15 14:59:25","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 14:59:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:25] [INFO] Updating virtual stage {"contact_id":"2868","stage_name":"with_purchase","force":true}
[2026-04-15 14:59:25] [INFO] Virtual stage successfully saved {"contact_id":"2868","stage_name":"with_purchase"}
[2026-04-15 14:59:25] [INFO] Moved contact out of kariz after successful deal {"contact_id":"2868","deal_id":"2842","target_stage":"with_purchase"}
[2026-04-15 14:59:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:47] [INFO] Checking activity reminders 
[2026-04-15 14:59:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:59:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:59:49] [INFO] Checking activity reminders 
[2026-04-15 14:59:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 14:59:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 14:59:54] [INFO] Activity save request {"post_data":{"contact_id":"2868","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا پایان ماه چک وصول میشه ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 14:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:54] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 14:59:54] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 14:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:54] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2868","note_was_empty":true}
[2026-04-15 14:59:54] [INFO] Didar write disabled; saving activity locally {"contact_id":"2868","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 14:59:54] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df76b2e4cb54.71422878","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 14:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:54] [INFO] Activity saved successfully {"activity_id":"local_activity_69df76b2e4cb54.71422878"}
[2026-04-15 14:59:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 14:59:54] [INFO] Updating virtual stage {"contact_id":"2868","stage_name":"with_purchase","force":false}
[2026-04-15 14:59:54] [INFO] Virtual stage successfully saved {"contact_id":"2868","stage_name":"with_purchase"}
[2026-04-15 14:59:54] [INFO] Virtual stage updated after activity save {"contact_id":"2868"}
[2026-04-15 14:59:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2868","person_id":"17982"}
[2026-04-15 15:00:17] [INFO] Checking activity reminders 
[2026-04-15 15:00:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:00:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:00:19] [INFO] Checking activity reminders 
[2026-04-15 15:00:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:00:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:00:47] [INFO] Checking activity reminders 
[2026-04-15 15:00:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:00:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:00:49] [INFO] Checking activity reminders 
[2026-04-15 15:00:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:00:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:01:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 15:01:17] [INFO] Checking activity reminders 
[2026-04-15 15:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:01:19] [INFO] Checking activity reminders 
[2026-04-15 15:01:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:01:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:01:22] [INFO] Lead update received {"contact_id":"21132","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 15:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 15:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 15:01:22] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"21132"}
[2026-04-15 15:01:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21132","person_id":"19489"}
[2026-04-15 15:01:47] [INFO] Checking activity reminders 
[2026-04-15 15:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:01:49] [INFO] Checking activity reminders 
[2026-04-15 15:01:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:01:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:01:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:02:14] [INFO] Activity save request {"post_data":{"contact_id":"15975","deal_id":"local_69c871c870d9e8.36262570","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"کانال هست \/ تسویه گفته بوده 20 اردیبهشت چک داره 22اردیبهشت تسویه میکنه \/ گفت احتمالا یکشنبه 25ت دیگه میزنه اگر نه کلا 22 اردیبهشت تسویه","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:02:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"15975","note_was_empty":true}
[2026-04-15 15:02:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"15975","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:14] [INFO] Updating virtual stage {"contact_id":"15975","stage_name":"deal_registered","force":false}
[2026-04-15 15:02:14] [INFO] Virtual stage successfully saved {"contact_id":"15975","stage_name":"deal_registered"}
[2026-04-15 15:02:14] [INFO] Virtual stage updated after activity save {"contact_id":"15975"}
[2026-04-15 15:02:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c871c870d9e8.36262570","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:02:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df773e5b8145.83646481","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69df773e5b8145.83646481"}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:14] [INFO] Updating virtual stage {"contact_id":"15975","stage_name":"deal_registered","force":false}
[2026-04-15 15:02:14] [INFO] Virtual stage successfully saved {"contact_id":"15975","stage_name":"deal_registered"}
[2026-04-15 15:02:14] [INFO] Virtual stage updated after activity save {"contact_id":"15975"}
[2026-04-15 15:02:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15975","person_id":"17599"}
[2026-04-15 15:02:17] [INFO] Checking activity reminders 
[2026-04-15 15:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:02:19] [INFO] Checking activity reminders 
[2026-04-15 15:02:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:02:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:02:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:02:50] [INFO] Checking activity reminders 
[2026-04-15 15:02:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:02:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:03:18] [INFO] Checking activity reminders 
[2026-04-15 15:03:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:03:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:03:20] [INFO] Checking activity reminders 
[2026-04-15 15:03:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:03:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:03:48] [INFO] Checking activity reminders 
[2026-04-15 15:03:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:03:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:03:50] [INFO] Checking activity reminders 
[2026-04-15 15:03:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:03:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:04:20] [INFO] Checking activity reminders 
[2026-04-15 15:04:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:04:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:04:25] [INFO] Activity save request {"post_data":{"contact_id":"20184","deal_id":"local_69d0a26dd56516.92024036","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پشت فرمان بود \r\nشرایط صحبت داشت \r\nخودش تماس میگیره ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:04:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20184","note_was_empty":true}
[2026-04-15 15:04:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"20184","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:25] [INFO] Updating virtual stage {"contact_id":"20184","stage_name":"deal_registered","force":false}
[2026-04-15 15:04:25] [INFO] Virtual stage successfully saved {"contact_id":"20184","stage_name":"deal_registered"}
[2026-04-15 15:04:25] [INFO] Virtual stage updated after activity save {"contact_id":"20184"}
[2026-04-15 15:04:25] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d0a26dd56516.92024036","stage":"تماس پیگیری","status_change":null}
[2026-04-15 15:04:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df77c1157a49.04878961","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69df77c1157a49.04878961"}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:25] [INFO] Updating virtual stage {"contact_id":"20184","stage_name":"deal_registered","force":false}
[2026-04-15 15:04:25] [INFO] Virtual stage successfully saved {"contact_id":"20184","stage_name":"deal_registered"}
[2026-04-15 15:04:25] [INFO] Virtual stage updated after activity save {"contact_id":"20184"}
[2026-04-15 15:04:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20184","person_id":"20490"}
[2026-04-15 15:04:50] [INFO] Checking activity reminders 
[2026-04-15 15:04:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:04:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:04:51] [INFO] Checking activity reminders 
[2026-04-15 15:04:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:04:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:05:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:05:21] [INFO] Checking activity reminders 
[2026-04-15 15:05:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:05:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:05:22] [INFO] Checking activity reminders 
[2026-04-15 15:05:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:05:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:05:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:05:51] [INFO] Checking activity reminders 
[2026-04-15 15:05:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:05:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:05:52] [INFO] Checking activity reminders 
[2026-04-15 15:05:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:05:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:06:22] [INFO] Checking activity reminders 
[2026-04-15 15:06:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:06:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:06:23] [INFO] Checking activity reminders 
[2026-04-15 15:06:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:06:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:06:39] [INFO] Activity save request {"post_data":{"contact_id":"12530","deal_id":"local_6947efbdf0c4a1.13407050","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:06:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12530","note_was_empty":true}
[2026-04-15 15:06:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"12530","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:39] [INFO] Updating virtual stage {"contact_id":"12530","stage_name":"deal_registered","force":false}
[2026-04-15 15:06:39] [INFO] Virtual stage successfully saved {"contact_id":"12530","stage_name":"deal_registered"}
[2026-04-15 15:06:39] [INFO] Virtual stage updated after activity save {"contact_id":"12530"}
[2026-04-15 15:06:39] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6947efbdf0c4a1.13407050","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 15:06:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df78475b5c47.21602958","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69df78475b5c47.21602958"}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:39] [INFO] Updating virtual stage {"contact_id":"12530","stage_name":"deal_registered","force":false}
[2026-04-15 15:06:39] [INFO] Virtual stage successfully saved {"contact_id":"12530","stage_name":"deal_registered"}
[2026-04-15 15:06:39] [INFO] Virtual stage updated after activity save {"contact_id":"12530"}
[2026-04-15 15:06:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:51] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"12530","deal_id":"local_6947efbdf0c4a1.13407050","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:06:51","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 15:06:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:51] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"12530","is_new_deal":false}
[2026-04-15 15:06:51] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 15:06:51] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:06:51] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:06:51] [INFO] getContactPrimaryPhone called {"contact_id":"12530"}
[2026-04-15 15:06:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:51] [INFO] getContactPrimaryPhone result {"contact_id":"12530","person_found":true,"primary_phone":"9129097426"}
[2026-04-15 15:06:51] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9129097426"}
[2026-04-15 15:06:51] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9129097426","contact_id":"12530","deal_id":"local_6947efbdf0c4a1.13407050","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:06:51"}
[2026-04-15 15:06:51] [INFO] DealController.save existing deal lookup {"deal_id":"local_6947efbdf0c4a1.13407050","contact_id":"12530","existing_deal_found":true,"existing_contact_id":"12530","existing_title":"معامله اول 9129097426 | CIP، کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:06:51"}
[2026-04-15 15:06:51] [INFO] DealController.save validated payments {"deal_id":"local_6947efbdf0c4a1.13407050","contact_id":"12530","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 15:06:51] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"12530","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:06:51] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6947efbdf0c4a1.13407050","contact_didar_id":"12530","title":"معامله اول 9129097426 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9129097426","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"علی وردی","existing_deal":"YES","existing_deal_id":"local_6947efbdf0c4a1.13407050","existing_deal_status":"Pending","server_time":"2026-04-15 15:06:51","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 15:06:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:51] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6947efbdf0c4a1.13407050","contact_id":"12530","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9129097426 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 15:06:51","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:06:51] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12530","person_id":"19729"}
[2026-04-15 15:06:52] [INFO] Checking activity reminders 
[2026-04-15 15:06:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:06:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:06:53] [INFO] Checking activity reminders 
[2026-04-15 15:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:07:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:07:22] [INFO] Checking activity reminders 
[2026-04-15 15:07:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:07:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:07:23] [INFO] Checking activity reminders 
[2026-04-15 15:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:07:52] [INFO] Checking activity reminders 
[2026-04-15 15:07:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:07:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:07:53] [INFO] Checking activity reminders 
[2026-04-15 15:07:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:07:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:08:05] [INFO] Activity save request {"post_data":{"contact_id":"1008","deal_id":"local_69b82286ead6c9.24459219","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پیگیری تسویه عصر تماس زد","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:08:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1008","note_was_empty":true}
[2026-04-15 15:08:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"1008","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:05] [INFO] Updating virtual stage {"contact_id":"1008","stage_name":"deal_registered","force":false}
[2026-04-15 15:08:05] [INFO] Virtual stage successfully saved {"contact_id":"1008","stage_name":"deal_registered"}
[2026-04-15 15:08:05] [INFO] Virtual stage updated after activity save {"contact_id":"1008"}
[2026-04-15 15:08:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b82286ead6c9.24459219","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:08:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df789d93b874.75759806","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69df789d93b874.75759806"}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:05] [INFO] Updating virtual stage {"contact_id":"1008","stage_name":"deal_registered","force":false}
[2026-04-15 15:08:05] [INFO] Virtual stage successfully saved {"contact_id":"1008","stage_name":"deal_registered"}
[2026-04-15 15:08:05] [INFO] Virtual stage updated after activity save {"contact_id":"1008"}
[2026-04-15 15:08:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 15:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:08:22] [INFO] Checking activity reminders 
[2026-04-15 15:08:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:08:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:08:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"3023","deal_id":"local_6947e8d5134f78.57702327","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:08:22","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 15:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:08:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"3023","is_new_deal":false}
[2026-04-15 15:08:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 15:08:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:08:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:08:22] [INFO] getContactPrimaryPhone called {"contact_id":"3023"}
[2026-04-15 15:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:08:22] [INFO] getContactPrimaryPhone result {"contact_id":"3023","person_found":true,"primary_phone":"9177478208"}
[2026-04-15 15:08:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177478208"}
[2026-04-15 15:08:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177478208","contact_id":"3023","deal_id":"local_6947e8d5134f78.57702327","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:08:22"}
[2026-04-15 15:08:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_6947e8d5134f78.57702327","contact_id":"3023","existing_deal_found":true,"existing_contact_id":"3023","existing_title":"معامله اول 9177478208 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:08:22"}
[2026-04-15 15:08:22] [INFO] DealController.save validated payments {"deal_id":"local_6947e8d5134f78.57702327","contact_id":"3023","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-15 15:08:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"3023","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:08:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6947e8d5134f78.57702327","contact_didar_id":"3023","title":"معامله اول 9177478208 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9177478208","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیررضا رحیمی","existing_deal":"YES","existing_deal_id":"local_6947e8d5134f78.57702327","existing_deal_status":"Pending","server_time":"2026-04-15 15:08:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 15:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:08:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6947e8d5134f78.57702327","contact_id":"3023","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9177478208 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 15:08:22","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:08:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:08:24] [INFO] Checking activity reminders 
[2026-04-15 15:08:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:08:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:08:52] [INFO] Checking activity reminders 
[2026-04-15 15:08:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:08:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:08:54] [INFO] Checking activity reminders 
[2026-04-15 15:08:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:08:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:09:22] [INFO] Checking activity reminders 
[2026-04-15 15:09:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:09:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:09:24] [INFO] Checking activity reminders 
[2026-04-15 15:09:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:09:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:09:52] [INFO] Checking activity reminders 
[2026-04-15 15:09:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:09:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:09:54] [INFO] Checking activity reminders 
[2026-04-15 15:09:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:09:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:10:22] [INFO] Checking activity reminders 
[2026-04-15 15:10:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:10:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:10:24] [INFO] Checking activity reminders 
[2026-04-15 15:10:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:10:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:10:52] [INFO] Checking activity reminders 
[2026-04-15 15:10:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:10:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:10:55] [INFO] Checking activity reminders 
[2026-04-15 15:10:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:10:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:11:14] [INFO] Activity save request {"post_data":{"contact_id":"3023","deal_id":"local_6947e8d5134f78.57702327","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:11:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"3023","note_was_empty":true}
[2026-04-15 15:11:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"3023","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:14] [INFO] Updating virtual stage {"contact_id":"3023","stage_name":"deal_registered","force":false}
[2026-04-15 15:11:14] [INFO] Virtual stage successfully saved {"contact_id":"3023","stage_name":"deal_registered"}
[2026-04-15 15:11:14] [INFO] Virtual stage updated after activity save {"contact_id":"3023"}
[2026-04-15 15:11:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6947e8d5134f78.57702327","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 15:11:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df795a5aff53.56942575","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69df795a5aff53.56942575"}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:14] [INFO] Updating virtual stage {"contact_id":"3023","stage_name":"deal_registered","force":false}
[2026-04-15 15:11:14] [INFO] Virtual stage successfully saved {"contact_id":"3023","stage_name":"deal_registered"}
[2026-04-15 15:11:14] [INFO] Virtual stage updated after activity save {"contact_id":"3023"}
[2026-04-15 15:11:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3023","person_id":"4741"}
[2026-04-15 15:11:22] [INFO] Checking activity reminders 
[2026-04-15 15:11:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:11:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:11:25] [INFO] Checking activity reminders 
[2026-04-15 15:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:11:40] [INFO] Activity save request {"post_data":{"contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"عدم پاسخ ارسال پیامک پیگیری تسویه ","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:40] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:11:40] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:40] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7841","note_was_empty":true}
[2026-04-15 15:11:40] [INFO] Didar write disabled; saving activity locally {"contact_id":"7841","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:40] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-04-15 15:11:40] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-04-15 15:11:40] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-04-15 15:11:40] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1ac30de8a70.84324584","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:11:40] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df79745f8b54.37767535","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:40] [INFO] Activity saved successfully {"activity_id":"local_activity_69df79745f8b54.37767535"}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:40] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-04-15 15:11:40] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-04-15 15:11:40] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-04-15 15:11:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-15 15:11:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10780","person_id":"1133"}
[2026-04-15 15:11:52] [INFO] Checking activity reminders 
[2026-04-15 15:11:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:11:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:11:55] [INFO] Checking activity reminders 
[2026-04-15 15:11:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:11:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:12:23] [INFO] Checking activity reminders 
[2026-04-15 15:12:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:12:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:12:25] [INFO] Checking activity reminders 
[2026-04-15 15:12:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:12:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:12:53] [INFO] Checking activity reminders 
[2026-04-15 15:12:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:12:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:12:55] [INFO] Checking activity reminders 
[2026-04-15 15:12:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:12:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:13:23] [INFO] Checking activity reminders 
[2026-04-15 15:13:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:13:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:13:25] [INFO] Checking activity reminders 
[2026-04-15 15:13:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:13:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:13:53] [INFO] Checking activity reminders 
[2026-04-15 15:13:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:13:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:13:55] [INFO] Checking activity reminders 
[2026-04-15 15:13:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:13:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:14:23] [INFO] Checking activity reminders 
[2026-04-15 15:14:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:14:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:14:25] [INFO] Checking activity reminders 
[2026-04-15 15:14:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:14:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:14:53] [INFO] Checking activity reminders 
[2026-04-15 15:14:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:14:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:14:55] [INFO] Checking activity reminders 
[2026-04-15 15:14:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:14:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:15:23] [INFO] Checking activity reminders 
[2026-04-15 15:15:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:15:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:15:26] [INFO] Checking activity reminders 
[2026-04-15 15:15:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:15:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:15:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15264","person_id":"15916"}
[2026-04-15 15:15:53] [INFO] Checking activity reminders 
[2026-04-15 15:15:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:15:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:15:56] [INFO] Checking activity reminders 
[2026-04-15 15:15:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:15:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:16:23] [INFO] Checking activity reminders 
[2026-04-15 15:16:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:16:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:16:26] [INFO] Checking activity reminders 
[2026-04-15 15:16:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:16:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:16:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:16:53] [INFO] Checking activity reminders 
[2026-04-15 15:16:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:16:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:16:56] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:16:56","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 15:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:16:56] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20372","is_new_deal":false}
[2026-04-15 15:16:56] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 15:16:56] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:16:56] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:16:56] [INFO] getContactPrimaryPhone called {"contact_id":"20372"}
[2026-04-15 15:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:16:56] [INFO] getContactPrimaryPhone result {"contact_id":"20372","person_found":true,"primary_phone":"9130530262"}
[2026-04-15 15:16:56] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130530262"}
[2026-04-15 15:16:56] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130530262","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:16:56"}
[2026-04-15 15:16:56] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","existing_deal_found":true,"existing_contact_id":"20372","existing_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:16:56"}
[2026-04-15 15:16:56] [INFO] DealController.save validated payments {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 15:16:56] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20372","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:16:56] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20e546100a7.94477321","contact_didar_id":"20372","title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130530262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل فلاحتی","existing_deal":"YES","existing_deal_id":"local_69d20e546100a7.94477321","existing_deal_status":"Pending","server_time":"2026-04-15 15:16:56","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 15:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:16:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 15:16:56","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:16:56] [INFO] Checking activity reminders 
[2026-04-15 15:16:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:16:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:17:23] [INFO] Checking activity reminders 
[2026-04-15 15:17:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:17:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:17:26] [INFO] Checking activity reminders 
[2026-04-15 15:17:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:17:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:17:54] [INFO] Checking activity reminders 
[2026-04-15 15:17:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:17:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:17:56] [INFO] Checking activity reminders 
[2026-04-15 15:17:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:17:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:18:10] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:18:10","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 15:18:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:18:10] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20372","is_new_deal":false}
[2026-04-15 15:18:10] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 15:18:10] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:18:10] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:18:10] [INFO] getContactPrimaryPhone called {"contact_id":"20372"}
[2026-04-15 15:18:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:18:10] [INFO] getContactPrimaryPhone result {"contact_id":"20372","person_found":true,"primary_phone":"9130530262"}
[2026-04-15 15:18:10] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9130530262"}
[2026-04-15 15:18:10] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9130530262","contact_id":"20372","deal_id":"local_69d20e546100a7.94477321","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:18:10"}
[2026-04-15 15:18:10] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","existing_deal_found":true,"existing_contact_id":"20372","existing_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:18:10"}
[2026-04-15 15:18:10] [INFO] DealController.save validated payments {"deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","payments_count":0,"status":"lost","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 15:18:10] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20372","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:18:10] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20e546100a7.94477321","contact_didar_id":"20372","title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9130530262","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"اسماعیل فلاحتی","existing_deal":"YES","existing_deal_id":"local_69d20e546100a7.94477321","existing_deal_status":"Pending","server_time":"2026-04-15 15:18:10","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 15:18:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:18:10] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20e546100a7.94477321","contact_id":"20372","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9130530262 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 15:18:10","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:18:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20372","person_id":"20041"}
[2026-04-15 15:18:24] [INFO] Checking activity reminders 
[2026-04-15 15:18:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:18:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:18:26] [INFO] Checking activity reminders 
[2026-04-15 15:18:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:18:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:18:54] [INFO] Checking activity reminders 
[2026-04-15 15:18:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:18:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:18:56] [INFO] Checking activity reminders 
[2026-04-15 15:18:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:18:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:19:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:19:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:19:11] [INFO] generateDealTitle result {"contact_id":"local_695cb9622da444.78163474","person_name":"کامیاب کیا","mobile":"9122967188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122967188"}
[2026-04-15 15:19:24] [INFO] Checking activity reminders 
[2026-04-15 15:19:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:19:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:19:26] [INFO] Checking activity reminders 
[2026-04-15 15:19:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:19:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:19:54] [INFO] Checking activity reminders 
[2026-04-15 15:19:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:19:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:19:56] [INFO] Checking activity reminders 
[2026-04-15 15:19:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:19:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:20:27] [INFO] Checking activity reminders 
[2026-04-15 15:20:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:20:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:20:57] [INFO] Checking activity reminders 
[2026-04-15 15:20:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:20:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:21:27] [INFO] Checking activity reminders 
[2026-04-15 15:21:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:21:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:21:57] [INFO] Checking activity reminders 
[2026-04-15 15:21:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:21:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:22:27] [INFO] Checking activity reminders 
[2026-04-15 15:22:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:22:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:22:57] [INFO] Checking activity reminders 
[2026-04-15 15:22:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:22:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:23:27] [INFO] Checking activity reminders 
[2026-04-15 15:23:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:23:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:23:57] [INFO] Checking activity reminders 
[2026-04-15 15:23:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:23:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:24:22] [INFO] Checking activity reminders 
[2026-04-15 15:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:24:27] [INFO] Checking activity reminders 
[2026-04-15 15:24:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:24:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:24:53] [INFO] Checking activity reminders 
[2026-04-15 15:24:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:24:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:24:57] [INFO] Checking activity reminders 
[2026-04-15 15:24:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:24:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:25:22] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_695cb9622da444.78163474","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:25:22","session_id":"cuqqi7kbip6q0te27346pab1bt"}
[2026-04-15 15:25:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_695cb9622da444.78163474","is_new_deal":true}
[2026-04-15 15:25:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 15:25:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 15:25:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 15:25:22] [INFO] getContactPrimaryPhone called {"contact_id":"local_695cb9622da444.78163474"}
[2026-04-15 15:25:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:22] [INFO] getContactPrimaryPhone result {"contact_id":"local_695cb9622da444.78163474","person_found":true,"primary_phone":"9122967188"}
[2026-04-15 15:25:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122967188"}
[2026-04-15 15:25:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122967188","contact_id":"local_695cb9622da444.78163474","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 15:25:22"}
[2026-04-15 15:25:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:22] [INFO] generateDealTitle result {"contact_id":"local_695cb9622da444.78163474","person_name":"کامیاب کیا","mobile":"9122967188","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122967188"}
[2026-04-15 15:25:22] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"local_695cb9622da444.78163474","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-15 15:25:22] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_695cb9622da444.78163474","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:25:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"local_695cb9622da444.78163474","title":"معامله دوم 9122967188 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9122967188","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":39000000,"payment_amount":15000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"کامیاب کیا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-15 15:25:22","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-15 15:25:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:22] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-15 15:25:22] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"local_695cb9622da444.78163474","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9122967188 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":39000000,"payment_amount":15000000,"server_time":"2026-04-15 15:25:22","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:25:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:23] [INFO] Checking activity reminders 
[2026-04-15 15:25:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:25:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:25:27] [INFO] Checking activity reminders 
[2026-04-15 15:25:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:25:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:25:43] [INFO] Activity save request {"post_data":{"contact_id":"local_695cb9622da444.78163474","deal_id":"local_69df7caa44ee73.32667815","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"واریز شد 15ت تسویه اردیبهشت","activity_duration":"5","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:25:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_695cb9622da444.78163474","note_was_empty":true}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:43] [INFO] Updating virtual stage {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered","force":false}
[2026-04-15 15:25:43] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered"}
[2026-04-15 15:25:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9622da444.78163474"}
[2026-04-15 15:25:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df7caa44ee73.32667815","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:25:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7cbf75b587.04957270","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7cbf75b587.04957270"}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:43] [INFO] Updating virtual stage {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered","force":false}
[2026-04-15 15:25:43] [INFO] Virtual stage successfully saved {"contact_id":"local_695cb9622da444.78163474","stage_name":"deal_registered"}
[2026-04-15 15:25:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cb9622da444.78163474"}
[2026-04-15 15:25:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 15:25:57] [INFO] Checking activity reminders 
[2026-04-15 15:25:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:25:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:26:05] [INFO] Checking activity reminders 
[2026-04-15 15:26:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:26:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:26:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:26:27] [INFO] Checking activity reminders 
[2026-04-15 15:26:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:26:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:26:35] [INFO] Checking activity reminders 
[2026-04-15 15:26:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:26:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:26:57] [INFO] Checking activity reminders 
[2026-04-15 15:26:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:26:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:27:06] [INFO] Checking activity reminders 
[2026-04-15 15:27:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:27:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:27:21] [INFO] Activity save request {"post_data":{"contact_id":"1356","deal_id":"","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"255گرم طلا \/ 5هزار تا دلار \/ ساینا 403 \/ 200 نقد \/ 100 عیار \r\nارسال سوال از استاد طلا نقد کنه یا نه","activity_duration":"10","direction":"incoming","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:27:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:27:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:27:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:27:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:27:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1356","note_was_empty":true}
[2026-04-15 15:27:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"1356","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:27:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7d21a215a1.77091738","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:27:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:27:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7d21a215a1.77091738"}
[2026-04-15 15:27:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:27:21] [INFO] Updating virtual stage {"contact_id":"1356","stage_name":"deal_registered","force":false}
[2026-04-15 15:27:21] [INFO] Virtual stage successfully saved {"contact_id":"1356","stage_name":"deal_registered"}
[2026-04-15 15:27:21] [INFO] Virtual stage updated after activity save {"contact_id":"1356"}
[2026-04-15 15:27:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1356","person_id":"1400"}
[2026-04-15 15:27:27] [INFO] Checking activity reminders 
[2026-04-15 15:27:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:27:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:27:36] [INFO] Checking activity reminders 
[2026-04-15 15:27:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:27:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:27:58] [INFO] Checking activity reminders 
[2026-04-15 15:27:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:27:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:28:28] [INFO] Checking activity reminders 
[2026-04-15 15:28:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:28:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:28:43] [INFO] Checking activity reminders 
[2026-04-15 15:28:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:28:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:28:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:28:58] [INFO] Checking activity reminders 
[2026-04-15 15:28:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:28:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:29:13] [INFO] Checking activity reminders 
[2026-04-15 15:29:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:29:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:29:28] [INFO] Checking activity reminders 
[2026-04-15 15:29:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:29:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:29:33] [INFO] Activity save request {"post_data":{"contact_id":"1090","deal_id":"local_699d6e7a37cb10.90844750","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"پشتیبانی کانال","activity_duration":"10","direction":"incoming","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:29:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1090","note_was_empty":true}
[2026-04-15 15:29:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"1090","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:33] [INFO] Updating virtual stage {"contact_id":"1090","stage_name":"deal_registered","force":false}
[2026-04-15 15:29:33] [INFO] Virtual stage successfully saved {"contact_id":"1090","stage_name":"deal_registered"}
[2026-04-15 15:29:33] [INFO] Virtual stage updated after activity save {"contact_id":"1090"}
[2026-04-15 15:29:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699d6e7a37cb10.90844750","stage":"برگزاری دوره","status_change":null}
[2026-04-15 15:29:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7da5b4a836.98675171","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7da5b4a836.98675171"}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:33] [INFO] Updating virtual stage {"contact_id":"1090","stage_name":"deal_registered","force":false}
[2026-04-15 15:29:33] [INFO] Virtual stage successfully saved {"contact_id":"1090","stage_name":"deal_registered"}
[2026-04-15 15:29:33] [INFO] Virtual stage updated after activity save {"contact_id":"1090"}
[2026-04-15 15:29:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1090","person_id":"1787"}
[2026-04-15 15:29:43] [INFO] Checking activity reminders 
[2026-04-15 15:29:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:29:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:29:58] [INFO] Checking activity reminders 
[2026-04-15 15:29:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:29:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:30:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:30:13] [INFO] Checking activity reminders 
[2026-04-15 15:30:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:30:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:30:43] [INFO] Checking activity reminders 
[2026-04-15 15:30:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:30:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:31:13] [INFO] Checking activity reminders 
[2026-04-15 15:31:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:31:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:31:43] [INFO] Checking activity reminders 
[2026-04-15 15:31:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:31:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:32:13] [INFO] Checking activity reminders 
[2026-04-15 15:32:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:32:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:32:43] [INFO] Checking activity reminders 
[2026-04-15 15:32:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:32:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:32:55] [INFO] Activity save request {"post_data":{"contact_id":"995","deal_id":"","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"سر موشک خونه داغون شده زخمی شدن از خانواده درگیرن \/ امروز پیام اح.ال پرسی","activity_duration":"4","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:32:55] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:32:55] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:32:55] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"995","note_was_empty":true}
[2026-04-15 15:32:55] [INFO] Didar write disabled; saving activity locally {"contact_id":"995","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:32:55] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7e6f7daad8.34983661","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:32:55] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7e6f7daad8.34983661"}
[2026-04-15 15:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:32:55] [INFO] Updating virtual stage {"contact_id":"995","stage_name":"deal_registered","force":false}
[2026-04-15 15:32:55] [INFO] Virtual stage successfully saved {"contact_id":"995","stage_name":"deal_registered"}
[2026-04-15 15:32:55] [INFO] Virtual stage updated after activity save {"contact_id":"995"}
[2026-04-15 15:32:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"995","person_id":"16071"}
[2026-04-15 15:33:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20875","person_id":"7009"}
[2026-04-15 15:33:13] [INFO] Checking activity reminders 
[2026-04-15 15:33:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:33:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:33:43] [INFO] Checking activity reminders 
[2026-04-15 15:33:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:33:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:33:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:34:14] [INFO] Checking activity reminders 
[2026-04-15 15:34:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:34:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:34:44] [INFO] Checking activity reminders 
[2026-04-15 15:34:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:34:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:35:14] [INFO] Checking activity reminders 
[2026-04-15 15:35:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:35:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:35:44] [INFO] Checking activity reminders 
[2026-04-15 15:35:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:35:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:36:14] [INFO] Checking activity reminders 
[2026-04-15 15:36:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:36:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:36:44] [INFO] Checking activity reminders 
[2026-04-15 15:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:37:14] [INFO] Checking activity reminders 
[2026-04-15 15:37:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:37:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:37:38] [INFO] Activity save request {"post_data":{"contact_id":"11432","deal_id":"local_694a95b0d9b6c6.05208584","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک پیگیری تسویه کانال","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:37:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"11432","note_was_empty":true}
[2026-04-15 15:37:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"11432","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:38] [INFO] Updating virtual stage {"contact_id":"11432","stage_name":"deal_registered","force":false}
[2026-04-15 15:37:38] [INFO] Virtual stage successfully saved {"contact_id":"11432","stage_name":"deal_registered"}
[2026-04-15 15:37:38] [INFO] Virtual stage updated after activity save {"contact_id":"11432"}
[2026-04-15 15:37:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a95b0d9b6c6.05208584","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:37:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7f8a2cb059.09130651","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7f8a2cb059.09130651"}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:38] [INFO] Updating virtual stage {"contact_id":"11432","stage_name":"deal_registered","force":false}
[2026-04-15 15:37:38] [INFO] Virtual stage successfully saved {"contact_id":"11432","stage_name":"deal_registered"}
[2026-04-15 15:37:38] [INFO] Virtual stage updated after activity save {"contact_id":"11432"}
[2026-04-15 15:37:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11432","person_id":"16601"}
[2026-04-15 15:37:44] [INFO] Checking activity reminders 
[2026-04-15 15:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:37:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:14] [INFO] Checking activity reminders 
[2026-04-15 15:38:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:38:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:38:43] [INFO] Activity save request {"post_data":{"contact_id":"14808","deal_id":"local_69b6b26f965bf1.71533809","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک پیگیری تسویه ","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:38:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14808","note_was_empty":true}
[2026-04-15 15:38:43] [INFO] Didar write disabled; saving activity locally {"contact_id":"14808","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:43] [INFO] Updating virtual stage {"contact_id":"14808","stage_name":"deal_registered","force":false}
[2026-04-15 15:38:43] [INFO] Virtual stage successfully saved {"contact_id":"14808","stage_name":"deal_registered"}
[2026-04-15 15:38:43] [INFO] Virtual stage updated after activity save {"contact_id":"14808"}
[2026-04-15 15:38:43] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6b26f965bf1.71533809","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:38:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df7fcb4508c9.52329655","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69df7fcb4508c9.52329655"}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:43] [INFO] Updating virtual stage {"contact_id":"14808","stage_name":"deal_registered","force":false}
[2026-04-15 15:38:43] [INFO] Virtual stage successfully saved {"contact_id":"14808","stage_name":"deal_registered"}
[2026-04-15 15:38:43] [INFO] Virtual stage updated after activity save {"contact_id":"14808"}
[2026-04-15 15:38:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:38:44] [INFO] Checking activity reminders 
[2026-04-15 15:38:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:38:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:39:14] [INFO] Checking activity reminders 
[2026-04-15 15:39:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:39:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:39:45] [INFO] Checking activity reminders 
[2026-04-15 15:39:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:39:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:39:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:40:15] [INFO] Checking activity reminders 
[2026-04-15 15:40:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:40:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:40:23] [INFO] Checking activity reminders 
[2026-04-15 15:40:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:40:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:40:45] [INFO] Checking activity reminders 
[2026-04-15 15:40:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:40:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:40:53] [INFO] Checking activity reminders 
[2026-04-15 15:40:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:40:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:41:15] [INFO] Checking activity reminders 
[2026-04-15 15:41:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:41:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:41:23] [INFO] Checking activity reminders 
[2026-04-15 15:41:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:41:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:41:30] [INFO] Activity save request {"post_data":{"contact_id":"14915","deal_id":"local_6950f3d76a1065.49920374","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک تسویه","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:41:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14915","note_was_empty":true}
[2026-04-15 15:41:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"14915","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:30] [INFO] Updating virtual stage {"contact_id":"14915","stage_name":"deal_registered","force":false}
[2026-04-15 15:41:30] [INFO] Virtual stage successfully saved {"contact_id":"14915","stage_name":"deal_registered"}
[2026-04-15 15:41:30] [INFO] Virtual stage updated after activity save {"contact_id":"14915"}
[2026-04-15 15:41:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6950f3d76a1065.49920374","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:41:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df8072874b12.66124860","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69df8072874b12.66124860"}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:30] [INFO] Updating virtual stage {"contact_id":"14915","stage_name":"deal_registered","force":false}
[2026-04-15 15:41:30] [INFO] Virtual stage successfully saved {"contact_id":"14915","stage_name":"deal_registered"}
[2026-04-15 15:41:30] [INFO] Virtual stage updated after activity save {"contact_id":"14915"}
[2026-04-15 15:41:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14915","person_id":"14205"}
[2026-04-15 15:41:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:41:45] [INFO] Checking activity reminders 
[2026-04-15 15:41:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:41:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:41:53] [INFO] Checking activity reminders 
[2026-04-15 15:41:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:41:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:42:15] [INFO] Checking activity reminders 
[2026-04-15 15:42:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:42:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:42:23] [INFO] Checking activity reminders 
[2026-04-15 15:42:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:42:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:42:45] [INFO] Checking activity reminders 
[2026-04-15 15:42:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:42:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:42:53] [INFO] Checking activity reminders 
[2026-04-15 15:42:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:42:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:43:12] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک پیگیری تسویه","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:43:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_87","note_was_empty":true}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:12] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-04-15 15:43:12] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-04-15 15:43:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-04-15 15:43:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b740cad7a941.81793437","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:43:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df80d87c7ce3.28202444","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69df80d87c7ce3.28202444"}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:12] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-04-15 15:43:12] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-04-15 15:43:12] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-04-15 15:43:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-15 15:43:15] [INFO] Checking activity reminders 
[2026-04-15 15:43:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:43:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:43:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:43:23] [INFO] Checking activity reminders 
[2026-04-15 15:43:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:43:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:43:45] [INFO] Checking activity reminders 
[2026-04-15 15:43:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:43:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:43:53] [INFO] Checking activity reminders 
[2026-04-15 15:43:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:43:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:44:15] [INFO] Checking activity reminders 
[2026-04-15 15:44:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:44:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:44:23] [INFO] Checking activity reminders 
[2026-04-15 15:44:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:44:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:44:30] [INFO] Activity save request {"post_data":{"contact_id":"14373","deal_id":"local_69b74104bfd1a1.18934610","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک پیگیری تسویه","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:30] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:44:30] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:30] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14373","note_was_empty":true}
[2026-04-15 15:44:30] [INFO] Didar write disabled; saving activity locally {"contact_id":"14373","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:30] [INFO] Updating virtual stage {"contact_id":"14373","stage_name":"deal_registered","force":false}
[2026-04-15 15:44:30] [INFO] Virtual stage successfully saved {"contact_id":"14373","stage_name":"deal_registered"}
[2026-04-15 15:44:30] [INFO] Virtual stage updated after activity save {"contact_id":"14373"}
[2026-04-15 15:44:30] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b74104bfd1a1.18934610","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:44:30] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df812641ab82.97474057","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:30] [INFO] Activity saved successfully {"activity_id":"local_activity_69df812641ab82.97474057"}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:30] [INFO] Updating virtual stage {"contact_id":"14373","stage_name":"deal_registered","force":false}
[2026-04-15 15:44:30] [INFO] Virtual stage successfully saved {"contact_id":"14373","stage_name":"deal_registered"}
[2026-04-15 15:44:30] [INFO] Virtual stage updated after activity save {"contact_id":"14373"}
[2026-04-15 15:44:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14373","person_id":"16454"}
[2026-04-15 15:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:44:45] [INFO] Checking activity reminders 
[2026-04-15 15:44:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:44:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:44:53] [INFO] Checking activity reminders 
[2026-04-15 15:44:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:44:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:45:15] [INFO] Checking activity reminders 
[2026-04-15 15:45:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:45:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:45:23] [INFO] Checking activity reminders 
[2026-04-15 15:45:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:45:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:45:46] [INFO] Checking activity reminders 
[2026-04-15 15:45:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:45:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:45:54] [INFO] Checking activity reminders 
[2026-04-15 15:45:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:45:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:45:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:03] [INFO] Activity save request {"post_data":{"contact_id":"14698","deal_id":"local_69ba9cf0b0b840.23617668","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"ارسال پیامک پیگیری تسویه","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:46:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14698","note_was_empty":true}
[2026-04-15 15:46:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"14698","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:03] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-04-15 15:46:03] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-04-15 15:46:03] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-04-15 15:46:03] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ba9cf0b0b840.23617668","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:46:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df81836d6027.87520038","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69df81836d6027.87520038"}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:03] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-04-15 15:46:03] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-04-15 15:46:03] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-04-15 15:46:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:46:12] [INFO] Activity save request {"post_data":{"contact_id":"15312","deal_id":"local_69bbaedd901635.57052076","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:12] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:46:12] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:12] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"15312","note_was_empty":true}
[2026-04-15 15:46:12] [INFO] Didar write disabled; saving activity locally {"contact_id":"15312","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:12] [INFO] Updating virtual stage {"contact_id":"15312","stage_name":"deal_registered","force":false}
[2026-04-15 15:46:12] [INFO] Virtual stage successfully saved {"contact_id":"15312","stage_name":"deal_registered"}
[2026-04-15 15:46:12] [INFO] Virtual stage updated after activity save {"contact_id":"15312"}
[2026-04-15 15:46:12] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69bbaedd901635.57052076","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 15:46:12] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df818cb0a214.77904784","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:12] [INFO] Activity saved successfully {"activity_id":"local_activity_69df818cb0a214.77904784"}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:12] [INFO] Updating virtual stage {"contact_id":"15312","stage_name":"deal_registered","force":false}
[2026-04-15 15:46:12] [INFO] Virtual stage successfully saved {"contact_id":"15312","stage_name":"deal_registered"}
[2026-04-15 15:46:12] [INFO] Virtual stage updated after activity save {"contact_id":"15312"}
[2026-04-15 15:46:12] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15312","person_id":"14777"}
[2026-04-15 15:46:16] [INFO] Checking activity reminders 
[2026-04-15 15:46:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:46:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:46:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4030","person_id":"20812"}
[2026-04-15 15:46:24] [INFO] Checking activity reminders 
[2026-04-15 15:46:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:46:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:46:46] [INFO] Checking activity reminders 
[2026-04-15 15:46:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:46:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:46:55] [INFO] Checking activity reminders 
[2026-04-15 15:46:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:46:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:47:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:47:16] [INFO] Checking activity reminders 
[2026-04-15 15:47:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:47:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:47:25] [INFO] Checking activity reminders 
[2026-04-15 15:47:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:47:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:47:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Activity save request {"post_data":{"contact_id":"20938","deal_id":"local_69b98774da8311.07485018","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:47:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20938","note_was_empty":true}
[2026-04-15 15:47:45] [INFO] Didar write disabled; saving activity locally {"contact_id":"20938","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Updating virtual stage {"contact_id":"20938","stage_name":"deal_registered","force":false}
[2026-04-15 15:47:45] [INFO] Virtual stage successfully saved {"contact_id":"20938","stage_name":"deal_registered"}
[2026-04-15 15:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"20938"}
[2026-04-15 15:47:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b98774da8311.07485018","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 15:47:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df81e9dc9158.60665127","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69df81e9dc9158.60665127"}
[2026-04-15 15:47:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:45] [INFO] Updating virtual stage {"contact_id":"20938","stage_name":"deal_registered","force":false}
[2026-04-15 15:47:45] [INFO] Virtual stage successfully saved {"contact_id":"20938","stage_name":"deal_registered"}
[2026-04-15 15:47:45] [INFO] Virtual stage updated after activity save {"contact_id":"20938"}
[2026-04-15 15:47:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20938","person_id":"4325"}
[2026-04-15 15:47:46] [INFO] Checking activity reminders 
[2026-04-15 15:47:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:47:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:47:55] [INFO] Checking activity reminders 
[2026-04-15 15:47:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:47:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:48:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:48:16] [INFO] Checking activity reminders 
[2026-04-15 15:48:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:48:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:48:25] [INFO] Checking activity reminders 
[2026-04-15 15:48:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:48:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:48:46] [INFO] Checking activity reminders 
[2026-04-15 15:48:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:48:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:48:56] [INFO] Checking activity reminders 
[2026-04-15 15:48:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:48:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:49:16] [INFO] Checking activity reminders 
[2026-04-15 15:49:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:49:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:49:22] [INFO] Activity save request {"post_data":{"contact_id":"14808","deal_id":"local_69b6b26f965bf1.71533809","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"شنبه تسویه قبل ساعت 11","activity_duration":"5","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:49:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14808","note_was_empty":true}
[2026-04-15 15:49:22] [INFO] Didar write disabled; saving activity locally {"contact_id":"14808","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:22] [INFO] Updating virtual stage {"contact_id":"14808","stage_name":"deal_registered","force":false}
[2026-04-15 15:49:22] [INFO] Virtual stage successfully saved {"contact_id":"14808","stage_name":"deal_registered"}
[2026-04-15 15:49:22] [INFO] Virtual stage updated after activity save {"contact_id":"14808"}
[2026-04-15 15:49:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b6b26f965bf1.71533809","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 15:49:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df824a443a91.49575323","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69df824a443a91.49575323"}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:22] [INFO] Updating virtual stage {"contact_id":"14808","stage_name":"deal_registered","force":false}
[2026-04-15 15:49:22] [INFO] Virtual stage successfully saved {"contact_id":"14808","stage_name":"deal_registered"}
[2026-04-15 15:49:22] [INFO] Virtual stage updated after activity save {"contact_id":"14808"}
[2026-04-15 15:49:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14808","person_id":"15165"}
[2026-04-15 15:49:26] [INFO] Checking activity reminders 
[2026-04-15 15:49:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:49:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:49:46] [INFO] Checking activity reminders 
[2026-04-15 15:49:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:49:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:49:56] [INFO] Checking activity reminders 
[2026-04-15 15:49:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:49:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:50:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:50:16] [INFO] Checking activity reminders 
[2026-04-15 15:50:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:50:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:50:26] [INFO] Checking activity reminders 
[2026-04-15 15:50:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:50:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:50:46] [INFO] Checking activity reminders 
[2026-04-15 15:50:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:50:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:50:56] [INFO] Checking activity reminders 
[2026-04-15 15:50:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:50:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:51:17] [INFO] Checking activity reminders 
[2026-04-15 15:51:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:51:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:51:26] [INFO] Checking activity reminders 
[2026-04-15 15:51:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:51:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:51:47] [INFO] Checking activity reminders 
[2026-04-15 15:51:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:51:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:51:56] [INFO] Checking activity reminders 
[2026-04-15 15:51:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:51:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:52:17] [INFO] Checking activity reminders 
[2026-04-15 15:52:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:52:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:52:20] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"2366","deal_id":"local_6950fe284b8637.13255524","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 15:52:20","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 15:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:20] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"2366","is_new_deal":false}
[2026-04-15 15:52:20] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 15:52:20] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:52:20] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 15:52:20] [INFO] getContactPrimaryPhone called {"contact_id":"2366"}
[2026-04-15 15:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:20] [INFO] getContactPrimaryPhone result {"contact_id":"2366","person_found":true,"primary_phone":"9195155964"}
[2026-04-15 15:52:20] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9195155964"}
[2026-04-15 15:52:20] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9195155964","contact_id":"2366","deal_id":"local_6950fe284b8637.13255524","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:52:20"}
[2026-04-15 15:52:20] [INFO] DealController.save existing deal lookup {"deal_id":"local_6950fe284b8637.13255524","contact_id":"2366","existing_deal_found":true,"existing_contact_id":"2366","existing_title":"معامله اول 9195155964 | CIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 15:52:20"}
[2026-04-15 15:52:20] [INFO] DealController.save validated payments {"deal_id":"local_6950fe284b8637.13255524","contact_id":"2366","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 15:52:20] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"2366","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 15:52:20] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6950fe284b8637.13255524","contact_didar_id":"2366","title":"معامله اول 9195155964 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9195155964","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مهدی فرد","existing_deal":"YES","existing_deal_id":"local_6950fe284b8637.13255524","existing_deal_status":"Pending","server_time":"2026-04-15 15:52:20","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 15:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:20] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6950fe284b8637.13255524","contact_id":"2366","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9195155964 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 15:52:20","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 15:52:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:26] [INFO] Checking activity reminders 
[2026-04-15 15:52:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:52:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:52:47] [INFO] Activity save request {"post_data":{"contact_id":"2366","deal_id":"local_6950fe284b8637.13255524","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 15:52:47] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2366","note_was_empty":true}
[2026-04-15 15:52:47] [INFO] Didar write disabled; saving activity locally {"contact_id":"2366","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Updating virtual stage {"contact_id":"2366","stage_name":"deal_registered","force":false}
[2026-04-15 15:52:47] [INFO] Virtual stage successfully saved {"contact_id":"2366","stage_name":"deal_registered"}
[2026-04-15 15:52:47] [INFO] Virtual stage updated after activity save {"contact_id":"2366"}
[2026-04-15 15:52:47] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6950fe284b8637.13255524","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 15:52:47] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df831794a2d5.48131877","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Activity saved successfully {"activity_id":"local_activity_69df831794a2d5.48131877"}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Updating virtual stage {"contact_id":"2366","stage_name":"deal_registered","force":false}
[2026-04-15 15:52:47] [INFO] Virtual stage successfully saved {"contact_id":"2366","stage_name":"deal_registered"}
[2026-04-15 15:52:47] [INFO] Virtual stage updated after activity save {"contact_id":"2366"}
[2026-04-15 15:52:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2366","person_id":"1335"}
[2026-04-15 15:52:47] [INFO] Checking activity reminders 
[2026-04-15 15:52:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:52:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:52:56] [INFO] Checking activity reminders 
[2026-04-15 15:52:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:52:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:53:17] [INFO] Checking activity reminders 
[2026-04-15 15:53:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:53:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:53:26] [INFO] Checking activity reminders 
[2026-04-15 15:53:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:53:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:53:48] [INFO] Checking activity reminders 
[2026-04-15 15:53:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:53:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:53:56] [INFO] Checking activity reminders 
[2026-04-15 15:53:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:53:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:54:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 15:54:18] [INFO] Checking activity reminders 
[2026-04-15 15:54:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:54:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:54:26] [INFO] Checking activity reminders 
[2026-04-15 15:54:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:54:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:54:48] [INFO] Checking activity reminders 
[2026-04-15 15:54:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:54:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:54:57] [INFO] Checking activity reminders 
[2026-04-15 15:54:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:54:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:55:27] [INFO] Checking activity reminders 
[2026-04-15 15:55:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:55:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:55:57] [INFO] Checking activity reminders 
[2026-04-15 15:55:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:55:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:56:27] [INFO] Checking activity reminders 
[2026-04-15 15:56:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:56:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:56:57] [INFO] Checking activity reminders 
[2026-04-15 15:56:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:56:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:57:01] [INFO] Checking activity reminders 
[2026-04-15 15:57:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:57:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:57:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 15:57:27] [INFO] Checking activity reminders 
[2026-04-15 15:57:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:57:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:57:31] [INFO] Checking activity reminders 
[2026-04-15 15:57:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:57:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:57:57] [INFO] Checking activity reminders 
[2026-04-15 15:57:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:57:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:58:01] [INFO] Checking activity reminders 
[2026-04-15 15:58:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:58:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:58:28] [INFO] Checking activity reminders 
[2026-04-15 15:58:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:58:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:58:31] [INFO] Checking activity reminders 
[2026-04-15 15:58:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:58:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:58:58] [INFO] Checking activity reminders 
[2026-04-15 15:58:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:58:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:59:01] [INFO] Checking activity reminders 
[2026-04-15 15:59:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:59:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:59:28] [INFO] Checking activity reminders 
[2026-04-15 15:59:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:59:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:59:31] [INFO] Checking activity reminders 
[2026-04-15 15:59:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:59:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 15:59:58] [INFO] Checking activity reminders 
[2026-04-15 15:59:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 15:59:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:00:01] [INFO] Checking activity reminders 
[2026-04-15 16:00:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:00:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:00:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:01:30] [INFO] Checking activity reminders 
[2026-04-15 16:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:01:34] [INFO] Checking activity reminders 
[2026-04-15 16:01:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:01:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:02:00] [INFO] Checking activity reminders 
[2026-04-15 16:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:02:04] [INFO] Checking activity reminders 
[2026-04-15 16:02:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:02:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:02:30] [INFO] Checking activity reminders 
[2026-04-15 16:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:02:34] [INFO] Checking activity reminders 
[2026-04-15 16:02:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:02:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:03:01] [INFO] Checking activity reminders 
[2026-04-15 16:03:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:03:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:03:04] [INFO] Checking activity reminders 
[2026-04-15 16:03:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:03:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:03:31] [INFO] Checking activity reminders 
[2026-04-15 16:03:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:03:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:03:31] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21012","deal_id":"local_69c87281c9fa60.19067518","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 16:03:31","session_id":"cuqqi7kbip6q0te27346pab1bt"}
[2026-04-15 16:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:03:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21012","is_new_deal":false}
[2026-04-15 16:03:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 16:03:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:03:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:03:31] [INFO] getContactPrimaryPhone called {"contact_id":"21012"}
[2026-04-15 16:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:03:31] [INFO] getContactPrimaryPhone result {"contact_id":"21012","person_found":true,"primary_phone":"9122315682"}
[2026-04-15 16:03:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122315682"}
[2026-04-15 16:03:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122315682","contact_id":"21012","deal_id":"local_69c87281c9fa60.19067518","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 16:03:31"}
[2026-04-15 16:03:31] [INFO] DealController.save existing deal lookup {"deal_id":"local_69c87281c9fa60.19067518","contact_id":"21012","existing_deal_found":true,"existing_contact_id":"21012","existing_title":"معامله دوم 9122315682 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 16:03:31"}
[2026-04-15 16:03:31] [INFO] DealController.save validated payments {"deal_id":"local_69c87281c9fa60.19067518","contact_id":"21012","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-15 16:03:31] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21012","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 16:03:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69c87281c9fa60.19067518","contact_didar_id":"21012","title":"معامله دوم 9122315682 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9122315682","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"اقای گل خانی","existing_deal":"YES","existing_deal_id":"local_69c87281c9fa60.19067518","existing_deal_status":"Pending","server_time":"2026-04-15 16:03:31","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-15 16:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:03:31] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69c87281c9fa60.19067518","contact_id":"21012","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9122315682 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-15 16:03:31","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 16:03:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:03:35] [INFO] Checking activity reminders 
[2026-04-15 16:03:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:03:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:04:01] [INFO] Checking activity reminders 
[2026-04-15 16:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:04:01] [INFO] Activity save request {"post_data":{"contact_id":"21012","deal_id":"local_69c87281c9fa60.19067518","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تسویه شد","activity_duration":"20","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:04:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"21012","note_was_empty":true}
[2026-04-15 16:04:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"21012","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:01] [INFO] Updating virtual stage {"contact_id":"21012","stage_name":"deal_registered","force":false}
[2026-04-15 16:04:01] [INFO] Virtual stage successfully saved {"contact_id":"21012","stage_name":"deal_registered"}
[2026-04-15 16:04:01] [INFO] Virtual stage updated after activity save {"contact_id":"21012"}
[2026-04-15 16:04:01] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c87281c9fa60.19067518","stage":"برگزاری دوره","status_change":null}
[2026-04-15 16:04:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df85b933ebb5.08942349","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69df85b933ebb5.08942349"}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:01] [INFO] Updating virtual stage {"contact_id":"21012","stage_name":"deal_registered","force":false}
[2026-04-15 16:04:01] [INFO] Virtual stage successfully saved {"contact_id":"21012","stage_name":"deal_registered"}
[2026-04-15 16:04:01] [INFO] Virtual stage updated after activity save {"contact_id":"21012"}
[2026-04-15 16:04:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 16:04:05] [INFO] Checking activity reminders 
[2026-04-15 16:04:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:04:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:04:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"18241","person_id":"10320"}
[2026-04-15 16:04:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:04:31] [INFO] Checking activity reminders 
[2026-04-15 16:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:04:35] [INFO] Checking activity reminders 
[2026-04-15 16:04:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:04:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:05:01] [INFO] Checking activity reminders 
[2026-04-15 16:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:05:05] [INFO] Checking activity reminders 
[2026-04-15 16:05:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:05:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:05:31] [INFO] Checking activity reminders 
[2026-04-15 16:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:05:35] [INFO] Checking activity reminders 
[2026-04-15 16:05:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:05:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:06:01] [INFO] Checking activity reminders 
[2026-04-15 16:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:06:05] [INFO] Checking activity reminders 
[2026-04-15 16:06:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:06:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:06:31] [INFO] Checking activity reminders 
[2026-04-15 16:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:06:35] [INFO] Checking activity reminders 
[2026-04-15 16:06:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:06:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:07:01] [INFO] Checking activity reminders 
[2026-04-15 16:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:07:05] [INFO] Checking activity reminders 
[2026-04-15 16:07:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:07:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:07:31] [INFO] Checking activity reminders 
[2026-04-15 16:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:07:35] [INFO] Checking activity reminders 
[2026-04-15 16:07:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:07:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:08:01] [INFO] Checking activity reminders 
[2026-04-15 16:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:08:05] [INFO] Checking activity reminders 
[2026-04-15 16:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:08:31] [INFO] Checking activity reminders 
[2026-04-15 16:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:08:35] [INFO] Checking activity reminders 
[2026-04-15 16:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:09:02] [INFO] Checking activity reminders 
[2026-04-15 16:09:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:09:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:09:05] [INFO] Checking activity reminders 
[2026-04-15 16:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:09:32] [INFO] Checking activity reminders 
[2026-04-15 16:09:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:09:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:09:35] [INFO] Checking activity reminders 
[2026-04-15 16:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:10:02] [INFO] Checking activity reminders 
[2026-04-15 16:10:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:10:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:10:06] [INFO] Checking activity reminders 
[2026-04-15 16:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:10:32] [INFO] Checking activity reminders 
[2026-04-15 16:10:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:10:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:10:36] [INFO] Checking activity reminders 
[2026-04-15 16:10:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:10:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:11:02] [INFO] Checking activity reminders 
[2026-04-15 16:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:11:06] [INFO] Checking activity reminders 
[2026-04-15 16:11:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:11:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:11:32] [INFO] Checking activity reminders 
[2026-04-15 16:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:11:36] [INFO] Checking activity reminders 
[2026-04-15 16:11:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:11:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:12:02] [INFO] Checking activity reminders 
[2026-04-15 16:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:12:06] [INFO] Checking activity reminders 
[2026-04-15 16:12:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:12:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:12:32] [INFO] Checking activity reminders 
[2026-04-15 16:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:12:36] [INFO] Checking activity reminders 
[2026-04-15 16:12:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:12:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:13:02] [INFO] Checking activity reminders 
[2026-04-15 16:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:13:06] [INFO] Checking activity reminders 
[2026-04-15 16:13:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:13:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:13:32] [INFO] Checking activity reminders 
[2026-04-15 16:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:13:36] [INFO] Checking activity reminders 
[2026-04-15 16:13:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:13:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:14:02] [INFO] Checking activity reminders 
[2026-04-15 16:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:14:06] [INFO] Checking activity reminders 
[2026-04-15 16:14:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:14:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:14:29] [INFO] Activity save request {"post_data":{"contact_id":"845","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"در ارزدیجیتال سرمایه \r\nدسترسی به کیف پول نداره \r\nپرزنت نوسان گیری 405  \r\nارسال لینک عمومی د بله ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:14:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:14:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:14:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"845","note_was_empty":true}
[2026-04-15 16:14:29] [INFO] Didar write disabled; saving activity locally {"contact_id":"845","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 16:14:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df882d1cf7a9.53049969","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:14:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69df882d1cf7a9.53049969"}
[2026-04-15 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:14:29] [INFO] Updating virtual stage {"contact_id":"845","stage_name":"deal_registered","force":false}
[2026-04-15 16:14:29] [INFO] Virtual stage successfully saved {"contact_id":"845","stage_name":"deal_registered"}
[2026-04-15 16:14:29] [INFO] Virtual stage updated after activity save {"contact_id":"845"}
[2026-04-15 16:14:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"845","person_id":"5298"}
[2026-04-15 16:14:33] [INFO] Checking activity reminders 
[2026-04-15 16:14:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:14:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:14:36] [INFO] Checking activity reminders 
[2026-04-15 16:14:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:14:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:15:03] [INFO] Checking activity reminders 
[2026-04-15 16:15:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:15:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:15:06] [INFO] Checking activity reminders 
[2026-04-15 16:15:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:15:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:15:33] [INFO] Checking activity reminders 
[2026-04-15 16:15:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:15:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:15:36] [INFO] Checking activity reminders 
[2026-04-15 16:15:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:15:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:16:03] [INFO] Checking activity reminders 
[2026-04-15 16:16:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:16:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:16:06] [INFO] Checking activity reminders 
[2026-04-15 16:16:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:16:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:16:33] [INFO] Checking activity reminders 
[2026-04-15 16:16:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:16:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:16:36] [INFO] Checking activity reminders 
[2026-04-15 16:16:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:16:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:17:03] [INFO] Checking activity reminders 
[2026-04-15 16:17:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:17:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:17:07] [INFO] Checking activity reminders 
[2026-04-15 16:17:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:17:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:17:33] [INFO] Checking activity reminders 
[2026-04-15 16:17:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:17:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:17:37] [INFO] Checking activity reminders 
[2026-04-15 16:17:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:17:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:18:03] [INFO] Checking activity reminders 
[2026-04-15 16:18:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:18:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:18:07] [INFO] Checking activity reminders 
[2026-04-15 16:18:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:18:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:18:33] [INFO] Checking activity reminders 
[2026-04-15 16:18:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:18:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:18:37] [INFO] Checking activity reminders 
[2026-04-15 16:18:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:18:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:18:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:19:03] [INFO] Checking activity reminders 
[2026-04-15 16:19:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:19:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:19:07] [INFO] Checking activity reminders 
[2026-04-15 16:19:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:19:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:19:33] [INFO] Checking activity reminders 
[2026-04-15 16:19:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:19:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:19:37] [INFO] Checking activity reminders 
[2026-04-15 16:19:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:19:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:20:03] [INFO] Checking activity reminders 
[2026-04-15 16:20:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:20:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:20:07] [INFO] Checking activity reminders 
[2026-04-15 16:20:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:20:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:20:33] [INFO] Checking activity reminders 
[2026-04-15 16:20:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:20:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:20:37] [INFO] Checking activity reminders 
[2026-04-15 16:20:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:20:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:20:42] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 16:20:42","session_id":"cuqqi7kbip6q0te27346pab1bt"}
[2026-04-15 16:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:42] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"20546","is_new_deal":false}
[2026-04-15 16:20:42] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 16:20:42] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:20:42] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:20:42] [INFO] getContactPrimaryPhone called {"contact_id":"20546"}
[2026-04-15 16:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:42] [INFO] getContactPrimaryPhone result {"contact_id":"20546","person_found":true,"primary_phone":"9122718955"}
[2026-04-15 16:20:42] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122718955"}
[2026-04-15 16:20:42] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122718955","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 16:20:42"}
[2026-04-15 16:20:42] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","existing_deal_found":true,"existing_contact_id":"20546","existing_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 16:20:42"}
[2026-04-15 16:20:42] [INFO] DealController.save validated payments {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","payments_count":3,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-15 16:20:42] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20546","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 16:20:42] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a9bf3a9a3b0.14870802","contact_didar_id":"20546","title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9122718955","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آزاد","existing_deal":"YES","existing_deal_id":"local_694a9bf3a9a3b0.14870802","existing_deal_status":"Pending","server_time":"2026-04-15 16:20:42","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-15 16:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:42] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-15 16:20:42","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 16:20:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Activity save request {"post_data":{"contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تسویه شد ","activity_duration":"4","direction":"outgoing","current_stage":"پرداخت","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:20:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"20546","note_was_empty":true}
[2026-04-15 16:20:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"20546","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Updating virtual stage {"contact_id":"20546","stage_name":"deal_registered","force":false}
[2026-04-15 16:20:57] [INFO] Virtual stage successfully saved {"contact_id":"20546","stage_name":"deal_registered"}
[2026-04-15 16:20:57] [INFO] Virtual stage updated after activity save {"contact_id":"20546"}
[2026-04-15 16:20:57] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694a9bf3a9a3b0.14870802","stage":"برگزاری دوره","status_change":null}
[2026-04-15 16:20:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df89b16507e8.48873749","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69df89b16507e8.48873749"}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:20:57] [INFO] Updating virtual stage {"contact_id":"20546","stage_name":"deal_registered","force":false}
[2026-04-15 16:20:57] [INFO] Virtual stage successfully saved {"contact_id":"20546","stage_name":"deal_registered"}
[2026-04-15 16:20:57] [INFO] Virtual stage updated after activity save {"contact_id":"20546"}
[2026-04-15 16:20:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-15 16:21:04] [INFO] Checking activity reminders 
[2026-04-15 16:21:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:21:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:21:34] [INFO] Checking activity reminders 
[2026-04-15 16:21:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:21:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:22:04] [INFO] Checking activity reminders 
[2026-04-15 16:22:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:22:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:22:34] [INFO] Checking activity reminders 
[2026-04-15 16:22:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:22:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:23:04] [INFO] Checking activity reminders 
[2026-04-15 16:23:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:23:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:23:34] [INFO] Checking activity reminders 
[2026-04-15 16:23:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:23:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:24:04] [INFO] Checking activity reminders 
[2026-04-15 16:24:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:24:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:24:34] [INFO] Checking activity reminders 
[2026-04-15 16:24:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:24:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:25:04] [INFO] Checking activity reminders 
[2026-04-15 16:25:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:25:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:25:34] [INFO] Checking activity reminders 
[2026-04-15 16:25:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:25:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:26:04] [INFO] Checking activity reminders 
[2026-04-15 16:26:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:26:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:26:34] [INFO] Checking activity reminders 
[2026-04-15 16:26:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:26:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:27:04] [INFO] Checking activity reminders 
[2026-04-15 16:27:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:27:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:27:34] [INFO] Checking activity reminders 
[2026-04-15 16:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:27:34] [INFO] Checking activity reminders 
[2026-04-15 16:27:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:27:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:28:04] [INFO] Checking activity reminders 
[2026-04-15 16:28:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:28:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:28:04] [INFO] Checking activity reminders 
[2026-04-15 16:28:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:28:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:28:35] [INFO] Checking activity reminders 
[2026-04-15 16:28:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:28:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:29:05] [INFO] Checking activity reminders 
[2026-04-15 16:29:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:29:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:29:35] [INFO] Checking activity reminders 
[2026-04-15 16:29:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:29:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:30:05] [INFO] Checking activity reminders 
[2026-04-15 16:30:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:30:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:30:35] [INFO] Checking activity reminders 
[2026-04-15 16:30:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:30:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:31:05] [INFO] Checking activity reminders 
[2026-04-15 16:31:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:31:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:31:35] [INFO] Checking activity reminders 
[2026-04-15 16:31:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:31:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:32:05] [INFO] Checking activity reminders 
[2026-04-15 16:32:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:32:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:32:35] [INFO] Checking activity reminders 
[2026-04-15 16:32:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:32:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:33:05] [INFO] Checking activity reminders 
[2026-04-15 16:33:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:33:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:33:35] [INFO] Checking activity reminders 
[2026-04-15 16:33:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:33:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:34:05] [INFO] Checking activity reminders 
[2026-04-15 16:34:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:34:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:34:35] [INFO] Checking activity reminders 
[2026-04-15 16:34:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:34:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:35:05] [INFO] Checking activity reminders 
[2026-04-15 16:35:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:35:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:35:36] [INFO] Checking activity reminders 
[2026-04-15 16:35:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:35:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:36:02] [INFO] Checking activity reminders 
[2026-04-15 16:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:36:06] [INFO] Checking activity reminders 
[2026-04-15 16:36:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:36:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:36:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:36:32] [INFO] Checking activity reminders 
[2026-04-15 16:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:36:36] [INFO] Checking activity reminders 
[2026-04-15 16:36:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:36:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:37:02] [INFO] Checking activity reminders 
[2026-04-15 16:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:37:06] [INFO] Checking activity reminders 
[2026-04-15 16:37:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:37:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:37:32] [INFO] Checking activity reminders 
[2026-04-15 16:37:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:37:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:37:36] [INFO] Checking activity reminders 
[2026-04-15 16:37:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:37:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:38:02] [INFO] Checking activity reminders 
[2026-04-15 16:38:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:38:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:38:06] [INFO] Checking activity reminders 
[2026-04-15 16:38:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:38:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:38:32] [INFO] Checking activity reminders 
[2026-04-15 16:38:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:38:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:38:36] [INFO] Checking activity reminders 
[2026-04-15 16:38:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:38:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:39:02] [INFO] Checking activity reminders 
[2026-04-15 16:39:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:39:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:39:06] [INFO] Checking activity reminders 
[2026-04-15 16:39:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:39:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:39:32] [INFO] Checking activity reminders 
[2026-04-15 16:39:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:39:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:39:36] [INFO] Checking activity reminders 
[2026-04-15 16:39:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:39:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:40:02] [INFO] Checking activity reminders 
[2026-04-15 16:40:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:40:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:40:07] [INFO] Checking activity reminders 
[2026-04-15 16:40:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:40:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:40:32] [INFO] Checking activity reminders 
[2026-04-15 16:40:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:40:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:40:37] [INFO] Checking activity reminders 
[2026-04-15 16:40:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:40:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:41:02] [INFO] Checking activity reminders 
[2026-04-15 16:41:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:41:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:41:07] [INFO] Checking activity reminders 
[2026-04-15 16:41:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:41:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:41:33] [INFO] Checking activity reminders 
[2026-04-15 16:41:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:41:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:41:37] [INFO] Checking activity reminders 
[2026-04-15 16:41:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:41:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:42:03] [INFO] Checking activity reminders 
[2026-04-15 16:42:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:42:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:42:07] [INFO] Checking activity reminders 
[2026-04-15 16:42:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:42:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:42:33] [INFO] Checking activity reminders 
[2026-04-15 16:42:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:42:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:42:37] [INFO] Checking activity reminders 
[2026-04-15 16:42:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:42:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:43:03] [INFO] Checking activity reminders 
[2026-04-15 16:43:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:43:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:43:07] [INFO] Checking activity reminders 
[2026-04-15 16:43:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:43:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:43:33] [INFO] Checking activity reminders 
[2026-04-15 16:43:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:43:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:43:37] [INFO] Checking activity reminders 
[2026-04-15 16:43:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:43:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:44:03] [INFO] Checking activity reminders 
[2026-04-15 16:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:44:07] [INFO] Checking activity reminders 
[2026-04-15 16:44:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:44:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:44:33] [INFO] Checking activity reminders 
[2026-04-15 16:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:44:37] [INFO] Checking activity reminders 
[2026-04-15 16:44:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:44:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:03] [INFO] Checking activity reminders 
[2026-04-15 16:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:07] [INFO] Checking activity reminders 
[2026-04-15 16:45:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:11] [INFO] Checking activity reminders 
[2026-04-15 16:45:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:13] [INFO] Checking activity reminders 
[2026-04-15 16:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:16] [INFO] Checking activity reminders 
[2026-04-15 16:45:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:17] [INFO] Checking activity reminders 
[2026-04-15 16:45:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:19] [INFO] Checking activity reminders 
[2026-04-15 16:45:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:21] [INFO] Checking activity reminders 
[2026-04-15 16:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:27] [INFO] Checking activity reminders 
[2026-04-15 16:45:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:33] [INFO] Checking activity reminders 
[2026-04-15 16:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:45:57] [INFO] Checking activity reminders 
[2026-04-15 16:45:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:45:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:46:03] [INFO] Checking activity reminders 
[2026-04-15 16:46:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:46:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:46:27] [INFO] Checking activity reminders 
[2026-04-15 16:46:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:46:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:46:33] [INFO] Checking activity reminders 
[2026-04-15 16:46:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:46:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:46:57] [INFO] Checking activity reminders 
[2026-04-15 16:46:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:46:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:47:03] [INFO] Checking activity reminders 
[2026-04-15 16:47:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:47:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:47:28] [INFO] Checking activity reminders 
[2026-04-15 16:47:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:47:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:47:33] [INFO] Checking activity reminders 
[2026-04-15 16:47:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:47:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:47:58] [INFO] Checking activity reminders 
[2026-04-15 16:47:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:47:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:48:03] [INFO] Checking activity reminders 
[2026-04-15 16:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:48:28] [INFO] Checking activity reminders 
[2026-04-15 16:48:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:48:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:48:33] [INFO] Checking activity reminders 
[2026-04-15 16:48:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:48:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:48:58] [INFO] Checking activity reminders 
[2026-04-15 16:48:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:48:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:49:04] [INFO] Checking activity reminders 
[2026-04-15 16:49:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:49:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:49:28] [INFO] Checking activity reminders 
[2026-04-15 16:49:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:49:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:49:34] [INFO] Checking activity reminders 
[2026-04-15 16:49:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:49:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:49:58] [INFO] Checking activity reminders 
[2026-04-15 16:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:50:04] [INFO] Checking activity reminders 
[2026-04-15 16:50:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:50:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:50:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-15 16:50:28] [INFO] Checking activity reminders 
[2026-04-15 16:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:50:34] [INFO] Checking activity reminders 
[2026-04-15 16:50:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:50:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:50:34] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"16029","deal_id":"local_69d692c93593d0.92218263","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 16:50:34","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 16:50:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-15 16:50:34] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"16029","is_new_deal":false}
[2026-04-15 16:50:34] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 16:50:34] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:50:34] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:50:34] [INFO] getContactPrimaryPhone called {"contact_id":"16029"}
[2026-04-15 16:50:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-15 16:50:34] [INFO] getContactPrimaryPhone result {"contact_id":"16029","person_found":true,"primary_phone":"9374518635"}
[2026-04-15 16:50:34] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9374518635"}
[2026-04-15 16:50:34] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9374518635","contact_id":"16029","deal_id":"local_69d692c93593d0.92218263","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:50:34"}
[2026-04-15 16:50:34] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","existing_deal_found":true,"existing_contact_id":"16029","existing_title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:50:34"}
[2026-04-15 16:50:34] [INFO] DealController.save validated payments {"deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 16:50:34] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16029","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 16:50:34] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d692c93593d0.92218263","contact_didar_id":"16029","title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9374518635","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ایمان میر طبار","existing_deal":"YES","existing_deal_id":"local_69d692c93593d0.92218263","existing_deal_status":"Pending","server_time":"2026-04-15 16:50:34","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 16:50:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-15 16:50:34] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d692c93593d0.92218263","contact_id":"16029","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9374518635 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 16:50:34","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 16:50:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16029","person_id":"13837"}
[2026-04-15 16:50:58] [INFO] Checking activity reminders 
[2026-04-15 16:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:51:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:51:04] [INFO] Checking activity reminders 
[2026-04-15 16:51:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:51:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:51:28] [INFO] Checking activity reminders 
[2026-04-15 16:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:51:34] [INFO] Checking activity reminders 
[2026-04-15 16:51:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:51:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:51:58] [INFO] Checking activity reminders 
[2026-04-15 16:51:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:51:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:52:04] [INFO] Checking activity reminders 
[2026-04-15 16:52:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:52:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:52:28] [INFO] Checking activity reminders 
[2026-04-15 16:52:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:52:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:52:34] [INFO] Checking activity reminders 
[2026-04-15 16:52:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:52:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:52:38] [INFO] Checking activity reminders 
[2026-04-15 16:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:52:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:04] [INFO] Checking activity reminders 
[2026-04-15 16:53:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:53:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:53:05] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 16:53:05","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 16:53:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:05] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9893","is_new_deal":false}
[2026-04-15 16:53:05] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 16:53:05] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:53:05] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:53:05] [INFO] getContactPrimaryPhone called {"contact_id":"9893"}
[2026-04-15 16:53:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:05] [INFO] getContactPrimaryPhone result {"contact_id":"9893","person_found":true,"primary_phone":"9176949407"}
[2026-04-15 16:53:05] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9176949407"}
[2026-04-15 16:53:05] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9176949407","contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:53:05"}
[2026-04-15 16:53:05] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","existing_deal_found":true,"existing_contact_id":"9893","existing_title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:53:05"}
[2026-04-15 16:53:05] [INFO] DealController.save validated payments {"deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 16:53:05] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9893","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 16:53:05] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d61eff4c42f8.64487449","contact_didar_id":"9893","title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9176949407","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم دیوه","existing_deal":"YES","existing_deal_id":"local_69d61eff4c42f8.64487449","existing_deal_status":"Pending","server_time":"2026-04-15 16:53:05","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 16:53:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:05] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d61eff4c42f8.64487449","contact_id":"9893","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9176949407 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 16:53:05","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 16:53:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:08] [INFO] Checking activity reminders 
[2026-04-15 16:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:53:20] [INFO] Activity save request {"post_data":{"contact_id":"9893","deal_id":"local_69d61eff4c42f8.64487449","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:20] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:53:20] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:20] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"9893","note_was_empty":true}
[2026-04-15 16:53:20] [INFO] Didar write disabled; saving activity locally {"contact_id":"9893","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:20] [INFO] Updating virtual stage {"contact_id":"9893","stage_name":"deal_registered","force":false}
[2026-04-15 16:53:20] [INFO] Virtual stage successfully saved {"contact_id":"9893","stage_name":"deal_registered"}
[2026-04-15 16:53:20] [INFO] Virtual stage updated after activity save {"contact_id":"9893"}
[2026-04-15 16:53:20] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d61eff4c42f8.64487449","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 16:53:20] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df91483b8110.67173407","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:20] [INFO] Activity saved successfully {"activity_id":"local_activity_69df91483b8110.67173407"}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:20] [INFO] Updating virtual stage {"contact_id":"9893","stage_name":"deal_registered","force":false}
[2026-04-15 16:53:20] [INFO] Virtual stage successfully saved {"contact_id":"9893","stage_name":"deal_registered"}
[2026-04-15 16:53:20] [INFO] Virtual stage updated after activity save {"contact_id":"9893"}
[2026-04-15 16:53:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9893","person_id":"4992"}
[2026-04-15 16:53:25] [INFO] Checking activity reminders 
[2026-04-15 16:53:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:53:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:53:28] [INFO] Activity save request {"post_data":{"contact_id":"14698","deal_id":"local_69ba9cf0b0b840.23617668","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"30 فروردین 10 ت میزنه \/ 30 اردیبهشت تسویه","activity_duration":"15","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:28] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:53:28] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:28] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14698","note_was_empty":true}
[2026-04-15 16:53:28] [INFO] Didar write disabled; saving activity locally {"contact_id":"14698","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:28] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-04-15 16:53:28] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-04-15 16:53:28] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-04-15 16:53:28] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ba9cf0b0b840.23617668","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 16:53:28] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df91509fcd03.25434097","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:28] [INFO] Activity saved successfully {"activity_id":"local_activity_69df91509fcd03.25434097"}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:28] [INFO] Updating virtual stage {"contact_id":"14698","stage_name":"deal_registered","force":false}
[2026-04-15 16:53:28] [INFO] Virtual stage successfully saved {"contact_id":"14698","stage_name":"deal_registered"}
[2026-04-15 16:53:28] [INFO] Virtual stage updated after activity save {"contact_id":"14698"}
[2026-04-15 16:53:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14698","person_id":"4840"}
[2026-04-15 16:53:34] [INFO] Checking activity reminders 
[2026-04-15 16:53:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:53:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:53:55] [INFO] Checking activity reminders 
[2026-04-15 16:53:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:53:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:54:04] [INFO] Checking activity reminders 
[2026-04-15 16:54:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:54:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:54:25] [INFO] Checking activity reminders 
[2026-04-15 16:54:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:54:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:54:34] [INFO] Checking activity reminders 
[2026-04-15 16:54:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:54:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:54:55] [INFO] Checking activity reminders 
[2026-04-15 16:54:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:54:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:55:04] [INFO] Checking activity reminders 
[2026-04-15 16:55:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:55:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:55:25] [INFO] Checking activity reminders 
[2026-04-15 16:55:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:55:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:55:34] [INFO] Checking activity reminders 
[2026-04-15 16:55:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:55:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:55:55] [INFO] Checking activity reminders 
[2026-04-15 16:55:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:55:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:56:04] [INFO] Checking activity reminders 
[2026-04-15 16:56:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:56:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:56:06] [INFO] Activity save request {"post_data":{"contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"سرمایه گذاری ملک و زمین \r\nفعلا قصد نداره در کانال حضور داشته باشه ","activity_duration":"2","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:06] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 16:56:06] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:06] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21052","note_was_empty":true}
[2026-04-15 16:56:06] [INFO] Didar write disabled; saving activity locally {"contact_id":"21052","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:06] [INFO] Updating virtual stage {"contact_id":"21052","stage_name":"deal_registered","force":false}
[2026-04-15 16:56:06] [INFO] Virtual stage successfully saved {"contact_id":"21052","stage_name":"deal_registered"}
[2026-04-15 16:56:06] [INFO] Virtual stage updated after activity save {"contact_id":"21052"}
[2026-04-15 16:56:06] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d62228a7e8d1.74633056","stage":"تماس پیگیری","status_change":null}
[2026-04-15 16:56:06] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df91eea9bb75.25984383","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:06] [INFO] Activity saved successfully {"activity_id":"local_activity_69df91eea9bb75.25984383"}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:06] [INFO] Updating virtual stage {"contact_id":"21052","stage_name":"deal_registered","force":false}
[2026-04-15 16:56:06] [INFO] Virtual stage successfully saved {"contact_id":"21052","stage_name":"deal_registered"}
[2026-04-15 16:56:06] [INFO] Virtual stage updated after activity save {"contact_id":"21052"}
[2026-04-15 16:56:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:25] [INFO] Checking activity reminders 
[2026-04-15 16:56:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:56:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:56:34] [INFO] Checking activity reminders 
[2026-04-15 16:56:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:56:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:56:38] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 16:56:38","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 16:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:38] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"21052","is_new_deal":false}
[2026-04-15 16:56:38] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 16:56:38] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:56:38] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 16:56:38] [INFO] getContactPrimaryPhone called {"contact_id":"21052"}
[2026-04-15 16:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:38] [INFO] getContactPrimaryPhone result {"contact_id":"21052","person_found":true,"primary_phone":"9190825214"}
[2026-04-15 16:56:38] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9190825214"}
[2026-04-15 16:56:38] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9190825214","contact_id":"21052","deal_id":"local_69d62228a7e8d1.74633056","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:56:38"}
[2026-04-15 16:56:38] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","existing_deal_found":true,"existing_contact_id":"21052","existing_title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 16:56:38"}
[2026-04-15 16:56:38] [INFO] DealController.save validated payments {"deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 16:56:38] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21052","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 16:56:38] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d62228a7e8d1.74633056","contact_didar_id":"21052","title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9190825214","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"خانم پذیرفته","existing_deal":"YES","existing_deal_id":"local_69d62228a7e8d1.74633056","existing_deal_status":"Pending","server_time":"2026-04-15 16:56:38","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 16:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:38] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d62228a7e8d1.74633056","contact_id":"21052","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9190825214 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 16:56:38","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 16:56:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21052","person_id":"4363"}
[2026-04-15 16:56:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 16:56:55] [INFO] Checking activity reminders 
[2026-04-15 16:56:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:56:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:57:05] [INFO] Checking activity reminders 
[2026-04-15 16:57:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:57:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:57:25] [INFO] Checking activity reminders 
[2026-04-15 16:57:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:57:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:57:35] [INFO] Checking activity reminders 
[2026-04-15 16:57:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:57:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:57:56] [INFO] Checking activity reminders 
[2026-04-15 16:57:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:57:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:58:05] [INFO] Checking activity reminders 
[2026-04-15 16:58:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:58:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:58:26] [INFO] Checking activity reminders 
[2026-04-15 16:58:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:58:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:58:35] [INFO] Checking activity reminders 
[2026-04-15 16:58:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:58:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:58:56] [INFO] Checking activity reminders 
[2026-04-15 16:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:59:05] [INFO] Checking activity reminders 
[2026-04-15 16:59:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:59:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:59:26] [INFO] Checking activity reminders 
[2026-04-15 16:59:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:59:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:59:35] [INFO] Checking activity reminders 
[2026-04-15 16:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 16:59:56] [INFO] Checking activity reminders 
[2026-04-15 16:59:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 16:59:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:00:05] [INFO] Checking activity reminders 
[2026-04-15 17:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:00:26] [INFO] Checking activity reminders 
[2026-04-15 17:00:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:00:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:00:35] [INFO] Checking activity reminders 
[2026-04-15 17:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:00:56] [INFO] Checking activity reminders 
[2026-04-15 17:00:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:00:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:01:05] [INFO] Checking activity reminders 
[2026-04-15 17:01:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:01:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:01:26] [INFO] Checking activity reminders 
[2026-04-15 17:01:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:01:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:01:35] [INFO] Checking activity reminders 
[2026-04-15 17:01:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:01:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:01:56] [INFO] Checking activity reminders 
[2026-04-15 17:01:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:01:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:02:05] [INFO] Checking activity reminders 
[2026-04-15 17:02:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:02:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:02:26] [INFO] Checking activity reminders 
[2026-04-15 17:02:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:02:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:02:35] [INFO] Checking activity reminders 
[2026-04-15 17:02:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:02:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:02:56] [INFO] Checking activity reminders 
[2026-04-15 17:02:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:02:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:03:06] [INFO] Checking activity reminders 
[2026-04-15 17:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:03:27] [INFO] Checking activity reminders 
[2026-04-15 17:03:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:03:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:03:36] [INFO] Checking activity reminders 
[2026-04-15 17:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:03:57] [INFO] Checking activity reminders 
[2026-04-15 17:03:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:03:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:04:06] [INFO] Checking activity reminders 
[2026-04-15 17:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:04:27] [INFO] Checking activity reminders 
[2026-04-15 17:04:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:04:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:04:36] [INFO] Checking activity reminders 
[2026-04-15 17:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:04:57] [INFO] Checking activity reminders 
[2026-04-15 17:04:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:04:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:05:06] [INFO] Checking activity reminders 
[2026-04-15 17:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:05:27] [INFO] Checking activity reminders 
[2026-04-15 17:05:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:05:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:05:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 17:05:35","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 17:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:05:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"7666","is_new_deal":false}
[2026-04-15 17:05:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 17:05:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:05:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:05:35] [INFO] getContactPrimaryPhone called {"contact_id":"7666"}
[2026-04-15 17:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:05:35] [INFO] getContactPrimaryPhone result {"contact_id":"7666","person_found":true,"primary_phone":"9330667795"}
[2026-04-15 17:05:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9330667795"}
[2026-04-15 17:05:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9330667795","contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:05:35"}
[2026-04-15 17:05:35] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","existing_deal_found":true,"existing_contact_id":"7666","existing_title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:05:35"}
[2026-04-15 17:05:35] [INFO] DealController.save validated payments {"deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 17:05:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"7666","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 17:05:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d6909d3aa6b0.45939408","contact_didar_id":"7666","title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","base_title_used":"معامله سوم 9330667795","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"امیر نصیری","existing_deal":"YES","existing_deal_id":"local_69d6909d3aa6b0.45939408","existing_deal_status":"Pending","server_time":"2026-04-15 17:05:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 17:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:05:35] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d6909d3aa6b0.45939408","contact_id":"7666","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله سوم 9330667795 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 17:05:35","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 17:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:05:36] [INFO] Checking activity reminders 
[2026-04-15 17:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:05:57] [INFO] Checking activity reminders 
[2026-04-15 17:05:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:05:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:06:06] [INFO] Checking activity reminders 
[2026-04-15 17:06:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:06:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:06:21] [INFO] Activity save request {"post_data":{"contact_id":"7666","deal_id":"local_69d6909d3aa6b0.45939408","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:06:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7666","note_was_empty":true}
[2026-04-15 17:06:21] [INFO] Didar write disabled; saving activity locally {"contact_id":"7666","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:21] [INFO] Updating virtual stage {"contact_id":"7666","stage_name":"deal_registered","force":false}
[2026-04-15 17:06:21] [INFO] Virtual stage successfully saved {"contact_id":"7666","stage_name":"deal_registered"}
[2026-04-15 17:06:21] [INFO] Virtual stage updated after activity save {"contact_id":"7666"}
[2026-04-15 17:06:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d6909d3aa6b0.45939408","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:06:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9455c090c6.62441407","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9455c090c6.62441407"}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:21] [INFO] Updating virtual stage {"contact_id":"7666","stage_name":"deal_registered","force":false}
[2026-04-15 17:06:21] [INFO] Virtual stage successfully saved {"contact_id":"7666","stage_name":"deal_registered"}
[2026-04-15 17:06:21] [INFO] Virtual stage updated after activity save {"contact_id":"7666"}
[2026-04-15 17:06:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7666","person_id":"49"}
[2026-04-15 17:06:27] [INFO] Checking activity reminders 
[2026-04-15 17:06:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:06:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:06:36] [INFO] Checking activity reminders 
[2026-04-15 17:06:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:06:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:06:57] [INFO] Checking activity reminders 
[2026-04-15 17:06:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:06:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:07:27] [INFO] Checking activity reminders 
[2026-04-15 17:07:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:07:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:07:57] [INFO] Checking activity reminders 
[2026-04-15 17:07:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:07:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:08:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:27] [INFO] Checking activity reminders 
[2026-04-15 17:08:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:08:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:08:38] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ\r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:08:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_100","note_was_empty":true}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:38] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered","force":false}
[2026-04-15 17:08:38] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered"}
[2026-04-15 17:08:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_100"}
[2026-04-15 17:08:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d210b11b2196.48242971","stage":"تماس پیگیری","status_change":null}
[2026-04-15 17:08:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df94de1dbad5.29952032","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69df94de1dbad5.29952032"}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:38] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered","force":false}
[2026-04-15 17:08:38] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_100","stage_name":"deal_registered"}
[2026-04-15 17:08:38] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_100"}
[2026-04-15 17:08:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:49] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 17:08:49","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 17:08:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:49] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"local_1403_09_26_100","is_new_deal":false}
[2026-04-15 17:08:49] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 17:08:49] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:08:49] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:08:49] [INFO] getContactPrimaryPhone called {"contact_id":"local_1403_09_26_100"}
[2026-04-15 17:08:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:49] [INFO] getContactPrimaryPhone result {"contact_id":"local_1403_09_26_100","person_found":true,"primary_phone":"9141034212"}
[2026-04-15 17:08:49] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9141034212"}
[2026-04-15 17:08:49] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9141034212","contact_id":"local_1403_09_26_100","deal_id":"local_69d210b11b2196.48242971","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:08:49"}
[2026-04-15 17:08:49] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","existing_deal_found":true,"existing_contact_id":"local_1403_09_26_100","existing_title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:08:49"}
[2026-04-15 17:08:49] [INFO] DealController.save validated payments {"deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","payments_count":0,"status":"pending","pipeline_stage":"تماس عدم پاسخ"}
[2026-04-15 17:08:49] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_1403_09_26_100","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 17:08:49] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d210b11b2196.48242971","contact_didar_id":"local_1403_09_26_100","title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","base_title_used":"معامله اول 9141034212","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس عدم پاسخ","status":"pending","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"نصیرزاده","existing_deal":"YES","existing_deal_id":"local_69d210b11b2196.48242971","existing_deal_status":"Pending","server_time":"2026-04-15 17:08:49","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 17:08:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d210b11b2196.48242971","contact_id":"local_1403_09_26_100","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9141034212 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"تماس عدم پاسخ","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 17:08:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 17:08:49] [INFO] Checking activity reminders 
[2026-04-15 17:08:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:08:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:08:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_100","person_id":"21177"}
[2026-04-15 17:08:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:08:57] [INFO] Checking activity reminders 
[2026-04-15 17:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:09:19] [INFO] Checking activity reminders 
[2026-04-15 17:09:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:09:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:09:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-15 17:09:27] [INFO] Checking activity reminders 
[2026-04-15 17:09:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:09:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:09:49] [INFO] Checking activity reminders 
[2026-04-15 17:09:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:09:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:09:58] [INFO] Checking activity reminders 
[2026-04-15 17:09:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:09:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:09:59] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 17:09:59","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 17:09:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-15 17:09:59] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"1211","is_new_deal":false}
[2026-04-15 17:09:59] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 17:09:59] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:09:59] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:09:59] [INFO] getContactPrimaryPhone called {"contact_id":"1211"}
[2026-04-15 17:09:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-15 17:09:59] [INFO] getContactPrimaryPhone result {"contact_id":"1211","person_found":true,"primary_phone":"9135603622"}
[2026-04-15 17:09:59] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9135603622"}
[2026-04-15 17:09:59] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9135603622","contact_id":"1211","deal_id":"local_69d21034005ee8.26116387","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:09:59"}
[2026-04-15 17:09:59] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","existing_deal_found":true,"existing_contact_id":"1211","existing_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:09:59"}
[2026-04-15 17:09:59] [INFO] DealController.save validated payments {"deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 17:09:59] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"1211","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 17:09:59] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d21034005ee8.26116387","contact_didar_id":"1211","title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9135603622","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدحسین زین الدینی","existing_deal":"YES","existing_deal_id":"local_69d21034005ee8.26116387","existing_deal_status":"Pending","server_time":"2026-04-15 17:09:59","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 17:09:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-15 17:09:59] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d21034005ee8.26116387","contact_id":"1211","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9135603622 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 17:09:59","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 17:10:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1211","person_id":"15867"}
[2026-04-15 17:10:19] [INFO] Checking activity reminders 
[2026-04-15 17:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:10:28] [INFO] Checking activity reminders 
[2026-04-15 17:10:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:10:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:10:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-15 17:10:48] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 17:10:48","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 17:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-15 17:10:48] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"9900","is_new_deal":false}
[2026-04-15 17:10:48] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 17:10:48] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:10:48] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:10:48] [INFO] getContactPrimaryPhone called {"contact_id":"9900"}
[2026-04-15 17:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-15 17:10:48] [INFO] getContactPrimaryPhone result {"contact_id":"9900","person_found":true,"primary_phone":"9132674126"}
[2026-04-15 17:10:48] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9132674126"}
[2026-04-15 17:10:48] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9132674126","contact_id":"9900","deal_id":"local_69d20f0441e9d1.62640784","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:10:48"}
[2026-04-15 17:10:48] [INFO] DealController.save existing deal lookup {"deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","existing_deal_found":true,"existing_contact_id":"9900","existing_title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:10:48"}
[2026-04-15 17:10:48] [INFO] DealController.save validated payments {"deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 17:10:48] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"9900","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 17:10:48] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69d20f0441e9d1.62640784","contact_didar_id":"9900","title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9132674126","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"یزدخواستی","existing_deal":"YES","existing_deal_id":"local_69d20f0441e9d1.62640784","existing_deal_status":"Pending","server_time":"2026-04-15 17:10:48","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 17:10:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-15 17:10:49] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69d20f0441e9d1.62640784","contact_id":"9900","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله دوم 9132674126 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 17:10:49","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 17:10:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9900","person_id":"16384"}
[2026-04-15 17:10:49] [INFO] Checking activity reminders 
[2026-04-15 17:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:10:58] [INFO] Checking activity reminders 
[2026-04-15 17:10:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:10:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:11:20] [INFO] Checking activity reminders 
[2026-04-15 17:11:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:11:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:11:28] [INFO] Checking activity reminders 
[2026-04-15 17:11:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:11:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:11:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-04-15 17:11:43] [INFO] Activity save request {"post_data":{"contact_id":"local_694b803a1c5325.08790989","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"عدم پاسخ ارسال پیام","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:11:43] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:11:43] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:11:43] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_694b803a1c5325.08790989","note_was_empty":true}
[2026-04-15 17:11:43] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df95970c1b65.64751723","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:11:43] [INFO] Activity saved successfully {"activity_id":"local_activity_69df95970c1b65.64751723"}
[2026-04-15 17:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:11:43] [INFO] Updating virtual stage {"contact_id":"local_694b803a1c5325.08790989","stage_name":"deal_registered","force":false}
[2026-04-15 17:11:43] [INFO] Virtual stage successfully saved {"contact_id":"local_694b803a1c5325.08790989","stage_name":"deal_registered"}
[2026-04-15 17:11:43] [INFO] Virtual stage updated after activity save {"contact_id":"local_694b803a1c5325.08790989"}
[2026-04-15 17:11:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_694b803a1c5325.08790989","person_id":"21338"}
[2026-04-15 17:11:50] [INFO] Checking activity reminders 
[2026-04-15 17:11:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:11:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:11:58] [INFO] Checking activity reminders 
[2026-04-15 17:11:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:11:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:12:15] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"933","deal_id":"local_69b84bac97c7c7.14544831","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 17:12:15","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 17:12:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-04-15 17:12:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"933","is_new_deal":false}
[2026-04-15 17:12:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 17:12:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:12:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 17:12:15] [INFO] getContactPrimaryPhone called {"contact_id":"933"}
[2026-04-15 17:12:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-04-15 17:12:15] [INFO] getContactPrimaryPhone result {"contact_id":"933","person_found":true,"primary_phone":"9169944620"}
[2026-04-15 17:12:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9169944620"}
[2026-04-15 17:12:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9169944620","contact_id":"933","deal_id":"local_69b84bac97c7c7.14544831","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:12:15"}
[2026-04-15 17:12:15] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","existing_deal_found":true,"existing_contact_id":"933","existing_title":"معامله چهارم 9169944620 | کانال VIP با پشتیبانی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 17:12:15"}
[2026-04-15 17:12:15] [INFO] DealController.save validated payments {"deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","payments_count":0,"status":"lost","pipeline_stage":"تماس پیگیری"}
[2026-04-15 17:12:15] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"933","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 17:12:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b84bac97c7c7.14544831","contact_didar_id":"933","title":"معامله چهارم 9169944620 | کانال VIP با پشتیبانی","base_title_used":"معامله چهارم 9169944620","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"lost","payable_amount":79000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"سام رضایی","existing_deal":"YES","existing_deal_id":"local_69b84bac97c7c7.14544831","existing_deal_status":"Pending","server_time":"2026-04-15 17:12:15","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 17:12:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-04-15 17:12:15] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b84bac97c7c7.14544831","contact_id":"933","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله چهارم 9169944620 | کانال VIP با پشتیبانی","deal_status":"lost","pipeline_stage":"تماس پیگیری","payable_amount":79000000,"payment_amount":0,"server_time":"2026-04-15 17:12:15","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 17:12:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"933","person_id":"13855"}
[2026-04-15 17:12:20] [INFO] Checking activity reminders 
[2026-04-15 17:12:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:12:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:12:28] [INFO] Checking activity reminders 
[2026-04-15 17:12:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:12:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:12:35] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:35] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"check_reminders"}
[2026-04-15 17:12:35] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"get_products"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"get_leads"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:39] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:40] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:42] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:43] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:43] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:43] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"lookup_mobile"}
[2026-04-15 17:12:43] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:45] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:50] [INFO] Checking activity reminders 
[2026-04-15 17:12:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:12:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:12:50] [WARNING] Auth check failed - not authenticated {"session_id":"0sdkaduf0n0ii81i7g5mvolb8g","session_keys":[],"action":"log_client_event"}
[2026-04-15 17:12:50] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-15 17:12:50] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 17:12:58] [INFO] Checking activity reminders 
[2026-04-15 17:12:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:12:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17261","person_id":"5011"}
[2026-04-15 17:13:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:13:20] [INFO] Checking activity reminders 
[2026-04-15 17:13:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:13:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:13:28] [INFO] Checking activity reminders 
[2026-04-15 17:13:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:13:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:13:50] [INFO] Checking activity reminders 
[2026-04-15 17:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:14:20] [INFO] Checking activity reminders 
[2026-04-15 17:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:14:50] [INFO] Checking activity reminders 
[2026-04-15 17:14:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:14:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:15:20] [INFO] Checking activity reminders 
[2026-04-15 17:15:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:15:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:15:50] [INFO] Checking activity reminders 
[2026-04-15 17:15:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:15:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:16:20] [INFO] Checking activity reminders 
[2026-04-15 17:16:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:16:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:16:51] [INFO] Checking activity reminders 
[2026-04-15 17:16:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:16:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:17:21] [INFO] Checking activity reminders 
[2026-04-15 17:17:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:17:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:17:51] [INFO] Checking activity reminders 
[2026-04-15 17:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:17:58] [INFO] Lead update received {"contact_id":"local_69df5340656e19.81834899","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 17:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:17:58] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 17:17:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:18:21] [INFO] Checking activity reminders 
[2026-04-15 17:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:18:51] [INFO] Checking activity reminders 
[2026-04-15 17:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:19:21] [INFO] Checking activity reminders 
[2026-04-15 17:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:19:51] [INFO] Checking activity reminders 
[2026-04-15 17:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:20:21] [INFO] Checking activity reminders 
[2026-04-15 17:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:20:51] [INFO] Checking activity reminders 
[2026-04-15 17:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:21:21] [INFO] Checking activity reminders 
[2026-04-15 17:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:21:51] [INFO] Checking activity reminders 
[2026-04-15 17:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:22:21] [INFO] Checking activity reminders 
[2026-04-15 17:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:22:51] [INFO] Checking activity reminders 
[2026-04-15 17:22:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:22:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:23:21] [INFO] Checking activity reminders 
[2026-04-15 17:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:23:52] [INFO] Checking activity reminders 
[2026-04-15 17:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:24:16] [INFO] Checking activity reminders 
[2026-04-15 17:24:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:24:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:24:22] [INFO] Checking activity reminders 
[2026-04-15 17:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:24:46] [INFO] Checking activity reminders 
[2026-04-15 17:24:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:24:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:24:52] [INFO] Checking activity reminders 
[2026-04-15 17:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:25:22] [INFO] Checking activity reminders 
[2026-04-15 17:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:25:52] [INFO] Checking activity reminders 
[2026-04-15 17:25:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:25:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:26:22] [INFO] Checking activity reminders 
[2026-04-15 17:26:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:26:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:26:52] [INFO] Checking activity reminders 
[2026-04-15 17:26:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:26:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:27:22] [INFO] Checking activity reminders 
[2026-04-15 17:27:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:27:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:27:52] [INFO] Checking activity reminders 
[2026-04-15 17:27:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:27:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:28:22] [INFO] Checking activity reminders 
[2026-04-15 17:28:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:28:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:28:52] [INFO] Checking activity reminders 
[2026-04-15 17:28:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:28:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:29:22] [INFO] Checking activity reminders 
[2026-04-15 17:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:29:52] [INFO] Checking activity reminders 
[2026-04-15 17:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:30:22] [INFO] Checking activity reminders 
[2026-04-15 17:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:30:52] [INFO] Checking activity reminders 
[2026-04-15 17:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:31:23] [INFO] Checking activity reminders 
[2026-04-15 17:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:31:53] [INFO] Checking activity reminders 
[2026-04-15 17:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:32:23] [INFO] Checking activity reminders 
[2026-04-15 17:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:32:53] [INFO] Checking activity reminders 
[2026-04-15 17:32:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:32:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:37:20] [INFO] Checking activity reminders 
[2026-04-15 17:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:37:50] [INFO] Checking activity reminders 
[2026-04-15 17:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:38:20] [INFO] Checking activity reminders 
[2026-04-15 17:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:38:50] [INFO] Checking activity reminders 
[2026-04-15 17:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:39:04] [INFO] Activity save request {"post_data":{"contact_id":"local_69df5340656e19.81834899","deal_id":"local_69df53406e255","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"خودرو مصرف ساینا \/ طلا 20 گرم \/ 100 نقد\r\nصندوق 20 ت \/ \r\nکانال به دردش نمیخوره بی پول \/ \r\nهوش کارشناسی 15ت فردا تا قبل 12 اطلاع","activity_duration":"30","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:04] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:39:04] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:04] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69df5340656e19.81834899","note_was_empty":true}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:04] [INFO] Updating virtual stage {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered","force":false}
[2026-04-15 17:39:04] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered"}
[2026-04-15 17:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 17:39:04] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df53406e255","stage":"تماس پیگیری","status_change":null}
[2026-04-15 17:39:04] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9c008ddd98.59910064","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:04] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9c008ddd98.59910064"}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:04] [INFO] Updating virtual stage {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered","force":false}
[2026-04-15 17:39:04] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5340656e19.81834899","stage_name":"deal_registered"}
[2026-04-15 17:39:04] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5340656e19.81834899"}
[2026-04-15 17:39:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5340656e19.81834899","person_id":"22158"}
[2026-04-15 17:39:20] [INFO] Checking activity reminders 
[2026-04-15 17:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:39:50] [INFO] Checking activity reminders 
[2026-04-15 17:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:40:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:40:20] [INFO] Checking activity reminders 
[2026-04-15 17:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:40:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:40:50] [INFO] Checking activity reminders 
[2026-04-15 17:40:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:40:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:41:20] [INFO] Checking activity reminders 
[2026-04-15 17:41:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:41:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:41:50] [INFO] Checking activity reminders 
[2026-04-15 17:41:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:41:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:42:21] [INFO] Checking activity reminders 
[2026-04-15 17:42:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:42:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:42:51] [INFO] Checking activity reminders 
[2026-04-15 17:42:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:42:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:43:21] [INFO] Checking activity reminders 
[2026-04-15 17:43:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:43:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:43:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 17:43:32] [INFO] Checking activity reminders 
[2026-04-15 17:43:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:43:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:43:35] [INFO] Checking activity reminders 
[2026-04-15 17:43:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:43:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:43:51] [INFO] Checking activity reminders 
[2026-04-15 17:43:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:43:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:44:05] [INFO] Checking activity reminders 
[2026-04-15 17:44:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:44:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:21] [INFO] Checking activity reminders 
[2026-04-15 17:44:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:44:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:44:35] [INFO] Checking activity reminders 
[2026-04-15 17:44:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:44:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:44:38] [INFO] Activity save request {"post_data":{"contact_id":"2916","deal_id":"local_69b7228b3b6b78.41972191","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا خرداد تسویه کامل \r\nاخر ماه و اردیبهشت هم واریز دارند ","activity_duration":"2","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:38] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:44:38] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:38] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2916","note_was_empty":true}
[2026-04-15 17:44:38] [INFO] Didar write disabled; saving activity locally {"contact_id":"2916","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:38] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-04-15 17:44:38] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-04-15 17:44:38] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-04-15 17:44:38] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b7228b3b6b78.41972191","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 17:44:38] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9d4ef024d3.56176932","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:38] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9d4ef024d3.56176932"}
[2026-04-15 17:44:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:38] [INFO] Updating virtual stage {"contact_id":"2916","stage_name":"deal_registered","force":false}
[2026-04-15 17:44:38] [INFO] Virtual stage successfully saved {"contact_id":"2916","stage_name":"deal_registered"}
[2026-04-15 17:44:38] [INFO] Virtual stage updated after activity save {"contact_id":"2916"}
[2026-04-15 17:44:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2916","person_id":"15319"}
[2026-04-15 17:44:51] [INFO] Checking activity reminders 
[2026-04-15 17:44:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:44:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:44:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:05] [INFO] Checking activity reminders 
[2026-04-15 17:45:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:45:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:45:10] [INFO] Activity save request {"post_data":{"contact_id":"20867","deal_id":"local_69d20e79c9e8e7.85606887","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:10] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:45:10] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:10] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20867","note_was_empty":true}
[2026-04-15 17:45:10] [INFO] Didar write disabled; saving activity locally {"contact_id":"20867","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:10] [INFO] Updating virtual stage {"contact_id":"20867","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:10] [INFO] Virtual stage successfully saved {"contact_id":"20867","stage_name":"deal_registered"}
[2026-04-15 17:45:10] [INFO] Virtual stage updated after activity save {"contact_id":"20867"}
[2026-04-15 17:45:10] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20e79c9e8e7.85606887","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 17:45:10] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9d6e461088.06445645","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:10] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9d6e461088.06445645"}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:10] [INFO] Updating virtual stage {"contact_id":"20867","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:10] [INFO] Virtual stage successfully saved {"contact_id":"20867","stage_name":"deal_registered"}
[2026-04-15 17:45:10] [INFO] Virtual stage updated after activity save {"contact_id":"20867"}
[2026-04-15 17:45:10] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:14] [INFO] Activity save request {"post_data":{"contact_id":"1008","deal_id":"local_69b82286ead6c9.24459219","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"29 فروردین شنبه یا یکشنبه تسویه \r\nمیگفت باشه برای خرداد \r\nگفتم نمیشه","activity_duration":"15","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:14] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:45:14] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:14] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"1008","note_was_empty":true}
[2026-04-15 17:45:14] [INFO] Didar write disabled; saving activity locally {"contact_id":"1008","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:14] [INFO] Updating virtual stage {"contact_id":"1008","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:14] [INFO] Virtual stage successfully saved {"contact_id":"1008","stage_name":"deal_registered"}
[2026-04-15 17:45:14] [INFO] Virtual stage updated after activity save {"contact_id":"1008"}
[2026-04-15 17:45:14] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b82286ead6c9.24459219","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 17:45:14] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9d729c9a39.16146827","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:14] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9d729c9a39.16146827"}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:14] [INFO] Updating virtual stage {"contact_id":"1008","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:14] [INFO] Virtual stage successfully saved {"contact_id":"1008","stage_name":"deal_registered"}
[2026-04-15 17:45:14] [INFO] Virtual stage updated after activity save {"contact_id":"1008"}
[2026-04-15 17:45:14] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"1008","person_id":"16078"}
[2026-04-15 17:45:21] [INFO] Checking activity reminders 
[2026-04-15 17:45:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:45:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:45:33] [INFO] Activity save request {"post_data":{"contact_id":"20867","deal_id":"local_69d20e79c9e8e7.85606887","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ ","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:45:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"20867","note_was_empty":true}
[2026-04-15 17:45:33] [INFO] Didar write disabled; saving activity locally {"contact_id":"20867","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:33] [INFO] Updating virtual stage {"contact_id":"20867","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:33] [INFO] Virtual stage successfully saved {"contact_id":"20867","stage_name":"deal_registered"}
[2026-04-15 17:45:33] [INFO] Virtual stage updated after activity save {"contact_id":"20867"}
[2026-04-15 17:45:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d20e79c9e8e7.85606887","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:45:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9d858b3460.51797356","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9d858b3460.51797356"}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:33] [INFO] Updating virtual stage {"contact_id":"20867","stage_name":"deal_registered","force":false}
[2026-04-15 17:45:33] [INFO] Virtual stage successfully saved {"contact_id":"20867","stage_name":"deal_registered"}
[2026-04-15 17:45:33] [INFO] Virtual stage updated after activity save {"contact_id":"20867"}
[2026-04-15 17:45:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20867","person_id":"20061"}
[2026-04-15 17:45:36] [INFO] Checking activity reminders 
[2026-04-15 17:45:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:45:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:45:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:45:52] [INFO] Checking activity reminders 
[2026-04-15 17:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:46:01] [INFO] Checking activity reminders 
[2026-04-15 17:46:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:46:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:46:06] [INFO] Checking activity reminders 
[2026-04-15 17:46:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:46:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:46:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:46:16] [INFO] Activity save request {"post_data":{"contact_id":"412","deal_id":"local_694937d1a5cc91.89498052","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:46:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"412","note_was_empty":true}
[2026-04-15 17:46:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"412","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:16] [INFO] Updating virtual stage {"contact_id":"412","stage_name":"deal_registered","force":false}
[2026-04-15 17:46:16] [INFO] Virtual stage successfully saved {"contact_id":"412","stage_name":"deal_registered"}
[2026-04-15 17:46:16] [INFO] Virtual stage updated after activity save {"contact_id":"412"}
[2026-04-15 17:46:16] [INFO] Pipeline stage updated after activity save {"deal_id":"local_694937d1a5cc91.89498052","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:46:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9db0be5b16.18016137","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9db0be5b16.18016137"}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:16] [INFO] Updating virtual stage {"contact_id":"412","stage_name":"deal_registered","force":false}
[2026-04-15 17:46:16] [INFO] Virtual stage successfully saved {"contact_id":"412","stage_name":"deal_registered"}
[2026-04-15 17:46:16] [INFO] Virtual stage updated after activity save {"contact_id":"412"}
[2026-04-15 17:46:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"412","person_id":"13948"}
[2026-04-15 17:46:27] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 17:46:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:32] [INFO] Checking activity reminders 
[2026-04-15 17:46:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:46:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:46:36] [INFO] Checking activity reminders 
[2026-04-15 17:46:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:46:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:46:50] [INFO] Activity save request {"post_data":{"contact_id":"16991","deal_id":"local_69510065c5c229.91362204","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"رد تماس ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:50] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:46:50] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:50] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16991","note_was_empty":true}
[2026-04-15 17:46:50] [INFO] Didar write disabled; saving activity locally {"contact_id":"16991","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:50] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-04-15 17:46:50] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-04-15 17:46:50] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-04-15 17:46:50] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69510065c5c229.91362204","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:46:50] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9dd2cf24c9.97421659","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:50] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9dd2cf24c9.97421659"}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:46:50] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-04-15 17:46:50] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-04-15 17:46:50] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-04-15 17:46:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 17:47:02] [INFO] Checking activity reminders 
[2026-04-15 17:47:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:47:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:47:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:47:06] [INFO] Checking activity reminders 
[2026-04-15 17:47:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:47:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:47:32] [INFO] Checking activity reminders 
[2026-04-15 17:47:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:47:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:47:36] [INFO] Checking activity reminders 
[2026-04-15 17:47:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:47:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:48:02] [INFO] Checking activity reminders 
[2026-04-15 17:48:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:48:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:48:06] [INFO] Checking activity reminders 
[2026-04-15 17:48:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:48:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:48:32] [INFO] Checking activity reminders 
[2026-04-15 17:48:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:48:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:48:36] [INFO] Checking activity reminders 
[2026-04-15 17:48:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:48:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:49:02] [INFO] Checking activity reminders 
[2026-04-15 17:49:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:49:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:49:06] [INFO] Checking activity reminders 
[2026-04-15 17:49:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:49:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:49:13] [INFO] Activity save request {"post_data":{"contact_id":"11462","deal_id":"local_69a0094f432109.71371815","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک","activity_duration":"1","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:13] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:49:13] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:13] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"11462","note_was_empty":true}
[2026-04-15 17:49:13] [INFO] Didar write disabled; saving activity locally {"contact_id":"11462","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:13] [INFO] Updating virtual stage {"contact_id":"11462","stage_name":"deal_registered","force":false}
[2026-04-15 17:49:13] [INFO] Virtual stage successfully saved {"contact_id":"11462","stage_name":"deal_registered"}
[2026-04-15 17:49:13] [INFO] Virtual stage updated after activity save {"contact_id":"11462"}
[2026-04-15 17:49:13] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69a0094f432109.71371815","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:49:13] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9e611673e1.98479812","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:13] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9e611673e1.98479812"}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:13] [INFO] Updating virtual stage {"contact_id":"11462","stage_name":"deal_registered","force":false}
[2026-04-15 17:49:13] [INFO] Virtual stage successfully saved {"contact_id":"11462","stage_name":"deal_registered"}
[2026-04-15 17:49:13] [INFO] Virtual stage updated after activity save {"contact_id":"11462"}
[2026-04-15 17:49:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11462","person_id":"19242"}
[2026-04-15 17:49:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:32] [INFO] Checking activity reminders 
[2026-04-15 17:49:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:49:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:49:36] [INFO] Checking activity reminders 
[2026-04-15 17:49:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:49:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:49:58] [INFO] Activity save request {"post_data":{"contact_id":"4120","deal_id":"local_69ca91120e83b1.49932522","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:58] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:49:58] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:58] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4120","note_was_empty":true}
[2026-04-15 17:49:58] [INFO] Didar write disabled; saving activity locally {"contact_id":"4120","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:58] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-04-15 17:49:58] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-04-15 17:49:58] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-04-15 17:49:58] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69ca91120e83b1.49932522","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:49:58] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9e8eba7529.30042379","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:58] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9e8eba7529.30042379"}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:49:58] [INFO] Updating virtual stage {"contact_id":"4120","stage_name":"deal_registered","force":false}
[2026-04-15 17:49:58] [INFO] Virtual stage successfully saved {"contact_id":"4120","stage_name":"deal_registered"}
[2026-04-15 17:49:58] [INFO] Virtual stage updated after activity save {"contact_id":"4120"}
[2026-04-15 17:49:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4120","person_id":"12987"}
[2026-04-15 17:50:02] [INFO] Checking activity reminders 
[2026-04-15 17:50:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:50:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:50:06] [INFO] Checking activity reminders 
[2026-04-15 17:50:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:50:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:50:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:32] [INFO] Checking activity reminders 
[2026-04-15 17:50:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:50:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:50:36] [INFO] Activity save request {"post_data":{"contact_id":"16289","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شرایط صحبت نداشت \r\nخودش تماس میگیره ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:50:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16289","note_was_empty":true}
[2026-04-15 17:50:36] [INFO] Didar write disabled; saving activity locally {"contact_id":"16289","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:50:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9eb41f9103.43238508","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9eb41f9103.43238508"}
[2026-04-15 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:36] [INFO] Updating virtual stage {"contact_id":"16289","stage_name":"deal_registered","force":false}
[2026-04-15 17:50:36] [INFO] Virtual stage successfully saved {"contact_id":"16289","stage_name":"deal_registered"}
[2026-04-15 17:50:36] [INFO] Virtual stage updated after activity save {"contact_id":"16289"}
[2026-04-15 17:50:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-15 17:50:37] [INFO] Checking activity reminders 
[2026-04-15 17:50:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:50:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:50:47] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:02] [INFO] Checking activity reminders 
[2026-04-15 17:51:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:51:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:51:05] [INFO] Activity save request {"post_data":{"contact_id":"6967","deal_id":"local_69d4da8cd7d966.48107679","activity_type_id":"3b446dc2-5945-595c-c7ed-0eee08ff78fd","activity_type_title":"چت ورودی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"incoming","current_stage":"تماس عدم پاسخ","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:51:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"6967","note_was_empty":true}
[2026-04-15 17:51:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"6967","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:05] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-15 17:51:05] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-15 17:51:05] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-15 17:51:05] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69d4da8cd7d966.48107679","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:51:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9ed1a86a47.59342257","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9ed1a86a47.59342257"}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:05] [INFO] Updating virtual stage {"contact_id":"6967","stage_name":"deal_registered","force":false}
[2026-04-15 17:51:05] [INFO] Virtual stage successfully saved {"contact_id":"6967","stage_name":"deal_registered"}
[2026-04-15 17:51:05] [INFO] Virtual stage updated after activity save {"contact_id":"6967"}
[2026-04-15 17:51:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"6967","person_id":"17390"}
[2026-04-15 17:51:07] [INFO] Checking activity reminders 
[2026-04-15 17:51:07] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:51:07] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:51:23] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:32] [INFO] Checking activity reminders 
[2026-04-15 17:51:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:51:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:51:37] [INFO] Checking activity reminders 
[2026-04-15 17:51:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:51:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:51:45] [INFO] Activity save request {"post_data":{"contact_id":"local_695cc3ba045d98.86248747","deal_id":"local_69b53a766e21c1.63962287","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس عدم پاسخ","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:45] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:51:45] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:45] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_695cc3ba045d98.86248747","note_was_empty":true}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:45] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-04-15 17:51:45] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-04-15 17:51:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-04-15 17:51:45] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b53a766e21c1.63962287","stage":"تماس عدم پاسخ","status_change":null}
[2026-04-15 17:51:45] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9ef93d6eb1.05724635","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:45] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9ef93d6eb1.05724635"}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:45] [INFO] Updating virtual stage {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered","force":false}
[2026-04-15 17:51:45] [INFO] Virtual stage successfully saved {"contact_id":"local_695cc3ba045d98.86248747","stage_name":"deal_registered"}
[2026-04-15 17:51:45] [INFO] Virtual stage updated after activity save {"contact_id":"local_695cc3ba045d98.86248747"}
[2026-04-15 17:51:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cc3ba045d98.86248747","person_id":"21537"}
[2026-04-15 17:51:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:02] [INFO] Checking activity reminders 
[2026-04-15 17:52:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:52:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:52:08] [INFO] Checking activity reminders 
[2026-04-15 17:52:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:52:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:52:22] [INFO] Activity save request {"post_data":{"contact_id":"local_699ac3915763b4.19041363","deal_id":"local_699ac3915ae92","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:22] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:52:22] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:22] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_699ac3915763b4.19041363","note_was_empty":true}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:22] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-15 17:52:22] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-15 17:52:22] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-15 17:52:22] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ac3915ae92","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 17:52:22] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69df9f1ecc09f7.41411434","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:22] [INFO] Activity saved successfully {"activity_id":"local_activity_69df9f1ecc09f7.41411434"}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:22] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-15 17:52:22] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-15 17:52:22] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-15 17:52:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 17:52:33] [INFO] Checking activity reminders 
[2026-04-15 17:52:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:52:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:52:38] [INFO] Checking activity reminders 
[2026-04-15 17:52:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:52:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:53:03] [INFO] Checking activity reminders 
[2026-04-15 17:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:53:08] [INFO] Checking activity reminders 
[2026-04-15 17:53:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:53:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:53:33] [INFO] Checking activity reminders 
[2026-04-15 17:53:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:53:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:53:38] [INFO] Checking activity reminders 
[2026-04-15 17:53:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:53:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:54:03] [INFO] Checking activity reminders 
[2026-04-15 17:54:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:54:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:54:08] [INFO] Checking activity reminders 
[2026-04-15 17:54:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:54:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:54:33] [INFO] Checking activity reminders 
[2026-04-15 17:54:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:54:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:54:38] [INFO] Checking activity reminders 
[2026-04-15 17:54:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:54:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:55:03] [INFO] Checking activity reminders 
[2026-04-15 17:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:55:08] [INFO] Checking activity reminders 
[2026-04-15 17:55:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:55:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:55:33] [INFO] Checking activity reminders 
[2026-04-15 17:55:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:55:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:55:38] [INFO] Checking activity reminders 
[2026-04-15 17:55:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:55:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:56:03] [INFO] Checking activity reminders 
[2026-04-15 17:56:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:56:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:56:08] [INFO] Checking activity reminders 
[2026-04-15 17:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:56:33] [INFO] Checking activity reminders 
[2026-04-15 17:56:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:56:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:56:38] [INFO] Checking activity reminders 
[2026-04-15 17:56:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:56:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:57:03] [INFO] Checking activity reminders 
[2026-04-15 17:57:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:57:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:57:08] [INFO] Checking activity reminders 
[2026-04-15 17:57:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:57:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:57:33] [INFO] Checking activity reminders 
[2026-04-15 17:57:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:57:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:57:39] [INFO] Checking activity reminders 
[2026-04-15 17:57:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:57:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:58:03] [INFO] Checking activity reminders 
[2026-04-15 17:58:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:58:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:58:09] [INFO] Checking activity reminders 
[2026-04-15 17:58:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:58:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:58:33] [INFO] Checking activity reminders 
[2026-04-15 17:58:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:58:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:58:36] [INFO] Activity save request {"post_data":{"contact_id":"local_69df5354f22a86.62747611","deal_id":"local_69df535503e58","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"250ت کلا داره \/ علاقه به خودرو نداشت\/ \r\nگفتم یکم سرمایه رو بیشتر کن بهم بگو 6ماهه کانال بیارمت","activity_duration":"10","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:36] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 17:58:36] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:36] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_69df5354f22a86.62747611","note_was_empty":true}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:36] [INFO] Updating virtual stage {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered","force":false}
[2026-04-15 17:58:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered"}
[2026-04-15 17:58:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5354f22a86.62747611"}
[2026-04-15 17:58:36] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df535503e58","stage":"تماس پیگیری","status_change":null}
[2026-04-15 17:58:36] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa094737b87.99908744","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:36] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa094737b87.99908744"}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:36] [INFO] Updating virtual stage {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered","force":false}
[2026-04-15 17:58:36] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5354f22a86.62747611","stage_name":"deal_registered"}
[2026-04-15 17:58:36] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5354f22a86.62747611"}
[2026-04-15 17:58:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5354f22a86.62747611","person_id":"22159"}
[2026-04-15 17:58:39] [INFO] Checking activity reminders 
[2026-04-15 17:58:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:58:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:59:04] [INFO] Checking activity reminders 
[2026-04-15 17:59:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:59:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:59:09] [INFO] Checking activity reminders 
[2026-04-15 17:59:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:59:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:59:34] [INFO] Checking activity reminders 
[2026-04-15 17:59:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:59:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 17:59:39] [INFO] Checking activity reminders 
[2026-04-15 17:59:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 17:59:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:00:04] [INFO] Checking activity reminders 
[2026-04-15 18:00:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:00:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:00:09] [INFO] Checking activity reminders 
[2026-04-15 18:00:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:00:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:00:34] [INFO] Checking activity reminders 
[2026-04-15 18:00:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:00:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:00:39] [INFO] Checking activity reminders 
[2026-04-15 18:00:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:00:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:01:12] [INFO] Checking activity reminders 
[2026-04-15 18:01:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:01:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:01:18] [INFO] Checking activity reminders 
[2026-04-15 18:01:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:01:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:01:42] [INFO] Checking activity reminders 
[2026-04-15 18:01:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:01:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:02:12] [INFO] Checking activity reminders 
[2026-04-15 18:02:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:02:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:02:42] [INFO] Checking activity reminders 
[2026-04-15 18:02:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:02:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:03:12] [INFO] Checking activity reminders 
[2026-04-15 18:03:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:03:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:03:42] [INFO] Checking activity reminders 
[2026-04-15 18:03:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:03:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:04:13] [INFO] Checking activity reminders 
[2026-04-15 18:04:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:04:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:04:43] [INFO] Checking activity reminders 
[2026-04-15 18:04:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:04:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:05:13] [INFO] Checking activity reminders 
[2026-04-15 18:05:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:05:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:05:43] [INFO] Checking activity reminders 
[2026-04-15 18:05:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:05:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:06:13] [INFO] Checking activity reminders 
[2026-04-15 18:06:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:06:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:06:43] [INFO] Checking activity reminders 
[2026-04-15 18:06:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:06:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:07:13] [INFO] Checking activity reminders 
[2026-04-15 18:07:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:07:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:07:43] [INFO] Checking activity reminders 
[2026-04-15 18:07:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:07:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:08:13] [INFO] Checking activity reminders 
[2026-04-15 18:08:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:08:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:08:44] [INFO] Checking activity reminders 
[2026-04-15 18:08:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:08:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:09:14] [INFO] Checking activity reminders 
[2026-04-15 18:09:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:09:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:09:44] [INFO] Checking activity reminders 
[2026-04-15 18:09:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:09:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:10:14] [INFO] Checking activity reminders 
[2026-04-15 18:10:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:10:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:10:44] [INFO] Checking activity reminders 
[2026-04-15 18:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:11:14] [INFO] Checking activity reminders 
[2026-04-15 18:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:11:29] [INFO] Activity save request {"post_data":{"contact_id":"local_699ac3915763b4.19041363","deal_id":"local_699ac3915ae92","activity_type_id":"2a335dc1-4834-484b-b6dc-9ddd97eef67e","activity_type_title":"تماس ورودی","note":"","result_note":"تا قبل از اول اردیبهشت واریز ","activity_duration":"1","direction":"incoming","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:29] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:11:29] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:29] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_699ac3915763b4.19041363","note_was_empty":true}
[2026-04-15 18:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:29] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-15 18:11:29] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-15 18:11:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-15 18:11:29] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699ac3915ae92","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-15 18:11:29] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa399e26f29.20604923","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:29] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa399e26f29.20604923"}
[2026-04-15 18:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:29] [INFO] Updating virtual stage {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered","force":false}
[2026-04-15 18:11:29] [INFO] Virtual stage successfully saved {"contact_id":"local_699ac3915763b4.19041363","stage_name":"deal_registered"}
[2026-04-15 18:11:29] [INFO] Virtual stage updated after activity save {"contact_id":"local_699ac3915763b4.19041363"}
[2026-04-15 18:11:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:11:44] [INFO] Checking activity reminders 
[2026-04-15 18:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:12:14] [INFO] Checking activity reminders 
[2026-04-15 18:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:12:45] [INFO] Checking activity reminders 
[2026-04-15 18:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:13:15] [INFO] Checking activity reminders 
[2026-04-15 18:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:13:45] [INFO] Checking activity reminders 
[2026-04-15 18:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:14:15] [INFO] Checking activity reminders 
[2026-04-15 18:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:14:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699ac3915763b4.19041363","person_id":"21770"}
[2026-04-15 18:14:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:14:45] [INFO] Checking activity reminders 
[2026-04-15 18:14:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:14:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:15:15] [INFO] Checking activity reminders 
[2026-04-15 18:15:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:15:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:15:25] [INFO] Activity save request {"post_data":{"contact_id":"4070","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیام ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:15:25] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:15:25] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:15:25] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"4070","note_was_empty":true}
[2026-04-15 18:15:25] [INFO] Didar write disabled; saving activity locally {"contact_id":"4070","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 18:15:25] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa485bd7ee8.47153413","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:15:25] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa485bd7ee8.47153413"}
[2026-04-15 18:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:15:25] [INFO] Updating virtual stage {"contact_id":"4070","stage_name":"deal_registered","force":false}
[2026-04-15 18:15:25] [INFO] Virtual stage successfully saved {"contact_id":"4070","stage_name":"deal_registered"}
[2026-04-15 18:15:25] [INFO] Virtual stage updated after activity save {"contact_id":"4070"}
[2026-04-15 18:15:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"4070","person_id":"9335"}
[2026-04-15 18:15:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:15:45] [INFO] Checking activity reminders 
[2026-04-15 18:15:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:15:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:16:15] [INFO] Checking activity reminders 
[2026-04-15 18:16:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:16:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:16:45] [INFO] Checking activity reminders 
[2026-04-15 18:16:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:16:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:16:48] [INFO] Checking activity reminders 
[2026-04-15 18:16:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:16:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:16:57] [INFO] Activity save request {"post_data":{"contact_id":"2706","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه \r\nبدون پشتیبان ی\r\nهدف همسرش خرید مغازه است \r\nفقط طلای فیزیکی میگیره \r\nدر بورس فعال نیستند \r\nمشورت با همسرش \r\n","activity_duration":"8","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:16:57] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:16:57] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:16:57] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"2706","note_was_empty":true}
[2026-04-15 18:16:57] [INFO] Didar write disabled; saving activity locally {"contact_id":"2706","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 18:16:57] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa4e1803b40.11713972","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:16:57] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa4e1803b40.11713972"}
[2026-04-15 18:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:16:57] [INFO] Updating virtual stage {"contact_id":"2706","stage_name":"deal_registered","force":false}
[2026-04-15 18:16:57] [INFO] Virtual stage successfully saved {"contact_id":"2706","stage_name":"deal_registered"}
[2026-04-15 18:16:57] [INFO] Virtual stage updated after activity save {"contact_id":"2706"}
[2026-04-15 18:16:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"2706","person_id":"10262"}
[2026-04-15 18:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:15] [INFO] Checking activity reminders 
[2026-04-15 18:17:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:17:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:17:44] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_102","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"بیپاسخ \r\nپیامک ","activity_duration":"1","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:44] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:17:44] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:44] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_1403_09_26_102","note_was_empty":true}
[2026-04-15 18:17:44] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa5100ad775.86259129","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:44] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa5100ad775.86259129"}
[2026-04-15 18:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:44] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_102","stage_name":"contact_followup","force":false}
[2026-04-15 18:17:44] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_102","stage_name":"contact_followup"}
[2026-04-15 18:17:44] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_102"}
[2026-04-15 18:17:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_102","person_id":"21179"}
[2026-04-15 18:17:46] [INFO] Checking activity reminders 
[2026-04-15 18:17:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:17:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:18:16] [INFO] Checking activity reminders 
[2026-04-15 18:18:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:18:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:18:46] [INFO] Checking activity reminders 
[2026-04-15 18:18:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:18:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:19:16] [INFO] Checking activity reminders 
[2026-04-15 18:19:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:19:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:19:46] [INFO] Checking activity reminders 
[2026-04-15 18:19:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:19:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:20:16] [INFO] Checking activity reminders 
[2026-04-15 18:20:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:20:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:20:46] [INFO] Checking activity reminders 
[2026-04-15 18:20:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:20:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:21:16] [INFO] Checking activity reminders 
[2026-04-15 18:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:21:46] [INFO] Checking activity reminders 
[2026-04-15 18:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:22:16] [INFO] Checking activity reminders 
[2026-04-15 18:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:22:39] [INFO] Checking activity reminders 
[2026-04-15 18:22:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:22:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:23:09] [INFO] Checking activity reminders 
[2026-04-15 18:23:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:23:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:23:39] [INFO] Checking activity reminders 
[2026-04-15 18:23:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:23:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:23:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 18:23:43] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_products"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:44] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:23:47] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:24:09] [INFO] Checking activity reminders 
[2026-04-15 18:24:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:24:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:24:19] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:24:20] [WARNING] Login attempt failed - wrong password {"user_id":"6","identifier":"امیر سهرابی"}
[2026-04-15 18:24:39] [INFO] Checking activity reminders 
[2026-04-15 18:24:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:24:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:25:09] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:25:09] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 18:25:09] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 18:25:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 18:25:09] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 18:25:09] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 18:25:09] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 18:25:10] [INFO] Checking activity reminders 
[2026-04-15 18:25:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:25:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:25:26] [INFO] Checking activity reminders 
[2026-04-15 18:25:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:25:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:25:34] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 18:25:40] [INFO] Checking activity reminders 
[2026-04-15 18:25:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:25:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:25:47] [INFO] Checking activity reminders 
[2026-04-15 18:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:18] [INFO] Checking activity reminders 
[2026-04-15 18:26:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:26:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:26:22] [INFO] Lead update received {"contact_id":"local_69df5100d7d9c3.65402167","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-15 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:22] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"local_69df5100d7d9c3.65402167"}
[2026-04-15 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:39] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69df5100d7d9c3.65402167","deal_id":"local_69df5100e71d4","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 18:26:39","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 18:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"local_69df5100d7d9c3.65402167","is_new_deal":false}
[2026-04-15 18:26:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 18:26:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 18:26:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-15 18:26:39] [INFO] getContactPrimaryPhone called {"contact_id":"local_69df5100d7d9c3.65402167"}
[2026-04-15 18:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:39] [INFO] getContactPrimaryPhone result {"contact_id":"local_69df5100d7d9c3.65402167","person_found":true,"primary_phone":"9398918073"}
[2026-04-15 18:26:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9398918073"}
[2026-04-15 18:26:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9398918073","contact_id":"local_69df5100d7d9c3.65402167","deal_id":"local_69df5100e71d4","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 18:26:39"}
[2026-04-15 18:26:39] [INFO] DealController.save existing deal lookup {"deal_id":"local_69df5100e71d4","contact_id":"local_69df5100d7d9c3.65402167","existing_deal_found":true,"existing_contact_id":"local_69df5100d7d9c3.65402167","existing_title":"معامله اول 9398918073","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 18:26:39"}
[2026-04-15 18:26:39] [INFO] DealController.save validated payments {"deal_id":"local_69df5100e71d4","contact_id":"local_69df5100d7d9c3.65402167","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-15 18:26:39] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"local_69df5100d7d9c3.65402167","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 18:26:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69df5100e71d4","contact_didar_id":"local_69df5100d7d9c3.65402167","title":"معامله اول 9398918073 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9398918073","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ایمانی ایمانی","existing_deal":"YES","existing_deal_id":"local_69df5100e71d4","existing_deal_status":"Pending","server_time":"2026-04-15 18:26:39","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 18:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:39] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69df5100e71d4","contact_id":"local_69df5100d7d9c3.65402167","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9398918073 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-15 18:26:39","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 18:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:26:45] [INFO] Checking activity reminders 
[2026-04-15 18:26:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:26:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:26:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_695cb9622da444.78163474","person_id":"21526"}
[2026-04-15 18:26:48] [INFO] Checking activity reminders 
[2026-04-15 18:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:26:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21012","person_id":"11948"}
[2026-04-15 18:27:14] [INFO] Checking activity reminders 
[2026-04-15 18:27:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:27:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:27:18] [INFO] Checking activity reminders 
[2026-04-15 18:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:27:48] [INFO] Checking activity reminders 
[2026-04-15 18:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:28:02] [INFO] Checking activity reminders 
[2026-04-15 18:28:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:28:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:28:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 18:28:18] [INFO] Checking activity reminders 
[2026-04-15 18:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:28:21] [INFO] Activity save request {"post_data":{"contact_id":"local_69df5100d7d9c3.65402167","deal_id":"local_69df5100e71d4","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"زنجان \/ معرف مبین حسنی \r\nچاقو سازی \r\nعمده سرمایه در جنس مغازه \/ حدودا 1.5 \r\n10 ساله کار میکنه ولی سرمایه گذاری نداشته \r\nپرزنت 405 \/ 6 ماههه \r\nدر کانال عمومی و اینستا پیگیری میکنه \r\nمنتظر وصولی وام \/500-600  سرمایه دستش بیاد \r\n","activity_duration":"5","direction":"outgoing","current_stage":"معامله جدید","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:21] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:28:21] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:21] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"local_69df5100d7d9c3.65402167","note_was_empty":true}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:21] [INFO] Updating virtual stage {"contact_id":"local_69df5100d7d9c3.65402167","stage_name":"new","force":false}
[2026-04-15 18:28:21] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5100d7d9c3.65402167","stage_name":"new"}
[2026-04-15 18:28:21] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5100d7d9c3.65402167"}
[2026-04-15 18:28:21] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69df5100e71d4","stage":"تماس پیگیری","status_change":null}
[2026-04-15 18:28:21] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfa78d4d5349.04409785","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:21] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfa78d4d5349.04409785"}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:21] [INFO] Updating virtual stage {"contact_id":"local_69df5100d7d9c3.65402167","stage_name":"deal_registered","force":false}
[2026-04-15 18:28:21] [INFO] Virtual stage successfully saved {"contact_id":"local_69df5100d7d9c3.65402167","stage_name":"deal_registered"}
[2026-04-15 18:28:21] [INFO] Virtual stage updated after activity save {"contact_id":"local_69df5100d7d9c3.65402167"}
[2026-04-15 18:28:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69df5100d7d9c3.65402167","person_id":"22154"}
[2026-04-15 18:28:32] [INFO] Checking activity reminders 
[2026-04-15 18:28:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:28:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:28:48] [INFO] Checking activity reminders 
[2026-04-15 18:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:29:01] [INFO] Checking activity reminders 
[2026-04-15 18:29:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:29:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:29:18] [INFO] Checking activity reminders 
[2026-04-15 18:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:29:48] [INFO] Checking activity reminders 
[2026-04-15 18:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:30:18] [INFO] Checking activity reminders 
[2026-04-15 18:30:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:30:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:30:48] [INFO] Checking activity reminders 
[2026-04-15 18:30:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:30:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:31:18] [INFO] Checking activity reminders 
[2026-04-15 18:31:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:31:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:31:46] [INFO] Checking activity reminders 
[2026-04-15 18:31:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:31:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:31:49] [INFO] Checking activity reminders 
[2026-04-15 18:31:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:31:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:32:16] [INFO] Checking activity reminders 
[2026-04-15 18:32:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:32:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:32:19] [INFO] Checking activity reminders 
[2026-04-15 18:32:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:32:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:32:46] [INFO] Checking activity reminders 
[2026-04-15 18:32:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:32:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:32:49] [INFO] Checking activity reminders 
[2026-04-15 18:32:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:32:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:33:16] [INFO] Checking activity reminders 
[2026-04-15 18:33:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:33:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:33:19] [INFO] Checking activity reminders 
[2026-04-15 18:33:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:33:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:33:47] [INFO] Checking activity reminders 
[2026-04-15 18:33:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:33:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:33:49] [INFO] Checking activity reminders 
[2026-04-15 18:33:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:33:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:34:17] [INFO] Checking activity reminders 
[2026-04-15 18:34:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:34:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:34:19] [INFO] Checking activity reminders 
[2026-04-15 18:34:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:34:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:34:49] [INFO] Checking activity reminders 
[2026-04-15 18:34:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:34:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:35:19] [INFO] Checking activity reminders 
[2026-04-15 18:35:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:35:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:35:49] [INFO] Checking activity reminders 
[2026-04-15 18:35:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:35:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:36:19] [INFO] Checking activity reminders 
[2026-04-15 18:36:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:36:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:36:44] [INFO] Checking activity reminders 
[2026-04-15 18:36:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:36:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:36:45] [INFO] Checking activity reminders 
[2026-04-15 18:36:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:36:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:36:49] [INFO] Checking activity reminders 
[2026-04-15 18:36:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:36:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:37:20] [INFO] Checking activity reminders 
[2026-04-15 18:37:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:37:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:37:50] [INFO] Checking activity reminders 
[2026-04-15 18:37:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:37:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:38:20] [INFO] Checking activity reminders 
[2026-04-15 18:38:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:38:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:38:50] [INFO] Checking activity reminders 
[2026-04-15 18:38:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:38:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:39:20] [INFO] Checking activity reminders 
[2026-04-15 18:39:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:39:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:39:50] [INFO] Checking activity reminders 
[2026-04-15 18:39:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:39:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:40:20] [INFO] Checking activity reminders 
[2026-04-15 18:40:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:40:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:40:35] [INFO] Checking activity reminders 
[2026-04-15 18:40:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:40:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:40:38] [INFO] Checking activity reminders 
[2026-04-15 18:40:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:40:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:40:40] [INFO] Checking activity reminders 
[2026-04-15 18:40:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:40:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:41:11] [INFO] Checking activity reminders 
[2026-04-15 18:41:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:41:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:41:41] [INFO] Checking activity reminders 
[2026-04-15 18:41:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:41:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:42:11] [INFO] Checking activity reminders 
[2026-04-15 18:42:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:42:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:42:41] [INFO] Checking activity reminders 
[2026-04-15 18:42:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:42:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:43:11] [INFO] Checking activity reminders 
[2026-04-15 18:43:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:43:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:43:41] [INFO] Checking activity reminders 
[2026-04-15 18:43:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:43:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:44:11] [INFO] Checking activity reminders 
[2026-04-15 18:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:44:33] [INFO] Checking activity reminders 
[2026-04-15 18:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:44:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:44:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16991","deal_id":"local_69510065c5c229.91362204","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 18:44:55","session_id":"2d1mtss8lu84grj14pbj18cj11"}
[2026-04-15 18:44:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:44:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16991","is_new_deal":false}
[2026-04-15 18:44:55] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 18:44:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 18:44:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 18:44:55] [INFO] getContactPrimaryPhone called {"contact_id":"16991"}
[2026-04-15 18:44:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:44:55] [INFO] getContactPrimaryPhone result {"contact_id":"16991","person_found":true,"primary_phone":"9365360192"}
[2026-04-15 18:44:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365360192"}
[2026-04-15 18:44:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365360192","contact_id":"16991","deal_id":"local_69510065c5c229.91362204","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 18:44:55"}
[2026-04-15 18:44:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_69510065c5c229.91362204","contact_id":"16991","existing_deal_found":true,"existing_contact_id":"16991","existing_title":"معامله اول 9365360192 | کانال VIP","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 18:44:55"}
[2026-04-15 18:44:55] [INFO] DealController.save validated payments {"deal_id":"local_69510065c5c229.91362204","contact_id":"16991","payments_count":0,"status":"pending","pipeline_stage":"ارسال لینک پرداخت"}
[2026-04-15 18:44:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16991","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 18:44:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69510065c5c229.91362204","contact_didar_id":"16991","title":"معامله اول 9365360192 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9365360192","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"ارسال لینک پرداخت","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کهندلان","existing_deal":"YES","existing_deal_id":"local_69510065c5c229.91362204","existing_deal_status":"Pending","server_time":"2026-04-15 18:44:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 18:44:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:44:55] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69510065c5c229.91362204","contact_id":"16991","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9365360192 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"ارسال لینک پرداخت","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-15 18:44:55","ip_address":"2.176.213.163","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-15 18:44:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:03] [INFO] Checking activity reminders 
[2026-04-15 18:45:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:45:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:45:33] [INFO] Checking activity reminders 
[2026-04-15 18:45:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:45:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:45:46] [INFO] Activity save request {"post_data":{"contact_id":"16991","deal_id":"local_69510065c5c229.91362204","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه بدون پشتیبانی \r\nخیلی چونه میزنه برای پرداخت \r\nارسال شبا تجارت 2","activity_duration":"7","direction":"outgoing","current_stage":"ارسال لینک پرداخت","pipeline_stage":"ارسال لینک پرداخت","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-15 18:45:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16991","note_was_empty":true}
[2026-04-15 18:45:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"16991","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:46] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-04-15 18:45:46] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-04-15 18:45:46] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-04-15 18:45:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69510065c5c229.91362204","stage":"ارسال لینک پرداخت","status_change":null}
[2026-04-15 18:45:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69dfaba2b846d7.82077954","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69dfaba2b846d7.82077954"}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:46] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"deal_registered","force":false}
[2026-04-15 18:45:46] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"deal_registered"}
[2026-04-15 18:45:46] [INFO] Virtual stage updated after activity save {"contact_id":"16991"}
[2026-04-15 18:45:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:45:52] [INFO] Checking activity reminders 
[2026-04-15 18:45:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:45:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:56:41] [WARNING] Auth check failed - not authenticated {"session_id":"moq7flddmkig7l8al77glschqm","session_keys":[],"action":"log_client_event"}
[2026-04-15 18:56:42] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-15 18:56:42] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 18:57:12] [INFO] Checking activity reminders 
[2026-04-15 18:57:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:57:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:57:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 18:57:42] [INFO] Checking activity reminders 
[2026-04-15 18:57:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:57:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:58:12] [INFO] Checking activity reminders 
[2026-04-15 18:58:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:58:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:58:56] [INFO] Checking activity reminders 
[2026-04-15 18:58:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:58:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:59:21] [INFO] Checking activity reminders 
[2026-04-15 18:59:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:59:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 18:59:51] [INFO] Checking activity reminders 
[2026-04-15 18:59:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 18:59:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 19:00:21] [INFO] Checking activity reminders 
[2026-04-15 19:00:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 19:00:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 19:00:22] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16991","deal_id":"local_69510065c5c229.91362204","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 19:00:22","session_id":"moq7flddmkig7l8al77glschqm"}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:00:22] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16991","is_new_deal":false}
[2026-04-15 19:00:22] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 19:00:22] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 19:00:22] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-15 19:00:22] [INFO] getContactPrimaryPhone called {"contact_id":"16991"}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:00:22] [INFO] getContactPrimaryPhone result {"contact_id":"16991","person_found":true,"primary_phone":"9365360192"}
[2026-04-15 19:00:22] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9365360192"}
[2026-04-15 19:00:22] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9365360192","contact_id":"16991","deal_id":"local_69510065c5c229.91362204","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 19:00:22"}
[2026-04-15 19:00:22] [INFO] DealController.save existing deal lookup {"deal_id":"local_69510065c5c229.91362204","contact_id":"16991","existing_deal_found":true,"existing_contact_id":"16991","existing_title":"معامله اول 9365360192 | کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-15 19:00:22"}
[2026-04-15 19:00:22] [INFO] DealController.save validated payments {"deal_id":"local_69510065c5c229.91362204","contact_id":"16991","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-15 19:00:22] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16991","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 19:00:22] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69510065c5c229.91362204","contact_didar_id":"16991","title":"معامله اول 9365360192 | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله اول 9365360192","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":27000000,"payment_amount":27000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"کهندلان","existing_deal":"YES","existing_deal_id":"local_69510065c5c229.91362204","existing_deal_status":"Pending","server_time":"2026-04-15 19:00:22","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:00:22] [INFO] Deal success processed {"contact_id":"16991","person_name":"کهندلان","products_count":1}
[2026-04-15 19:00:22] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69510065c5c229.91362204","contact_id":"16991","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9365360192 | کانال VIP بدون پشتیبان شش ماهه","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":27000000,"payment_amount":27000000,"server_time":"2026-04-15 19:00:22","ip_address":"5.112.69.133","user_agent":"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Mobile Safari\/537.36"}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:00:22] [INFO] Updating virtual stage {"contact_id":"16991","stage_name":"with_purchase","force":true}
[2026-04-15 19:00:22] [INFO] Virtual stage successfully saved {"contact_id":"16991","stage_name":"with_purchase"}
[2026-04-15 19:00:22] [INFO] Moved contact out of kariz after successful deal {"contact_id":"16991","deal_id":"local_69510065c5c229.91362204","target_stage":"with_purchase"}
[2026-04-15 19:00:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:11:16] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:16] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"check_reminders"}
[2026-04-15 19:11:16] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:19] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:20] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:23] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:23] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:23] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"get_leads"}
[2026-04-15 19:11:23] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:24] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:25] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:31] [WARNING] Auth check failed - not authenticated {"session_id":"df8v8cu15ujoe8kro5kuvkv1jm","session_keys":[],"action":"log_client_event"}
[2026-04-15 19:11:31] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-15 19:11:31] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-15 19:11:31] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 19:11:32] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-15 19:11:32] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-15 19:11:32] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-15 19:11:37] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16991","person_id":"9831"}
[2026-04-15 19:12:22] [INFO] Checking activity reminders 
[2026-04-15 19:12:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 19:12:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 19:12:27] [INFO] Checking activity reminders 
[2026-04-15 19:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 19:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 22:51:50] [WARNING] Auth check failed - not authenticated {"session_id":"01n3a4a0a3r29995mu50v8lej9","session_keys":[],"action":"log_client_event"}
[2026-04-15 22:51:51] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-15 22:51:51] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-15 22:52:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 22:52:21] [INFO] Checking activity reminders 
[2026-04-15 22:52:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 22:52:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 22:52:42] [INFO] Checking activity reminders 
[2026-04-15 22:52:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 22:52:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-15 22:52:57] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14327","deal_id":"local_69df4444e8a9a4.93790110","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-15 22:52:57","session_id":"01n3a4a0a3r29995mu50v8lej9"}
[2026-04-15 22:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 22:52:57] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14327","is_new_deal":false}
[2026-04-15 22:52:57] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-15 22:52:57] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 22:52:57] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-15 22:52:57] [INFO] getContactPrimaryPhone called {"contact_id":"14327"}
[2026-04-15 22:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 22:52:57] [INFO] getContactPrimaryPhone result {"contact_id":"14327","person_found":true,"primary_phone":"9175230877"}
[2026-04-15 22:52:57] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9175230877"}
[2026-04-15 22:52:57] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9175230877","contact_id":"14327","deal_id":"local_69df4444e8a9a4.93790110","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 22:52:57"}
[2026-04-15 22:52:57] [INFO] DealController.save existing deal lookup {"deal_id":"local_69df4444e8a9a4.93790110","contact_id":"14327","existing_deal_found":true,"existing_contact_id":"14327","existing_title":"معامله دوم 9175230877 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-15 22:52:57"}
[2026-04-15 22:52:57] [INFO] DealController.save validated payments {"deal_id":"local_69df4444e8a9a4.93790110","contact_id":"14327","payments_count":2,"status":"pending","pipeline_stage":"پرداخت"}
[2026-04-15 22:52:57] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14327","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-15 22:52:57] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69df4444e8a9a4.93790110","contact_didar_id":"14327","title":"معامله دوم 9175230877 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9175230877","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پرداخت","status":"pending","payable_amount":79000000,"payment_amount":79000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"روح الهی","existing_deal":"YES","existing_deal_id":"local_69df4444e8a9a4.93790110","existing_deal_status":"Pending","server_time":"2026-04-15 22:52:57","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-15 22:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 22:52:57] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69df4444e8a9a4.93790110","contact_id":"14327","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9175230877 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پرداخت","payable_amount":79000000,"payment_amount":79000000,"server_time":"2026-04-15 22:52:57","ip_address":"86.55.32.144","user_agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/144.0.0.0 Safari\/537.36"}
[2026-04-15 22:52:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-15 22:53:03] [INFO] Checking activity reminders 
[2026-04-15 22:53:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-15 22:53:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:51:47] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"log_client_event"}
[2026-04-16 09:51:47] [INFO] User logged in {"user_id":"1714","email":"shayeste2@hanafi.ir","role":"agent","via_master":false}
[2026-04-16 09:51:48] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 09:52:19] [INFO] Checking activity reminders 
[2026-04-16 09:52:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:52:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:52:30] [INFO] Checking activity reminders 
[2026-04-16 09:52:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:52:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:55:40] [INFO] Checking activity reminders 
[2026-04-16 09:55:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:55:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:56:08] [INFO] Checking activity reminders 
[2026-04-16 09:56:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:56:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:56:30] [INFO] Checking activity reminders 
[2026-04-16 09:56:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:56:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:58:43] [INFO] Checking activity reminders 
[2026-04-16 09:58:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:58:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:58:55] [INFO] Checking activity reminders 
[2026-04-16 09:58:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:58:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:59:05] [WARNING] Auth check failed - not authenticated {"session_id":"aj68t1h6ecn7l5ht9oihnm77i4","session_keys":[],"action":"log_client_event"}
[2026-04-16 09:59:05] [INFO] User logged in {"user_id":"1","email":"hanaficars.academy4@gmail.com","role":"agent","via_master":false}
[2026-04-16 09:59:05] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 09:59:35] [INFO] Checking activity reminders 
[2026-04-16 09:59:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:59:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:59:40] [INFO] Checking activity reminders 
[2026-04-16 09:59:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 09:59:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 09:59:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 09:59:53] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"3064","person_id":"10660"}
[2026-04-16 09:59:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:00:00] [INFO] Checking activity reminders 
[2026-04-16 10:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:00:05] [INFO] Checking activity reminders 
[2026-04-16 10:00:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:00:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:00:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:00:35] [INFO] Checking activity reminders 
[2026-04-16 10:00:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:00:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:01:06] [INFO] Checking activity reminders 
[2026-04-16 10:01:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:01:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:01:36] [INFO] Checking activity reminders 
[2026-04-16 10:01:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:01:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:02:06] [INFO] Checking activity reminders 
[2026-04-16 10:02:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:02:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:02:36] [INFO] Checking activity reminders 
[2026-04-16 10:02:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:02:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:03:06] [INFO] Checking activity reminders 
[2026-04-16 10:03:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:03:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:03:36] [INFO] Checking activity reminders 
[2026-04-16 10:03:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:03:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:04:06] [INFO] Checking activity reminders 
[2026-04-16 10:04:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:04:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:04:36] [INFO] Checking activity reminders 
[2026-04-16 10:04:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:04:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:05:06] [INFO] Checking activity reminders 
[2026-04-16 10:05:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:05:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:05:36] [INFO] Checking activity reminders 
[2026-04-16 10:05:36] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:05:36] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:08:05] [INFO] Checking activity reminders 
[2026-04-16 10:08:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:08:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:08:35] [INFO] Checking activity reminders 
[2026-04-16 10:08:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:08:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:09:05] [INFO] Checking activity reminders 
[2026-04-16 10:09:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:09:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:09:35] [INFO] Checking activity reminders 
[2026-04-16 10:09:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:09:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:10:06] [INFO] Checking activity reminders 
[2026-04-16 10:10:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:10:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:10:44] [INFO] Checking activity reminders 
[2026-04-16 10:10:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:10:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:11:14] [INFO] Checking activity reminders 
[2026-04-16 10:11:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:11:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:11:44] [INFO] Checking activity reminders 
[2026-04-16 10:11:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:11:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:12:14] [INFO] Checking activity reminders 
[2026-04-16 10:12:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:12:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:12:24] [INFO] Checking activity reminders 
[2026-04-16 10:12:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:12:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:12:45] [INFO] Checking activity reminders 
[2026-04-16 10:12:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:12:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:12:51] [INFO] Checking activity reminders 
[2026-04-16 10:12:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:12:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:13:15] [INFO] Checking activity reminders 
[2026-04-16 10:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:13:45] [INFO] Checking activity reminders 
[2026-04-16 10:13:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:13:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:14:15] [INFO] Checking activity reminders 
[2026-04-16 10:14:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:14:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:22:01] [WARNING] Auth check failed - not authenticated {"session_id":"jkt3kpmhacvba0odkmvmstee7g","session_keys":[],"action":"log_client_event"}
[2026-04-16 10:22:01] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-16 10:22:02] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 10:22:06] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-16 10:22:06] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 10:22:25] [INFO] Checking activity reminders 
[2026-04-16 10:22:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:22:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:22:28] [INFO] Checking activity reminders 
[2026-04-16 10:22:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:22:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:22:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 10:22:58] [INFO] Checking activity reminders 
[2026-04-16 10:22:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:22:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:23:28] [INFO] Checking activity reminders 
[2026-04-16 10:23:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:23:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:23:58] [INFO] Checking activity reminders 
[2026-04-16 10:23:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:23:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:26:09] [INFO] Checking activity reminders 
[2026-04-16 10:26:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:26:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:26:39] [INFO] Checking activity reminders 
[2026-04-16 10:26:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:26:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:27:09] [INFO] Checking activity reminders 
[2026-04-16 10:27:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:27:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:27:39] [INFO] Checking activity reminders 
[2026-04-16 10:27:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:27:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:28:01] [INFO] Checking activity reminders 
[2026-04-16 10:28:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:28:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:28:09] [INFO] User logged in {"user_id":"8","email":"hfishakiba@gmail.com","role":"agent","via_master":false}
[2026-04-16 10:28:09] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 10:28:11] [INFO] Checking activity reminders 
[2026-04-16 10:28:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:28:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:28:41] [INFO] Checking activity reminders 
[2026-04-16 10:28:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:28:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:29:11] [INFO] Checking activity reminders 
[2026-04-16 10:29:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:29:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:29:41] [INFO] Checking activity reminders 
[2026-04-16 10:29:41] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:29:41] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:30:11] [INFO] Checking activity reminders 
[2026-04-16 10:30:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:30:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:30:42] [INFO] Checking activity reminders 
[2026-04-16 10:30:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:30:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:31:12] [INFO] Checking activity reminders 
[2026-04-16 10:31:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:31:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:31:42] [INFO] Checking activity reminders 
[2026-04-16 10:31:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:31:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:32:12] [INFO] Checking activity reminders 
[2026-04-16 10:32:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:32:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:32:42] [INFO] Checking activity reminders 
[2026-04-16 10:32:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:32:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:33:12] [INFO] Checking activity reminders 
[2026-04-16 10:33:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:33:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:33:42] [INFO] Checking activity reminders 
[2026-04-16 10:33:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:33:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:34:12] [INFO] Checking activity reminders 
[2026-04-16 10:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:34:12] [INFO] Checking activity reminders 
[2026-04-16 10:34:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:34:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:34:42] [INFO] Checking activity reminders 
[2026-04-16 10:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:34:42] [INFO] Checking activity reminders 
[2026-04-16 10:34:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:34:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:35:12] [INFO] Checking activity reminders 
[2026-04-16 10:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:35:12] [INFO] Checking activity reminders 
[2026-04-16 10:35:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:35:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:35:42] [INFO] Checking activity reminders 
[2026-04-16 10:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:35:42] [INFO] Checking activity reminders 
[2026-04-16 10:35:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:35:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:36:01] [INFO] Activity save request {"post_data":{"contact_id":"14846","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"ثبت فعالیت هام و معامله چرا نیستتتتتتتتت؟؟؟؟\r\nکانال 405 12 بهمن 30ت پرداخت شده تسویه مانده \r\nعمل کیسه صفرا داره میگه میترسم کم بیارم بعد عمل تسویه \/ ماشین خریده طلا گفتم به ضرر نفروش نمیخوام حس بد بگیره","activity_duration":"15","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 10:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:01] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 10:36:01] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 10:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:01] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14846","note_was_empty":true}
[2026-04-16 10:36:01] [INFO] Didar write disabled; saving activity locally {"contact_id":"14846","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-16 10:36:01] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e08a59731ce3.72179127","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 10:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:01] [INFO] Activity saved successfully {"activity_id":"local_activity_69e08a59731ce3.72179127"}
[2026-04-16 10:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:01] [INFO] Updating virtual stage {"contact_id":"14846","stage_name":"deal_registered","force":false}
[2026-04-16 10:36:01] [INFO] Virtual stage successfully saved {"contact_id":"14846","stage_name":"deal_registered"}
[2026-04-16 10:36:01] [INFO] Virtual stage updated after activity save {"contact_id":"14846"}
[2026-04-16 10:36:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:12] [INFO] Checking activity reminders 
[2026-04-16 10:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:36:12] [INFO] Checking activity reminders 
[2026-04-16 10:36:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:36:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:36:39] [INFO] Activity save request {"post_data":{"contact_id":"14846","deal_id":"","activity_type_id":"4c557ed3-6a56-606d-d8fe-1fff19gg89ge","activity_type_title":"چت خروجی","note":"","result_note":"معامله رو امروز 29 فروردین دارم ثبت میزنم قبلا نبود؟؟؟؟؟؟؟؟؟","activity_duration":"3","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 10:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:39] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 10:36:39] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 10:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:39] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"14846","note_was_empty":true}
[2026-04-16 10:36:39] [INFO] Didar write disabled; saving activity locally {"contact_id":"14846","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-16 10:36:39] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e08a7f4da1b3.15175235","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 10:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:39] [INFO] Activity saved successfully {"activity_id":"local_activity_69e08a7f4da1b3.15175235"}
[2026-04-16 10:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:39] [INFO] Updating virtual stage {"contact_id":"14846","stage_name":"deal_registered","force":false}
[2026-04-16 10:36:39] [INFO] Virtual stage successfully saved {"contact_id":"14846","stage_name":"deal_registered"}
[2026-04-16 10:36:39] [INFO] Virtual stage updated after activity save {"contact_id":"14846"}
[2026-04-16 10:36:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:42] [INFO] Checking activity reminders 
[2026-04-16 10:36:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:36:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:36:42] [INFO] Checking activity reminders 
[2026-04-16 10:36:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:36:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:36:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:36:43] [INFO] generateDealTitle result {"contact_id":"14846","person_name":"خالقی","mobile":"9177640180","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9177640180"}
[2026-04-16 10:37:12] [INFO] Checking activity reminders 
[2026-04-16 10:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:37:12] [INFO] Checking activity reminders 
[2026-04-16 10:37:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:37:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:37:42] [INFO] Checking activity reminders 
[2026-04-16 10:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:37:42] [INFO] Checking activity reminders 
[2026-04-16 10:37:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:37:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:37:44] [INFO] Checking activity reminders 
[2026-04-16 10:37:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:37:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:37:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"14846","deal_id":"","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 10:37:50","session_id":"aj68t1h6ecn7l5ht9oihnm77i4"}
[2026-04-16 10:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:37:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"14846","is_new_deal":true}
[2026-04-16 10:37:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-16 10:37:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-16 10:37:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-16 10:37:50] [INFO] getContactPrimaryPhone called {"contact_id":"14846"}
[2026-04-16 10:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:37:50] [INFO] getContactPrimaryPhone result {"contact_id":"14846","person_found":true,"primary_phone":"9177640180"}
[2026-04-16 10:37:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9177640180"}
[2026-04-16 10:37:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9177640180","contact_id":"14846","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-16 10:37:50"}
[2026-04-16 10:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:37:50] [INFO] generateDealTitle result {"contact_id":"14846","person_name":"خالقی","mobile":"9177640180","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9177640180"}
[2026-04-16 10:37:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"14846","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-16 10:37:50] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"14846","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-16 10:37:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"14846","title":"معامله دوم 9177640180 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9177640180","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":30000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خالقی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 10:37:50","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-16 10:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:37:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 10:37:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"14846","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9177640180 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":30000000,"server_time":"2026-04-16 10:37:50","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 10:37:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14846","person_id":"4679"}
[2026-04-16 10:38:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-04-16 10:38:12] [INFO] Checking activity reminders 
[2026-04-16 10:38:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:38:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:38:13] [INFO] Checking activity reminders 
[2026-04-16 10:38:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:38:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:38:19] [INFO] Checking activity reminders 
[2026-04-16 10:38:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:38:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:38:42] [INFO] Checking activity reminders 
[2026-04-16 10:38:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:38:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:38:43] [INFO] Checking activity reminders 
[2026-04-16 10:38:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:38:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:39:12] [INFO] Checking activity reminders 
[2026-04-16 10:39:12] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:39:12] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:39:13] [INFO] Checking activity reminders 
[2026-04-16 10:39:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:39:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:39:42] [INFO] Checking activity reminders 
[2026-04-16 10:39:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:39:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:39:43] [INFO] Checking activity reminders 
[2026-04-16 10:39:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:39:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:39:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10606","person_id":"18011"}
[2026-04-16 10:40:13] [INFO] Checking activity reminders 
[2026-04-16 10:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:40:13] [INFO] Checking activity reminders 
[2026-04-16 10:40:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:40:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:40:43] [INFO] Checking activity reminders 
[2026-04-16 10:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:40:43] [INFO] Checking activity reminders 
[2026-04-16 10:40:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:40:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:41:13] [INFO] Checking activity reminders 
[2026-04-16 10:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:41:13] [INFO] Checking activity reminders 
[2026-04-16 10:41:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:41:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:41:20] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-04-16 10:41:24] [INFO] Checking activity reminders 
[2026-04-16 10:41:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:41:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:41:43] [INFO] Checking activity reminders 
[2026-04-16 10:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:41:43] [INFO] Checking activity reminders 
[2026-04-16 10:41:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:41:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:13] [INFO] Checking activity reminders 
[2026-04-16 10:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:13] [INFO] Checking activity reminders 
[2026-04-16 10:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:13] [INFO] Checking activity reminders 
[2026-04-16 10:42:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:43] [INFO] Checking activity reminders 
[2026-04-16 10:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:43] [INFO] Checking activity reminders 
[2026-04-16 10:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:42:43] [INFO] Checking activity reminders 
[2026-04-16 10:42:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:42:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-04-16 10:43:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"9809","person_id":"102"}
[2026-04-16 10:43:09] [INFO] generateDealTitle result {"contact_id":"9809","person_name":"اکرمی اکرمی","mobile":"9198614231","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9198614231"}
[2026-04-16 10:43:13] [INFO] Checking activity reminders 
[2026-04-16 10:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:43:13] [INFO] Checking activity reminders 
[2026-04-16 10:43:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:43:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:43:20] [INFO] Checking activity reminders 
[2026-04-16 10:43:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:43:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:43:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"11479","person_id":"17007"}
[2026-04-16 10:43:43] [INFO] Checking activity reminders 
[2026-04-16 10:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:43:43] [INFO] Checking activity reminders 
[2026-04-16 10:43:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:43:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:44:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:44:13] [INFO] Checking activity reminders 
[2026-04-16 10:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:44:13] [INFO] Checking activity reminders 
[2026-04-16 10:44:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:44:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:44:43] [INFO] Checking activity reminders 
[2026-04-16 10:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:44:43] [INFO] Checking activity reminders 
[2026-04-16 10:44:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:44:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:45:13] [INFO] Checking activity reminders 
[2026-04-16 10:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:45:13] [INFO] Checking activity reminders 
[2026-04-16 10:45:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:45:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:45:34] [INFO] Checking activity reminders 
[2026-04-16 10:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:45:43] [INFO] Checking activity reminders 
[2026-04-16 10:45:43] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:45:43] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:45:44] [INFO] Checking activity reminders 
[2026-04-16 10:45:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:45:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:46:13] [INFO] Checking activity reminders 
[2026-04-16 10:46:13] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:46:13] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:46:14] [INFO] Checking activity reminders 
[2026-04-16 10:46:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:46:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:46:44] [INFO] Checking activity reminders 
[2026-04-16 10:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:46:44] [INFO] Checking activity reminders 
[2026-04-16 10:46:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:46:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:46:59] [INFO] Checking activity reminders 
[2026-04-16 10:46:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:46:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:14] [INFO] Checking activity reminders 
[2026-04-16 10:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:14] [INFO] Checking activity reminders 
[2026-04-16 10:47:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:20] [INFO] Checking activity reminders 
[2026-04-16 10:47:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:44] [INFO] Checking activity reminders 
[2026-04-16 10:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:44] [INFO] Checking activity reminders 
[2026-04-16 10:47:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:47:51] [INFO] Checking activity reminders 
[2026-04-16 10:47:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:47:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:48:03] [INFO] Checking activity reminders 
[2026-04-16 10:48:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:48:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:48:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:48:14] [INFO] Checking activity reminders 
[2026-04-16 10:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:48:14] [INFO] Checking activity reminders 
[2026-04-16 10:48:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:48:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:48:44] [INFO] Checking activity reminders 
[2026-04-16 10:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:48:44] [INFO] Checking activity reminders 
[2026-04-16 10:48:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:48:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:49:14] [INFO] Checking activity reminders 
[2026-04-16 10:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:49:14] [INFO] Checking activity reminders 
[2026-04-16 10:49:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:49:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:49:44] [INFO] Checking activity reminders 
[2026-04-16 10:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:49:44] [INFO] Checking activity reminders 
[2026-04-16 10:49:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:49:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:50:14] [INFO] Checking activity reminders 
[2026-04-16 10:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:50:14] [INFO] Checking activity reminders 
[2026-04-16 10:50:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:50:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:50:27] [INFO] Checking activity reminders 
[2026-04-16 10:50:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:50:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:50:44] [INFO] Checking activity reminders 
[2026-04-16 10:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:50:44] [INFO] Checking activity reminders 
[2026-04-16 10:50:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:50:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:11] [INFO] Checking activity reminders 
[2026-04-16 10:51:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:14] [INFO] Checking activity reminders 
[2026-04-16 10:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:14] [INFO] Checking activity reminders 
[2026-04-16 10:51:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:42] [INFO] Checking activity reminders 
[2026-04-16 10:51:42] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:42] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:45] [INFO] Checking activity reminders 
[2026-04-16 10:51:45] [INFO] Checking activity reminders 
[2026-04-16 10:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:51:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:52:15] [INFO] Checking activity reminders 
[2026-04-16 10:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:52:15] [INFO] Checking activity reminders 
[2026-04-16 10:52:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:52:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:52:35] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16289","deal_id":"16953","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 10:52:35","session_id":"jkt3kpmhacvba0odkmvmstee7g"}
[2026-04-16 10:52:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:52:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان شش ماهه","contact_id":"16289","is_new_deal":false}
[2026-04-16 10:52:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-16 10:52:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-16 10:52:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان شش ماهه"}
[2026-04-16 10:52:35] [INFO] getContactPrimaryPhone called {"contact_id":"16289"}
[2026-04-16 10:52:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:52:35] [INFO] getContactPrimaryPhone result {"contact_id":"16289","person_found":true,"primary_phone":"9193914132"}
[2026-04-16 10:52:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9193914132"}
[2026-04-16 10:52:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9193914132","contact_id":"16289","deal_id":"16953","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان شش ماهه","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-16 10:52:35"}
[2026-04-16 10:52:35] [INFO] DealController.save existing deal lookup {"deal_id":"16953","contact_id":"16289","existing_deal_found":true,"existing_contact_id":"16289","existing_title":"معامله مسعود قارزی","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-16 10:52:35"}
[2026-04-16 10:52:35] [INFO] DealController.save validated payments {"deal_id":"16953","contact_id":"16289","payments_count":0,"status":"pending","pipeline_stage":"تماس پیگیری"}
[2026-04-16 10:52:35] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"16289","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-16 10:52:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"16953","contact_didar_id":"16289","title":"معامله مسعود قارزی | کانال VIP بدون پشتیبان شش ماهه","base_title_used":"معامله مسعود قارزی","services_text":"کانال VIP بدون پشتیبان شش ماهه","requested_services_count":1,"pipeline_stage":"تماس پیگیری","status":"pending","payable_amount":27000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP بدون پشتیبان شش ماهه"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"مسعود قارزی","existing_deal":"YES","existing_deal_id":"16953","existing_deal_status":"Pending","server_time":"2026-04-16 10:52:35","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-16 10:52:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:52:36] [INFO] ensureDealProductsFromText: no product match {"deal_id":"16953","texts":["کانال VIP بدون پشتیبان شش ماهه"]}
[2026-04-16 10:52:36] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"16953","contact_id":"16289","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله مسعود قارزی | کانال VIP بدون پشتیبان شش ماهه","deal_status":"pending","pipeline_stage":"تماس پیگیری","payable_amount":27000000,"payment_amount":0,"server_time":"2026-04-16 10:52:36","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 10:52:36] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:52:39] [INFO] Checking activity reminders 
[2026-04-16 10:52:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:52:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:52:45] [INFO] Checking activity reminders 
[2026-04-16 10:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:52:45] [INFO] Checking activity reminders 
[2026-04-16 10:52:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:52:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:53:15] [INFO] Checking activity reminders 
[2026-04-16 10:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:53:15] [INFO] Checking activity reminders 
[2026-04-16 10:53:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:53:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:53:45] [INFO] Checking activity reminders 
[2026-04-16 10:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:53:45] [INFO] Checking activity reminders 
[2026-04-16 10:53:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:53:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:53:59] [INFO] Checking activity reminders 
[2026-04-16 10:53:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:53:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:54:15] [INFO] Checking activity reminders 
[2026-04-16 10:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:54:15] [INFO] Checking activity reminders 
[2026-04-16 10:54:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:54:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:54:45] [INFO] Checking activity reminders 
[2026-04-16 10:54:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:54:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:55:03] [INFO] Checking activity reminders 
[2026-04-16 10:55:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:55:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:55:15] [INFO] Checking activity reminders 
[2026-04-16 10:55:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:55:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:55:45] [INFO] Checking activity reminders 
[2026-04-16 10:55:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:55:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:55:59] [INFO] Checking activity reminders 
[2026-04-16 10:55:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:55:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:56:15] [INFO] Checking activity reminders 
[2026-04-16 10:56:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:56:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:56:29] [INFO] Checking activity reminders 
[2026-04-16 10:56:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:56:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:56:46] [INFO] Checking activity reminders 
[2026-04-16 10:56:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:56:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:56:59] [INFO] Checking activity reminders 
[2026-04-16 10:56:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:56:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:57:05] [INFO] Activity save request {"post_data":{"contact_id":"10621","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دستگاه 10 زده 8 بهمن تسویه اول اردیبهشت توحیل \/ 20 ت مبلغ کل ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 10:57:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:05] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 10:57:05] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 10:57:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:05] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"10621","note_was_empty":true}
[2026-04-16 10:57:05] [INFO] Didar write disabled; saving activity locally {"contact_id":"10621","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-16 10:57:05] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e08f49192156.99040779","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 10:57:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:05] [INFO] Activity saved successfully {"activity_id":"local_activity_69e08f49192156.99040779"}
[2026-04-16 10:57:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:05] [INFO] Updating virtual stage {"contact_id":"10621","stage_name":"deal_registered","force":false}
[2026-04-16 10:57:05] [INFO] Virtual stage successfully saved {"contact_id":"10621","stage_name":"deal_registered"}
[2026-04-16 10:57:05] [INFO] Virtual stage updated after activity save {"contact_id":"10621"}
[2026-04-16 10:57:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10621","person_id":"2991"}
[2026-04-16 10:57:09] [INFO] generateDealTitle result {"contact_id":"10621","person_name":"عبدالهی","mobile":"9167114158","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9167114158"}
[2026-04-16 10:57:16] [INFO] Activity save request {"post_data":{"contact_id":"16289","deal_id":"16953","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت 6 ماهه کانال \r\nبدون پشتیبانی \r\nدوره ی پیش بینی کل 405 \r\nمیگه چک و شرایط گفتم نداریم\r\nارسال پیام در بله \r\nخودش اطلاع میده  \r\n","activity_duration":"8","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:16] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 10:57:16] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:16] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"16289","note_was_empty":true}
[2026-04-16 10:57:16] [INFO] Didar write disabled; saving activity locally {"contact_id":"16289","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:16] [INFO] Updating virtual stage {"contact_id":"16289","stage_name":"deal_registered","force":false}
[2026-04-16 10:57:16] [INFO] Virtual stage successfully saved {"contact_id":"16289","stage_name":"deal_registered"}
[2026-04-16 10:57:16] [INFO] Virtual stage updated after activity save {"contact_id":"16289"}
[2026-04-16 10:57:16] [INFO] Pipeline stage updated after activity save {"deal_id":"16953","stage":"تماس پیگیری","status_change":null}
[2026-04-16 10:57:16] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e08f541c7759.02252076","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:16] [INFO] Activity saved successfully {"activity_id":"local_activity_69e08f541c7759.02252076"}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:16] [INFO] Updating virtual stage {"contact_id":"16289","stage_name":"deal_registered","force":false}
[2026-04-16 10:57:16] [INFO] Virtual stage successfully saved {"contact_id":"16289","stage_name":"deal_registered"}
[2026-04-16 10:57:16] [INFO] Virtual stage updated after activity save {"contact_id":"16289"}
[2026-04-16 10:57:16] [INFO] Checking activity reminders 
[2026-04-16 10:57:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:57:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:57:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"16289","person_id":"13845"}
[2026-04-16 10:57:30] [INFO] Checking activity reminders 
[2026-04-16 10:57:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:57:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:57:46] [INFO] Checking activity reminders 
[2026-04-16 10:57:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:57:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:58:00] [INFO] Checking activity reminders 
[2026-04-16 10:58:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:58:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:58:16] [INFO] Checking activity reminders 
[2026-04-16 10:58:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:58:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:58:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 10:58:30] [INFO] Checking activity reminders 
[2026-04-16 10:58:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:58:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:58:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 10:58:46] [INFO] Checking activity reminders 
[2026-04-16 10:58:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:58:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:59:00] [INFO] Checking activity reminders 
[2026-04-16 10:59:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:59:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:59:16] [INFO] Checking activity reminders 
[2026-04-16 10:59:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:59:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:59:30] [INFO] Checking activity reminders 
[2026-04-16 10:59:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:59:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 10:59:46] [INFO] Checking activity reminders 
[2026-04-16 10:59:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 10:59:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:00:00] [INFO] Checking activity reminders 
[2026-04-16 11:00:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:00:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:00:16] [INFO] Checking activity reminders 
[2026-04-16 11:00:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:00:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:00:30] [INFO] Checking activity reminders 
[2026-04-16 11:00:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:00:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:00:46] [INFO] Checking activity reminders 
[2026-04-16 11:00:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:00:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:01:00] [INFO] Checking activity reminders 
[2026-04-16 11:01:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:01:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:01:17] [INFO] Checking activity reminders 
[2026-04-16 11:01:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:01:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:01:30] [INFO] Checking activity reminders 
[2026-04-16 11:01:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:01:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:01:47] [INFO] Checking activity reminders 
[2026-04-16 11:01:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:01:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:02:00] [INFO] Checking activity reminders 
[2026-04-16 11:02:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:02:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:02:17] [INFO] Checking activity reminders 
[2026-04-16 11:02:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:02:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:02:30] [INFO] Checking activity reminders 
[2026-04-16 11:02:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:02:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:02:47] [INFO] Checking activity reminders 
[2026-04-16 11:02:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:02:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:03:00] [INFO] Checking activity reminders 
[2026-04-16 11:03:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:03:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:03:17] [INFO] Checking activity reminders 
[2026-04-16 11:03:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:03:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:03:30] [INFO] Checking activity reminders 
[2026-04-16 11:03:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:03:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:03:47] [INFO] Checking activity reminders 
[2026-04-16 11:03:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:03:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:04:01] [INFO] Checking activity reminders 
[2026-04-16 11:04:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:04:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:04:17] [INFO] Checking activity reminders 
[2026-04-16 11:04:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:04:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:04:31] [INFO] Checking activity reminders 
[2026-04-16 11:04:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:04:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:04:47] [INFO] Checking activity reminders 
[2026-04-16 11:04:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:04:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:04:48] [INFO] Activity save request {"post_data":{"contact_id":"7918","deal_id":"local_69c7f9e549b7b3.48363944","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"دوباره مغازه ی کافه \r\nبا برادرش شریکی گرفته \r\nتا اخر ماه تسویه ","activity_duration":"4","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:04:48] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 11:04:48] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:04:48] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"7918","note_was_empty":true}
[2026-04-16 11:04:48] [INFO] Didar write disabled; saving activity locally {"contact_id":"7918","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:04:48] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-16 11:04:48] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-16 11:04:48] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-16 11:04:48] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7f9e549b7b3.48363944","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-16 11:04:48] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e09118317456.94013301","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:04:48] [INFO] Activity saved successfully {"activity_id":"local_activity_69e09118317456.94013301"}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:04:48] [INFO] Updating virtual stage {"contact_id":"7918","stage_name":"deal_registered","force":false}
[2026-04-16 11:04:48] [INFO] Virtual stage successfully saved {"contact_id":"7918","stage_name":"deal_registered"}
[2026-04-16 11:04:48] [INFO] Virtual stage updated after activity save {"contact_id":"7918"}
[2026-04-16 11:04:48] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7918","person_id":"7386"}
[2026-04-16 11:05:01] [INFO] Checking activity reminders 
[2026-04-16 11:05:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:05:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:05:17] [INFO] Checking activity reminders 
[2026-04-16 11:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:05:19] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_85","deal_id":"local_699aa86cec7831.53202266","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تسویه کامنل کانال و هوش کارشانسی اسفند شده","activity_duration":"10","direction":"outgoing","current_stage":"برگزاری دوره","pipeline_stage":"برگزاری دوره","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:19] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 11:05:19] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:19] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_85","note_was_empty":true}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:19] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_85","stage_name":"deal_registered","force":false}
[2026-04-16 11:05:19] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_85","stage_name":"deal_registered"}
[2026-04-16 11:05:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_85"}
[2026-04-16 11:05:19] [INFO] Pipeline stage updated after activity save {"deal_id":"local_699aa86cec7831.53202266","stage":"برگزاری دوره","status_change":null}
[2026-04-16 11:05:19] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e091377e0e47.19193184","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:19] [INFO] Activity saved successfully {"activity_id":"local_activity_69e091377e0e47.19193184"}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:19] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_85","stage_name":"deal_registered","force":false}
[2026-04-16 11:05:19] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_85","stage_name":"deal_registered"}
[2026-04-16 11:05:19] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_85"}
[2026-04-16 11:05:19] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_85","person_id":"21162"}
[2026-04-16 11:05:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:05:31] [INFO] Checking activity reminders 
[2026-04-16 11:05:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:05:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:05:47] [INFO] Checking activity reminders 
[2026-04-16 11:05:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:05:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:06:01] [INFO] Checking activity reminders 
[2026-04-16 11:06:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:06:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:06:17] [INFO] Checking activity reminders 
[2026-04-16 11:06:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:06:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:06:31] [INFO] Checking activity reminders 
[2026-04-16 11:06:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:06:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:06:47] [INFO] Checking activity reminders 
[2026-04-16 11:06:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:06:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:07:01] [INFO] Checking activity reminders 
[2026-04-16 11:07:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:07:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:07:17] [INFO] Checking activity reminders 
[2026-04-16 11:07:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:07:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:07:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:07:31] [INFO] Checking activity reminders 
[2026-04-16 11:07:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:07:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:07:48] [INFO] Checking activity reminders 
[2026-04-16 11:07:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:07:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:08:01] [INFO] Checking activity reminders 
[2026-04-16 11:08:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:08:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:08:18] [INFO] Checking activity reminders 
[2026-04-16 11:08:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:08:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:08:31] [INFO] Checking activity reminders 
[2026-04-16 11:08:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:08:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:08:48] [INFO] Checking activity reminders 
[2026-04-16 11:08:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:08:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:09:01] [INFO] Checking activity reminders 
[2026-04-16 11:09:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:09:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:09:18] [INFO] Checking activity reminders 
[2026-04-16 11:09:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:09:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:09:31] [INFO] Checking activity reminders 
[2026-04-16 11:09:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:09:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:09:48] [INFO] Checking activity reminders 
[2026-04-16 11:09:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:09:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:10:01] [INFO] Checking activity reminders 
[2026-04-16 11:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:10:18] [INFO] Checking activity reminders 
[2026-04-16 11:10:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:10:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:10:31] [INFO] Checking activity reminders 
[2026-04-16 11:10:31] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:10:31] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:10:48] [INFO] Checking activity reminders 
[2026-04-16 11:10:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:10:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:11:02] [INFO] Checking activity reminders 
[2026-04-16 11:11:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:11:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:11:18] [INFO] Checking activity reminders 
[2026-04-16 11:11:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:11:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:11:32] [INFO] Checking activity reminders 
[2026-04-16 11:11:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:11:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:11:48] [INFO] Checking activity reminders 
[2026-04-16 11:11:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:11:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:12:02] [INFO] Checking activity reminders 
[2026-04-16 11:12:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:12:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:12:18] [INFO] Checking activity reminders 
[2026-04-16 11:12:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:12:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:12:32] [INFO] Checking activity reminders 
[2026-04-16 11:12:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:12:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:12:48] [INFO] Checking activity reminders 
[2026-04-16 11:12:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:12:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:13:02] [INFO] Checking activity reminders 
[2026-04-16 11:13:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:13:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:13:19] [INFO] Checking activity reminders 
[2026-04-16 11:13:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:13:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:13:32] [INFO] Checking activity reminders 
[2026-04-16 11:13:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:13:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:13:49] [INFO] Checking activity reminders 
[2026-04-16 11:13:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:13:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:14:02] [INFO] Checking activity reminders 
[2026-04-16 11:14:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:14:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:14:19] [INFO] Checking activity reminders 
[2026-04-16 11:14:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:14:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:14:32] [INFO] Checking activity reminders 
[2026-04-16 11:14:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:14:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:14:44] [WARNING] Auth check failed - not authenticated {"session_id":"mf7be34edavrl8t54tng4omqed","session_keys":[],"action":"log_client_event"}
[2026-04-16 11:14:44] [INFO] Master password used for login {"user_id":"6","identifier":"امیر سهرابی","role":"admin"}
[2026-04-16 11:14:44] [INFO] User logged in {"user_id":"6","email":"hanaficarscoo@gmail.com","role":"admin","via_master":true}
[2026-04-16 11:14:45] [INFO] Didar API call blocked (disabled) {"endpoint":"\/activity\/GetActivityType","method":"POST"}
[2026-04-16 11:14:45] [INFO] [DEBUG] getDidarUsers - Fetching users {"hasDisplayName":true,"fields":"id, didar_user_id, display_name, email, is_active"}
[2026-04-16 11:14:45] [INFO] [DEBUG] getDidarUsers - Found users {"count":14,"rows":[{"id":"1","didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":"1"},{"id":"3","didar_user_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":"1"},{"id":"4","didar_user_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":"1"},{"id":"6","didar_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":"1"},{"id":"8","didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":"1"},{"id":"10","didar_user_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":"1"},{"id":"11","didar_user_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":"1"},{"id":"14","didar_user_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":"1"},{"id":"15","didar_user_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":"1"},{"id":"19","didar_user_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":"1"},{"id":"20","didar_user_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":"1"},{"id":"1714","didar_user_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":"1"},{"id":"1715","didar_user_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":"1"},{"id":"1716","didar_user_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":"1"}]}
[2026-04-16 11:14:45] [INFO] [DEBUG] getDidarUsers - Returning users {"count":14,"users":[{"id":"1","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","display_name":"خانم توانا","email":"hanaficars.academy4@gmail.com","is_active":1},{"id":"3","owner_id":"7961644d-eebe-4086-8617-3ad855a6c2f4","display_name":"حسابداری","email":"Ameneh.afrashh@gmail.com","is_active":1},{"id":"4","owner_id":"be60addc-d481-4cb5-bd7b-716622147ae5","display_name":"خانم تاج‌الدین","email":"hanaficars.khodro4@gmail.com","is_active":1},{"id":"6","owner_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","display_name":"امیر سهرابی ","email":"hanaficarscoo@gmail.com","is_active":1},{"id":"8","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","display_name":"خانم شکیبا","email":"hfishakiba@gmail.com","is_active":1},{"id":"10","owner_id":"7f7b0219-ab23-4c99-adf8-ca04a6d81179","display_name":"خانم  بردبار","email":"hanaficars.academy5@gmail.com","is_active":1},{"id":"11","owner_id":"6f307e57-ce8e-4ec1-bc7a-d17fd39001fa","display_name":"حمیدرضا مکرمی","email":"hanaficar.Marketing@gmail.com","is_active":1},{"id":"14","owner_id":"ad481029-e5ae-4ec5-b0f3-d8c3bf205f26","display_name":"خانم اسلامی","email":"hanaficarrs9@gmail.com","is_active":1},{"id":"15","owner_id":"75f9d286-0d05-43e0-a6ed-9fdb8ad89a0f","display_name":"خانم شایسته","email":"hanaficars9@gmail.com","is_active":1},{"id":"19","owner_id":"dd16f09e-cb31-4354-833b-e16cc1b090d4","display_name":" محمدحسین حنفی","email":"hanaficar.HR@gmail.com","is_active":1},{"id":"20","owner_id":"6d5350f0-5ee7-47d3-9eef-094698f6d070","display_name":"لید استخر","email":"hanaficarrs10@gmail.com","is_active":1},{"id":"1714","owner_id":"local_3e2fc1c5b672c4f3","display_name":"شایسته 2","email":"shayeste2@hanafi.ir","is_active":1},{"id":"1715","owner_id":"local_04f5a5e34e341b7e","display_name":"test","email":"test@test.com","is_active":1},{"id":"1716","owner_id":"local_3534c8d92b81789f","display_name":"test2","email":"test2@test.com","is_active":1}]}
[2026-04-16 11:14:49] [INFO] Checking activity reminders 
[2026-04-16 11:14:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:14:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:02] [INFO] Checking activity reminders 
[2026-04-16 11:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:15] [INFO] Checking activity reminders 
[2026-04-16 11:15:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:19] [INFO] Checking activity reminders 
[2026-04-16 11:15:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:32] [INFO] Checking activity reminders 
[2026-04-16 11:15:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:46] [INFO] Checking activity reminders 
[2026-04-16 11:15:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:15:49] [INFO] Checking activity reminders 
[2026-04-16 11:15:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:15:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:02] [INFO] Checking activity reminders 
[2026-04-16 11:16:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:16] [INFO] Checking activity reminders 
[2026-04-16 11:16:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:19] [INFO] Checking activity reminders 
[2026-04-16 11:16:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:32] [INFO] Checking activity reminders 
[2026-04-16 11:16:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-16 11:16:41] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی","contact_id":"13563","deal_id":"local_69b42efeb6fac0.18833320","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:16:41","session_id":"aj68t1h6ecn7l5ht9oihnm77i4"}
[2026-04-16 11:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:16:41] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی","contact_id":"13563","is_new_deal":false}
[2026-04-16 11:16:41] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی"}
[2026-04-16 11:16:41] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-16 11:16:41] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی"}
[2026-04-16 11:16:41] [INFO] getContactPrimaryPhone called {"contact_id":"13563"}
[2026-04-16 11:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:16:41] [INFO] getContactPrimaryPhone result {"contact_id":"13563","person_found":true,"primary_phone":"9336791711"}
[2026-04-16 11:16:41] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9336791711"}
[2026-04-16 11:16:41] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9336791711","contact_id":"13563","deal_id":"local_69b42efeb6fac0.18833320","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-16 11:16:41"}
[2026-04-16 11:16:41] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b42efeb6fac0.18833320","contact_id":"13563","existing_deal_found":true,"existing_contact_id":"13563","existing_title":"معامله دوم 9336791711 | کانال VIP با پشتیبانی","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","server_time":"2026-04-16 11:16:41"}
[2026-04-16 11:16:41] [INFO] DealController.save validated payments {"deal_id":"local_69b42efeb6fac0.18833320","contact_id":"13563","payments_count":3,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-16 11:16:41] [INFO] DealController.save validating permissions {"current_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"13563","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-16 11:16:41] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b42efeb6fac0.18833320","contact_didar_id":"13563","title":"معامله دوم 9336791711 | کانال VIP با پشتیبانی","base_title_used":"معامله دوم 9336791711","services_text":"کانال VIP با پشتیبانی","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":79000000,"payment_amount":50000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی"],"user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"خلف پور","existing_deal":"YES","existing_deal_id":"local_69b42efeb6fac0.18833320","existing_deal_status":"Pending","server_time":"2026-04-16 11:16:41","session_data":{"didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","name":"خانم توانا","user_id":"1"}}
[2026-04-16 11:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:16:41] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b42efeb6fac0.18833320","contact_id":"13563","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_name":"خانم توانا","deal_title":"معامله دوم 9336791711 | کانال VIP با پشتیبانی","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":79000000,"payment_amount":50000000,"server_time":"2026-04-16 11:16:41","ip_address":"94.182.31.126","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:16:41] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:16:46] [INFO] Checking activity reminders 
[2026-04-16 11:16:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"14327","person_id":"13916"}
[2026-04-16 11:16:49] [INFO] Checking activity reminders 
[2026-04-16 11:16:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:16:59] [INFO] Checking activity reminders 
[2026-04-16 11:16:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:16:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:17:20] [INFO] Checking activity reminders 
[2026-04-16 11:17:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:17:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:17:29] [INFO] Checking activity reminders 
[2026-04-16 11:17:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:17:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:17:30] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:17:50] [INFO] Checking activity reminders 
[2026-04-16 11:17:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:17:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:17:51] [INFO] Checking activity reminders 
[2026-04-16 11:17:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:17:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:17:55] [INFO] Checking activity reminders 
[2026-04-16 11:17:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:17:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:14] [INFO] Checking activity reminders 
[2026-04-16 11:18:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:20] [INFO] Checking activity reminders 
[2026-04-16 11:18:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:21] [INFO] Checking activity reminders 
[2026-04-16 11:18:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:27] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:18:27","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 11:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:18:27] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20546","is_new_deal":false}
[2026-04-16 11:18:27] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 11:18:27] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 11:18:27] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 11:18:27] [INFO] getContactPrimaryPhone called {"contact_id":"20546"}
[2026-04-16 11:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:18:27] [INFO] getContactPrimaryPhone result {"contact_id":"20546","person_found":true,"primary_phone":"9122718955"}
[2026-04-16 11:18:27] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122718955"}
[2026-04-16 11:18:27] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122718955","contact_id":"20546","deal_id":"local_694a9bf3a9a3b0.14870802","is_new_deal":false,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:18:27"}
[2026-04-16 11:18:27] [INFO] DealController.save existing deal lookup {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","existing_deal_found":true,"existing_contact_id":"20546","existing_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:18:27"}
[2026-04-16 11:18:27] [INFO] DealController.save validated payments {"deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","payments_count":3,"status":"pending","pipeline_stage":"برگزاری دوره"}
[2026-04-16 11:18:27] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20546","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 11:18:27] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_694a9bf3a9a3b0.14870802","contact_didar_id":"20546","title":"معامله اول 9122718955 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله اول 9122718955","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"برگزاری دوره","status":"pending","payable_amount":39000000,"payment_amount":39000000,"payments_present":true,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آزاد","existing_deal":"YES","existing_deal_id":"local_694a9bf3a9a3b0.14870802","existing_deal_status":"Pending","server_time":"2026-04-16 11:18:27","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 11:18:27] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:18:27] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_694a9bf3a9a3b0.14870802","contact_id":"20546","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله اول 9122718955 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"برگزاری دوره","payable_amount":39000000,"payment_amount":39000000,"server_time":"2026-04-16 11:18:27","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:18:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:18:45] [INFO] Checking activity reminders 
[2026-04-16 11:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:45] [INFO] Checking activity reminders 
[2026-04-16 11:18:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:50] [INFO] Checking activity reminders 
[2026-04-16 11:18:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:18:51] [INFO] Checking activity reminders 
[2026-04-16 11:18:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:18:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:15] [INFO] Checking activity reminders 
[2026-04-16 11:19:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:20] [INFO] Checking activity reminders 
[2026-04-16 11:19:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:21] [INFO] Checking activity reminders 
[2026-04-16 11:19:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:19:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:19:45] [INFO] Checking activity reminders 
[2026-04-16 11:19:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:50] [INFO] Checking activity reminders 
[2026-04-16 11:19:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:19:51] [INFO] Checking activity reminders 
[2026-04-16 11:19:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:19:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:15] [INFO] Checking activity reminders 
[2026-04-16 11:20:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:20] [INFO] Checking activity reminders 
[2026-04-16 11:20:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:21] [INFO] Checking activity reminders 
[2026-04-16 11:20:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:45] [INFO] Checking activity reminders 
[2026-04-16 11:20:45] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:45] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:50] [INFO] Checking activity reminders 
[2026-04-16 11:20:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:20:51] [INFO] Checking activity reminders 
[2026-04-16 11:20:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:20:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:16] [INFO] Checking activity reminders 
[2026-04-16 11:21:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:20] [INFO] Checking activity reminders 
[2026-04-16 11:21:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:21] [INFO] Checking activity reminders 
[2026-04-16 11:21:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:46] [INFO] Checking activity reminders 
[2026-04-16 11:21:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:50] [INFO] Checking activity reminders 
[2026-04-16 11:21:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:21:51] [INFO] Checking activity reminders 
[2026-04-16 11:21:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:21:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:16] [INFO] Checking activity reminders 
[2026-04-16 11:22:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:20] [INFO] Checking activity reminders 
[2026-04-16 11:22:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:21] [INFO] Checking activity reminders 
[2026-04-16 11:22:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:46] [INFO] Checking activity reminders 
[2026-04-16 11:22:46] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:46] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:50] [INFO] Checking activity reminders 
[2026-04-16 11:22:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:22:52] [INFO] Checking activity reminders 
[2026-04-16 11:22:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:22:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:16] [INFO] Checking activity reminders 
[2026-04-16 11:23:16] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:16] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:21] [INFO] Checking activity reminders 
[2026-04-16 11:23:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:22] [INFO] Checking activity reminders 
[2026-04-16 11:23:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:47] [INFO] Checking activity reminders 
[2026-04-16 11:23:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:51] [INFO] Checking activity reminders 
[2026-04-16 11:23:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:23:52] [INFO] Checking activity reminders 
[2026-04-16 11:23:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:23:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:17] [INFO] Checking activity reminders 
[2026-04-16 11:24:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:21] [INFO] Checking activity reminders 
[2026-04-16 11:24:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:22] [INFO] Checking activity reminders 
[2026-04-16 11:24:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:47] [INFO] Checking activity reminders 
[2026-04-16 11:24:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:51] [INFO] Checking activity reminders 
[2026-04-16 11:24:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:24:52] [INFO] Checking activity reminders 
[2026-04-16 11:24:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:24:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:25:17] [INFO] Checking activity reminders 
[2026-04-16 11:25:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:25:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:25:21] [INFO] Checking activity reminders 
[2026-04-16 11:25:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:25:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:25:22] [INFO] Checking activity reminders 
[2026-04-16 11:25:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:25:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:25:47] [INFO] Checking activity reminders 
[2026-04-16 11:25:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:25:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:25:51] [INFO] Checking activity reminders 
[2026-04-16 11:25:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:25:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:17] [INFO] Checking activity reminders 
[2026-04-16 11:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:17] [INFO] Checking activity reminders 
[2026-04-16 11:26:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:21] [INFO] Checking activity reminders 
[2026-04-16 11:26:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:47] [INFO] Checking activity reminders 
[2026-04-16 11:26:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:48] [INFO] Checking activity reminders 
[2026-04-16 11:26:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:26:51] [INFO] Checking activity reminders 
[2026-04-16 11:26:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:26:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:03] [INFO] Activity save request {"post_data":{"contact_id":"10074","deal_id":"","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"شنبه تسویه \r\nارسال شماره حساب در پیامک \r\n55 انده حساب ","activity_duration":"5","direction":"outgoing","current_stage":"keep_current","pipeline_stage":"","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 11:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:27:03] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 11:27:03] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 11:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:27:03] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"10074","note_was_empty":true}
[2026-04-16 11:27:03] [INFO] Didar write disabled; saving activity locally {"contact_id":"10074","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-16 11:27:03] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e0964fd06590.13052308","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 11:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:27:03] [INFO] Activity saved successfully {"activity_id":"local_activity_69e0964fd06590.13052308"}
[2026-04-16 11:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:27:03] [INFO] Updating virtual stage {"contact_id":"10074","stage_name":"deal_registered","force":false}
[2026-04-16 11:27:03] [INFO] Virtual stage successfully saved {"contact_id":"10074","stage_name":"deal_registered"}
[2026-04-16 11:27:03] [INFO] Virtual stage updated after activity save {"contact_id":"10074"}
[2026-04-16 11:27:03] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"10074","person_id":"287"}
[2026-04-16 11:27:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 11:27:17] [INFO] Checking activity reminders 
[2026-04-16 11:27:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:18] [INFO] Checking activity reminders 
[2026-04-16 11:27:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:21] [INFO] Checking activity reminders 
[2026-04-16 11:27:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:47] [INFO] Checking activity reminders 
[2026-04-16 11:27:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:48] [INFO] Checking activity reminders 
[2026-04-16 11:27:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:27:51] [INFO] Checking activity reminders 
[2026-04-16 11:27:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:27:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:28:18] [INFO] Checking activity reminders 
[2026-04-16 11:28:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:28:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:28:21] [INFO] Checking activity reminders 
[2026-04-16 11:28:21] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:28:21] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:28:48] [INFO] Checking activity reminders 
[2026-04-16 11:28:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:28:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:28:51] [INFO] Checking activity reminders 
[2026-04-16 11:28:51] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:28:51] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:29:18] [INFO] Checking activity reminders 
[2026-04-16 11:29:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:29:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:29:22] [INFO] Checking activity reminders 
[2026-04-16 11:29:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:29:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:29:48] [INFO] Checking activity reminders 
[2026-04-16 11:29:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:29:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:29:52] [INFO] Checking activity reminders 
[2026-04-16 11:29:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:29:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:29:53] [INFO] Checking activity reminders 
[2026-04-16 11:29:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:29:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:30:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:30:19] [INFO] Checking activity reminders 
[2026-04-16 11:30:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:30:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:30:22] [INFO] Checking activity reminders 
[2026-04-16 11:30:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:30:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:30:23] [INFO] Checking activity reminders 
[2026-04-16 11:30:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:30:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:30:52] [INFO] Checking activity reminders 
[2026-04-16 11:30:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:30:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:30:53] [INFO] Checking activity reminders 
[2026-04-16 11:30:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:30:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:22] [INFO] Checking activity reminders 
[2026-04-16 11:31:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:23] [INFO] Checking activity reminders 
[2026-04-16 11:31:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:30] [INFO] Checking activity reminders 
[2026-04-16 11:31:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:37] [INFO] Checking activity reminders 
[2026-04-16 11:31:37] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:37] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:40] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:31:52] [INFO] Checking activity reminders 
[2026-04-16 11:31:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:31:53] [INFO] Checking activity reminders 
[2026-04-16 11:31:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:31:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:00] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","deal_id":"local_69b6b3ced917d2.46978297","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:32:00","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:00] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","is_new_deal":false}
[2026-04-16 11:32:00] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-16 11:32:00] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-16 11:32:00] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-16 11:32:00] [INFO] getContactPrimaryPhone called {"contact_id":"local_699c947020ec48.45521689"}
[2026-04-16 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:00] [INFO] getContactPrimaryPhone result {"contact_id":"local_699c947020ec48.45521689","person_found":true,"primary_phone":"9372282006"}
[2026-04-16 11:32:00] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9372282006"}
[2026-04-16 11:32:00] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9372282006","contact_id":"local_699c947020ec48.45521689","deal_id":"local_69b6b3ced917d2.46978297","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:32:00"}
[2026-04-16 11:32:00] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","existing_deal_found":true,"existing_contact_id":"local_699c947020ec48.45521689","existing_title":"معامله دوم 9372282006 | هوش خودرو","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:32:00"}
[2026-04-16 11:32:00] [INFO] DealController.save validated payments {"deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-16 11:32:00] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_699c947020ec48.45521689","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 11:32:00] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6b3ced917d2.46978297","contact_didar_id":"local_699c947020ec48.45521689","title":"معامله دوم 9372282006 | هوش خودرو","base_title_used":"معامله دوم 9372282006","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":7900000,"payment_amount":5000000,"payments_present":true,"requested_services":["هوش خودرو"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فتحی فتحی","existing_deal":"YES","existing_deal_id":"local_69b6b3ced917d2.46978297","existing_deal_status":"Pending","server_time":"2026-04-16 11:32:00","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 11:32:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:00] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9372282006 | هوش خودرو","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":7900000,"payment_amount":5000000,"server_time":"2026-04-16 11:32:00","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:32:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:08] [INFO] Checking activity reminders 
[2026-04-16 11:32:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:22] [INFO] Checking activity reminders 
[2026-04-16 11:32:22] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:22] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:23] [INFO] Checking activity reminders 
[2026-04-16 11:32:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:26] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","deal_id":"local_69b6b3ced917d2.46978297","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:32:26","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 11:32:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:26] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"local_699c947020ec48.45521689","is_new_deal":false}
[2026-04-16 11:32:26] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-16 11:32:26] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-16 11:32:26] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-16 11:32:26] [INFO] getContactPrimaryPhone called {"contact_id":"local_699c947020ec48.45521689"}
[2026-04-16 11:32:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:26] [INFO] getContactPrimaryPhone result {"contact_id":"local_699c947020ec48.45521689","person_found":true,"primary_phone":"9372282006"}
[2026-04-16 11:32:26] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9372282006"}
[2026-04-16 11:32:26] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9372282006","contact_id":"local_699c947020ec48.45521689","deal_id":"local_69b6b3ced917d2.46978297","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:32:26"}
[2026-04-16 11:32:26] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","existing_deal_found":true,"existing_contact_id":"local_699c947020ec48.45521689","existing_title":"معامله دوم 9372282006 | هوش خودرو","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:32:26"}
[2026-04-16 11:32:26] [INFO] DealController.save validated payments {"deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-16 11:32:26] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"local_699c947020ec48.45521689","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 11:32:26] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b6b3ced917d2.46978297","contact_didar_id":"local_699c947020ec48.45521689","title":"معامله دوم 9372282006 | هوش خودرو","base_title_used":"معامله دوم 9372282006","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":5000000,"payment_amount":5000000,"payments_present":true,"requested_services":["هوش خودرو"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فتحی فتحی","existing_deal":"YES","existing_deal_id":"local_69b6b3ced917d2.46978297","existing_deal_status":"Pending","server_time":"2026-04-16 11:32:26","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 11:32:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:26] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b6b3ced917d2.46978297","contact_id":"local_699c947020ec48.45521689","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9372282006 | هوش خودرو","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":5000000,"payment_amount":5000000,"server_time":"2026-04-16 11:32:26","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:32:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_699c947020ec48.45521689","person_id":"21786"}
[2026-04-16 11:32:29] [INFO] Checking activity reminders 
[2026-04-16 11:32:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:38] [INFO] Checking activity reminders 
[2026-04-16 11:32:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:54] [INFO] Checking activity reminders 
[2026-04-16 11:32:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:32:59] [INFO] Checking activity reminders 
[2026-04-16 11:32:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:32:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:33:08] [INFO] Checking activity reminders 
[2026-04-16 11:33:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:33:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:33:24] [INFO] Checking activity reminders 
[2026-04-16 11:33:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:33:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:33:30] [INFO] Checking activity reminders 
[2026-04-16 11:33:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:33:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:33:38] [INFO] Checking activity reminders 
[2026-04-16 11:33:38] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:33:38] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:33:54] [INFO] Checking activity reminders 
[2026-04-16 11:33:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:33:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:00] [INFO] Checking activity reminders 
[2026-04-16 11:34:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:08] [INFO] Checking activity reminders 
[2026-04-16 11:34:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:24] [INFO] Checking activity reminders 
[2026-04-16 11:34:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:30] [INFO] Checking activity reminders 
[2026-04-16 11:34:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:39] [INFO] Checking activity reminders 
[2026-04-16 11:34:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:34:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20546","person_id":"13912"}
[2026-04-16 11:34:54] [INFO] Checking activity reminders 
[2026-04-16 11:34:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:34:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:35:00] [INFO] Checking activity reminders 
[2026-04-16 11:35:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:35:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:35:09] [INFO] Checking activity reminders 
[2026-04-16 11:35:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:35:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:35:24] [INFO] Checking activity reminders 
[2026-04-16 11:35:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:35:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:35:30] [INFO] Checking activity reminders 
[2026-04-16 11:35:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:35:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:35:54] [INFO] Checking activity reminders 
[2026-04-16 11:35:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:35:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:00] [INFO] Checking activity reminders 
[2026-04-16 11:36:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:02] [INFO] Checking activity reminders 
[2026-04-16 11:36:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 11:36:24] [INFO] Checking activity reminders 
[2026-04-16 11:36:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:30] [INFO] Checking activity reminders 
[2026-04-16 11:36:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:32] [INFO] Checking activity reminders 
[2026-04-16 11:36:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:36:54] [INFO] Checking activity reminders 
[2026-04-16 11:36:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:36:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:37:00] [INFO] Checking activity reminders 
[2026-04-16 11:37:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:37:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:37:02] [INFO] Checking activity reminders 
[2026-04-16 11:37:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:37:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:37:24] [INFO] Checking activity reminders 
[2026-04-16 11:37:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:37:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:37:30] [INFO] Checking activity reminders 
[2026-04-16 11:37:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:37:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:37:54] [INFO] Checking activity reminders 
[2026-04-16 11:37:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:37:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:38:00] [INFO] Checking activity reminders 
[2026-04-16 11:38:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:38:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:38:24] [INFO] Checking activity reminders 
[2026-04-16 11:38:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:38:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:38:30] [INFO] Checking activity reminders 
[2026-04-16 11:38:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:38:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:38:54] [INFO] Checking activity reminders 
[2026-04-16 11:38:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:38:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:39:00] [INFO] Checking activity reminders 
[2026-04-16 11:39:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:39:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:39:17] [INFO] Checking activity reminders 
[2026-04-16 11:39:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:39:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:39:25] [INFO] Checking activity reminders 
[2026-04-16 11:39:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:39:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:39:48] [INFO] Checking activity reminders 
[2026-04-16 11:39:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:39:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:39:55] [INFO] Checking activity reminders 
[2026-04-16 11:39:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:39:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:40:18] [INFO] Checking activity reminders 
[2026-04-16 11:40:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:40:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:40:25] [INFO] Checking activity reminders 
[2026-04-16 11:40:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:40:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:40:48] [INFO] Checking activity reminders 
[2026-04-16 11:40:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:40:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:40:55] [INFO] Checking activity reminders 
[2026-04-16 11:40:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:40:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:41:15] [INFO] Activity save request {"post_data":{"contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"این خانومش حامله نیست اشتباه نوشته شایسته\/ کانال 54 ت خواسته بوده 25 واریز 29 مانده \r\nتسویه 30 اردیبهشت گفته بوده \r\nمیزنه ترکی صحبت کردیم باهم","activity_duration":"20","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:15] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 11:41:15] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:15] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"7841","note_was_empty":true}
[2026-04-16 11:41:15] [INFO] Didar write disabled; saving activity locally {"contact_id":"7841","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:15] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-04-16 11:41:15] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-04-16 11:41:15] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-04-16 11:41:15] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b1ac30de8a70.84324584","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-16 11:41:15] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e099a3155d64.99013264","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:15] [INFO] Activity saved successfully {"activity_id":"local_activity_69e099a3155d64.99013264"}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:15] [INFO] Updating virtual stage {"contact_id":"7841","stage_name":"deal_registered","force":false}
[2026-04-16 11:41:15] [INFO] Virtual stage successfully saved {"contact_id":"7841","stage_name":"deal_registered"}
[2026-04-16 11:41:15] [INFO] Virtual stage updated after activity save {"contact_id":"7841"}
[2026-04-16 11:41:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:41:18] [INFO] Checking activity reminders 
[2026-04-16 11:41:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:41:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:41:25] [INFO] Checking activity reminders 
[2026-04-16 11:41:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:41:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:41:48] [INFO] Checking activity reminders 
[2026-04-16 11:41:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:41:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:42:18] [INFO] Checking activity reminders 
[2026-04-16 11:42:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:42:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:42:48] [INFO] Checking activity reminders 
[2026-04-16 11:42:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:42:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:43:11] [INFO] Activity save request {"post_data":{"contact_id":"21579","deal_id":"local_6946c547ee7117.93204552","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"پرزنت مجدد هوش \r\nمدرک سوال کرد \/ فقط برای کارشناسی \r\nدیدن دوره در اسپات و سایت \r\nارسال شماره کارت تجارت در پیامک \r\n","activity_duration":"8","direction":"outgoing","current_stage":"تماس پیگیری","pipeline_stage":"تماس پیگیری","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:11] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 11:43:11] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:11] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"21579","note_was_empty":true}
[2026-04-16 11:43:11] [INFO] Didar write disabled; saving activity locally {"contact_id":"21579","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:11] [INFO] Updating virtual stage {"contact_id":"21579","stage_name":"deal_registered","force":false}
[2026-04-16 11:43:11] [INFO] Virtual stage successfully saved {"contact_id":"21579","stage_name":"deal_registered"}
[2026-04-16 11:43:11] [INFO] Virtual stage updated after activity save {"contact_id":"21579"}
[2026-04-16 11:43:11] [INFO] Pipeline stage updated after activity save {"deal_id":"local_6946c547ee7117.93204552","stage":"تماس پیگیری","status_change":null}
[2026-04-16 11:43:11] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e09a171d0bd6.76895203","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:11] [INFO] Activity saved successfully {"activity_id":"local_activity_69e09a171d0bd6.76895203"}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:11] [INFO] Updating virtual stage {"contact_id":"21579","stage_name":"deal_registered","force":false}
[2026-04-16 11:43:11] [INFO] Virtual stage successfully saved {"contact_id":"21579","stage_name":"deal_registered"}
[2026-04-16 11:43:11] [INFO] Virtual stage updated after activity save {"contact_id":"21579"}
[2026-04-16 11:43:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:43:18] [INFO] Checking activity reminders 
[2026-04-16 11:43:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:43:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:43:39] [INFO] Checking activity reminders 
[2026-04-16 11:43:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:43:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:43:42] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:43:48] [INFO] Checking activity reminders 
[2026-04-16 11:43:48] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:43:48] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:44:03] [INFO] Checking activity reminders 
[2026-04-16 11:44:03] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:44:03] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-04-16 11:44:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_101","person_id":"21178"}
[2026-04-16 11:44:11] [INFO] Checking activity reminders 
[2026-04-16 11:44:11] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:44:11] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:44:17] [INFO] DealController.save start {"is_new":false,"incoming_title":"کانال VIP بدون پشتیبان","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:44:17","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 11:44:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:44:17] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP بدون پشتیبان","contact_id":"7841","is_new_deal":false}
[2026-04-16 11:44:17] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP بدون پشتیبان"}
[2026-04-16 11:44:17] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-16 11:44:17] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP بدون پشتیبان"}
[2026-04-16 11:44:17] [INFO] getContactPrimaryPhone called {"contact_id":"7841"}
[2026-04-16 11:44:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:44:17] [INFO] getContactPrimaryPhone result {"contact_id":"7841","person_found":true,"primary_phone":"9144233512"}
[2026-04-16 11:44:17] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9144233512"}
[2026-04-16 11:44:17] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9144233512","contact_id":"7841","deal_id":"local_69b1ac30de8a70.84324584","is_new_deal":false,"incoming_title":"کانال VIP بدون پشتیبان","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:44:17"}
[2026-04-16 11:44:17] [INFO] DealController.save existing deal lookup {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","existing_deal_found":true,"existing_contact_id":"7841","existing_title":"معامله دوم 9144233512 | کانال VIP با پشتیبانی","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 11:44:17"}
[2026-04-16 11:44:17] [INFO] DealController.save validated payments {"deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","payments_count":1,"status":"pending","pipeline_stage":"پیگیری مانده حساب"}
[2026-04-16 11:44:17] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"7841","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 11:44:17] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_69b1ac30de8a70.84324584","contact_didar_id":"7841","title":"معامله دوم 9144233512 | کانال VIP بدون پشتیبان","base_title_used":"معامله دوم 9144233512","services_text":"کانال VIP بدون پشتیبان","requested_services_count":1,"pipeline_stage":"پیگیری مانده حساب","status":"pending","payable_amount":54000000,"payment_amount":25000000,"payments_present":true,"requested_services":["کانال VIP بدون پشتیبان"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"موسوی موسوی","existing_deal":"YES","existing_deal_id":"local_69b1ac30de8a70.84324584","existing_deal_status":"Pending","server_time":"2026-04-16 11:44:17","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 11:44:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:44:17] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_69b1ac30de8a70.84324584","contact_id":"7841","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9144233512 | کانال VIP بدون پشتیبان","deal_status":"pending","pipeline_stage":"پیگیری مانده حساب","payable_amount":54000000,"payment_amount":25000000,"server_time":"2026-04-16 11:44:17","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:44:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"7841","person_id":"13780"}
[2026-04-16 11:44:33] [INFO] Checking activity reminders 
[2026-04-16 11:44:33] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:44:33] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:45:04] [INFO] Checking activity reminders 
[2026-04-16 11:45:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:45:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:45:34] [INFO] Checking activity reminders 
[2026-04-16 11:45:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:45:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:46:04] [INFO] Checking activity reminders 
[2026-04-16 11:46:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:46:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:46:34] [INFO] Checking activity reminders 
[2026-04-16 11:46:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:46:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:47:04] [INFO] Checking activity reminders 
[2026-04-16 11:47:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:47:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:47:34] [INFO] Checking activity reminders 
[2026-04-16 11:47:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:47:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:48:04] [INFO] Checking activity reminders 
[2026-04-16 11:48:04] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:48:04] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:48:34] [INFO] Checking activity reminders 
[2026-04-16 11:48:34] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:48:34] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:48:57] [INFO] Checking activity reminders 
[2026-04-16 11:48:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:48:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:49:27] [INFO] Checking activity reminders 
[2026-04-16 11:49:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:49:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:49:55] [INFO] DealController.save start {"is_new":false,"incoming_title":"هوش خودرو","contact_id":"21579","deal_id":"local_6946c547ee7117.93204552","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 11:49:55","session_id":"jkt3kpmhacvba0odkmvmstee7g"}
[2026-04-16 11:49:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:55] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"هوش خودرو","contact_id":"21579","is_new_deal":false}
[2026-04-16 11:49:55] [INFO] extractPhoneFromDealTitle called {"input_title":"هوش خودرو"}
[2026-04-16 11:49:55] [INFO] extractPhoneFromDealTitle processing {"title_part":"هوش خودرو"}
[2026-04-16 11:49:55] [INFO] extractPhoneFromDealTitle no match found {"title_part":"هوش خودرو"}
[2026-04-16 11:49:55] [INFO] getContactPrimaryPhone called {"contact_id":"21579"}
[2026-04-16 11:49:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:55] [INFO] getContactPrimaryPhone result {"contact_id":"21579","person_found":true,"primary_phone":"9228033027"}
[2026-04-16 11:49:55] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9228033027"}
[2026-04-16 11:49:55] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9228033027","contact_id":"21579","deal_id":"local_6946c547ee7117.93204552","is_new_deal":false,"incoming_title":"هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-16 11:49:55"}
[2026-04-16 11:49:55] [INFO] DealController.save existing deal lookup {"deal_id":"local_6946c547ee7117.93204552","contact_id":"21579","existing_deal_found":true,"existing_contact_id":"21579","existing_title":"معامله اول 9228033027 | هوش خودرو","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","server_time":"2026-04-16 11:49:55"}
[2026-04-16 11:49:55] [INFO] DealController.save validated payments {"deal_id":"local_6946c547ee7117.93204552","contact_id":"21579","payments_count":1,"status":"won","pipeline_stage":"پرداخت"}
[2026-04-16 11:49:55] [INFO] DealController.save validating permissions {"current_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"21579","is_admin_or_crm":false,"permission_check_passed":true}
[2026-04-16 11:49:55] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"local_6946c547ee7117.93204552","contact_didar_id":"21579","title":"معامله اول 9228033027 | هوش خودرو","base_title_used":"معامله اول 9228033027","services_text":"هوش خودرو","requested_services_count":1,"pipeline_stage":"پرداخت","status":"won","payable_amount":7900000,"payment_amount":7900000,"payments_present":true,"requested_services":["هوش خودرو"],"user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"زهرا شاهسوند","existing_deal":"YES","existing_deal_id":"local_6946c547ee7117.93204552","existing_deal_status":"Pending","server_time":"2026-04-16 11:49:55","session_data":{"didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","name":"خانم شکیبا","user_id":"8"}}
[2026-04-16 11:49:55] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:56] [INFO] Deal success processed {"contact_id":"21579","person_name":"زهرا شاهسوند","products_count":1}
[2026-04-16 11:49:56] [INFO] AUDIT: Deal saved successfully {"action":"UPDATE_DEAL","deal_id":"local_6946c547ee7117.93204552","contact_id":"21579","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_name":"خانم شکیبا","deal_title":"معامله اول 9228033027 | هوش خودرو","deal_status":"won","pipeline_stage":"پرداخت","payable_amount":7900000,"payment_amount":7900000,"server_time":"2026-04-16 11:49:56","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 11:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:56] [INFO] Updating virtual stage {"contact_id":"21579","stage_name":"with_purchase","force":true}
[2026-04-16 11:49:56] [INFO] Virtual stage successfully saved {"contact_id":"21579","stage_name":"with_purchase"}
[2026-04-16 11:49:56] [INFO] Moved contact out of kariz after successful deal {"contact_id":"21579","deal_id":"local_6946c547ee7117.93204552","target_stage":"with_purchase"}
[2026-04-16 11:49:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 11:49:58] [INFO] Checking activity reminders 
[2026-04-16 11:49:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:49:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:50:28] [INFO] Checking activity reminders 
[2026-04-16 11:50:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:50:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:50:58] [INFO] Checking activity reminders 
[2026-04-16 11:50:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:50:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:51:28] [INFO] Checking activity reminders 
[2026-04-16 11:51:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:51:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:51:52] [INFO] Checking activity reminders 
[2026-04-16 11:51:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:51:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:52:23] [INFO] Checking activity reminders 
[2026-04-16 11:52:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:52:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:52:53] [INFO] Checking activity reminders 
[2026-04-16 11:52:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:52:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:53:23] [INFO] Checking activity reminders 
[2026-04-16 11:53:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:53:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:53:53] [INFO] Checking activity reminders 
[2026-04-16 11:53:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:53:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:54:23] [INFO] Checking activity reminders 
[2026-04-16 11:54:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:54:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:54:53] [INFO] Checking activity reminders 
[2026-04-16 11:54:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:54:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:55:23] [INFO] Checking activity reminders 
[2026-04-16 11:55:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:55:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:55:53] [INFO] Checking activity reminders 
[2026-04-16 11:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:55:53] [INFO] Checking activity reminders 
[2026-04-16 11:55:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:55:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:55:57] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"log_client_event"}
[2026-04-16 11:55:57] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"check_reminders"}
[2026-04-16 11:55:57] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"log_client_event"}
[2026-04-16 11:56:23] [INFO] Checking activity reminders 
[2026-04-16 11:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:56:23] [INFO] Checking activity reminders 
[2026-04-16 11:56:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:56:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:56:53] [INFO] Checking activity reminders 
[2026-04-16 11:56:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:56:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:56:54] [INFO] Checking activity reminders 
[2026-04-16 11:56:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:56:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:57:23] [INFO] Checking activity reminders 
[2026-04-16 11:57:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:57:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:57:24] [INFO] Checking activity reminders 
[2026-04-16 11:57:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:57:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:57:53] [INFO] Checking activity reminders 
[2026-04-16 11:57:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:57:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:57:54] [INFO] Checking activity reminders 
[2026-04-16 11:57:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:57:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:58:24] [INFO] Checking activity reminders 
[2026-04-16 11:58:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:58:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"check_reminders"}
[2026-04-16 11:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"log_client_event"}
[2026-04-16 11:58:51] [WARNING] Auth check failed - not authenticated {"session_id":"kt2qiv6rqmtehmjb400s8rjgko","session_keys":[],"action":"log_client_event"}
[2026-04-16 11:58:54] [INFO] Checking activity reminders 
[2026-04-16 11:58:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:58:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:59:24] [INFO] Checking activity reminders 
[2026-04-16 11:59:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:59:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 11:59:54] [INFO] Checking activity reminders 
[2026-04-16 11:59:54] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 11:59:54] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:00:24] [INFO] Checking activity reminders 
[2026-04-16 12:00:24] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:00:24] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:00:55] [INFO] Checking activity reminders 
[2026-04-16 12:00:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:00:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:01:25] [INFO] Checking activity reminders 
[2026-04-16 12:01:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:01:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:01:55] [INFO] Checking activity reminders 
[2026-04-16 12:01:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:01:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:02:25] [INFO] Checking activity reminders 
[2026-04-16 12:02:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:02:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:02:55] [INFO] Checking activity reminders 
[2026-04-16 12:02:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:02:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:03:25] [INFO] Checking activity reminders 
[2026-04-16 12:03:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:03:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:03:55] [INFO] Checking activity reminders 
[2026-04-16 12:03:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:03:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:04:25] [INFO] Checking activity reminders 
[2026-04-16 12:04:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:04:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:04:28] [INFO] Checking activity reminders 
[2026-04-16 12:04:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:04:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:04:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:04:55] [INFO] Checking activity reminders 
[2026-04-16 12:04:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:04:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:04:58] [INFO] Checking activity reminders 
[2026-04-16 12:04:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:04:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:17] [INFO] Checking activity reminders 
[2026-04-16 12:05:17] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:17] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:25] [INFO] Checking activity reminders 
[2026-04-16 12:05:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:28] [INFO] Checking activity reminders 
[2026-04-16 12:05:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:32] [INFO] Checking activity reminders 
[2026-04-16 12:05:32] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:32] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:43] [INFO] Lead update received {"contact_id":"20312","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:43] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20312"}
[2026-04-16 12:05:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:46] [INFO] Activity save request {"post_data":{"contact_id":"13563","deal_id":"local_69b42efeb6fac0.18833320","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"50 ت واریزی داشته تا الان خنگ دستسری پیگیری نکرده فعال بشه از ترس مانده حساب \/ تسویه مون هفته اخر اردیبهشت \/ حساباش بسته شدن \r\n2میلیارد طلا اخرین بار 19 خرید زده \/ سئال کنه از استاد","activity_duration":"20","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:46] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 12:05:46] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:46] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"13563","note_was_empty":true}
[2026-04-16 12:05:46] [INFO] Didar write disabled; saving activity locally {"contact_id":"13563","owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49"}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:46] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-16 12:05:46] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-16 12:05:46] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-16 12:05:46] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b42efeb6fac0.18833320","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-16 12:05:46] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e09f6222f592.98150592","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:46] [INFO] Activity saved successfully {"activity_id":"local_activity_69e09f6222f592.98150592"}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:46] [INFO] Updating virtual stage {"contact_id":"13563","stage_name":"deal_registered","force":false}
[2026-04-16 12:05:46] [INFO] Virtual stage successfully saved {"contact_id":"13563","stage_name":"deal_registered"}
[2026-04-16 12:05:46] [INFO] Virtual stage updated after activity save {"contact_id":"13563"}
[2026-04-16 12:05:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13563","person_id":"1785"}
[2026-04-16 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:05:49] [INFO] generateDealTitle result {"contact_id":"20312","person_name":"آرش انصاری فر","mobile":"9963179206","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9963179206"}
[2026-04-16 12:05:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:05:55] [INFO] Checking activity reminders 
[2026-04-16 12:05:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:05:58] [INFO] Checking activity reminders 
[2026-04-16 12:05:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:05:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:02] [INFO] Checking activity reminders 
[2026-04-16 12:06:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:06] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20312","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:06:06","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:06:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:06:06] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20312","is_new_deal":true}
[2026-04-16 12:06:06] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:06:06] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:06:06] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:06:06] [INFO] getContactPrimaryPhone called {"contact_id":"20312"}
[2026-04-16 12:06:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:06:06] [INFO] getContactPrimaryPhone result {"contact_id":"20312","person_found":true,"primary_phone":"9963179206"}
[2026-04-16 12:06:06] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9963179206"}
[2026-04-16 12:06:06] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9963179206","contact_id":"20312","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:06:06"}
[2026-04-16 12:06:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:06:06] [INFO] generateDealTitle result {"contact_id":"20312","person_name":"آرش انصاری فر","mobile":"9963179206","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9963179206"}
[2026-04-16 12:06:06] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20312","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:06:06] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20312","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:06:06] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20312","title":"معامله دوم 9963179206 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9963179206","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آرش انصاری فر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:06:06","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:06:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:06:06] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:06:06] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20312","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9963179206 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:06:06","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:06:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20312","person_id":"7111"}
[2026-04-16 12:06:26] [INFO] Checking activity reminders 
[2026-04-16 12:06:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:28] [INFO] Checking activity reminders 
[2026-04-16 12:06:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:33] [INFO] Activity save request {"post_data":{"contact_id":"local_1403_09_26_87","deal_id":"local_69b740cad7a941.81793437","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"19 ت یکشنبه 30 فروردین میزنه \/ تسویه هفته ارخ اردیبهشت \/ ","activity_duration":"10","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:33] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 12:06:33] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","database_didar_user_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_email":"hanaficars.academy4@gmail.com","user_name":"خانم توانا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:33] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم توانا","contact_id":"local_1403_09_26_87","note_was_empty":true}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:33] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-04-16 12:06:33] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-04-16 12:06:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-04-16 12:06:33] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69b740cad7a941.81793437","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-16 12:06:33] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e09f911e3f11.43676814","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:33] [INFO] Activity saved successfully {"activity_id":"local_activity_69e09f911e3f11.43676814"}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:33] [INFO] Updating virtual stage {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered","force":false}
[2026-04-16 12:06:33] [INFO] Virtual stage successfully saved {"contact_id":"local_1403_09_26_87","stage_name":"deal_registered"}
[2026-04-16 12:06:33] [INFO] Virtual stage updated after activity save {"contact_id":"local_1403_09_26_87"}
[2026-04-16 12:06:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_1403_09_26_87","person_id":"21164"}
[2026-04-16 12:06:53] [INFO] Checking activity reminders 
[2026-04-16 12:06:53] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:53] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:56] [INFO] Checking activity reminders 
[2026-04-16 12:06:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:06:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:06:58] [INFO] Checking activity reminders 
[2026-04-16 12:06:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:06:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:06] [INFO] Lead update received {"contact_id":"20627","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:07:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20627"}
[2026-04-16 12:07:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:09] [INFO] generateDealTitle result {"contact_id":"20627","person_name":"محمدی محمدی","mobile":"9909364190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9909364190"}
[2026-04-16 12:07:23] [INFO] Checking activity reminders 
[2026-04-16 12:07:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:26] [INFO] Checking activity reminders 
[2026-04-16 12:07:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:28] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20627","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:07:28","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:07:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:28] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20627","is_new_deal":true}
[2026-04-16 12:07:28] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:07:28] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:07:28] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:07:28] [INFO] getContactPrimaryPhone called {"contact_id":"20627"}
[2026-04-16 12:07:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:28] [INFO] getContactPrimaryPhone result {"contact_id":"20627","person_found":true,"primary_phone":"9909364190"}
[2026-04-16 12:07:28] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9909364190"}
[2026-04-16 12:07:28] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9909364190","contact_id":"20627","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:07:28"}
[2026-04-16 12:07:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:28] [INFO] generateDealTitle result {"contact_id":"20627","person_name":"محمدی محمدی","mobile":"9909364190","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9909364190"}
[2026-04-16 12:07:28] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20627","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:07:28] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20627","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:07:28] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20627","title":"معامله دوم 9909364190 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9909364190","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"محمدی محمدی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:07:28","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:07:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:28] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:07:28] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20627","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9909364190 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:07:28","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:07:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:07:28] [INFO] Checking activity reminders 
[2026-04-16 12:07:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:40] [INFO] Checking activity reminders 
[2026-04-16 12:07:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:43] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-16 12:07:56] [INFO] Checking activity reminders 
[2026-04-16 12:07:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:07:58] [INFO] Checking activity reminders 
[2026-04-16 12:07:58] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:07:58] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:06] [INFO] Checking activity reminders 
[2026-04-16 12:08:06] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:06] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"19271","person_id":"5691"}
[2026-04-16 12:08:08] [INFO] Activity save request {"post_data":{"contact_id":"12744","deal_id":"local_69c7fa564ab056.29171629","activity_type_id":"790079e8-74ac-4760-9527-097627d3e7ec","activity_type_title":"تماس خروجی","note":"","result_note":"تا شنبه 9 م واریز تسویه 6 ماهه \r\n15 م در اردیبهشت تسویه کانال یکساله ","activity_duration":"6","direction":"outgoing","current_stage":"پیگیری مانده حساب","pipeline_stage":"پیگیری مانده حساب","has_previous_purchase_other_number":"","previous_purchase_number":"","referral_note":"","failure_reason":"","failure_other_description":"","is_done":"0","is_scheduled":"0","due_date":"","reminder_enabled":"0","reminder_offset_minutes":"1440"}}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:08] [INFO] Activity is_done determination {"is_scheduled":false,"is_done_from_data":0,"final_is_done":0}
[2026-04-16 12:08:08] [INFO] Using synced didar_user_id from database as OwnerId {"session_didar_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","database_didar_user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_email":"hfishakiba@gmail.com","user_name":"خانم شکیبا","ids_match":"yes","found_by":"didar_id"}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:08] [INFO] Added lead owner name to activity note {"lead_owner_name":"خانم شکیبا","contact_id":"12744","note_was_empty":true}
[2026-04-16 12:08:08] [INFO] Didar write disabled; saving activity locally {"contact_id":"12744","owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9"}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:08] [INFO] Updating virtual stage {"contact_id":"12744","stage_name":"deal_registered","force":false}
[2026-04-16 12:08:08] [INFO] Virtual stage successfully saved {"contact_id":"12744","stage_name":"deal_registered"}
[2026-04-16 12:08:08] [INFO] Virtual stage updated after activity save {"contact_id":"12744"}
[2026-04-16 12:08:08] [INFO] Pipeline stage updated after activity save {"deal_id":"local_69c7fa564ab056.29171629","stage":"پیگیری مانده حساب","status_change":null}
[2026-04-16 12:08:08] [WARNING] Reminder not scheduled {"activity_id":"local_activity_69e09ff07fc430.59112229","is_scheduled":false,"reminder_enabled":false,"notification_service_available":true}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:08] [INFO] Activity saved successfully {"activity_id":"local_activity_69e09ff07fc430.59112229"}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:08] [INFO] Updating virtual stage {"contact_id":"12744","stage_name":"deal_registered","force":false}
[2026-04-16 12:08:08] [INFO] Virtual stage successfully saved {"contact_id":"12744","stage_name":"deal_registered"}
[2026-04-16 12:08:08] [INFO] Virtual stage updated after activity save {"contact_id":"12744"}
[2026-04-16 12:08:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12744","person_id":"14262"}
[2026-04-16 12:08:20] [INFO] Checking activity reminders 
[2026-04-16 12:08:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:24] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:26] [INFO] Checking activity reminders 
[2026-04-16 12:08:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:28] [INFO] Checking activity reminders 
[2026-04-16 12:08:28] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:28] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:29] [INFO] generateDealTitle result {"contact_id":"17137","person_name":"امیر میربزرگی","mobile":"9383200649","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9383200649"}
[2026-04-16 12:08:44] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17137","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:08:44","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:44] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"17137","is_new_deal":true}
[2026-04-16 12:08:44] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:08:44] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:08:44] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:08:44] [INFO] getContactPrimaryPhone called {"contact_id":"17137"}
[2026-04-16 12:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:44] [INFO] getContactPrimaryPhone result {"contact_id":"17137","person_found":true,"primary_phone":"9383200649"}
[2026-04-16 12:08:44] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9383200649"}
[2026-04-16 12:08:44] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9383200649","contact_id":"17137","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:08:44"}
[2026-04-16 12:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:44] [INFO] generateDealTitle result {"contact_id":"17137","person_name":"امیر میربزرگی","mobile":"9383200649","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9383200649"}
[2026-04-16 12:08:44] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"17137","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:08:44] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"17137","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:08:44] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"17137","title":"معامله سوم 9383200649 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9383200649","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"امیر میربزرگی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:08:44","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:08:44] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:44] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:08:44] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"17137","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9383200649 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:08:44","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:08:45] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17137","person_id":"6255"}
[2026-04-16 12:08:56] [INFO] Checking activity reminders 
[2026-04-16 12:08:56] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:56] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:57] [INFO] Checking activity reminders 
[2026-04-16 12:08:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:08:59] [INFO] Checking activity reminders 
[2026-04-16 12:08:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:08:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:09:01] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:07] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:07] [INFO] generateDealTitle result {"contact_id":"13757","person_name":"محمد بزمی","mobile":"9378183006","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9378183006"}
[2026-04-16 12:09:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"13757","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:09:21","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"13757","is_new_deal":true}
[2026-04-16 12:09:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:21] [INFO] getContactPrimaryPhone called {"contact_id":"13757"}
[2026-04-16 12:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:21] [INFO] getContactPrimaryPhone result {"contact_id":"13757","person_found":true,"primary_phone":"9378183006"}
[2026-04-16 12:09:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9378183006"}
[2026-04-16 12:09:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9378183006","contact_id":"13757","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:09:21"}
[2026-04-16 12:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:21] [INFO] generateDealTitle result {"contact_id":"13757","person_name":"محمد بزمی","mobile":"9378183006","existing_deals":3,"ordinal":"چهارم","title":"معامله چهارم 9378183006"}
[2026-04-16 12:09:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"13757","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:09:21] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"13757","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:09:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"13757","title":"معامله چهارم 9378183006 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله چهارم 9378183006","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد بزمی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:09:21","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:09:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"13757","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله چهارم 9378183006 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:09:21","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:09:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"13757","person_id":"9685"}
[2026-04-16 12:09:26] [INFO] Checking activity reminders 
[2026-04-16 12:09:26] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:09:26] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:09:29] [INFO] Checking activity reminders 
[2026-04-16 12:09:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:09:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:09:30] [INFO] Checking activity reminders 
[2026-04-16 12:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:09:30] [INFO] Checking activity reminders 
[2026-04-16 12:09:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:09:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:09:33] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:38] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:38] [INFO] generateDealTitle result {"contact_id":"21016","person_name":"فرهاد کیانفر","mobile":"9368591768","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9368591768"}
[2026-04-16 12:09:50] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21016","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:09:50","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:50] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"21016","is_new_deal":true}
[2026-04-16 12:09:50] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:50] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:50] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:09:50] [INFO] getContactPrimaryPhone called {"contact_id":"21016"}
[2026-04-16 12:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:50] [INFO] getContactPrimaryPhone result {"contact_id":"21016","person_found":true,"primary_phone":"9368591768"}
[2026-04-16 12:09:50] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9368591768"}
[2026-04-16 12:09:50] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9368591768","contact_id":"21016","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:09:50"}
[2026-04-16 12:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:50] [INFO] generateDealTitle result {"contact_id":"21016","person_name":"فرهاد کیانفر","mobile":"9368591768","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9368591768"}
[2026-04-16 12:09:50] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"21016","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:09:50] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"21016","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:09:50] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"21016","title":"معامله سوم 9368591768 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9368591768","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"فرهاد کیانفر","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:09:50","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:50] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:09:50] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"21016","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9368591768 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:09:50","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:09:50] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21016","person_id":"10367"}
[2026-04-16 12:09:57] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"21579","person_id":"2181"}
[2026-04-16 12:09:59] [INFO] Checking activity reminders 
[2026-04-16 12:09:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:09:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:01] [INFO] Checking activity reminders 
[2026-04-16 12:10:01] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:01] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:05] [INFO] Checking activity reminders 
[2026-04-16 12:10:05] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:05] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:18] [INFO] Lead update received {"contact_id":"20850","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:10:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:18] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20850"}
[2026-04-16 12:10:18] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:19] [INFO] Checking activity reminders 
[2026-04-16 12:10:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:22] [INFO] generateDealTitle result {"contact_id":"20850","person_name":"آقای پارسا","mobile":"9364784645","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9364784645"}
[2026-04-16 12:10:28] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20627","person_id":"7279"}
[2026-04-16 12:10:29] [INFO] Checking activity reminders 
[2026-04-16 12:10:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:35] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20850","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:10:35","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:35] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20850","is_new_deal":true}
[2026-04-16 12:10:35] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:10:35] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:10:35] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:10:35] [INFO] getContactPrimaryPhone called {"contact_id":"20850"}
[2026-04-16 12:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:35] [INFO] getContactPrimaryPhone result {"contact_id":"20850","person_found":true,"primary_phone":"9364784645"}
[2026-04-16 12:10:35] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9364784645"}
[2026-04-16 12:10:35] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9364784645","contact_id":"20850","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:10:35"}
[2026-04-16 12:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:35] [INFO] generateDealTitle result {"contact_id":"20850","person_name":"آقای پارسا","mobile":"9364784645","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9364784645"}
[2026-04-16 12:10:35] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20850","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:10:35] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20850","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:10:35] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20850","title":"معامله دوم 9364784645 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9364784645","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای پارسا","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:10:35","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:35] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:10:35] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20850","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9364784645 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:10:35","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:10:35] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20850","person_id":"10009"}
[2026-04-16 12:10:35] [INFO] Checking activity reminders 
[2026-04-16 12:10:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:47] [INFO] Checking activity reminders 
[2026-04-16 12:10:47] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:47] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:49] [INFO] Checking activity reminders 
[2026-04-16 12:10:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:10:52] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:10:58] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:10:58] [INFO] generateDealTitle result {"contact_id":"20596","person_name":"شریفات شریفات","mobile":"9363898778","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9363898778"}
[2026-04-16 12:10:59] [INFO] Checking activity reminders 
[2026-04-16 12:10:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:10:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:11] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20596","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:11:11","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:11:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:11:11] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20596","is_new_deal":true}
[2026-04-16 12:11:11] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:11] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:11] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:11] [INFO] getContactPrimaryPhone called {"contact_id":"20596"}
[2026-04-16 12:11:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:11:11] [INFO] getContactPrimaryPhone result {"contact_id":"20596","person_found":true,"primary_phone":"9363898778"}
[2026-04-16 12:11:11] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9363898778"}
[2026-04-16 12:11:11] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9363898778","contact_id":"20596","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:11:11"}
[2026-04-16 12:11:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:11:11] [INFO] generateDealTitle result {"contact_id":"20596","person_name":"شریفات شریفات","mobile":"9363898778","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9363898778"}
[2026-04-16 12:11:11] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20596","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:11:11] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20596","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:11:11] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20596","title":"معامله سوم 9363898778 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9363898778","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"شریفات شریفات","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:11:11","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:11:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:11:11] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:11:11] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20596","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9363898778 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:11:11","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:11:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20596","person_id":"9963"}
[2026-04-16 12:11:19] [INFO] Checking activity reminders 
[2026-04-16 12:11:19] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:19] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:23] [INFO] Checking activity reminders 
[2026-04-16 12:11:23] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:23] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:25] [INFO] Checking activity reminders 
[2026-04-16 12:11:25] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:25] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:29] [INFO] Checking activity reminders 
[2026-04-16 12:11:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:29] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:32] [INFO] generateDealTitle result {"contact_id":"20686","person_name":"محمدمسعود سبحانلو","mobile":"9355221637","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9355221637"}
[2026-04-16 12:11:46] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20686","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:11:46","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:46] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20686","is_new_deal":true}
[2026-04-16 12:11:46] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:46] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:46] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:11:46] [INFO] getContactPrimaryPhone called {"contact_id":"20686"}
[2026-04-16 12:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:46] [INFO] getContactPrimaryPhone result {"contact_id":"20686","person_found":true,"primary_phone":"9355221637"}
[2026-04-16 12:11:46] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9355221637"}
[2026-04-16 12:11:46] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9355221637","contact_id":"20686","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:11:46"}
[2026-04-16 12:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:46] [INFO] generateDealTitle result {"contact_id":"20686","person_name":"محمدمسعود سبحانلو","mobile":"9355221637","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9355221637"}
[2026-04-16 12:11:46] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20686","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:11:46] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20686","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:11:46] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20686","title":"معامله سوم 9355221637 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9355221637","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمدمسعود سبحانلو","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:11:46","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:46] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:11:46] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20686","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9355221637 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:11:46","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:11:46] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20686","person_id":"8895"}
[2026-04-16 12:11:49] [INFO] Checking activity reminders 
[2026-04-16 12:11:49] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:49] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:57] [INFO] Checking activity reminders 
[2026-04-16 12:11:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:11:59] [INFO] Checking activity reminders 
[2026-04-16 12:11:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:11:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:08] [INFO] Checking activity reminders 
[2026-04-16 12:12:08] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:08] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:13] [INFO] Lead update received {"contact_id":"20566","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:13] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20566"}
[2026-04-16 12:12:13] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:16] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:16] [INFO] generateDealTitle result {"contact_id":"20566","person_name":"احسان مهرابی","mobile":"9352205842","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9352205842"}
[2026-04-16 12:12:17] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"12398","person_id":"13844"}
[2026-04-16 12:12:27] [INFO] Checking activity reminders 
[2026-04-16 12:12:27] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:27] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:29] [INFO] Checking activity reminders 
[2026-04-16 12:12:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:31] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20566","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:12:31","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:31] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20566","is_new_deal":true}
[2026-04-16 12:12:31] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:12:31] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:12:31] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:12:31] [INFO] getContactPrimaryPhone called {"contact_id":"20566"}
[2026-04-16 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:31] [INFO] getContactPrimaryPhone result {"contact_id":"20566","person_found":true,"primary_phone":"9352205842"}
[2026-04-16 12:12:31] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9352205842"}
[2026-04-16 12:12:31] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9352205842","contact_id":"20566","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:12:31"}
[2026-04-16 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:31] [INFO] generateDealTitle result {"contact_id":"20566","person_name":"احسان مهرابی","mobile":"9352205842","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9352205842"}
[2026-04-16 12:12:31] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20566","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:12:31] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20566","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:12:31] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20566","title":"معامله دوم 9352205842 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9352205842","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"احسان مهرابی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:12:31","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:31] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:12:31] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20566","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9352205842 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:12:31","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:12:31] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20566","person_id":"8544"}
[2026-04-16 12:12:39] [INFO] Checking activity reminders 
[2026-04-16 12:12:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:44] [INFO] Checking activity reminders 
[2026-04-16 12:12:44] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:44] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:12:59] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:12:59] [INFO] Checking activity reminders 
[2026-04-16 12:12:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:12:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:02] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:02] [INFO] generateDealTitle result {"contact_id":"20843","person_name":"آریاپسند آریاپسند","mobile":"9222726202","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9222726202"}
[2026-04-16 12:13:09] [INFO] Checking activity reminders 
[2026-04-16 12:13:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:15] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20843","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:13:15","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:13:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:15] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20843","is_new_deal":true}
[2026-04-16 12:13:15] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:13:15] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:13:15] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:13:15] [INFO] getContactPrimaryPhone called {"contact_id":"20843"}
[2026-04-16 12:13:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:15] [INFO] getContactPrimaryPhone result {"contact_id":"20843","person_found":true,"primary_phone":"9222726202"}
[2026-04-16 12:13:15] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9222726202"}
[2026-04-16 12:13:15] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9222726202","contact_id":"20843","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:13:15"}
[2026-04-16 12:13:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:15] [INFO] generateDealTitle result {"contact_id":"20843","person_name":"آریاپسند آریاپسند","mobile":"9222726202","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9222726202"}
[2026-04-16 12:13:15] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20843","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:13:15] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20843","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:13:15] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20843","title":"معامله سوم 9222726202 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9222726202","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"آریاپسند آریاپسند","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:13:15","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:13:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:15] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:13:15] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20843","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9222726202 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:13:15","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:13:15] [INFO] Checking activity reminders 
[2026-04-16 12:13:15] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:15] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:15] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20843","person_id":"2086"}
[2026-04-16 12:13:29] [INFO] Checking activity reminders 
[2026-04-16 12:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:29] [INFO] Checking activity reminders 
[2026-04-16 12:13:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:32] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"17282","person_id":"20477"}
[2026-04-16 12:13:39] [INFO] Checking activity reminders 
[2026-04-16 12:13:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:50] [INFO] Checking activity reminders 
[2026-04-16 12:13:50] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:50] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:13:54] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:13:59] [INFO] Checking activity reminders 
[2026-04-16 12:13:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:13:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:05] [INFO] Lead update received {"contact_id":"20913","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:05] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:06] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"20913"}
[2026-04-16 12:14:06] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:09] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:09] [INFO] generateDealTitle result {"contact_id":"20913","person_name":"ناصر محمدخانی","mobile":"9123893104","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123893104"}
[2026-04-16 12:14:09] [INFO] Checking activity reminders 
[2026-04-16 12:14:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:20] [INFO] Checking activity reminders 
[2026-04-16 12:14:20] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:20] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:21] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20913","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:14:21","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:21] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20913","is_new_deal":true}
[2026-04-16 12:14:21] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:14:21] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:14:21] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:14:21] [INFO] getContactPrimaryPhone called {"contact_id":"20913"}
[2026-04-16 12:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:21] [INFO] getContactPrimaryPhone result {"contact_id":"20913","person_found":true,"primary_phone":"9123893104"}
[2026-04-16 12:14:21] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9123893104"}
[2026-04-16 12:14:21] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9123893104","contact_id":"20913","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:14:21"}
[2026-04-16 12:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:21] [INFO] generateDealTitle result {"contact_id":"20913","person_name":"ناصر محمدخانی","mobile":"9123893104","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9123893104"}
[2026-04-16 12:14:21] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20913","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:14:21] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"20913","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:14:21] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20913","title":"معامله سوم 9123893104 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9123893104","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"ناصر محمدخانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:14:21","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:14:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:21] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:14:21] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20913","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9123893104 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:14:21","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:14:22] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20913","person_id":"19021"}
[2026-04-16 12:14:29] [INFO] Checking activity reminders 
[2026-04-16 12:14:29] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:29] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:35] [INFO] Checking activity reminders 
[2026-04-16 12:14:35] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:35] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:39] [INFO] Checking activity reminders 
[2026-04-16 12:14:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:49] [INFO] Pre-flight duplicate check {"has_person":false,"matches_count":0,"phones_checked":["9025448912","09025448912"]}
[2026-04-16 12:14:49] [INFO] Phone number not found in system - allowing new contact creation {"phones_checked":["9025448912","09025448912"],"action":"ALLOWING_NEW_CONTACT_CREATION"}
[2026-04-16 12:14:49] [INFO] Didar write disabled; creating local lead only {"owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","mobile":"9025448912","full_name":"لید جدید"}
[2026-04-16 12:14:49] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"local_69e0a18127fac5.10138531","person_id":"22175"}
[2026-04-16 12:14:49] [INFO] Notification created {"notification_id":"659","user_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","type":"lead_assigned","show_popup":true}
[2026-04-16 12:14:52] [INFO] Checking activity reminders 
[2026-04-16 12:14:52] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:52] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:14:59] [INFO] Checking activity reminders 
[2026-04-16 12:14:59] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:14:59] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:02] [INFO] Checking activity reminders 
[2026-04-16 12:15:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:04] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20859","person_id":"9114"}
[2026-04-16 12:15:09] [INFO] Checking activity reminders 
[2026-04-16 12:15:09] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:09] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:18] [INFO] Checking activity reminders 
[2026-04-16 12:15:18] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:18] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:21] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:26] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:26] [INFO] generateDealTitle result {"contact_id":"20949","person_name":"محمد سلگی","mobile":"9372007709","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9372007709"}
[2026-04-16 12:15:30] [INFO] Checking activity reminders 
[2026-04-16 12:15:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:39] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20949","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:15:39","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:39] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"20949","is_new_deal":true}
[2026-04-16 12:15:39] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:15:39] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:15:39] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:15:39] [INFO] getContactPrimaryPhone called {"contact_id":"20949"}
[2026-04-16 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:39] [INFO] getContactPrimaryPhone result {"contact_id":"20949","person_found":true,"primary_phone":"9372007709"}
[2026-04-16 12:15:39] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9372007709"}
[2026-04-16 12:15:39] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9372007709","contact_id":"20949","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:15:39"}
[2026-04-16 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:39] [INFO] generateDealTitle result {"contact_id":"20949","person_name":"محمد سلگی","mobile":"9372007709","existing_deals":2,"ordinal":"سوم","title":"معامله سوم 9372007709"}
[2026-04-16 12:15:39] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"20949","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:15:39] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_id":"20949","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:15:39] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"20949","title":"معامله سوم 9372007709 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله سوم 9372007709","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","contact_name":"محمد سلگی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:15:39","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:39] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:15:39] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"20949","contact_owner_id":"1d963d5b-0a67-40ac-826a-2e8480250d49","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله سوم 9372007709 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:15:39","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
[2026-04-16 12:15:39] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20949","person_id":"9269"}
[2026-04-16 12:15:39] [INFO] Checking activity reminders 
[2026-04-16 12:15:39] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:39] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:15:57] [INFO] Checking activity reminders 
[2026-04-16 12:15:57] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:15:57] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:00] [INFO] Checking activity reminders 
[2026-04-16 12:16:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:00] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"20430","person_id":"19915"}
[2026-04-16 12:16:10] [INFO] Checking activity reminders 
[2026-04-16 12:16:10] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:10] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:14] [INFO] Checking activity reminders 
[2026-04-16 12:16:14] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:14] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:30] [INFO] Checking activity reminders 
[2026-04-16 12:16:30] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:30] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:40] [INFO] Checking activity reminders 
[2026-04-16 12:16:40] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:40] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:55] [INFO] Checking activity reminders 
[2026-04-16 12:16:55] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:16:55] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:16:56] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:00] [INFO] Checking activity reminders 
[2026-04-16 12:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:17:00] [INFO] Checking activity reminders 
[2026-04-16 12:17:00] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:17:00] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:17:02] [INFO] Checking activity reminders 
[2026-04-16 12:17:02] [INFO] Found due reminders {"count":0,"reminders":[]}
[2026-04-16 12:17:02] [INFO] Finished checking reminders {"notifications_created":0}
[2026-04-16 12:17:08] [INFO] Lead update received {"contact_id":"15055","has_previous_purchase":"0","previous_purchase_number":"not_set","activity_has_purchase":"not_set","activity_previous_number":""}
[2026-04-16 12:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:08] [INFO] CRM Transfer Check - No transfer needed {"has_previous_purchase":"0","contact_id":"15055"}
[2026-04-16 12:17:08] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:11] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:11] [INFO] generateDealTitle result {"contact_id":"15055","person_name":"آقای کامرانی","mobile":"9122547816","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122547816"}
[2026-04-16 12:17:25] [INFO] DealController.save start {"is_new":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"15055","deal_id":"","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","form_data_keys":["deal_id","contact_id","deal_status","pipeline_stage","product_ids","title","service_cost","price_list_code","has_discount","discount_type","discount_occasion","discount_amount","refund_amount","refund_description","payable_amount","payment_conditions","payments","payment_amount","admin_unlock_paid_deal_fields","failure_reason","failure_reason_text","failure_other_description","requested_services"],"server_time":"2026-04-16 12:17:25","session_id":"mf7be34edavrl8t54tng4omqed"}
[2026-04-16 12:17:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:25] [INFO] DEAL_PHONE_VALIDATION_START {"deal_title":"کانال VIP با پشتیبانی شش ماهه","contact_id":"15055","is_new_deal":true}
[2026-04-16 12:17:25] [INFO] extractPhoneFromDealTitle called {"input_title":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:17:25] [INFO] extractPhoneFromDealTitle processing {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:17:25] [INFO] extractPhoneFromDealTitle no match found {"title_part":"کانال VIP با پشتیبانی شش ماهه"}
[2026-04-16 12:17:25] [INFO] getContactPrimaryPhone called {"contact_id":"15055"}
[2026-04-16 12:17:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:25] [INFO] getContactPrimaryPhone result {"contact_id":"15055","person_found":true,"primary_phone":"9122547816"}
[2026-04-16 12:17:25] [INFO] DEAL_PHONE_VALIDATION_EXTRACTED {"deal_phone":"","contact_primary_phone":"9122547816"}
[2026-04-16 12:17:25] [INFO] DEAL_PHONE_VALIDATION_SKIPPED {"reason":"missing_deal_phone_or_contact_phone","deal_phone":"","contact_primary_phone":"9122547816","contact_id":"15055","deal_id":"","is_new_deal":true,"incoming_title":"کانال VIP با پشتیبانی شش ماهه","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","server_time":"2026-04-16 12:17:25"}
[2026-04-16 12:17:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:25] [INFO] generateDealTitle result {"contact_id":"15055","person_name":"آقای کامرانی","mobile":"9122547816","existing_deals":1,"ordinal":"دوم","title":"معامله دوم 9122547816"}
[2026-04-16 12:17:25] [INFO] DealController.save validated payments {"deal_id":"","contact_id":"15055","payments_count":0,"status":"pending","pipeline_stage":"معامله جدید"}
[2026-04-16 12:17:25] [INFO] DealController.save validating permissions {"current_user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_id":"15055","is_admin_or_crm":true,"permission_check_passed":true}
[2026-04-16 12:17:25] [INFO] DealController.save payload - DETAILED {"didar_deal_id":"","contact_didar_id":"15055","title":"معامله دوم 9122547816 | کانال VIP با پشتیبانی شش ماهه","base_title_used":"معامله دوم 9122547816","services_text":"کانال VIP با پشتیبانی شش ماهه","requested_services_count":1,"pipeline_stage":"معامله جدید","status":"pending","payable_amount":39000000,"payment_amount":0,"payments_present":false,"requested_services":["کانال VIP با پشتیبانی شش ماهه"],"user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","contact_name":"آقای کامرانی","existing_deal":"NO","existing_deal_id":null,"existing_deal_status":null,"server_time":"2026-04-16 12:17:25","session_data":{"didar_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","name":"امیر سهرابی ","user_id":"6"}}
[2026-04-16 12:17:25] [DEBUG] findByDidarId: Found strictly by Didar ID {"didar_id":"15055","person_id":"11810"}
[2026-04-16 12:17:25] [WARNING] ensureDealProductsFromText: deal not found {"deal_id":""}
[2026-04-16 12:17:25] [INFO] AUDIT: Deal saved successfully {"action":"CREATE_DEAL","deal_id":"","contact_id":"15055","contact_owner_id":"d596af82-2c35-4ede-90ff-8bcdd5b373a9","user_id":"ef266a9a-ff55-4893-8be3-7848badfcdce","user_name":"امیر سهرابی ","deal_title":"معامله دوم 9122547816 | کانال VIP با پشتیبانی شش ماهه","deal_status":"pending","pipeline_stage":"معامله جدید","payable_amount":39000000,"payment_amount":0,"server_time":"2026-04-16 12:17:25","ip_address":"2.176.200.52","user_agent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"}
